Hardware Reference
In-Depth Information
Another important detail; inputs and outputs can function between 2.5 V and
6 V. Arduinos use two voltages: 3.3 V and 5 V. This shield will be compatible
with both types of Arduino, without the need to add voltage-shifting hardware.
Next, it talks about quasi-bidirectional ports. What exactly is a quasi-bidirec-
tional port? An input port is one that can read the voltage on a pin. An output
port is one that can set a voltage on a pin. In theory, a bidirectional port is one
that can do both at the same time: set output voltage and read input voltage.
The problem arises when, for example, the output is set to a logical one, 5 volts,
and the input is a logical zero, ground. In this coni guration, that would result
in a pin set too high to be in direct contact with the ground, resulting in a short
circuit, cutting power to the board and potentially damaging the component and
the board. Quasi-bidirectional solves this and allows the component to work
in this fashion. Quasi-bidirectional pins can sink a rather large amount of cur-
rent (tens of milli-amps, more than enough for an LED) but can source only a
small amount of current (sometimes tens of micro-amps). In the case of a short
circuit, the device simply limits the current, as if a large resistor was placed in
the circuit. The advantage is, of course, ease of use. There is no need to set a pin
to be specii cally input or output, but the disadvantage is that this pin cannot be
used to power all components; it will not deliver enough power to turn on an
LED. So why does the datasheet talk about output devices such as LEDs? Well,
they can still be used, but they should ground to the device, turning the LED
on when the output is a logical zero or be used with a transistor that requires
much less current to activate than an LED. That part will be left to the end user;
your job is to create the shield that will contain the components and connectors.
Step 1: The Breadboard
Breadboards are an excellent way to test circuits and ideas. It is extremely
easy to add wires, to change connections, and to duplicate part of the circuit if
required. Most projects start as an experiment on a breadboard, even the most
professional Arduino applications.
To create a simple circuit, you can use a breadboard to create a design almost
immediately. There is, however, a slight difference between this breadboard
design and the designs that you have been using. In previous designs, the output
of a component was simply left as it is; to use that output, you need to place a
wire in one of the breadboard connectors. When designing a shield, you should
always use the type of connector that will be on the i nal design. There is a good
reason for this; one that you will see in the section “The PCB.”
This design requires two PCF8574AP integrated circuits, one 16-pin or two
8-pin headers, and optionally, additional headers to specify the I 2 C addresses.
 
Search WWH ::




Custom Search