AVR - wypadanie przerwań

Mierzę sobie na Atmega32 częstotliwość impulsów (a konkretnie to okres, czyli czas pomiędzy 2 kolejnymi impulsami) - na przerwaniu zegara śmiga licznik, a przerwanie zewnętrzne (INT0) zapamiętuje stan tego licznika i go zeruje. Jednak coś jest nie tak i jeden na kilkanaście / kilkadziesiąt impulsów jest gubiony. Co może być przyczyną? Wystąpienie w tym samym czasie przerwania zegarowego i zewnętrznego? Jeśli tak, to jak rozwiązać problem?

Dariusz Żołna

Reply to
Dariusz Zolna
Loading thread data ...

Dariusz Zolna napisał(a):

No i sam sobie odpowiedziałem - wystarczyło zmienić przerwania na blokujące.

Dariusz Żołna

Reply to
Dariusz Zolna

Użytkownik Dariusz Zolna napisał:

Witam A masz inne źródła przerwań ? Ewentualnie blokuj je na czas pomiaru. Lepiej do tego celu zastosować rejestr ICP, który jest sprzęgnięty z TIMER1. Realizuje Twój problem całkowicie sprzętowo. Wystarczy odczytać zawartośc rejestru ICP.

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.