Witam mam problem. Chciałem uruchomić transmisję RS232 z pomocą przerwania odbioru RXC, aby odbiór odbywał się w tle. Niestety to przerwanie w ogóle się nie wykonuje i nie wiem dlaczego. Wcześniej zrobiłem komunikację między PC a Atmegą8 w trybie pollingu i było wszystko okej. Czyli terminal w PC jest dobrze ustawiony, i cały układ jest dobrze podłączony. Użyłem przejściówki RS232-USB na układzie PL-2303HX. Poniżej zamieszczam kod,
jest to plik uart.c
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
dodatkowo mam jeszcze plik main.c
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Powyżczy program powinien wyświetlać: początkowy numer bufora, końcowy numer bufora, ilość wykonanych przerwań, oraz rejestr UCSRA. I wygląda to następująco. Jak wgram program do Atmegi wyświetla mi się takie coś:
a kiedy wyślę jakiś znak z terminala do atmegi to mam takie coś:
i ten rejestr już się nie zmienia, wskazuje to że są jakieś pliki do odebrania ale procesor nie umi sobie z tym poradzić. Bardzo bym prosił o pomoc XD
|