logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[ATmega16][C] błędy w komunikacji USART

kmail890 30 Sty 2012 22:09 1212 4
REKLAMA
  • #1 10472124
    kmail890
    Poziom 2  
    Witajcie,

    Mam problem z komunikacją przez RS232, korzystam z przejściówki USB-RS232: http://www.recursion.jp/avrcdc/ , kit do samodzielnego montażu z AVT. Zainstalowałem najnowsze sterowniki i wgrałem najnowszy firmware do ATtiny2313 na przejściówce, jednak problem jest cały czas ten sam, nie jestem w stanie uzyskać prawidłowego echa, mikrokontroler zwraca inną wartość niż wysłana. Korzystam z kwarcu 11.0592MHz, także nie powinno być błędów.

    Kod:
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    przykładowa komunikacja (zainstalowałem wyświetlacz który wyświetla odebrany przez uC bajt):
    wyslane		uC		odebrane
    00000000	00000000	00000000
    00000001	01111111	01000000
    00000010	00111111	01100000
    00000011	01111110	00100000
    00000100	00011111	01110000
    00000101	01111101	01000001
    00000110	00111110	00110000
    00000111	01111100	00010000
    00001000	00001111	01111000


    Będę wdzięczny za pomoc :)
  • REKLAMA
  • #2 10473033
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • #3 10473593
    kmail890
    Poziom 2  
    Niestety to nic nie dało, MYUBRR był zdefiniowany dobrze, również przy ręcznym wpisaniu wartości MYUBRR z dokumentacji błędy są takie same
  • REKLAMA
  • #4 10473891
    kamyczek
    Poziom 38  
    Na moje oko źle ustawione źródło sygnału zegarowego i mikrokontroler pracuje na wewnętrznym oscylatorze RC z prędkością 1MHz lub pozostał zaprogramowany CKDIV8 i sygnał oscylatora jest podzielony przez 8 ! Proszę sprawdzić ustawienie bitów cksel i prescalera. Wystarczy odłaczyć kwarca jeśli układ dalej nadaje to problem leży właśnie w tym .
  • #5 10473981
    kmail890
    Poziom 2  
    W ATmedze16 nie ma chyba CKDIV8...? CKSEL3:0 mam na 1111, po odłączeniu kwarca układ przestał nadawać, także tutaj problemu chyba nie ma

    Dodano po 1 [godziny] 31 [minuty]:

    działa, trzeba było podpiąć RXD i TXD bezpośrednio do ATtiny2313 na przejściówce, z pominięciem MAX3232, dzięki za pomoc!
REKLAMA