The very last part of the project involves finding a
safe way to drive the LED display. In our previous lab we
used a rather high resistance value (2.2 k-ohm) to limit
the current drawn by the seven segment display. The
problem with this is that the display is dim since there is
very little current passing through it. We can brighten
the display by using a smaller resistor (say 100 ohms), but
this would increase the total current drawn by the LED
display by an order of magnitude. This is too much current
for the Stamp11 or the serial-to-parallel chip to
source safely. We therefore need to find a better way of
driving the LED display.
To interface our LED to the serial interface, we'll use a high-voltage high-current Darlington transistor array (ULN2003). This integrated circuit consists of seven so-called Darlington pairs ( a special transistor circuit that can be used as a high current source). The particular chip we're using works well driving a circuit from ground.
The pin-out and connections for the ULN2003 to the display
are shown in the figure 8. The ULN2003 is a
16 pin DIP. The inputs (pins 1-7) are all on the lefthand
side of the chip and the outputs (pins 10-16) are on the
right-hand side of the chip. To work effectively, we need
to tie pin 8 to ground and pin 9 should be tied to a supply
voltage above 5 volts. We've connected the LED's to the
device output via current limiting resistors. Because the
ULN2003 can source much more current than the 74HC595 or
the Stamp11, we can safely use a much smaller resistor
in order to make the displays much brighter. In my version
of this circuit I used a 100 ohm resistor.
This approach
to interfacing isolates the Stamp11 from the actual
devices it is driving. This can be very important if we
are driving inductive loads such as motors. Due to the
inductive nature of a motor, we can expect large current
transients that can damage the micro-controller. For this
reason we often use separate power supplies for motors and
other peripheral devices in addition to driving these
devices through buffering device such as the ULN2003.