PIC18F45K42 USART regiszterei és azok magyarázata I.

 

 
Regiszter neve:
Bit neve és száma
 
UxCON0 UART CONTROL REGISTER 0 UART VEZÉRLŐ REGISZTER 0
BRGS <7>
R/W-0/0
BRGS: Baud rate Generator Speed Select bit
Baudjel sebességét kiválasztó bit. Az órajel leosztásának arányát adja meg, amivel durva (kétszintű) beállítás lehetséges.
  1. Baud generátor jele normál sebességű. (Az órajelet 16-tal osztja)
  2. Baud generátor jele magas sebességű. (Az órajelet 4-el osztja)
ABDEN<6>
R/W/HS/HC-0/0
ABDEN: Auto-baud Detect Enable bit
  1. Automatikus baudsebesség megállapítás nincs engedélyezve, vagy már meg van állípítva és a hrdveresen átváltott 0-ra
  2. Automatikus baudsebesség megállapítása. Ilyenkor a vételi oldalon vár a szinkronizáló karakterre, ami 0x55.

Megj.: Amikor a MODE = 100x, akkor az ABDEN bit figyelmen kívül marad.

TXEN<5> TXEN: Transmit Enable Control bit
Adatküldést engedélyező bit. Tulajdonképpen az adatküldő léptető regiszter (TSR) léptetőjelét kapcsolja.
  1. Nincs engedélyezve az adatküldés.
  2. Van adatküldés

Megj.: A TXEN vagy az RXEN törlése nem törli a megfelelő puffereket. Használja TXBE vagy RXBE a pufferek törléséhez.

RXEN<4> RXEN: Receive Enable Control bit
Adatvételt engedélyező bit. Tulajdonképpen az adatfogadó léptető regiszter (RSR) léptetőjelét kapcsolja.
  1. Nincs engedélyezve az adatfogadás
  2. Adatfogadás engedélyezve van.
Megj.: A TXEN vagy az RXEN törlése nem törli a megfelelő puffereket. Használja TXBE vagy RXBE a pufferek törléséhez.
MODE<3:0> MODE: UART Mode Select bits
UART üzemmódját kiválasztó bit.

1111= Reserved
1110= Reserved
1101= Reserved
1100= LIN Master/Slave mode (Csak UART1)
1011= LIN Slave-Only mode (Csak UART1)
1010= DMX mode (Csak UART1)
1001= DALI Control Gear mode (Csak UART1)
1000= DALI Control Device mode (Csak UART1)
0111= Reserved
0110= Reserved
0101= Reserved
0100= Asynchronous 9-bit UART Address mode. 9th bit: 
1 = cím, 
0 = adat
0011= Asynchronous 8-bit UART mode with 9th bit even parity
0010= Asynchronous 8-bit UART mode with 9th bit odd parity
0001= Asynchronous 7-bit UART mode
0000= Asynchronous 8-bit UART mode

Megj.:  Az UART bekapcsolt állapotában (ON = 1) a MODE állítása esetén váratlan eredményeket okozhat.
 
UxCON1 UART CONTROL REGISTER 1 UART vezérlő regiszter 1
ON<7> ON: Serial Port Enable bit. (ON_UxCON1)
Soros portot engedélyező bit

0 = Soros port nincs engedélyezve az UARTx-nek
1 = Soros port engedélyezve van az UARTx-nek
 
<6:5> Nincs használva, olvasva 0 értéket ad
WUE<4>
R/W/HC-0/0
WUE:  Wake-up Enable bit
Ébresztést engedélyező bit (alvó üzemmódból ébresztés)

0 = Nincs engedélyezve az ébresztés, ha alvó üzemmódban van, akkor a bejövő jelre nem reagál, alvó üzemmódban is marad.
1 = A vevő várja, hogy az eső RX bemeneti él állítsa be az UxIF bitet 1-re. A hardveren megszűnik az alvó üzemmód, felébred. Szükség van továbbá az UxIE bit PIEx használatára az ébresztés engedélyezéséhez: UxIE=1 (megszakítás engedélyezve) és PIEx=0 vagy 1 (megszakítási szint megadása)
 
RXBIMD<3>
R/W-0/0
RXBIMD: Receive Break Interrupt Mode Select bit
Vételi szünet megszakítás mód kiválasztó bit
  1. = Állítsa az RXBKIF beállítást az RX in után növekvő RX bemenetre a minimális szünet ideje alatt
    RXBKIF bitet állítsa azonnal, amikor az RX bemeneten szünetidő túllépést mért
  2. = Állítsa az RXBKIF-t azonnal, ha az RX in alacsony a minimális szünet ideje alatt
    RX bemeneten szünetidő túllépés esetén csak az RX-en jelentkező felfutó élnél állítsa be az RXBKIF bitet.

???
<2> Nincs használva, olvasva 0 értéket ad
BRKOVR<1>
R/W/HC-0/0
BRKOVR: Send Break Software Override bit
A Break Software felülbírálja a bitet??
  1. TX kimenet hajtja az átviteli sebesség regiszter. TX output is driven by transmit shift register
  2.  A TX kimenet kényszerített állapotra van állítva. TX output is forced to non-idle state
SENDB<0>
R/W/HC-0/0

 
SENDB: Send Break Control bit
Időtúllépést mérő/jelző vezérlő (beállító) bitje
  1.  TX kimenet hajtja az átviteli sebesség regiszter. TX output is driven by transmit shift register.
  2. A TX kimenet kényszerített állapotra van állítva. TX output is forced to non-idle state

Megj.: Ez a bit csak olvashatón LIN, DMX, és DALI üzemmódokban.
 
UxCON2 UART CONTROL REGISTER 2 UART vezérlő regiszter 1
RUNOVF<7>
R/W-0/0
RUNOVF: Run During Overflow Control bit
  1. Az RX bemeneti váltó leállítja az aktivitást a vevő túlcsordulási állapotában. RX input shifter stops all activity on receiver overflow condition
  2. Az RX bemeneti váltó szinkronizálja a Start bitekkel a túlcsordulási állapot után. RX input shifter continues to synchronize with Start bits after overflow condition
RXPOL<7>
R/W-0/0
RXPOL: Receive Polarity Control bit
A vett jelek jelpolaritását állítja be
  1. Az RX polaritás nem fordított, a készenléti állapotban magas szinten van
  2. Invertálja az RX polaritást, Idle állapot alacsony
Megj.: A ki/be meneteket oszcilloszkóppal vizsgálva fordított jelű, vagyis negatív logikájú.
STP<5:4>
STP<1:0>
R/W-0/0
STP<1:0>: Stop Bit Mode Control bits
Stop Bit hosszúságát (küldő/ellenőrző) vezérlő bitek.   

