Szanowni Forumowicze,
postawiłem sobie za zadanie opanowanie UARTa w prockach xmega, co nie powinno być zadaniem bardzo trudnym. Na początek zajrzałem na stronę producenta i znalazłem pdf z opisem UARTa i przykładowy kod dla wykorzystania sprzętowego na przerwaniach i software'owego. Zacząłem od przerwań. Utworzyłem projekt i skompilowałem program. Oto kod pliku main.c:
W ramach debuggera (pod koniec programu w miejscu: // sprawdzenie poprawności transmisji) zapalam diodę jeśli wszystko poszło jak trzeba. I dioda się zaświeca, gdy mam zwarte piny 2 i 3 portu C.
Jednakże ja chcę połączyć się z komputerem przez FTDI. I tu mam problem. Podpięcie linii RxD i TxD do mostka nic nie daje, nie mam nic na konsoli w komputerze. Potem wyłączyłem ten fragment i chciałem użyć funkcji PutChar i dalej nic nie widzę na monitorze. FTDI jest sprawne, bo w przypadku Atmegi8 nie mam problemu z transmisją.
Podejrzewam, że coś nie tak napisałem w kodzie, tylko nie wiem co. Czy w ogóle powinienem coś widzieć na terminalu przy tak napisanym programie?
Bardzo proszę o wskazówki co robię źle i pozdrawiam
W załącznikach dorzucam pozostałe pliki nagłówkowe wraz z projektem.
postawiłem sobie za zadanie opanowanie UARTa w prockach xmega, co nie powinno być zadaniem bardzo trudnym. Na początek zajrzałem na stronę producenta i znalazłem pdf z opisem UARTa i przykładowy kod dla wykorzystania sprzętowego na przerwaniach i software'owego. Zacząłem od przerwań. Utworzyłem projekt i skompilowałem program. Oto kod pliku main.c:
Kod: C / C++
W ramach debuggera (pod koniec programu w miejscu: // sprawdzenie poprawności transmisji) zapalam diodę jeśli wszystko poszło jak trzeba. I dioda się zaświeca, gdy mam zwarte piny 2 i 3 portu C.
Jednakże ja chcę połączyć się z komputerem przez FTDI. I tu mam problem. Podpięcie linii RxD i TxD do mostka nic nie daje, nie mam nic na konsoli w komputerze. Potem wyłączyłem ten fragment i chciałem użyć funkcji PutChar i dalej nic nie widzę na monitorze. FTDI jest sprawne, bo w przypadku Atmegi8 nie mam problemu z transmisją.
Podejrzewam, że coś nie tak napisałem w kodzie, tylko nie wiem co. Czy w ogóle powinienem coś widzieć na terminalu przy tak napisanym programie?
Bardzo proszę o wskazówki co robię źle i pozdrawiam
W załącznikach dorzucam pozostałe pliki nagłówkowe wraz z projektem.
