Witam,
Chce mierzyć długość trwania impulsu (stan niski) przy użyciu ATMEGA32.
Napisałem poprawnie działający programik, problem w tym, że w czasie pomiaru impulsu procesor nie może robić nic innego.
Do wykrycia stanu niskiego użyłem przerwań z INT1 a do odmierzania czasu trwania impulsu użyłem Timer2.
Czy jest jakiś sposób, żeby mierzyć czas trwania impulsu bez wstrzymywania pracy uC?
On Int1 Pomiar_impulsu
Config Timer2 = Timer , Prescale = 2
Pomiar_impulsu:
Disable Int1
Start Timer2
Do
Loop Until Pind.3 = 1
Stop Timer2
Enable Int1
Return
Próbowałem znaleść jakieś inne rozwiązanie ale nic nie moge wymyśleć, od amatorek ze mnie
Pozdrawiam
Piotr
Chce mierzyć długość trwania impulsu (stan niski) przy użyciu ATMEGA32.
Napisałem poprawnie działający programik, problem w tym, że w czasie pomiaru impulsu procesor nie może robić nic innego.
Do wykrycia stanu niskiego użyłem przerwań z INT1 a do odmierzania czasu trwania impulsu użyłem Timer2.
Czy jest jakiś sposób, żeby mierzyć czas trwania impulsu bez wstrzymywania pracy uC?
On Int1 Pomiar_impulsu
Config Timer2 = Timer , Prescale = 2
Pomiar_impulsu:
Disable Int1
Start Timer2
Do
Loop Until Pind.3 = 1
Stop Timer2
Enable Int1
Return
Próbowałem znaleść jakieś inne rozwiązanie ale nic nie moge wymyśleć, od amatorek ze mnie
Pozdrawiam
Piotr