11 = 2 bit hosszúságú Stop bit küldése, a vevő ellenőrzi az első Stop bitet
10 = 2 bit hosszúságú Stop bit küldése,  a vevő ellenőrzi az első és a második Stop bitet
01 = 1.5 bit hosszúságú Stop bit küldése, a vevő ellenőrzi az első Stop bitet
00 = 1 bit hosszúságú Stop bit küldése, a vevő ellenőrzi az első Stop bitet

Megj.: Minden üzemmód továbbítja a kiválasztott hosszúságú Stop bitet. Csak a DMX és a DALI vevők ellenőrzik a kiválasztott számú Stop bitet, és minden más csak az első Stop bitet ellenőrzi.
C0EN<3>
R/W-0/0
C0EN: Checksum Mode Select bit. Csak UART1-nél használható.

LIN mód:
1 = 1-es ellenőrző mód, a továbbfejlesztett LIN ellenőrzőösszeg PID-et tartalmaz
0 = 0-ás ellenőrző mód, a régi LIN ellenőrző összeg nem tartalmazza a PID összegét

Egyéb módok:
1 = Üsszeadja az összes TX illetve RX karaktert
0 = Ellenőrző számok letiltva
TXPOL<2>
R/W-0/0
TXPOL: Transmit Polarity Control bit
  1. A kimeneti adatok nincsenek invertálva, a TX kimenet készenléti állapotban van
  2. Kimeneti adatok invertálva, TX kimenet alacsony Készenléti állapotban
Megj.: A ki/be meneteket oszcilloszkóppal vizsgálva fordított jelű, vagyis negatív logikájú.
FLO<1:0>
<1:0>
R/W-0/0
FLO<1:0>: Handshake Flow Control bits

11 = fenntartva
10 = RTS / CTS és TXDE hardver áramlásvezérlés
01 = XON / XOFF Szoftver áramlásvezérlés
00 = Az áramlásvezérlés ki van kapcsolva
 
UxERRIR
D:501
UxERRIR: UART ERROR INTERRUPT FLAG REGISTER Hiba vagy üzem esetén a megszakítást beállító regiszter
TXMTIF<7>
R/S/C-1/1
TXMTIF: Transmit Shift Register Empty Interrupt Flag bit
Átviteli Shift Register üres megszakítási flag bit. A hatdver állítja, mi csak olvashatjuk.
  1. Az adatkiküldő shift regiszter küli ki az adatokat. Előtte 1 volt és kiküldés esetén újból 1 lesz
  2. A transzmissziós shift regiszter üres (1-re áll a Stop bitek végén)
PERIF<6>
R/S/C-0/0
PERIF: Parity Error Interrupt Flag bit
Paritáshiba esetén megszakítása Flag bit

LIN és Parity üzemmódokban:
1 = A kapott adat FIFO-tetején (first in first out) paritáshibával rendelkezik
0 = A kapott adat FIFO-tetején (first in first out) nem rendelkezik paritáshibával

DALI üzemmódban:
1 = A kapott adat FIFO-tetején (first in first out)  Frém (keret) hibát okozott
0 = A kapott adat FIFO-tetején (first in first out), nem okozott frém hibát

Cím küldéses/kezeléses üzemmódban:
1 = A kapott adatot a FIFO-tetején címeként érzékeli és címként fogadja
0 = A kapott adatot a FIFO-tetején adatként fogadja (??beéllítás vagy nem felismerés végett??)

Egyéb módok:
Nem használt
 
ABDOVF<5>
R/W/S-0/0

ABDOVF: Auto-baud Detect Overflow Interrupt Flag bit

DALI mód:
1 = Indítsa el a bitmérés túlcsordult számlálóját
0 = nincs túlcsordulás a Start bit mérése közben


Egyéb módok:
1 = az automatikus észlelési sorrendben túlcsordult átviteli sebesség-generátor
0 = A baud rate generátor nem túlcsordult

CERIF<4>
R/W/S-0/0
CERIF: Checksum Error Interrupt Flag bit (LIN mode only)
Ellenőrzőösszeg hiba/nincs hiba  végett megszakítása flag bit beállása (csak LIN mód)

1 = ellenőrző összeg hiba
0 = Nincs ellenőrző összeg hiba
FERIF<3>
R/S/C-0/0
FERIF: Framing Error Interrupt Flag bit
Keretezés hiba/nincs hiba megszakítása Flag bit beállása (Keret=Start+adat+Stopjel)

1 = A kapott adatban a FIFO-tetején keretezési hiba van
0 =A kapott adatban a FIFO-tetején nincs keretezési hibája
RXBKIF<2>
R/W/S-0/0
RXBKIF: Reception Break Interrupt Flag bit
Vétel folyamán időtúllépés kijelzése 

1 = Megszakadt
0 = Nem történt megszakadás
 
RXFOIF<1>
R/W/S-0/0
 
RXFOIF: Receive FIFO Overflow Interrupt Flag bit
RXFOIF: Fogadja a FIFO túlcsordulás megszakítási flag bitjét

1 = A FIFO fogadása túlcsordult
0 = A FIFO fogadása nem túlcsordult
TXCIF<0>
R/W/S-0/0
TXCIF: Transmit Collision Interrupt Flag bit
 Átviteli ütközés megszakítása Flag bit

1 = A továbbított szó nem egyenlő az átvitel során kapott szóval
0 = A továbbított szó megegyezik az átvitel során kapott szóval
   
UxERRIE
D:502
UxERRIE: UART ERROR INTERRUPT ENABLE REGISTER UART ERROR INTERRUPT ENGEDÉLYEZÉS TÉNYLEGES MEGSZAKÍTÁSHOZ
TXMTIE<7>
R/W-0/0
TXMTIE: Transmit Shift Register Empty Interrupt Enable bit
Adatküldő Shift Register üres állapota esetén a tényleges megszakítás engedélyezése/tiltás a nevezett bittel

1 = A tényleges megszakítás engedélyezve ha az adatküldő ˙(TSR) regiszter kiürült
0 = A tényleges megszakítás nem engedélyezett ha az adatküldő ˙(TSR) regiszter kiürült

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
PERIE<6>
R/W-0/0
 
PERIE: Parity Error Interrupt Enable bit
Paritáshiba esetén a tényleges megszakítás engedélyezése/tiltása bit

1 = A tényleges megszakítás engedélyezve ha a fogadott adatnál paritáshiba lépett fel
0 = A tényleges megszakítás nem engedélyezett ha a fogadott adatnál paritáshiba lépett fel

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
ABDOVE<5>
R/W-0/0
 
ABDOVE: Auto-baud Detect Overflow Interrupt Enable bit
Auto-baud érzékeli a túlcsordulási megszakítást engedélyező/tiltó bit

