Witam,
Skonfigurowałem USART żeby wysyłać dane, do komputera lecą prawidłowo. Chciałem teraz odbierać dane z komputera, jednak chciałbym to zrobić w przerwaniu aby tam w tablicy buforować dane i co jakiś czas obrabiać je w głównej pętli programu. Problem jest z tym, że po uruchomieniu przerwań uzyskuję jakieś śmieci - tak mi się wydaje, bo nie wysyłam żadnych danych a indeks w poniższym kodzie rośnie cały czas:
Cytuj:
#define F_CPU 8000000UL <----- zapamiętaj TEGO NIGDY nie robi się w kodzie programu ! [mirekk36 ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Częstotliwość (8MHz na wewnętrznym kwarcu) i prędkość jest raczej dobrze liczona bo jak się pomyliłem z konfiguracją to Terminal.exe miałem krzaki gdy wysyłałem coś z procka.
A teraz nie wysyłając żadnych danych do proca, otrzymuje:
Cytuj:
index: 217
ramka: ?‹•áż°¸°C!®|?‹˝üřü…˙ţđ-˝üřţ~ţđ-ýţü˙˙đ-˙˙ţ˙đ-˙˙řK˙ř˙ü¤?‹•áż°˙
ňü<'úúřŹűţ°Z˝üüţ~˙ţđ}ţü˙ůđ˙ţ˙đ-˙đ-˙˙ü˙üü¤ţ°˙Źűţ:ŇúĆřzűţđ˙ţţ~˙ţř˙ţůđ˙đ-˙đ˙ţüüä˙†˙ź˙żű?˙˙řţţţ˙üţůđ˙ř˙řţüüöÇźq˙˙ř˙˙˙ţ˙üü˙ţţ˙~ţźü˙ţţ˙˙˙˙ç˙˙˙ěü?‹•ăż°»LjŹűüka:`ż°¸đüű|?‹ţüţŁŘţř˙
index: 171
ramka: ţţ~ţř˙˙˙˙ř˙ţ˙đmü÷ř˙üöż°˙đělü<'˙˙ĆŹű˙ř˙üüţţ˙řţü˙űř˙đ-ř˙˙ü˙üţö˙űţ˙':?˙˙˙ţ˙˙˙˙ţůřřýđ˙ţţţö†˙?˙ű?˙ü˙˙˙üţüřţüţ˙~źqü˙˙ţ˙ţţţţ˙ţ˙çţţ˙˙˙˙˙ěţż°»îł¶ükáżđúĂţţ°Zţţ˙>ţř˙
Ź?‹żüż°LSţŹűĽk+éű˙˙ř˙˙üţ˙đţüüö˙üřđělüľűĆźüüüţ˙ü˙˙űřřă˙˙ü˙ţ˙˙űţŰ˙y˙˙˙˙˙ţůüüřţţţ
index: 124
ramka: ˙Ç°úűžţ˙˙ü˙ţüüţ˙˙ţźü˙˙ţ˙˙˙˙ţß˙˙˙˙ţ˙ż°ű˙żţżđ˙řüţ°˙˙˙>ţř˙üţżüżđîż°ŹűĽ˙ďř˙˙řţ˙đţüţ˙ţđěüţ˙ç°ŁĆţţ˙ü˙˙üüŢ˙ü˙˙†żţ˙˙˙˙˙˙ţţţţěü?‹•ăż°.&jŹűüka:`˙żyţţţüü˙˙Ć˙˙˙˙ţß˙˙żđ˙küţÜ°˙˙ż˙üüţ˙ţřďűţř˙˙ü˙řüţ˙˙řţţ˙çđľŢ˙ü˙˙ţţ˙ü˙˙Ç˙˙˙˙˙˙˙ţěü?ż°.·ł¶ükáżđźżyţţ˙ţţ˙Ć˙˙˙˙˙ř
index: 60
ramka: üţÜř˙üüţ˙üűţřţřüţü˙˙çđ˙˙ţ˙ţţţÇ˙˙˙ţěü˙ř雳ţüđźżů˙˙˙˙Ć˙˙ř
Ź?‹˝üż°jŹűüka:`8˙ţ˙üü˙ţŘţř˙üţ˙˙˙çř˙ţţţţţěü˙ü˙żţüđ˙˙˙˙˙ĆĆ
Ź?›ţř" ţţ<'á˙ţ˙ţř˙üţ˙˙˙˙ţţţţţü˙żţţř˙˙˙Ćçüţmţřf°˙˙:˙˙˙üţúţţţ˙˙ţżţţřçţ˙ü÷ű˙zŹüţúţ˙˙ţżţţüßň˙ü÷˙Ćţúţ˙ţţü˙űţ˙Ćţ˙˙˙ü˙ű˙ç˙˙˙üď˙˙üţ˙Ć˙˙˙˙˙ř