A mikrokontrollerek usart interfészének használata avr - mikrokontrollerek és technológiák

Az UART csatornán továbbított adatok áramlása. egy parcellák vagy keretek gyűjteménye. Minden keret tartalmaz egy indítóbit, nyolc vagy kilenc adatbitet és egy stopbitet. A kezdeti bit logikai szintje 0, a stop bit logikai. Az adatátviteli sebesség nagymértékben változhat, a nagy átviteli sebességek pedig a mikrokontroller viszonylag alacsony órajelével is elérhetők.
Soros interfész adatcsere
Az UART modul által használt mikrokontroller kimenetek. a PD port vonala. A vevő (RXD) bemenetként a PD0 kimenetet használják, és az adó (TXD) kimenete a PD1 kimenet.
A beérkező és továbbított adatok (nyolc bit) az UDR regiszterben tárolódnak. Fizikailag az UDR két külön regiszterből áll, amelyek közül az egyiket adatátvitelre használják, a másik pedig a vételhez. Az UDR regiszter olvasásakor a vevőkészülék regiszterét a távadó regiszterére írva érheti el.
Rendelkezik az USART modulok vezérlésével az ATmega8 mikrokontroller példáján keresztül
Három regiszter használható az USART modulok kezelésére: UCSRA. UCSRB és UCSRC.
Az UCSRA nyilvántartás bitjeinek leírása.
Az órajel polaritása. Ennek a bitnek az értéke határozza meg azt az időt, amikor a modul kimenetet és adatokat olvas. Az ürítés csak szinkron üzemmódban működik. Amikor aszinkron üzemmódban dolgozik, vissza kell állítani "0"
USART fogadja / továbbítja a sebességet
Az aszinkron üzemmódban, valamint a szinkron üzemmódban, mikor mesterként működik, az adatvétel és -átvitel sebességét az átviteli sebességvezérlő állítja be, amely a rendszeróra programozható osztási tényezővel működik. Az együtthatót az UBRR szabályozó nyilvántartásának tartalma határozza meg. A generált jel azonnal elküldik a vevőegységnek, és az adóegységhez egy további osztó segítségével, amelynek (2, 8 vagy 16) osztási tényezője az USART / UART modul működési módjától függ. Az UBRR regiszter 12 bites, és fizikailag két UBRRH és UBRRL I / O regiszterben található.
Amikor aszinkron módban dolgozik, az adatcsere sebességét nem csak az UBRR regiszter tartalma határozza meg. hanem az UCSRA regiszter U2X bitjének állapota is. Ha ez a bit "1" -re van állítva, akkor a prescaler osztási tényezője felére csökken és a sebességet
cseréje megduplázódik. Ha szinkron üzemmódban működik, akkor ezt a bitet vissza kell állítani.
Az árfolyamot a következő képletek határozzák meg:
BAUD - baud rate, fCK - a mikrokontroller órajelsebessége, UBRR - a fordulatszám-szabályozó nyilvántartásának tartalma (0 ... 4095):
aszinkron üzemmód (normál, U2Xn = "0")
BAUD = fCK / 16 (UBRR + 1);
aszinkron üzemmód (gyorsított, U2Xn = "1")
BAUD = fCK / 8 (UBRR + 1);
szinkron mester módban
BAUD = fCK / 2 (UBRR + 1).
Az alábbiakban bemutatjuk az USART protokoll tanulmányozására szolgáló tesztprogramot, ahol az Atmega8 mikrokontroller kommunikál a terminállal, az áttekinthetőség érdekében az LCD 16X02 kijelző csatlakoztatva van a vezérlőhöz. Ha megnyomja az 1-3 gombokat, akkor a terminálon a megfelelő sorok jelennek meg, akkor is, ha az "a" vagy a "b" jelek a terminálra kerülnek, a vezérlő PB0 portjához csatlakoztatott LED világít vagy kilép. A terminálon megjelenített karakterek szintén megjelennek az LCD kijelzőn. A hardver teszteléséhez a mikrokontroller a MAX232 szintű átalakító chipen keresztül csatlakozik a számítógéphez, a Microsoft szabványos Hyper Terminal programját az adatcserére használják.

Archívum a cikkhez "Az AVR mikrokontrollerek USART interfészének használata" HOT
AVRStudio4 és Proteus projekt

A javasolt automata töltő (töltő) 12 V névleges feszültségű és 1 db kapacitású akkumulátorok töltésére szolgál, de enyhe módosítással más feszültségekkel és kapacitással rendelkező akkumulátorok töltésére is használható.