1 = A tényleges megszakítás engedélyezve
0 = A tényleges megszakítás nem engedélyezett

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
CERIE<4>
R/W-0/0
CERIE: Checksum Error Interrupt Enable bit
Ellenőrzőösszeg hiba megszakítása engedélyezése bit

1 = Megszakítás engedélyezve
0 = Megszakítás nem engedélyezett

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
FERIE<3>
R/W-0/0
FERIE: Framing Error Interrupt Enable bit
Keretezési hiba megszakítás engedélyezése bit

1 = Megszakítás engedélyezve
0 = Megszakítás nem engedélyezett

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
RXBKIE<2>
R/W-0/0
RXBKIE: Break Reception Interrupt Enable bit
Megszakítja a vételi interrupt engedélyezését

1 = Megszakítás engedélyezve
0 = Megszakítás nem engedélyezett

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
RXFOIE<1>
R/W-0/0
RXFOIE: Receive FIFO Overflow Interrupt Enable bit
Fogadja a FIFO túlcsordulási megszakítást Enable bitet

1 = Megszakítás engedélyezve
0 = Megszakítás nem engedélyezett

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
TXCIE<0>
R/W-0/0
TXCIE: Transmit Collision Interrupt Enable bit
Átviteli ütközési megszakítás engedélyezése bit

1 = Megszakítás engedélyezve
0 = Megszakítás nem engedélyezett

Megj.: Letiltás esetén továbbra is kijelzi az érzékelt állapotot a bit
   
UxUIR
D:503
UxUIR: UART GENERAL INTERRUPT REGISTER  UART GENERAL INTERRUPT REGISTER
WUIF<7>
R/S/W-0/0
WUIF: Wake-up Interrupt bit
Felébresztési megszakítási bit

1 = Idle a nem üres átmenetre észlelt RX vonalon
amikor a WUE be van állítva. Az UxIF-t is beállítja. (A WUIF-nek meg kell lennie
törölve a szoftverrel az UxIF törléséhez)
0 = WUE nincs engedélyezve a programban, vagy nem észlelt adatközlést
ABDIF<7>
R/S/W-0/0
ABDIF: Auto-baud detect interrupt bit
Az automatikus baud észleli a megszakítási bitet

1 = Az automatikus baud észlelés befejeződött. Az UxIF-ben mutatott állapot az ABDIE beállításakor. (Meg kell törölnie a
szoftver)
0 = Az automatikus baud nincs engedélyezve vagy automatikus baud e
a nullázott és az automatikus baud észlelés nem teljes
 
UxFIFO
D:504
UxFIFO: UART FIFO STATUS REGISTER UxFIFO: UART FIFO STATUS REGISTER
TXWRE<7>
R/W/S-0/0
TXWRE: Transmit Write Error Status bit (Must be cleared by software)
 Átviteli írási hiba Állapot bit (Szoftverrel törölni kell)

LIN Master mód:
1 = Az UxP1L-t akkor írta, amikor egy master folyamat aktív volt

LIN Slave mód:
1 = UxTXB akkor íródott, ha UxP2 = 0 vagy annál több, mint az UxP2 bájtok UxTXB-be írták az utolsó törésérzékelési mód óta:
1 = Az UxP1L-t az UxP1L előző adatainak átvitelére írta, mielőtt a TX shifterre át lettek adva

Minden mód:
1 = Új bájt íródott az UxTXB-re, amikor a kimeneti FIFO tele volt
0 = Nincs hiba
STPMD<6>
R/W-0/0
STPMD: Stop Bit Detection Mode bit
Stop Bit észlelési mód beállító bitje

1 = Assign UxRXIF az utolsó Stop bit végén vagy az első Stop bit végén, ha STP = 11
0 = Assign UxRXIF az első Stop bit közepén
TXBE<5>
R/W/S/C-1/1
TXBE: Transmit Buffer Empty Status bit
Átviteli puffer üres állapotbit

1 = Az átviteli puffer üres. Ennek a bitnek a beállítása törli az adópuffer és a kimeneti eltolási regisztert.
0 = Az átviteli puffer nem üres. A szoftver nem tudja tisztítani ezt a bitet.
TXBF<4>
R/S/C-0/0
TXBF: Transmit Buffer Full Status bit
Átviteli puffer Teljes állapotú bit

1 = Az átviteli puffer megtelt
0 = Az átviteli puffer nem teljes, nincs tele
RXIDL<3>
R/S/C-1/1
RXIDL: Receive Pin Idle Status bit
 fogadja a Pin Idle állapot bitet

1 = A fogadó láb (IC láb) készenléti állapotban van
0 = Az UART kapja a Start, Stop, Data, Auto-baud, vagy Break

Megj.: A START bit lefutó éle állítja 0-ra és a STOP bit felfutó ále állítja vissza az alapértelmezett 1-es szintre. Igy ha nincs jelváltozás a bemeneten (ha egyéb feltétel is adott), 1-es szint van.
XON<2>
S/C-1/1
XON: Software Flow Control Transmit Enable Status bit
Szoftverből megnézhető, hogy engedélyezve van-e az adatküldés ennek a bit állapotával.

1 = Az adatküldés engedélyezett
0 = Az adatküldés le van tiltva

Megj.: nem tudom, de feltétételezem, hogy hibák és nem engedélyezés esetében jelez, hogy nem küldhetünk adatokat.
RXBE<1>
R/W/S/C-1/1
RXBE: Receive Buffer Empty Status bit
Fogadási puffer üres állapotbit

1 = A fogadási puffer üres. A bit beállítása törli az RX puffert
0 = Fogadópuffer nem üres. A szoftver nem tudja tisztítani ezt a bitet.

Megj.: The BSF instruction should not be used to set RXBE be cause doing so will clear a byte pending in the transmit shift register when the UxTXB register is empty. 
Instead, use the MOVWF instruction with a ‘0’ in the TXBE bit location.

A BSF utasítás nem használható az RXBE beállítására, mivel ezzel törli az átviteli váltóban lévő bájtot, amikor az UxTXB regiszter üres. Ehelyett használja a MOVWF utasítást a "0" értékkel a TXBE bit helyén.

A BSF utasítást nem kellene arra használni, hogy beállítsa RXBE-t lenni ok tenni úgy tisztítani fog egy byte-ot függőben levő az közvetíts léptetőregisztert, amikor az UxTXB nyilvántartás üres. 
Helyette használd a MOVWF utasítást egy 0 in a TXBE helyszínt harapott meg.
RXBF<0>
R/S/C-0/0
RXBF: Receive Buffer Full Status bit
Fogadási puffer túlcsordult állapotát jelző bit

1 = A fogadási puffer megtelt
0 = Fogadópuffer nem telt

