. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Škola programování PIC-13 díl
Škola programování PIC 13

Škola programování PIC 13

USART - sériový port

V dnešním díle se podíváme na jednotku USART, konkrétně na její využití pro Asynchronní sériový přenos, používaný například u PC jako sériový port - RS232.


Blokové zapojení vnitřní jednotky USART

Na kompletní popis a nastavení vás opět odkazuji do katalogových listů (viz. 6 lekce). Zde popíšu nastavení při použití interního oscilátoru, nebo i jiného zdroje 4MHz. Rychlost komunikace bude nastavena na 19,2 kbaud, 8 bitů a bez parity.

Piny jsou:
RxD - RORTB,1
TxD - RORTB,2

MOVLW B'00100110'
MOVWF TXSTA
MOVLW 12
MOVWF SPBRG
MOVLW B'00100000'
MOVWF PIE1
BCF STATUS,RP0
MOVLW B'10010000'
MOVWF RCSTA
MOVLW B'11000000'
MOVWF INTCON

Nejprve je potřeba provést základní nastavení. Nastaví se způsob a rychlost přenosu a povolí se přerušení po přijmutí bytu. Je to výhodnější, protože jinak by jsme neustále museli testovat zda něco nepřišlo, což by při vysokých přenosových rychlostech bylo téměř nemožné.

MOVLW 48
MOVWF TXREG

Takhle vypadá odeslání jednoho bytu (znaku), konkrétně nuly (viz ASCII tabulka). Stačí ho uložit do registru TXREG a o nic víc se nemusíme starat, vše proběhne automaticky. Pokud by jste chtěli odesílat víc znaků najednou, je třeba ještě testovat zda byl již minulý byt odeslán. To se provádí testováním bitu TXSTA,1, pokud je vysílač v klidu, je v jedničce.

MOVF RCREG,0
MOVWF CISLO

No a takhle vypadá sekvence na přečtení přijmutého bytu. Samozřejmě ji musí předcházet zjištění že něco nepřišlo, viz. celý příklad. Přijmutý byte je uložen v registru RCREG, ze kterého ho přečteme a uložíme do registru CISLO, případně provedeme jinou operaci.

Zde je ke stažení ukázkový program se všemi těmito ukázkami:

ASM
HEX







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk

Komentáře (18):

Zobrazit starší 30 dnů (18)...

host
18. Dne 20. 02. 2012 v 00:35 zaslal host
Bez titulku
Konecne to niekto napísal aj pre úplného lajka, bolo by fajn, keby ste pokračovali.


Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
WIZ110SR - RS232
Převodník TCP/IP <-> RS232 s konektory RJ45 i D-Sub
Skladem od 730 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007