Poprawiłem tytuł na bardziej oddający problem i zgodny z regulaminem p. 3.1.15.
Ponadto proszę się zapoznać z zasadami korzystania z działu:
https://www.elektroda.pl/rtvforum/topic349089.html
LordBlick
Witajcie.
Oświećcie mnie dlaczego ten program nie działa tak jak powinien.
Przełączam przełącznik który pin PB1 zwiera do masy (pojawia się zbocze opadające na INT0) program przechodzi do obsługi przerwania gdzie zatrzymuje silnik. Przełączam stan pinu PB4 na przeciwny, silnik rusza.
Teraz działanie poprawne powinno być takie że przerwanie powinno być wyzwolone dopiero po kolejnej zmianie na pinie PB1 z stanu wysokiego na niski (wygenerowanie opadającego zbocza).
Natomiast nie wiem dlaczego przerwanie generowane jest również przy zmianie stanu pinu PB1 z niskiego na wysoki czyli wygenerowaniu zbocza narastającego.
Dodam że pin PB1 jest wewnętrznie podciągnięty do plusa zasilania ale podciągnięcie zewnętrznym rezystorem nic nie zmienia.
Poniżej program.
[/code]
Ponadto proszę się zapoznać z zasadami korzystania z działu:
https://www.elektroda.pl/rtvforum/topic349089.html
LordBlick
Witajcie.
Oświećcie mnie dlaczego ten program nie działa tak jak powinien.
Przełączam przełącznik który pin PB1 zwiera do masy (pojawia się zbocze opadające na INT0) program przechodzi do obsługi przerwania gdzie zatrzymuje silnik. Przełączam stan pinu PB4 na przeciwny, silnik rusza.
Teraz działanie poprawne powinno być takie że przerwanie powinno być wyzwolone dopiero po kolejnej zmianie na pinie PB1 z stanu wysokiego na niski (wygenerowanie opadającego zbocza).
Natomiast nie wiem dlaczego przerwanie generowane jest również przy zmianie stanu pinu PB1 z niskiego na wysoki czyli wygenerowaniu zbocza narastającego.
Dodam że pin PB1 jest wewnętrznie podciągnięty do plusa zasilania ale podciągnięcie zewnętrznym rezystorem nic nie zmienia.
Poniżej program.
Kod: text