Megj.: ha ez a bit beáll, akkor ez már vagy hiba, vagy még ha túlcsordulás előtt kiolvassuk vagy letiltjuk az adatfogadást, akkor még nem hiba, esetleg megelőzhető a túlcsordulás ami már HIBA. Meg kellen ezt vizsgélni és pontosítani!
 
UxBRGL  UART BAUD RATE GENERATOR LOW REGISTER UART baudrata beállító regiszter alsó bájtja
BRG<7:0> R/W-0/0
UxBRGH UART BAUD RATE GENERATOR HIGH REGISTER UART baudrata beállító regiszter felső bájtja
BRG<15:8> R/W-0/0
 
UxRXB  UART RECEIVE REGISTER UART adatvétel regisztere (ebből vesszük ki az adatot)
RxB<7:0> R-0/0
 
UxTXB UART TRANSMIT REGISTER UART adatküldés regisztere (ebbe tesszük bele az adatot elküldére)
TXB<7:0> R/W-0/0
 
UxP1H
D: 507
UART PARAMETER 1 HIGH REGISTER UART paraméter 1 magas regisztere
<7:6> Nincs használva, olvasáskor 0-át ad.
P1<0>
P1<8>
R/W-0/0
 Most Significant Bit of Parameter 1
Az 1. paraméter legjelentősebb bitje

DMX mód:
A legfontosabb bájtnyi bájt a Start kód és az automatikus szüneteltetés között

DALI eszköz (Device) vezérlő mód:
A legfontosabb üresjárati késleltetési késleltetés, amely után egy Forward Frame kerül elküldésre. A félbites periódusokban mérve
DALI Gear vezérlési mód:
A legfontosabb késleltetés a Forward Frame vége és a hátsó keret kezdete között félbitetumokban mérve

Egyéb módok:
Nem használt

Megj.: Pic18FxxK42-nél asm-ben U1P1H vagy U2P1H helyett  U1P1-et, illetve  U2P1-et kell írni.
 
UxP1L
 
 UART PARAMETER 1 LOW REGISTER UART paraméter alacsony regiszter
<7:6> Nincs használva, olvasáskor 0-át ad.
P1<0>
P1<8>
R/W-0/0
Least Significant Bits of Parameter 1
Az 1. paraméter legkisebb fontosságú bitjei

DMX mód:
A bájtok számának legkevesebb bájtja, hogy továbbítsa a Start kódot és az automatikus törés generációt

DALI Vezérlő mód:
Az alapértelmezett bájt legkevesebb bájtja, amely után egy Forward Frame kerül elküldésre.
A félbites periódusokban mérve

DALI vezérlési mód:
Legrövidebb bájt késleltetés a Forward Frame és a Back Frame kezdete között A félbitetes periódusokban mérve

LIN mód:
PID továbbítása (csak a legkevesebb 6 bit használható)
Asynchronous Address mód:
Cím a továbbításhoz (a 9. adási bit automatikusan "1" -re van állítva)

Egyéb módok:
Nem használt
 
UxP2H  UART PARAMETER 2 HIGH REGISTER UART paraméter 2 magas regisztere
<7:6> Nincs használva, olvasáskor 0-át ad.
P2<0>
P2<8>
R/W-0/0
Most Significant Bit of Parameter 2
A 2. paraméter legjelentősebb bitje

DMX mód:
A legmagasabb bit a fogadási blokk első címének

DALI mód:
Legmagasabb bit az félköri idők számának a Forward Frame detection detector küszöbén ??

Egyéb módok:
Nem használt

Megj.: Pic18FxxK42-nél asm-ben U1P2H vagy U2P2H helyett  U1P2-t, illetve  U2P2-t kell írni.
 
UxP2L UART PARAMETER 2 LOW REGISTER UART paraméter 2 alacsony regisztere
P2<7:0>
R/W-0/0
Least Significant Bits of Parameter 2
A 2. paraméter legkisebb fontosságú bitjei

DMX mód:
A fogadási blokk első címének legkevesebb bájtja

LIN Slave mód:
Az elküldendő bájtok száma

DALI mód:
Legfontosabb bájt az előretekerési keret küszöbértékének félbillentyű üresjárati időinek számával

Asynchronous Address mód:
Fogadó cím

Egyéb módok:
Nem használt
 
UxP3H UART PARAMETER 3 HIGH REGISTER UART paraméter 3 magas bájt regiszter
<7:6> Nincs használva, olvasáskor 0-át ad.
P3<0>
P3<8>
R/W-0/0
Most Significant Bit of Parameter 3
A 3. paraméter legjelentősebb bitje

DMX mód:
A legfontosabb bit a befogadási blokk utolsó címének

Egyéb módok:
Nem használt

Megj.: Pic18FxxK42-nél asm-ben U1P3H vagy U2P3H helyett  U1P3-at, illetve  U2P3-at kell írni.
 
UxP3L UART PARAMETER 3 LOW REGISTER UART paraméter 3 alacsony bájt regiszter
P2<7:0>
R/W-0/0
Least Significant Bits of Parameter 3
A 3. paraméter legalsóbb bitjei

DMX mód:
A fogadási blokk utolsó címének legkevesebb bájtja

LIN Slave mód:
A fogadni kívánt bájtok száma

Asynchronous Address mód:
Fogadó címmaszk. A beérkezett cím XOR'd az UxP2L-lel, majd AND'd az UxP3L-vel A találkozás akkor következik be, ha az eredmény nulla

Egyéb módok:
Nem használt
 
UxTXCHK
D: 510
UART TRANSMIT CHECKSUM RESULT REGISTER UART küldendő ellenőrző összeg beíró regisztere
TXCHK<7:0>
R/W-0/0
Checksum calculated from TX bytes
A TX bájtokból számított ellenőrző összeg

LIN üzemmód és C0EN = 1:
Az összes továbbított bájt összege, beleértve a PID értéket

LIN üzemmód és C0EN = 0:
Az összes továbbított bájt összege a PID kivételével

Minden más mód és C0EN = 1:
Az összes átvitt bájt összege az utolsó tisztaság óta

Minden más mód és C0EN = 0:
Nem használt

Megj.: Pic18FxxK42-nél csak UART- nél van, ezért csak U1RXCHK van.
 
UxRXCHK
D: 510
UART TRANSMIT CHECKSUM RESULT REGISTER UART fogadott adat ellenőrző összegét tároló regiszter
RXCHK<7:0>
R/W-0/0
Checksum calculated from RX bytes
A TX bájtokból számított ellenőrző összeg

LIN üzemmód és C0EN = 1:
Az összes továbbított bájt összege, beleértve a PID értéket

LIN üzemmód és C0EN = 0:
Az összes továbbított bájt összege a PID kivételével

Minden más mód és C0EN = 1:
Az összes átvitt bájt összege az utolsó tisztaság óta

