Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

Impulsator, przerwania, zmienne - problem

audioamp
-
-
Posty:1
Rejestracja:27 mar 2003, o 12:36
Kontaktowanie:
Impulsator, przerwania, zmienne - problem

Postautor: audioamp » 26 lip 2005, o 16:14

Mam kłopot z obsługą impulsatora. Napisałem taki oto program który generalnie działa prawidłowo:


Sub Power_on
Do
Portb = Wejscie
Loop
End Sub

Sub Encoder:
Disable Int1
Enable Interrupts
If Pind.4 = 0 Then Incr Chanel
If Pind.4 = 1 Then Decr Chanel
If Chanel >= 7 Then Chanel = 1
If Chanel <= 0 Then Chanel = 6
In_encoder:
Select Case Chanel
Case 1 : Wejscie = 1
Case 2 : Wejscie = 2
Case 3 : Wejscie = 4
Case 4 : Wejscie = 8
Case 5 : Wejscie = 16
Case 6 : Wejscie = 32
Case Else : Wejscie = 1
End Select
Waitms 50
Enable Int1
Goto Power_on
End Sub


Wszytkie zmienne zadeklarowałem jako Byte, procedura Encoder wywoływana jest na przerwanie INT1. Problem jest taki: po wykonaniu 60 impulsów obojętnie w którą stronę na porcie pojawia się najpierw liczba 81 (61 impuls) potem 54 (62 impuls) a następnie 1 (63 impuls). Dalej sytuacja się powtarza co 60 impulsów.
Co może być przyczyną takiego zachowania programu :?

Wróć do „Projektowanie PCB, programy EDA, CAD, narzędziowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 25 gości