Tag Archives: PIC16f684

Automatic Pet Feeder

This project is an automatic pet feeding system using NXP Semiconductors’ PCA8565. The PCA8565 is a CMOS1 real time clock and calendar optimized for low power consumption. A programmable clock output, interrupt output and voltage-low detector are also provided. All address and data are transferred serially via a two-line bidirectional I2C-bus with a maximum bus speed of 400kbps. The built-in word address register is incremented automatically after each written or read data byte. It provides a year, month, day, weekday, hours, minutes and seconds based on a 32.768kHz quartz crystal. It features alarm and timer functions, low current, and extended operating temperature range of -40 degrees Celsius to +125 degrees Celsius. It further contains an 8-bit year register that can hold values from 00 to 99 in BCD format. It also compensates for leap years, thus leap year correction is automatic.

The electronic part of the device is just an alarm clock based on NXP PCA8565. The alarm initiates an interrupt that awakes the microcontroller. The later one sends a signal to the motor to control its forward and reverse mechanism. The dc motor must make a full turn and stop in the initial position to be ready for the next loading. This is achieved by an opto-interrupter OBP625, which provides a feedback to the microcontroller to stop powering the motor. The motor itself is controlled by PWM based on the timer IC in order to slow it down to a practical speed. The current time and the alarm time are displayed by a 4-digit LED display combined from two HDSP-521E 2-digit displays. Time to display is selected by a 3-state slider connected to pins RA0 and RA1 of PIC16F684. In the middle position of this switch both inputs are pulled up (internally). Two buttons at inputs RA4 and RA5 accomplish time setting and alarm setting. The LED display is controlled by SAA1064. The controller and PIC communicate via the I2C interface. The display is turned OFF after 10 seconds upon release of any button. This is achieved by simply turning OFF the controller and display power by a MOSFET IRLML6402 when the voltage on pin RC2 of PIC becomes 5V.

Food and water are two essential elements for keeping pets happy and healthy. But what happens if you have to work all day, can you imagine that starving look when you come home? As a pet owner, you have to find a way that your pet is fed on time. Keep your pet well fed when you’re away using the automatic pet feeder. You never have to worry about rushing home or working late. It ensures that your pets never miss a meal and maintain their regular eating schedule.

Automatic Pet Feeder – [Link]

Build a digital spirit level using a SCA610 accelerometer

embedded-lab.com writes:

A bubble or spirit level meter is a handy tool to find whether a surface is horizontal or vertical. It is often carried by civil engineers, mechanical engineers, surveyors, carpenters, and many other professionals whose work involve precise alignments of horizontal and vertical planes. In this project, Shawon Shahryiar demonstrates how to make an electronic spirit level a Microchip PIC16F684 micro, a SCA610 accelerometer and a handful of other discrete components.

Build a digital spirit level using a SCA610 accelerometer – [Link]

PIC16F684 based Digital Amp Meter

coolcircuit.com writes:

Here is a digital Amp meter based on PIC16F684 and ACS712 current sensor. The measured DC or AC current will display on 3 digits 7-segment with resolution 100 mA. The current sensor in this project is ACS712ELCTR-30A-T from Allegro(I got from ebay). It can measure the AC or DC current up to 30A with 66 mV/A output sensitivity. This project identical to my volt meter project except the microcontroller not same.

PIC16F684 based Digital Amp Meter – [Link]

PIC16F684 Digital Thermometer


This project uses a standard (PDIP) PIC16F684 as well as a standard thermistor. It will tell the temperature between 0 and 140 farenheit. The temperature is displayed on a 3 digit, 7 segment display. This project is actually quite easy to build; the hardest part is calibrating the thermistor…

 It is a thermometer with a digital readout. It uses a PIC16F684 and a typical thermistor. I have included step by step instructions as well as source code, layouts, artwork etc. Enjoy

PIC16F684 Digital Thermometer – [Link]

LED Chaser Face


The face is controlled by a SMD (surface mount) PIC16f684 microcontroller. I wanted to try my hand at surface mount chips and I thought this would be a good introduction. The LEDs follow various patterns (ie. chasing each other, flashing in unison, checkeboard flashing, etc.) It is also very easy to add your own patterns. Overall, this is a very easy project, and a good one if you want to try your hand at SMD microcontrollers.

LED Chaser Face – [Link]