Minden más mód és C0EN = 0:
Nem használt

Megj.: Pic18FxxK42-nél csak UART- nél van, ezért csak U1RXCHK van.
   
   
INTCON0
D:135
INTCON0: INTERRUPT CONTROL REGISTER 0 Megszakítás vezérlő regiszter 0
GIE/GIEH<7>
R/W-0/0
Global Interrupt Enable bits
Globális megszakítást engedélyező/tiltó bit

Ha IPEN = 0:
GIE:
1 = Engedélyezi az összes maszkos megszakítást
0 = Letiltja az összes megszakítást
Ha IPEN = 1:
GIEH:
1 = Engedélyezi az összes maszkos nagy prioritású megszakítást: a bitet szintén be kell állítani az alacsony prioritás engedélyezéséhez
megszakítások
0 = Letiltja az összes megszakítást
GIEL<6>
R/W-0/0
Global Low Priority Interrupt Enable bit

Globálisan az alacsony prioritású megszakításokat engedélyező/tiltó bit
Ha IPEN = 0:
Fenntartva, '0'

Ha IPEN = 1:
GIEL:
1 = Engedélyezi az összes nem mágneses alacsony prioritású megszakítást, a GIEH-t szintén be kell állítani az alacsony prioritású megszakításokhoz
0 = Letiltja az összes alacsony prioritást
IPEN<5>
R/W-0/0
Interrupt Priority Enable bit
Megszakítási prioritás engedélyezése bit

1 = Engedélyezze a prioritások szintjét a megszakításoknál
0 = Elsőbbségi szintek letiltása a megszakításoknál; minden megszakítást kiemelt fontosságú interruptként kezelnek
 
 
PIR3
D:140
PERIPHERAL INTERRUPT REGISTER 3 Perifériák általi megszakítások regisztere 3
U1IF<6>
R-0/0
UART1 Interrupt Flag bit
UART1 megszakításjelző bitje

1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.: Az UxIF egy csak olvasható bit. A megszakítási feltétel törléséhez, az UxUIR regiszter minden bitjét törölni kell.
U1EIF<5>
R-0/0
UART1 Framing Error Interrupt Flag bit

UART1 keretezés hibát kijelző megszakítása flag bit 
1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.:Az UxEIF egy csak olvasható bit. A megszakítási feltétel törléséhez az UxERRIR regiszter összes bitjét törölni kell.
U1TXIF<4>
R-0/0
UART1 Transmit Interrupt Flag bit

UART1 adatküldés általi megszakítás bit 
1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.: Az UxTXIF és az UxRXIF csak olvasható bitek, és a szoftver nem tudja beállítani / törölni.
U1RXIF<3>
R-0/0
UART1 Receive Interrupt Flag bit

UART1 adatérkezés általi megszakítás bit 
1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.:A SHIFT regiszterbe (RSR) beérkező adat STOP bitje állítja be.  Az UxTXIF és az UxRXIF csak olvasható bitek, és a szoftver nem tudja beállítani / törölni.
 
PIR6
D:143
PERIPHERAL INTERRUPT REGISTER 6 Perifériák általi megszakítások regisztere 6
U2IF<5>
R-0/0
UART2 Interrupt Flag bit
UART2 megszakításjelző bitje

1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.: Az UxIF egy csak olvasható bit. A megszakítási feltétel törléséhez, az UxUIR regiszter minden bitjét törölni kell.
U2EIF<4>
R-0/0
UART2 Framing Error Interrupt Flag bit

UART1 keretezés hibát kijelző megszakítása flag bit 
1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.:Az UxEIF egy csak olvasható bit. A megszakítási feltétel törléséhez az UxERRIR regiszter összes bitjét törölni kell.
U2TXIF<3>
R-0/0
UART2 Transmit Interrupt Flag bit

UART2 adatküldés általi megszakítás bit 
1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.: Az UxTXIF és az UxRXIF csak olvasható bitek, és a szoftver nem tudja beállítani / törölni.
U2RXIF<2>
R-0/0
UART2 Receive Interrupt Flag bit

UART1 adatérkezés általi megszakítás bit 
1 = Megszakítás történt
0 = Megszakítási esemény nem történt meg

Megj.:A SHIFT regiszterbe (RSR) beérkező adat STOP bitje állítja be.  Az UxTXIF és az UxRXIF csak olvasható bitek, és a szoftver nem tudja beállítani / törölni.
 
PIE3
D:150
PERIPHERAL INTERRUPT ENABLE REGISTER 3 Perifériák éltal kiváltott tényleges megszakítást engedélyező regiszter 3
U1IE<6>
R/W-0/0
UART1 Interrupt Enable bit
UART1 Megszakítás engedélyezése bit

1 = Engedélyezve
0 = Letiltva
U1EIE<5>
R/W-0/0
UART1 Framing Error Interrupt Enable bit
UART1 Framing (keretezési) hiba által kiváltott tényleges megszakítást engedélyező bit

1 = Engedélyezve
0 = Letiltva
U1TXIE<4>
R/W-0/0
UART1 Transmit Interrupt Enable bit

UART1 adatküldés által kiváltott megszakítás tényleges végrehajtását engedélyező bit
1 = Engedélyezve
0 = Letiltva
U1RXIE<3>
R/W-0/0
UART1 Receive Interrupt Enable bit

UART1-nél az adatérkezés által kiváltott megszakítás tényleges megvalósítását engedélyező bitje
1 = Engedélyezve
0 = Letiltva
 
PIE3
D:153
PERIPHERAL INTERRUPT ENABLE REGISTER 6 Perifériák éltal kiváltott tényleges megszakítást engedélyező regiszter 6
U1IE<5>
R/W-0/0
UART2 Interrupt Enable bit
UART2 Megszakítás engedélyezése bit

1 = Engedélyezve
0 = Letiltva
U1EIE<4>
R/W-0/0
UART2 Framing Error Interrupt Enable bit
UART2 Framing (keretezési) hiba által kiváltott tényleges megszakítást engedélyező bit

1 = Engedélyezve
0 = Letiltva
U1TXIE<3>
R/W-0/0
UART2 Transmit Interrupt Enable bit

UART2 adatküldés által kiváltott megszakítás tényleges végrehajtását engedélyező bit
1 = Engedélyezve
0 = Letiltva
U1RXIE<2>
R/W-0/0
UART2 Receive Interrupt Enable bit

UART2-nél az adatérkezés által kiváltott megszakítás tényleges megvalósítását engedélyező bitje
1 = Engedélyezve
0 = Letiltva
   

 

 

MAGYARÁZATOK:

