Witam, mam taki problem i pytam czy wybrane przeze mnie rozwiązanie jest optymalne.
Musze zmierzyć czas trwania impulsu (logiczna jedynka).
W tym celu podaje ten sygnał na wyprowadzenie INT0.
Ustawiam przerwanie INT0 na zbocze narastające.
Jeśli pojawi się zbocze narastające w funkcji obsługi przerwania ustawiam flage ZN.
W pętli głównej sprawdzam flage ZN, jeśli jest ustawiona to rekonfiguruje INT0 na zbocze opadające
i włączam timer, który mierzy mi czas impulsu.
Jeśli dostane zbocze opadające w funkcji obsługi przerwania ustawiam flage ZO.
W pętli głównej sprawdzam flage ZO, jeśli jest ustawiona to odczytuje wartość z timera, która
jest czasem trwania mojego impulsu i znów rekonfiguruje INT0 na zbocze narastające.
I to byłby koniec cyklu pomiarowego.
Jeśli macie jakieś inne sugestie proszę o rade.
Pozdrawiam.
Musze zmierzyć czas trwania impulsu (logiczna jedynka).
W tym celu podaje ten sygnał na wyprowadzenie INT0.
Ustawiam przerwanie INT0 na zbocze narastające.
Jeśli pojawi się zbocze narastające w funkcji obsługi przerwania ustawiam flage ZN.
W pętli głównej sprawdzam flage ZN, jeśli jest ustawiona to rekonfiguruje INT0 na zbocze opadające
i włączam timer, który mierzy mi czas impulsu.
Jeśli dostane zbocze opadające w funkcji obsługi przerwania ustawiam flage ZO.
W pętli głównej sprawdzam flage ZO, jeśli jest ustawiona to odczytuje wartość z timera, która
jest czasem trwania mojego impulsu i znów rekonfiguruje INT0 na zbocze narastające.
I to byłby koniec cyklu pomiarowego.
Jeśli macie jakieś inne sugestie proszę o rade.
Pozdrawiam.