Witam.
Chciałbym wam zaprezentować bibliotekę do obsługi zegara czasu rzeczywistego (RTC) PCF85
63. W książce (
bluebook - jeżeli dobrze pamiętam ) pokazana jest natomiast obsługa brata bliźniaka PCF85
83.
Wymienię główne różnice w tych dwóch ukladach, żeby później nie było problemu z podłączeniem:
- '63 nie posiada nóżki adresowej - adres układu jest stały - natomiast posiada zamiast niej wyjście CLKOUT, oraz
- pin 7 został zamieniony z pinem 3.
Kolejna różnica to kondensator, który jest podłączony do OSCI, z drugiej strony ma być podłączony do masy nie do zasilania jak to było w PCF8583.
Następne różnice występują w rejestrze układów. Przykładowo: układ PCF8563 posiada dodatkowo zapis roku w formacie np. 14 (od 00 do 99).
W moich bibliotekach nie przewidziałem funkcji alarmu czy timera.
Biblioteka służy jedynie do odczytu, oraz zapisu daty i czasu do rtc.
Plik pcf8563p.h
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Plik pcf8563p.c
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Obsługa biblioteki:
Na początku programu należy zarejestrować podstawowe funkcje obsługujące I2C (TWI). Dokonuje się to tak:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Dzięki temu program działa z każdą poprawnie napisaną biblioteką do obsługi I2C (TWI).
Przed aktualizacją daty, bądź czasu należy wywołać funkcję:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Dane odczytujemy z zmiennej callendar_rtc, np:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Aby zapisać nową datę do zegara należy najpierw zapisać do zmiennej callendar_rtc nowe wartosci, np:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Następnie wywołujemy funkcję:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
I dane są zapisane w naszym układzie.
Proszę o jakąkolwiek opinię.
P.S.
W razie jakichkolwiek pytań, uwag, spostrzeżeń - pisać.
Jeżeli gdzieś się w czymś pomyliłem to pisać.