Ich nehme an, dass du hiermit unterscheiden möchtest, welcher Pin ausgelöst hat und einschränken willst, dass nur die fallende Flanke zählen soll.Zitat von Carlos31
Für eine robuste Erkennung wird dies aber nicht reichen.
Stell dir nur vor, PinB.0 geht auf 0, die anderen bleiben auf 1. Dann wird die ISR aufgerufen und da PinB.0 = 0 ist, wird die Master Variable erhöht.
Wenn jetzt später PinB.1 auf 0 geht, wird wieder die ISR aufgerufen. Wenn PinB.0 jetzt immer noch auf 0 ist, wird Master wieder erhöht. Danach wird dann Slave_links auch erhöht.
Damit dies nicht passiert, könntest du dir z.B. den aktuellen Status der Pins merken und beim nächsten Aufruf der ISR überprüfen, ob der Status sich geändert hat. Nur dann wird die entsprechende Variable inkrementiert.
Ist das eigentlich gewollt, dass du nicht den PullUp von PinB.0 sondern den von PinB.3 einschaltest?
Lesezeichen