Using a DS1307 with a PIC Microcontroller

Sep 29, 2006

Abstract: This application note is intended to demonstrate an application using the DS1307 real-time clock (RTC) with a Microchip PIC microcontroller. The software example includes basic operating routines. A schematic of the application circuit is included.


This application note demonstrates how to use the DS1307 real-time clock (RTC) with a Microchip PIC16F628 microcontroller.

The example code, written in assembly code, includes a routine for reading the time and date from the RTC and a routine to write time and date data to the RTC from user entries.


The program uses two general-purpose port pins on the microcontroller to communicate with the DS1307 using the I²C serial interface. The microcontroller's internal UART drives two port pins, which are connected to a DS232 line driver/receiver. User inputs and data outputs from the program are passed through the RS-232 interface from a terminal emulator program on a PC to the microcontroller. The RS-232 DTR input line controls the microcontroller's reset input.

The microcontroller in this example is a PIC16F628. For information on the microcontroller used in this application note, including available programming tools, visit the Microchip web site.

The software is shown in Figure 1. A schematic of the circuit is shown in Figure 2.

Figure 1. Program Listing
Download (TXT, 10kB)

Figure 1. Program Listing

Figure 2. Schematic drawing of the DS1307 circuit used with a PIC microcontroller.
More detailed image (PDF, 126kB)

Figure 2. Schematic drawing of the DS1307 circuit used with a PIC microcontroller.

Related Parts
DS1307 64 x 8, Serial, I²C Real-Time Clock Free Samples  

Next Steps
EE-Mail Subscribe to EE-Mail and receive automatic notice of new documents in your areas of interest.
Download Download, PDF Format (39kB)  
Other Channels  Email this page to an associate or friend. 

APP 3921: Sep 29, 2006
APPLICATION NOTE 3921, AN3921, AN 3921, APP3921, Appnote3921, Appnote 3921