Witam wszystkich serdecznie.
Mam problem który mnie dręczy od kilku dni. Rozchodzi się o komunikację po kablu między Atmegą 16 a Terminalem PuTTY.
Napisałem "prosty" program który sprawdza jaki klawisz został wciśnięty na klawiaturze PC i gdy jest to "1" to zwiększa zmienną "a" i wyświetla jej wartość.
Opis problemu:
Przy wciskaniu klawisza "1" raz za razem co jakiś czas ale nieregularnie resetuje się procesor. Wnioskuje to po tym że wyświetla się napis "Start" na terminalu, który jest przed pętla "while(1)" .

Dane techniczne:
Atmega 16 na zestawie EvB 4.3 firmy AND-TECH
Kwarc zewnętrzny 16 Mhz
zestaw jest wyposażony w układ FTDI FT232RL
do procesora nie ma nic więcej podłączone chodzi tylko o czystą komunikacje.
Zasilanie z USB lub z 7805 - sytuacja ta sama
Prędkość transmisji też właściwe nie ma znaczenia może da się zauważyć że przy wyższych prędkościach jak by rest występował częściej. Ale jest to bardzo losowa sytuacja.
UBRR obliczam według tego poradnika:
http://mirekk36.blogspot.com/2013/01/rs232-ubrr-jak-prawidowo-obliczac-trick.htmljęzyk c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Wykorzystuję bibliotekę z niebieskiej książki (lekcja 07) zmieniłem tylko wzór na ten co wyżej.
plik main.c wygląda tak:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Bardzo proszę o pomoc w tym problemie pewnie jakiś babol w kodzie posiadam niebieską książkę przeczytałem dział od rs kilka razy ale nie mogę wychwycić problemu.