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

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

Sdílejte článek:

Související články

Všemi směry propíraný jednotný konektor do všech malých a středních výrobků je USB-C.

Konstrukce je pouze ukázka funkčnosti PWM.

Trochu starší článek, který se ale ani dnes neztratí.

Hned v první řadě bych chtěl říci, že cílem NEBYLA extrémní přesnost, ale cena.