This very simple design shows how to make a blinking LED using PIC16F684 MCU. In my previous post I’ve used PIC16F877/86 however most of basic circuits do not require a lot of I/O pins and PIC16F684 small 14 pin package is more than enough in this case. PIC16F684 microcontroller was chosen as a target device due to its wide operating voltage range 2.0 to 5.5v and high current source capability to drive LED directly. Also it has an internal 8Mhz oscillator thus reducing the number of external components. Only LED and current limiting resistor are required. Despite its low-pin count this microcontroller incorporates a lot of peripheral blocks like 10 bit A/C converter and enhanced PWM module making it a perfect candidate for prototype design. I’m planning to use it in my future projects and perhaps adapt some of my code to run on this device. Here is the schematic of this design. This time I’ve also shown how to connect PICkit 3 programmer to PIC16F684.
Assembly code is available on the next page.You can also dowload a HEX file here. ON/OFF LED frequency can be changed by modifing a delay function.