Witam.
Próbuję opanować USART w ATMega 8. Wewnętrzny oscylator 1MHz. Z komunikacją nie mam większych problemów. Jednak zastanawia mnie ustawianie prędkości transmisji. W moim programie ustawiłem prędkość transmisji na 9600bps. Rozumiem że 9600 bps oznacza wysłanie 9600 bitów w ciągu sekundy (jeżeli źle rozumuję to proszę o poprawienie mnie), a więc niespełna 1000 liczb 8 bitowych.
Jednak z obserwacji w urządzeniu wynika, że pracuje ono dużo wolniej.Dlatego mam kilka pytań do bardziej doświadczonych kolegów.
Oto kod programu:
Obsługa USART
Ogólnie zasada jest taka: wysyłam liczbę i po wysłaniu zwiększam licznik i wyświetlam.
Obserwując zmiany na wyświetlaczu zauważyłem, że jest wysyłanych ok 7 liczb na sekundę.
Więc najważniejsze pytanie.
Z jaką ja prędkością to w końcu wysyłam?? Czy na pewno 9600bps czy może coś pokręciłęm.
Proszę o pomoc i pozdrawiam[/code]
Próbuję opanować USART w ATMega 8. Wewnętrzny oscylator 1MHz. Z komunikacją nie mam większych problemów. Jednak zastanawia mnie ustawianie prędkości transmisji. W moim programie ustawiłem prędkość transmisji na 9600bps. Rozumiem że 9600 bps oznacza wysłanie 9600 bitów w ciągu sekundy (jeżeli źle rozumuję to proszę o poprawienie mnie), a więc niespełna 1000 liczb 8 bitowych.
Jednak z obserwacji w urządzeniu wynika, że pracuje ono dużo wolniej.Dlatego mam kilka pytań do bardziej doświadczonych kolegów.
Oto kod programu:
Kod: C / C++
Obsługa USART
Kod: C / C++
Ogólnie zasada jest taka: wysyłam liczbę i po wysłaniu zwiększam licznik i wyświetlam.
Obserwując zmiany na wyświetlaczu zauważyłem, że jest wysyłanych ok 7 liczb na sekundę.
Więc najważniejsze pytanie.
Z jaką ja prędkością to w końcu wysyłam?? Czy na pewno 9600bps czy może coś pokręciłęm.
Proszę o pomoc i pozdrawiam[/code]