/Az UART számlálói érzékelik, hogy az RX bemenet hosszabb ideig a térben marad./
Az UART-ban van egy számláló alapú időmérő, ami figyeli az RX (adatbemenet) bemenetet és méri, hogy mennyi ideig nincs bemenő jel.

/Ha ez megtörténik, az RXBKIF bit az UxERRIR regiszterben van beállítva./
Ha ez az idő letelik, az UxERRIR regiszterben az RXBKIF bit (Break Reception Interrupt Flag bit) 1-re áll be.

/A megszakítás akkor jelenik meg, ha az RX bemenet 11 bites periódusok térbeli állapotában marad az aszinkron és LIN módokhoz, és 23 bites időtartamokat DMX üzemmódban./

Szünetidő túllépés érzékelés az RX bemeneten akkor történik, ha 11 (feltételezésem szerint) baudperiódus alatt nem érkezett jel, pontosabban nem változott a bemenet jelszintje LIN módban. Ez az idő DMX üzemmódban 23 baudperiódus.

/A felhasználó választhatja, hogy megkapja a Break break-ot, amint a Break jelzés vagy a Break törlésének végén, amikor az RX bemenet visszatér a készenléti állapotba./

A programozó meg tudja választani, hogy a szünetidő mérés illetve túllépés detektálása Idle (pihenő) üzemmódban történjen-e, vagy csak akkor, ha a CPU visszatér az Idle (pihenő) üzemmódból. ?? Lehet, hogy ez csak a jelzőbitre érvényes??

Ha az UXCON1 RXBIMD bitje "1", akkor az RXBKIF azonnal elkezdi a Break (szünetidő) detektálását.
Ha az RXBIMD értéke "0", akkor az RXBKIF akkor áll be, ha az RX bemenet visszatér a készenléti állapotból.
The UART has counters to detect when the RX input remains in the space state for an extended period of time. When this happens, the RXBKIF bit in the UxERRIR register is set.

A Break is detected when the RX input remains in the space state for 11 bit periods for asynchronous and LIN modes, and 23 bit periods for DMX mode. 

The user can select to receive the Break interrupt as soon as the Break is detec ted or at the end of the Break, when the RX input returns to the Idle state.
When the RXBIMD bit in the UxCON1 is ‘1’ then RXBKIF is set immediately upon Break detection.
When RXBIMD is ‘0’ then RXBKIF is set when the RX input returns to the Idle state. 

 

 

 

 

 

 

 

 

 

 

 
Regiszter 7. bit 6. bit 5.bit 4. bit 3. bit 2. bit 1. bit 0. bit Dok.
old.
UxCON0 BRGS
R/W-0/0
ABDEN
R/W/HS/HC-0/0
TXEN
R/W-0/0
RXEN
R/W-0/0
MODE<3:0>
R/W-0/0
496
498
UxCON1 ON
R/W-0/0

U-0

U-0
WUE
R/W/HC-0/0
RXBIMD

R/W-0/0


U-0
BRKOVR

R/W-0/0

SENDB
R/W/HC-0/0
497
499
UxCON2 SPPIE
R/W-0
ADIE
R/W-0
RCIE
R/W-0
TXIE
R/W-0
SSPIE
R/W-0
CCP1IE
R/W-0
FLO<1:0>
R/W-0
498
UxERRIR TXMTIF
R/W-1
PERIF
R/W-1
ABDOVF
R/W-1
CERIF
R/W-1
FERIF
R/W-1
RXBKIF
R/W-1
RXFOIF
R/W-1
TXCIF
R/W-1
499
UxERRIE TXMTIE
R/W-0
PERIE
R/W-0
ABDOVE
R/W-0
CERIE
R/W-0
FERRIE
R/W-0
RXBKIE
R-0
RXFOIE
R-0
TXCIE
R-x
500
UxUIR WUIF ABDIF       ABDIE     501
UxFIFO TXWRE STPMD TXBE TXBF RXIDL XON RXBE RXBF 502
UxBRGL BRD<7:0> 503
UxBRGH BRG<15:8> 503
UxRXB RXB<7:0> 504
UxTXB TXB<7:0> 504
UxP1H               P1<8> 505
UxP1L P1<7:0> 505
UxP2H                 506
UxP2L P2<7:0> 506
UxP3H                 507
UxP3L P3<7:0> 507
UxTXCHK TXCHK<7:0> 508
UxRXCHK RXCHK<7:0> 508
 
 
Regiszter 7. bit 6. bit 5. bit 4. bit 3. bit 2. bit 1. bit 0. bit Dok.
old.
INTCON0 GIE/GIEH
R/W-0/0
GIEL
R/W-0/0
IPEN
R/W-0/0
INT2EDG
R/W-1/1
INT1EDG
R/W-1/1
INT0EDG
R/W-1/1
135
PIR3 TMR0IF
R/W/HS-0/0
U1IF
R-0/0
U1EIF
R-0/0
U1TXIF
R-0/0
U1RXIF
R-0/0
I2C1EIF
R-0/0
I2C1IF
R-0/0
I2C1TXF
R-0/0
140
PIR6 TMR3GIF
R/W/HS-0/0
TMR3IF
R/W/HS-0/0
U2IF
R-0/0
U2EIF
R-0/0
U2TXIF
R-0/0
U2RXIF
R-0/0
I2C2EIF
R-0/0
I2C2IF
R-0/0
143
PIE3 TMR0IE
R/W-0/0
U1IE
R/W-0/0
U1EIE
R/W-0/0
U1TXIE
R/W-0/0
U1RXIE
R/W-0/0
I2C1EIE
R/W-0/0
I2C1IE
R/W-0/0
I2C1TXIE
R/W-0/0
150
PIE6 TMR3GIE TMR3IE U2IE U2EIE U2TXIE U2RXIE I2C2EIE I2C2IE 153
                   
RXCHK<7:0>

 

 
Regiszter neve
Bit neve és sorszáma
 
UxCON0 UART CONTROL REGISTER 0 UART VEZÉRLŐ REGISZTER 0
BRGS <7>
R/W-0/0
BRGS: Baud rate Generator Speed Select bit
Baudjel sebességét kiválasztó bit. Az órajel leosztásának arányát adja meg, amivel durva (kétszintű) beállítás lehetséges.
  1. Baud generátor jele normál sebességű. (Az órajelet 16-tal osztja)
  2. Baud generátor jele magas sebességű. (Az órajelet 4-el osztja)
ABDEN<6>
R/W/HS/HC-0/0
ABDEN: Auto-baud Detect Enable bit
  1. Automatikus baudsebesség megállapítás nincs engedélyezve, vagy már meg van állípítva és a hrdveresen átváltott 0-ra
  2. Automatikus baudsebesség megállapítása. Ilyenkor a vételi oldalon vár a szinkronizáló karakterre, ami 0x55.
