ogg dear i never noticed the 4k7 resistor... how vital is this to have? i connect the resistor to the SDA only according to the datasheet, what does the other end of the resistor connect to? +5v?
and yes ive searched for 1307.
paul
ogg dear i never noticed the 4k7 resistor... how vital is this to have? i connect the resistor to the SDA only according to the datasheet, what does the other end of the resistor connect to? +5v?
and yes ive searched for 1307.
paul
Hi Snood,
Ohh... yeah, those pullups are important! Hook them from the SDA and SCL lines to your positive rail that powers the PIC and 1307.
Here's a bit from the data sheet about starting up a 'new' 1307:
"Bit 7 of register 0 [seconds] is the clock halt (CH) bit. When this bit is set to a 1, the oscillator is disabled. When cleared to a 0, the oscillator is enabled."
Since you set 'seconds' to 0, the clock should be enabled, assuming the the I2C write command is working properly.
Arch
No pullUp, No SuccessOriginally Posted by snood
what else could you connect a PulUp to?Originally Posted by snood
Well, then everything should be pretty clear.Originally Posted by snood
(if you have taken the time to read through the threads)
Last edited by NavMicroSystems; - 24th April 2005 at 01:25.
regards
Ralph
_______________________________________________
There are only 10 types of people:
Those who understand binary, and those who don't ...
_______________________________________________
please..... i didnt come here to be put down. can you explain to me what the purpose of a pullup resistor is and why it is needed in this instance.
Snood
edit:
also... as far as initialising the chip goes.... apparently i have to change bit 7 of the seconds byte to 0 for it to "turn on"..... corect me if i'm wrong but surely i'm already doing this by writing "0" as the byte?
Snood
Last edited by snood; - 24th April 2005 at 12:28.
OK, I'll try it in brief:Originally Posted by snood
A PullUp is required when you have an output pin that is open Drain (or open Collector)
An open collector output is "open" if not set "LOW"
The PullUp pulls this open Pin "HIGH"
The SDA pin on an I2C device is such an open Drain output as it is bi-directional.
Melanie has written an excellent example for the DS1307, see: MN1307.txt
Another thread about RTC's with a lot of useful information can be found here
Take some time to read it from the beginning, you can really learn a lto from it.
regards
Ralph
_______________________________________________
There are only 10 types of people:
Those who understand binary, and those who don't ...
_______________________________________________
so would not having the resistors in explain why i'm getting "00" displaying on my LCD for all the values afrer trying to read?
i ask again.... would i be right in just writing "0" for the seconds value in order to initialise it. i figure this cos surely BCD for 0 is %00000000 and the 7th bit is 0 so this should work... right?
Snood
could anyone confirm the above.... i kinda need to know quite quickly.
Snood
That'll work fine to set bit.7 assuming your I2C write is working properly.
Program the chip and give it a go.
Arch
Bookmarks