Re: Przerwanie ICP
: niedziela 14 lut 2016, 16:30
Witam.
Timer1 w trybie Input Capture reaguje na zbocze impulsu, który pojawi się na dedykowanym pinie wejściowym dla tego trybu. Rodzaj zbocza można sobie wybrać. W momencie nadejścia pierwszego impulsu timer rozpoczyna liczenie i liczy tak długo, aż się przekręci... i tak w kółko. każdy kolejny impuls pojawiający się na wejściu (ten pierwszy impuls również - gwoli ścisłości) powoduje wywołanie przerwania, oczywiście o ile je sobie włączyłeś, w celu wygodnego odczytu aktualnego stanu licznika tegoż timera. A więc nadchodzi impuls, wchodzisz w przerwanie i czytasz stan licznika.. i zapamiętujesz. Nadchodzi następny impuls, znowu wchodzisz w przerwanie i odczytujesz stan licznika. Z różnicy tych dwóch stanów licznika dowiesz się dokładnie, jaki był odstęp pomiędzy tymi dwoma kolejnymi impulsami. Przykład RC5 z BB jest naprawdę dobrze napisany, tylko go kilka razy przeanalizuj
Timer1 w trybie Input Capture reaguje na zbocze impulsu, który pojawi się na dedykowanym pinie wejściowym dla tego trybu. Rodzaj zbocza można sobie wybrać. W momencie nadejścia pierwszego impulsu timer rozpoczyna liczenie i liczy tak długo, aż się przekręci... i tak w kółko. każdy kolejny impuls pojawiający się na wejściu (ten pierwszy impuls również - gwoli ścisłości) powoduje wywołanie przerwania, oczywiście o ile je sobie włączyłeś, w celu wygodnego odczytu aktualnego stanu licznika tegoż timera. A więc nadchodzi impuls, wchodzisz w przerwanie i czytasz stan licznika.. i zapamiętujesz. Nadchodzi następny impuls, znowu wchodzisz w przerwanie i odczytujesz stan licznika. Z różnicy tych dwóch stanów licznika dowiesz się dokładnie, jaki był odstęp pomiędzy tymi dwoma kolejnymi impulsami. Przykład RC5 z BB jest naprawdę dobrze napisany, tylko go kilka razy przeanalizuj