TXEN<5> TXEN: Transmit Enable Control bit
Adatküldést engedélyező bit. Tulajdonképpen az adatküldő léptető regiszter (TSR) léptetőjelét kapcsolja.
  1. Nincs engedélyezve az adatküldés.
  2. Van adatküldés

Megj.: A TXEN vagy az RXEN törlése nem törli a megfelelő puffereket. Használja TXBE vagy RXBE a pufferek törléséhez.

RXEN<4> RXEN: Receive Enable Control bit
Adatvételt engedélyező bit. Tulajdonképpen az adatfogadó léptető regiszter (RSR) léptetőjelét kapcsolja.
  1. Nincs engedélyezve az adatfogadás
  2. Adatfogadás engedélyezve van.
Megj.: A TXEN vagy az RXEN törlése nem törli a megfelelő puffereket. Használja TXBE vagy RXBE a pufferek törléséhez.
MODE<3:0> MODE: UART Mode Select bits
UART üzemmódját kiválasztó bit

1111= Reserved
1110= Reserved
1101= Reserved
1100= LIN Master/Slave mode (Csak UART1)
1011= LIN Slave-Only mode (Csak UART1)
1010= DMX mode (Csak UART1)
1001= DALI Control Gear mode (Csak UART1)
1000= DALI Control Device mode (Csak UART1)
0111= Reserved
0110= Reserved
0101= Reserved
0100= Asynchronous 9-bit UART Address mode. 9th bit: 
1 = cím, 
0 = adat
0011= Asynchronous 8-bit UART mode with 9th bit even parity
0010= Asynchronous 8-bit UART mode with 9th bit odd parity
0001= Asynchronous 7-bit UART mode
0000= Asynchronous 8-bit UART mode
 
 
UxCON1 UART CONTROL REGISTER 1 UART vezérlő regiszter 1
ON<7> ON: Serial Port Enable bit. (ON_UxCON1)
Soros portot engedélyező bit

0 = Soros port nincs engedélyezve az UARTx-nek
1 = Soros port engedélyezve van az UARTx-nek
 
<6:5> Nincs használva, olvasva 0 értéket ad
WUE<4>
R/W/HC-0/0
WUE:  Wake-up Enable bit
Ébresztést engedélyező bit (alvó üzemmódból ébresztés)

0 = Nincs engedélyezve az ébresztés, ha alvó üzemmódban van, akkor a bejövő jelre nem reagál, alvó üzemmódban is marad.
1 = A vevő várja, hogy az eső RX bemeneti él állítsa be az UxIF bitet 1-re. A hardveren megszűnik az alvó üzemmód, felébred. Szükség van továbbá az UxIE bit PIEx használatára az ébresztés engedélyezéséhez: UxIE=1 (megszakítás engedélyezve) és PIEx=0 vagy 1 (megszakítási szint megadása)
 
RXBIMD<3>
R/W-0/0
RXBIMD: Receive Break Interrupt Mode Select bit
Vételi szünet megszakítás mód kiválasztó bit
  1. = Állítsa az RXBKIF beállítást az RX in után növekvő RX bemenetre a minimális szünet ideje alatt
    RXBKIF bitet állítsa azonnal, amikor az RX bemeneten szünetidő túllépést mért
  2. = Állítsa az RXBKIF-t azonnal, ha az RX in alacsony a minimális szünet ideje alatt
    RX bemeneten szünetidő túllépés esetén csak az RX-en jelentkező felfutó élnél állítsa be az RXBKIF bitet.

???
<2> Nincs használva, olvasva 0 értéket ad
BRKOVR<1>
R/W/HC-0/0
BRKOVR: Send Break Software Override bit
A Break Software felülbírálja a bitet??
  1. TX kimenet hajtja az átviteli sebesség regiszter. TX output is driven by transmit shift register
  2.  A TX kimenet kényszerített állapotra van állítva. TX output is forced to non-idle state
SENDB<0>
R/W/HC-0/0

 
SENDB: Send Break Control bit
Időtúllépést mérő/jelző vezérlő (beállító) bitje
  1.  TX kimenet hajtja az átviteli sebesség regiszter. TX output is driven by transmit shift register.
  2. A TX kimenet kényszerített állapotra van állítva. TX output is forced to non-idle state

Megj.: Ez a bit csak olvashatón LIN, DMX, és DALI üzemmódokban.
 
UxCON2 UART CONTROL REGISTER 2 UART vezérlő regiszter 1
RUNOVF<7>
R/W-0/0
RUNOVF: Run During Overflow Control bit
  1. Az RX bemeneti váltó leállítja az aktivitást a vevő túlcsordulási állapotában. RX input shifter stops all activity on receiver overflow condition
  2. Az RX bemeneti váltó szinkronizálja a Start bitekkel a túlcsordulási állapot után. RX input shifter continues to synchronize with Start bits after overflow condition
RXPOL<7>
R/W-0/0
RXPOL: Receive Polarity Control bit
A vett jelek jelpolaritását állítja be
  1. Az RX polaritás nem fordított, a készenléti állapotban magas szinten van
  2. Invertálja az RX polaritást, Idle állapot alacsony
Megj.: A ki/be meneteket oszcilloszkóppal vizsgálva fordított jelű, vagyis negatív logikájú.
STP<5:4>
STP<1:0>
R/W-0/0
STP<1:0>: Stop Bit Mode Control bits
Stop Bit hosszúságát (küldő/ellenőrző) vezérlő bitek 

11 = 2 bit hosszúságú Stop bit küldése, a vevő ellenőrzi az első Stop bitet
10 = 2 bit hosszúságú Stop bit küldése,  a vevő ellenőrzi az első és a második Stop bitet
01 = 1.5 bit hosszúságú Stop bit küldése, a vevő ellenőrzi az első Stop bitet
00 = 1 bit hosszúságú Stop bit küldése, a vevő ellenőrzi az első Stop bitet

Megj.: Minden üzemmód továbbítja a kiválasztott hosszúságú Stop bitet. Csak a DMX és a DALI vevők ellenőrzik a kiválasztott számú Stop bitet, és minden más csak az első Stop bitet ellenőrzi.
C0EN<3>
R/W-0/0
C0EN: Checksum Mode Select bit

LIN mód:
1 = 1-es ellenőrző mód, a továbbfejlesztett LIN ellenőrzőösszeg PID-et tartalmaz
0 = 0-ás ellenőrző mód, a régi LIN ellenőrző összeg nem tartalmazza a PID összegét

Egyéb módok:
1 = Üsszeadja az összes TX illetve RX karaktert
0 = Ellenőrző számok letiltva
TXPOL<2>
R/W-0/0
TXPOL: Transmit Polarity Control bit
  1. A kimeneti adatok nincsenek invertálva, a TX kimenet készenléti állapotban van
  2. Kimeneti adatok invertálva, TX kimenet alacsony Készenléti állapotban
