Hardware Reference
In-Depth Information
Clearly, the Pi GPIO low (0.8 V) easily turns off the ULN2003A input with margin to
spare. The datasheets state that a maximum output drive of 300 mA can be achieved with
a 3 V input drive signal. The ULN2003A drive characteristics are shown here:
ULN2003A
V I
Signal
Raspberry Pi
I C
V OL
£ 0.8 V
1.2 V
500 m A
2.4 V
100 m A
V OH
³1.3 V
2.7 V
250 m A
3.0 V
300 m A
If we had a TTL signal driving the ULN2003A, we could get closer to the 500 mA
maximum drive (interpolating from the characteristics shown). However, for our
purposes, we need only 160 mA, so a 3 V drive signal meets the requirements well
enough.
Note
ttL levels approach +5V.
Power-on Reset/Boot
The one serious matter that remains is what our circuit will be doing as the Raspberry Pi
is reset and is spending time booting up. The maximum ratings of the ULN2003A have
to be derated when more than one Darlington pair is operating simultaneously. This is
because each driver that is on heats up the chip substrate. For this reason, it is highly
desirable for the ULN2003A to be “quiet” at reset time and subsequent boot-up. If a boot
problem occurs, requiring a lot of time to correct, the drivers could overheat.
This potentially requires that we use GPIO pins that
Are automatically configured as
inputs at reset
Are not configured with high pull-up resistors
Input pins with high pull-up resistors are potentially bad news. A high level
appearing on ULN2003A inputs might activate drivers. In the worst-case scenario, all
inputs become active.
Table 6-1 lists the acceptable GPIO pins as well as the reasons that others should be
avoided.
 
Search WWH ::




Custom Search