Mam pytanie jak w poniższym fragmencie kodu (Bascom AVR) zastąpić zwłokę czasową „waitms 750” opóźnieniem z timer-a.
Walczę z programem zegara i chciałem wykorzystać obsługę DS1820, ale konieczne jest zapewnienie DS.-owi zwłoki czasowej żeby sobie wszystko prawidłowo pomierzył. Zegar tradycyjnie zlicza impulsy od timer-a i nie wiem jak pozostawić DS.-a w spokoju na te 750 ms.
Tak przy okazji czy polecenie wait pomiesza mi zliczanie przez timer? Inaczej mówiąc czy polecenie wait zatrzymujące pętlę programu opóźni przerwanie generowane przez przepełnienie timer-a?
Fragment kodu wklejony, poniżej który chcę wykorzystać pochodzi z książki „Programowanie mikrokontrolerów AVR w języku Bascom” Marcina Wiązani.
Kod: Zaznacz cały
Sub Odcz_temp
1wreset
1wwrite &HCC
1wwrite &H44
Waitms 750
1wreset
1wwrite &HCC
1wwrite &HBE
Temperatura(1) = 1wread(2)
1wreset[ Dodano: 2008-11-18, 23:42 ]
Koledzy pomóżcie mi proszę jak obejść to nieszczęsne polecenie waitms 750. Obecność tej komendy wstrzymuje mi pętlę główną na niecałą sekundę i źle działa mi program. Nie wiem ja zrobić żeby procesor wysłał komendy przed poleceniem waitms do DS.-a a później dał mu spokój na te 750 ms.