Witam
Mam taki pytanie o sens flagi int0_flag z przerwania INT0, z przykładu RTC z niebieskiej książki.
Mianowicie, chciałem sobie dołożyć do zegarka setne części sekundy. Podokładałem odpowiednie zmienne, no i coś mi nie grało, bo sekundy leciały w porządku a setne części wskoczyły na 50 i koniec.
W końcu po małej zabawie z tym zmieniłem if (int0_flag ) na if (1), i setne sekundy zaczęły mi się ładnie pojawiać na LCD.
Co więcej gdy zakomentowałem przerwanie ISR( INT0_vect ) i wyciągnąłem przewód z wyjścia INT PCF-a, to układ mi równie ładnie zliczał czas wraz z setnymi. Więc tutaj jest moje pytanie, jaki ma sens stosowanie tego przerwania oraz tej flagi skoro bez nich działa dobrze, a z przerwaniem i flagą setne części zatrzymują się na wartości 50 (resztę tj.minuty zlicza OK) .
Mirek napisał w swojej książce że wyjście INT warto podłączać, ze względu na obsługę innych wyświetlaczy, no OK, tylko jak wtedy to obsłużyć żeby dobrze wyświetlało setne części sekundy?
Poniżej najważniejszy kawałek kodu programu, w tej wersji działa tak, że setne wyświetla cały czas na 50. Dużymi literami zaznaczyłem te modyfikacje(+ oczywiście odpięcie wyj INT), żeby działało OK
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Pozdrawiam