- Discrete LEDs
- Dot/Bar LEDs
- Matrix LEDs
- 7-Seg LEDs
- Serial -- Software
- Serial -- Hardware
- RS-232 via the MAX3232
- I2C -- EEPROM
- I2C -- DS1307 Real Time Clock
- 1-Wire -- DS18B20, Powered, Single-Drop
- 1-Wire -- DS18B20, Powered, Multi-Drop
- 1-Wire -- DS18B20, Parasitic, Multi-Drop
- TI Link Protocol -- Calculator Demo
- Infrared Communication
- MIDI -- Output Demo
- MIDI -- Input Demo
- MIDI to Analog Synth
Okay, okay, an incandescent lamp isn't a motor, so why is this exercise in the motor section? Well mostly because the means of controlling it use much the same parts employed with motors. Besides, a lamp is slightly inductive, don't you know. Anyway, this project really didn't fit anywhere else, so here 'tis.
You'll see in the schematic that there are two options:
In option (a) a beefy Darlington transistor is pressed into service. The lamp I've specified draws three-quarters of an amp at five volts, but Darlingtons are capable of much more. And obviously, this is a DC circuit. If you're really going to go with a 110VAC bulb, then you need to consider some serious safety engineering, things like opto-couplers, relays and so forth.
Option (b) employs a power MOSFET. Be aware that these come in all sorts of flavors. The one I've specified (FQP30N06L) is ideal since it turns on in a digital fashion and is guaranteed to come on fully with the +5V driving its gate.
The exercise simply blinks the bulb under PIC control. Not too exciting, but it does illustrate how to manipulate a current sucking device that would fry a port pin instantly.
Click to get the source code.
Click to get the schematic PDF.
Next Project: Motor Speed Control