Sdílejte chiptron.cz na sociálních sítích



RSS feeds

Propojení ATMega8 s PC přes USB pomocí UARTTisk

Tak moje programování pokročilo dále a dalším cílem bylo zdolání UARTu. Ukážu zde několik kódů. Ať od těch nejjednodušších až po složitější.
Celé jsem to zkoušel na vývojové desce
programoval upraveným programátorem BiProg a jako převodník jsem použil FT232RL, který naleznete na zde na stránkách.
Program pro komunikaci mezipočítačem a mikrokontrolérem jsem použil tento.


POZOR! Pokud používáte pod linuxem programátor BiProg a zároveň tento převodník, komunikace se může mlátit.
Proto první připojte programátor (ten se zapíše jako ttyUSB0[jak je nastavený v makefile]) a druhý připojte převodník. Program spusťtě jako root to tak:



Program tak dostane rootovská práva a při odpojení programátoru a znova připojení to nebude dělat "bordel".



Nejprve troška teorie. Takže nastavení UARTu je v programech okomentováno, co je povoleno a jak je to povoleno.


Registr UDR slouží k přijmu a zároveň i k vyslání znaku!


Registr UCSRA:



Bit RXC - indikátor, zda už byl přijat znak.


Bit TXC - nastavení, zda už byl odeslán znak.


Bit UDRE - indikátor, zda je připraven k přijmu nových dat.


Bit U2X - zdvojnásobení přenosové rychlosti.


Tabulky pro nastavení UARTu:






Registr UCSRB:



Bit RXCIE - povolení přerušení při přimu dat.


Bit TXCIE - povolení přerušení při odeslání dat.


Bit RXEN - povolení samotného příjmu.


Bit TXEN - povolení samotného odeslání.


Registr UCSRV:



Bit URSEL - nastavení přístupu k registru UCSRC nebo UBRRH.


Bit UMSEL - nastavení synchronního (1) a asynchronního režimu (0).


Bit UPM1:0 - nastavení parity.


Bit USBS - nastavení stop bitu.


Bit UCSZ2:1:0 - nastavení délky dat.



A nyní příklady:


Účel prvního programu je opravdu jednoduchý. Znak, který přijme od počítače, zase vrátí.


Druhý program přijme data z počítače a ať přijme jakýkoliv znak, pošle zpět znak "a".


Třetí program je obdobný, ale místo vracení jednoho znaku, vrací pole znaků, v tomto případě "ahoj".


Proto zde musela být vložena funkce, která rozděluje pole na jednotlivé znaky a posílá je zpět do počítače.




Čtvrtý program přijme z počítače znak a zobrazího na LCD displeji. To vidíte na videu


Displej je zapojen:



Zapojení vývodů. Data jsou posílany po 4-bitové sběrnici po portu B. Vývody E-Enable - PB7, RS-Reset - PB6, RW-Read/Write - PB5



Upozornění

Administrátor těchto stránek ani autor článků neručí za správnost a funkčnost zde uvedených materiálů.
Administrátor těchto stránek se zříká jakékoli odpovědnosti za případné ublížení na zdraví či poškození nebo zničení majetku v důsledku elektrického proudu, chybnosti schémat nebo i teoretické výuky. Je zakázané používat zařízení, která jsou v rozporu s právními předpisy ČR či EU.
Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva.
Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ.
8,177,186 návštěv