Megj.: A ki/be meneteket oszcilloszkóppal vizsgálva fordított jelű, vagyis negatív logikájú.
FLO<1:0>
<1:0>
R/W-0/0
FLO<1:0>: Handshake Flow Control bits

11 = fenntartva
10 = RTS / CTS és TXDE hardver áramlásvezérlés
01 = XON / XOFF Szoftver áramlásvezérlés
00 = Az áramlásvezérlés ki van kapcsolva
   
   
   
   
   
   
   
RXDTP
BAUDCON<5>
RXDTP /Received Data Polarity Select bit/ A vett adat polaritását beállító bit
Aszinkron üzemmódban:
0 = A beérkezett adatok nincsenek invertálva
1 = A vett adatok fordított polaritásúak, vagyis invertáltak
Szinkron Üzemmód:
0 = Nem fordítottak (nem invertáltak) a vett adatok. Az Idle (készenléti) állapot magas szintű???
1 = A vett adatok invertáltak.Az Idle állapot alacsony szintű.
TXCKP
BAUDCON<4>
TXCKP /Clock and Data Polaríty Select bit/ A kimenő órajel és adatok polaritását beállító bit
Aszinkron üzemmódban:
0 = A kimenő adatok nem invertáltak.
1 = A kimenő adatok invertáltak.
Szinkron üzemmódban:
0 =  A kimenő szinkronjel nem fordított polaritású (nem invertált)
1 = A kimenő szinkronjel fordított polaritású (invertált). Idle állapot alacsony szintű???
BRG16
BAUDCON<3>
BRD16 /16-Bit Baud Rate Generator Register Enable bit/ 
0 = 8 bites Baud Rate generáló baudsebesség beállító használata. Ilyenkor az SPBRGH figyelmen kívül van hagyva, csak az SPBRG számít, viszont a generálásban benne van az SPBRGH, így mindenképpen 16 bites szálálóként fog működni. (Kompatibilitás végett van ez a megoldás)
1 = 16 biten történik a Baud Rate generálóban baudsebesség beállítása. Így SPBRGH és SPBRGH együttes értéke számít.
WUE
BAUDCON<1>
WUE /Wake-up Enable bit/ Ébresztést engedélyezőú bit / ! Törölnöm kellett, mert máskülönben nem voltak korrektak az adatok, főként az első néhány adat, valamint nem ott állt meg a beolvasáso folyamat, ahol kellett volna !!!!!!!!!
Aszinkron üzemmód:
0 = Nem figyeli az RX adatfogadó lábat, hogy adat érkezik-e, így nem is lesz megszakítás
1 = EUSART-nál folyamatosan figyeli az RX adatfogadó lábat, ha jelváltozás történik, akkor megszakítást vált ki és elindítja az órajelet

megj.: ha 1, akkor automatikus ébresztés engedélyezve van vételnél (más leírás) Eredeti lefordítva: *1
-------------------------------------------------------------------------------
With the auto-wake-up option enabled by setting the WUE bit (BAUDCON<1>), the RCIF (PIR1<5>) bit will become set on a high-to-low transition on the RX pin. However, the WUE bit may not clear within 1 TCY of a low-to-high transition on RX. While the WUE bit is set, reading the receive buffer, RCREG, will not clear the RCIF interrupt flag. Therefore, the first opportunity to automatically clear RCIF by reading RCREG may take longer than expected.
ABDEN
BAUDCON<0>
ABDEN /Auto-Baud Detect Eneble bit/ A baudsebességet automatikusan megállapító műveletet engedélyező bit
Aszinkron üzemmódban:
0 = Nincs használva
1 = Engedélyezi az automatikus baud sebesség megállapítását a következő karakter segítségével. Ez a karakter 55H = 01010101. A megállapítás után törölve???
SPBRGH<0..7> SPBRGH /Serial Port Baud Rate Generator High Register/ Soros adatátvitel órajelet 16 biten beállító regiszter felső bájtja  BRG16=1 esetén
SPBRG<0..7> SPBRG /Serial Port Baud Rate Generator Register/ Soros adatátvitel órajelet 16 biten beállító regiszter alsó bájtja  BRG16=1 esetén, vagy BRG16=0 esetén egy bájton megadva.
   
   
   
   
   

 

 

MAGYARÁZATOK:

/Az UART számlálói érzékelik, hogy az RX bemenet hosszabb ideig a térben marad./
Az UART-ban van egy számláló alapú időmérő, ami figyeli az RX (adatbemenet) bemenetet és méri, hogy mennyi ideig nincs bemenő jel.

/Ha ez megtörténik, az RXBKIF bit az UxERRIR regiszterben van beállítva./
Ha ez az idő letelik, az UxERRIR regiszterben az RXBKIF bit (Break Reception Interrupt Flag bit) 1-re áll be.

/A megszakítás akkor jelenik meg, ha az RX bemenet 11 bites periódusok térbeli állapotában marad az aszinkron és LIN módokhoz, és 23 bites időtartamokat DMX üzemmódban./

Szünetidő túllépés érzékelés az RX bemeneten akkor történik, ha 11 (feltételezésem szerint) baudperiódus alatt nem érkezett jel, pontosabban nem változott a bemenet jelszintje LIN módban. Ez az idő DMX üzemmódban 23 baudperiódus.

/A felhasználó választhatja, hogy megkapja a Break break-ot, amint a Break jelzés vagy a Break törlésének végén, amikor az RX bemenet visszatér a készenléti állapotba./

A programozó meg tudja választani, hogy a szünetidő mérés illetve túllépés detektálása Idle (pihenő) üzemmódban történjen-e, vagy csak akkor, ha a CPU visszatér az Idle (pihenő) üzemmódból. ?? Lehet, hogy ez csak a jelzőbitre érvényes??

Ha az UXCON1 RXBIMD bitje "1", akkor az RXBKIF azonnal elkezdi a Break (szünetidő) detektálását.
Ha az RXBIMD értéke "0", akkor az RXBKIF akkor áll be, ha az RX bemenet visszatér a készenléti állapotból.
The UART has counters to detect when the RX input remains in the space state for an extended period of time. When this happens, the RXBKIF bit in the UxERRIR register is set.

A Break is detected when the RX input remains in the space state for 11 bit periods for asynchronous and LIN modes, and 23 bit periods for DMX mode. 

The user can select to receive the Break interrupt as soon as the Break is detec ted or at the end of the Break, when the RX input returns to the Idle state.
When the RXBIMD bit in the UxCON1 is ‘1’ then RXBKIF is set immediately upon Break detection.
When RXBIMD is ‘0’ then RXBKIF is set when the RX input returns to the Idle state.