Introduction to DS1307
- DS1307 is a Real-Time Control (RTC) IC. In DS1307, data is transferred in binary decimal coded, bits pattern. The data transfer rate in DS1307 is 56 bytes.
- The memory which is used in DS1307 is NV SRAM. NV SRAM is basically a non-volatile random access memory. In working, NV SRAM is quite similar to static random access memory(SRAM).
- DS1307 is an electronic device which plays an impotent role in real-time embedded systems. In embedded systems, we can get benefits of system clocks, students attendance time and date, we can also use it as an alarm for special work.
- DS1307 consists of a built-in power-sense circuit. The purpose of the built-in power-sense circuit is that if power gets cut-off, then it will automatically switch to back up power supply. In this way, our circuit remains in working condition.
- The protocol on which DS1307 works is I2C. I2C is a single line protocol in which data is transferred bit by bit along a single wire.
- Now let's have a look at DS1307 Pinout:
- DS1307 has a total of 8 pinouts, which are described below:
- PIN 1,2: These pins are for standard 32.768 quartz crystals. Both pins can be used as input and output for internal oscillator. If X1 is input then X2 is used as output.
- PIN 3: This pin is used for battery connection to DS1307.
- PIN 4: We have to apply Ground on this pin.
- PIN 5: This pin is labeled as SDA, which is short for Serial Data Line.
- PIN 6: It is used for serial clock input (SCL) and data synchronized.
- PIN 7: This pin is used for output square wave obtainer (SQW).
- PIN 8: At this pin, we provide an external power supply (Vcc).
- Now let's have a look at the pinout picture:
- I2C is a serial protocol in which data is transferred bit by bit.
- I2C combine the best feature of SPI and UART. By using it with one microcontroller we can control many slave devices.
- In I2C data is transferred in the form of messages, then we convert messages into data form. Each message has an address frame that contains a binary address of devices which under control.
- I2C protocol is cheaper to implement then SPI protocol. SPI control one slave device while I2C control more than one device.
- For better understanding lets have a look at the I2C protocol picture. Now let's have a look at working of DS1307
Working of DS1307
- For a better understanding of the working of DS1307 let's discuss a circuit in which we use it.
- In this simple circuit, we connect its first two pins which are X1 and X2 with 32.768 kHz crystal oscillator as the source for the chip.
- The third pin is connected with a battery of 3V.
- At Vcc, we give 5v supply and it can be given by using a microcontroller. If Vcc is not provided then read and write condition are inhibited.
- Starts and stop conditions are required when one device wants to communicate with other devices in the I2c protocol.
- For obtaining start condition we provide specific identification and address register to a device, by this, we get start condition.
- For a better understanding of stop and start condition lets have a look at clock figure.
- Let's have a look at Feature of ds1307.
Features of DS1307
- In this section, I have designed a table where I have placed all features of DS1307 along with their symbols and units.
|2||Logic 1 Input||VIH||2.2||V|
|3||Logic 0 Input||VIL||+0.8||V|
|4||VBAT Battery Voltage||VBAT||3.5||V|
|7||Logic 0 OUTPUT||VOL||0.4||V|
|8||Active Supply Current (fSCL = 100kHz)||ICC||1.5||mA|
|10||VBAT Leakage Current||IBATLKG||50||nA|
|11||Power-Fail Voltage (VBAT = 3.0V)||VPFtd>||1.284 x VBAT||V|
|12||VBAT Current (OSC ON); SQW/OUT OFF||IBAT1||500||nA|
|13||VBAT Current (OSC ON); SQW/OUT ON (32kHz)||IBAT2||100||nA|
|14||VBAT Data-Retention Current (Oscillator Of)||IBATDR||100||nA|
|15||SCL Clock Frequency||fSCL||100||kHZ|
|16||Bus Free Time Between a STOP and START Condition||tBUF||4.7||us|
|17||Hold Time (Repeated) START Condition||tHD:STA||4||us|
|18||LOW Period of SCL Clock||tLOW||4.7||us|
|19||HIGH Period of SCL Clock||tHIGH||4||us|
|20||Setup Time for a Repeated START Condition||tSU:STA||4.7||us|
|21||Data Hold Time||tHD:DAT||0||us|
|22||Rise Time of Both SDA and SCL Signals||tR||1000||ns|
|23||Fall Time of Both SDA and SCL Signals||tF||300||ns|
|24||Setup Time for STOP Condition||tSU:STO||4.7||us|
Applications of DS1307
- These are some applications of DS1307, Lets disuses them.
- As we know DS1307 is used to tell continues time and date showing purpose, that way it is an electronic device such as a computer, mobile, and laptops.
- By using it with Arduino we can use it in several projects related to data logging, alarm, clocks, etc.