Witam
Proszę o wskazówki dotyczące polecenia incr. W celu poznania i zrozumienia przerwań (jak to wygląda, z czym się je i jak liczy) od kilku dni wertuję co możliwe i czytam, czytam, a następnie próbuję...
"Urodził" mi się taki oto programik:
I w zasdzie nie przerwania sprawiają mi trudności(jak na razie) a nieszczęsne polecenie incrementacji.
Portd.7 sobie "miga" z jakąś tam częstotliwością. Nie za szybko. Chciałbym zliczać te impulsy. Niestety gdy
Case 1 :
Reset Portd.1
Set Portd.2
Set Portd.3
If Portd.7 = 0 Then Incr Czas
Czas kilkakrotnie "przeskakuje" całą wartość byte. Dochodzę do wniosku że INCR zlicza mi ilość cykli w czasie gdy portd.0=0.
Jak temu zapobiec?
Myślę kombinuję i nic z tego nie wychodzi... Zastosowałem takie coś:
I powiedzmy że spełnia założenia, poza tym że wystawia jedynkę na portd.7 na stałe. Ale jest to nie "eleganckie", wręcz brzydkie i nie funkcjonalne (w jakiejś większej aplikacji, nie testowej zamiast portd.7 zastosował bym przecież zmienną, a tego DEBOUNCE już nie przełknie). Zaczyna brakować mi pomysłów. Proszę o jakiekolwiek sugestie...
Proszę o wskazówki dotyczące polecenia incr. W celu poznania i zrozumienia przerwań (jak to wygląda, z czym się je i jak liczy) od kilku dni wertuję co możliwe i czytam, czytam, a następnie próbuję...
"Urodził" mi się taki oto programik:
Kod: text
I w zasdzie nie przerwania sprawiają mi trudności(jak na razie) a nieszczęsne polecenie incrementacji.
Portd.7 sobie "miga" z jakąś tam częstotliwością. Nie za szybko. Chciałbym zliczać te impulsy. Niestety gdy
Case 1 :
Reset Portd.1
Set Portd.2
Set Portd.3
If Portd.7 = 0 Then Incr Czas
Czas kilkakrotnie "przeskakuje" całą wartość byte. Dochodzę do wniosku że INCR zlicza mi ilość cykli w czasie gdy portd.0=0.
Jak temu zapobiec?
Myślę kombinuję i nic z tego nie wychodzi... Zastosowałem takie coś:
Kod: text
I powiedzmy że spełnia założenia, poza tym że wystawia jedynkę na portd.7 na stałe. Ale jest to nie "eleganckie", wręcz brzydkie i nie funkcjonalne (w jakiejś większej aplikacji, nie testowej zamiast portd.7 zastosował bym przecież zmienną, a tego DEBOUNCE już nie przełknie). Zaczyna brakować mi pomysłów. Proszę o jakiekolwiek sugestie...