Driving DC Loads

Introduction

The port pins on a typical microcontroller can be set at values of either 0V or 5V (or, in a 3V system, 0V and 3V) under software control. Each pin can typically sink (or source) a current of around 10 mA. In this chapter, we are concerned with hardware designs that will allow us to control a range of low- and high-power, direct current (DC) loads via these pins.

With care, the port may be used directly to drive low-power DC loads, such as LEDs (see NAKED LED [page 110]) or, for example, small warning buzzers (see NAKED LOAD [page 115]). However, while a limited number of such loads may be connected directly to the port, connecting, say, eight LEDs will generally exceed the total port or microcontroller capacity. In these circumstances, use of an IC-based buffer circuit can be a cost-effective solution: see IC BUFFER [page 118]. Indeed, even with small loads, the reliability of the application may be improved through the use of such a buffer.

Of course, many output devices require a higher voltage and a far greater power output than the naked ports can provide. For example, to drive even a small DC motor may require up to 1A of current at 12V. To control such devices, we need to provide appropriate driver (or interface) circuit to convert the microcontroller output to an appropriate level. We will consider three ways of driving such loads in this chapter:

● Using bipolar-junction transistors (see BJT DRIVER [page 124])

● Using a driver IC (see IC DRIVER [page 134])

● Using ‘metal oxide silicon field effect transistors’ (see MOSFET DRIVER [page 139])

Please note that in this chapter our concern will be with hardware details of the interface only. In PORT I / O [page 174] we consider software suitable for controlling such hardware.

Leave a comment

Your email address will not be published. Required fields are marked *