ATMEL 2051 - przerwanie zewnętrzne

Witam!

Zrobiłem prosty układ na 2051 który po wykryciu zbocza opadającego na wejściu INT0 (przerwanie zewnętrzne) wywołuje impuls o określonej szerokości na jednym z pinów. Wszystko chodzi ładnie i pięknie do czasu gdy wejście INT0 dostanie stan L przez dłuższy czas. Nie wiem dokładnie ile - jakieś 1 - 2 sekundy. Procek przestaje reagować na impulsy na INT0. Po krótkim odczekaniu bez podawania impulsów (też ok. 2 sekund) wszystko wraca do normy. No i teraz pytanie dlaczego? Czy to wina układu czy programu? Bo mi to wygląda na układ. Drugi zachowywał się tak samo. Trochę to dziwne, bo skoro wejście INT0 jest ustawione na zbocze opadające to czas trwania stanu L nie powinien mieć znaczenia. Wiem że mogę skracać impulsy wejściowe ale ciekawi mnie gdzie jest problem. Może ktoś miał coś podobnego.

Reply to
Prox
Loading thread data ...

upewnij się czy bit 0 rejestru tcon jest ustawiony na 1. jak dla mnie to przerwanie reaguje na poziom niski i odpala Ci przerwanie w przerwaniu. tylko, że wtedy powinien przepełnić się stos.

pozdrawiam PC

Reply to
Pablo_C

Właśnie jest ustawiony na 1.

Reply to
Prox

Zrobiłem jeszcze kilka prób. Otóż w procedurze przerwania umieściłem wywołanie procedury wypisującej cyfrę na LCD. Jak się procek zblokował to już nie reagował na impulsy wejściowe i na LCD nie pojawiały się kolejne cyfry. Oznacza to, że procedura przerwania nie była wywoływana. Co ciekawe pozostała część programu pracowała bez zarzutu. Mam tu na myśli przyciski podpięte bezpośrednio pod piny 2051. Wciskanie ich zmieniało dane na wyświetlaczu LCD.

pozdrawiam Prox

Reply to
Prox

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.