Witam
Męczę si z transmisją danych z PC do ATmegi16. Założenie jest takie ,że chcę wysyłać algorytm funkcjonowania programu w procesorze w postaci procedur. Pisałem wcześniej przy okazji innego problemu. Teraz z PC-ta chciałbym wysłać konfigurację. Ta konfiguracja zapisze się w EEPromie i oczywiście w pamięci RAM. Cały problem polega na tym ,że brakuje mi wiedzy na temat odbioru danych przez USART. Oczywiście USART działa , jest zainicjowany, mogę wysyłać do PC-ta jakieś napisy ale nie za bardzo rozumiem jak odbierać dane i jak je obrobić. Chodzi o to ,że doszedłem do tego ,żę rejestr UDR "trzyma" sobie odebraną daną w postaci chara.
No i oczywiście brnę dalej. Zainicjowałem przerwania i jak wyślę sobie z terminala literkę to dalej na wyświetlaczu wyświetla mi się literka. No wszystko OK tylko co dalej ? Jakbym chciał wysłać np. liczbę 1000000 ? Pewnie od strony PC zostanie to pokrojone na bajty i w postaci 0F 42 40 po kolei wysłane. No i tu kapota. Powinienem stworzyć jakiś bufor gdzie gromadziłbym te dane ? Jak ten bufor później przerobić ,żebym dostał tą liczbę 1000000 w postaci np. ulong ? Na początku jeszcze wymyśliłem ,że żeby urządzenie odbierało musi dostać znak "<" jako początek transmisji a potem ">" jako koniec
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Potem
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Następnie w PC wysyłam ">120<" wrzucam to na wyświetlacz i otrzymuję .... <<<<< ( na forum nie ma emotikona główki walącej w ścianę ale właśnie to wtedy czuję)