AVR-GCC, przerwanie od USARTa, konkurs i piwo w nagrode ;)

Witam! Ostatnio drobny b³¹d w programie kosztowa³ mnie ³adnych kilka dni my?lenia i nerwów. Doszed³em ju¿ o co chodzi, ale ku przestrodze innym... Og³aszam konkurs - pierwsza osoba która zgadnie co jest ?le w poni¿szym kodzie i powoduje wieszanie siê procka dostanie ode mnie piwo.

INTERRUPT (SIG_USART0_RECV) { if (UDR0==' ') odebrano=true; }

Podpowiedzi:

- zmienna odebrano jest zdefiniowana jako bool volatile

- reszta kodu jest ok, przerwania w³¹czone, odbiornik oczywi?cie te¿ itd.

- przerwanie powinno w przypadku odebrania spacji ustawiæ flagê odebrano

- w rzeczywisto?ci gdy _cokolwiek_ przyjdzie na USART0 (niekoniecznie spacja) procek (ATmega 162) wisi

Czekam na poprawne odpowiedzi!

--
Pozdrowienia
Dariusz Rzoñca
Reply to
Darek R.
Loading thread data ...

Witam!

Zamien INTERRUPT na SIGNAL !! Po szczegoly odsylam do FAQ projektu AVRSide...

Tomek

Reply to
Tomek

W artykule <c4i9dv$oh5$ snipped-for-privacy@nemesis.news.tpi.pl> Darek R. napisal(a):

Darek, musiałbyś to piwo skrzynkami nam rozdawać ;-))) Ale jaką człowiek ma satysfakcję (i pustkę, bo co nagle robić z nadmiarem wolnego czasu), kiedy taki błąd roztrzaska...

Pozdrawiam

Marcin Stanisz

Reply to
Marcin Stanisz

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.