Czas w CA80.
Bardzo przydatną funkcją CA80 jest odmierzanie czasu. Umożliwia to sterowanie urządzeniami według ustalonego harmonogramu. CA88 jest gotową do wykorzystania aplikacją.
Czas ustawiony przez "bootloader".
Niestety po włączeniu komputera czas należy ustawić ręcznie. W latach osiemdziesiątych nie było prostych i tanich rozwiązań tego problemu, więc jedynym zabezpieczeniem przed nieplanowanym resetem było zasilanie akumulatorowe. Dzisiaj jest wiele możliwości, zwłaszcza w modułowych systemach RCbus.
Klony CA80 wyposażone w "bootloader" mają funkcję ustawiania czasu, który jest odmierzany w module RTC-DS3231. Po włączeniu zasilania przesyłane są wyspecyfikowane w pliku ca80.txt pliki *.hex, a następnie czas. W klonie "mini" wykorzystałem moduł z baterią CR2032, którą łatwo można wymienić, ale w CA80-RCbus moduł DS3231 for Pi. Zdarza się, że wlutowana tam bateria jest rozładowana już po rozpakowaniu nowego modułu. Prawdopodobnie zbyt długo leżakowały one w magazynach. Postanowiłem wymienić baterię, ale nie mogłem znaleźć nawet informacji, jakiego typu użyć. Rozbroiłem więc moduł. Po oderwaniu blaszek ukazał się napis CR927 (jeżeli dobrze odczytałem). Nie miałem takiej, więc wziąłem najmniejszą litową, jaką znalazłem w szufladzie.
Wymiana baterii nie jest trudna.
Nie mam zgrzewarki do ogniw, więc przymocowałem odzyskane blaszki koszulką termokurczliwą. Oczywiście najpierw odizolowałem krawędź baterii, żeby uniemożliwić przypadkowe zwarcie. Na koniec przylutowałem nową baterię do modułu. Po wymianie baterii konieczne jest ponowne zaprogramowanie układu DS3231. Już dawno napisałem krótką procedurę wysyłającą czas systemowy do bootloadera. Musiałem wymyślić mechanizm przesyłania danych do MIKSID-a, więc przy okazji dodałem i tę funkcję. Komunikacją z ATmegą zajmuje się program MSID6_4, który jest w repozytorium. Żeby go użyć, należy uruchomić CA80 z 64 kilobajtami RAM lub z EPROM-em 27128 zawierającym ten program. Na karcie SD powinien być zestaw plików z repozytorium. Należy ustawić zegar ręcznie według wiarygodnego źródła. (Zlecenia *1 i *2). Nie musimy się przejmować dniem tygodnia, bo zostanie on obliczony na podstawie daty. Kiedy CA80 ma już właściwą godzinę, wywołujemy wspomnianą procedurę zleceniem *G - [G][3E15][=]. W celu sprawdzenia możemy zrobić reset modułu "boot". Oczywiście nowe moduły programujemy tak samo.
Procedura przesyłająca czas.



Komentarze
Prześlij komentarz