|
Regiszter neve
Bit neve és sorszáma |
|
INTCON |
|
GIE vagy GIEH
INTCON <7> |
GIE: Globálisan a megszakítások engedélyezése egyszintű megszakítás esetén.
GIEH: globálisan a magas szintű megszakítások engedélyezése kétszintű megszzakítás esetén.
Megj.: RCON regiszter, IPEN bitjével (RCON,IPEN=1) engedélyezzük vagy (RCON,IPEN=0) tiltjuk a kétszintű megszakítást. |
INTCON,
PEIE vagy GIEL |
PEIE: Periféria (belső is, így pld. TMRx) által generált megszakítás (INTCON,PEIE=1) engedélyezése vagy (INTCON,PEIE=0) tiltása egyszintű megszakítás esetén.
GIEL: Globálisan az alacsony szintű megszakítások engedélyezése kétszintű megszzakítás esetén.
Megj.: RCON regiszter, IPEN bitjével (RCON,IPEN=1) engedélyezzük vagy (RCON,IPEN=0) tiltjuk a kétszintű megszakítást. |
RCIF
PIR1<5> |
UART soros port RX bemenetére érkező jelre a megszakításbit "1"-re vált (PIR1,RCIF=1), amit majd a programból kell törölni. |
TXIF
PIR1<4> |
|
RCIE
PIE1<5> |
Engedélyezzük (PIR1,RCIE=1) az UART soros port RX bemenetére érkező jelre a megszakítást. |
TXIE
PIE1<4> |
|
RCIP
IPR1<5> |
Az UART soros port RX bemenetére érkező jelre a megszakítás pioritását lehet beállítani a bittel *1
0 = Alacsony szintű megszakítás
1 = Magas szintű megszakítás
*1 Megvalósulásához további beállítások is szükségesek. |
TXIP
IPR1<4> |
Az USART soros portnál a kiment adatra történő megszakítás proritását (szintjét) lehet beállítani a bittel *1
0 = Alacsony szintű megszakítás
1 = Magas szintű megszakítás
*1 További beállításokra is szükség van a megszakításhoz |
SPEN
RCSTA<7> |
SPEN /Serial Port Eneble bit/: Soros portot engedélyező bit
0 = Tiltja a soros portot (Reset esetén megmarad a "0")
1 = Soros portként konfigurálja (RX/DT és a TX/CK lábakat soros por lábaknak állítja be)
Megj.: A megfelelő lábakat előbb bemenetté kell konfigurálni, legalábbis szerintem, a biztonság kedvéért! |
RX9
RCSTA<6> |
RX9 / 9-Bit Receive Enable bit/ 9 bites adathosszúságú vételt engedélyező bit
0 = 8 bites vétel
1 = 9 bites vétel |
SREN
RCSTA<5> |
SREN /Single Receive Eneble bit/ Egyszeri vételt engedélyező bit
Aszinkron üzemmód:
0 = Egyszeri vétel tiltása
1 = Egyenkénti vétel engedélyezése
Megj.: A vétel megtörténte után az SREN bit törlődik
Szinkron módban szolgakénti vételkor hatástalan.
Aszionkron módban hatástalan, de a katalógusben nem szerepel, de lehet, hogy ??????????
SREN: Egyetlen befogadó bit engedélyezése. Ez a bit nincs hatással aszinkron üzemmódra és szinkron slave üzemmódra. Ennek a bitnek a beállítása lehetővé teszi az Egyszeri fogadást. Ez a bit a vétel befejezése után törlődik. |
CREN
RCSTA<4> |
CREN /Continous Receive Eneble bit/Folyamataos vételt engedélyező bit
Aszinkron üzemmód:
0 = Folyamatos vétel tiltása. Katalógus szerint: Letiltja a vételt
1 = Folyamatos vétel engedélyezése. Katalógus szerint: Engedélyezi a vételt
Szinkron üzemmód:
0 = Letiltja a folyamatos vételt
1 = Engedélyezi a folyamatis vételt míg a CREN-t nem törlik, ha törlik, akkor a CREN felülbírálja az SREN-t
---------------------------------------------------------------------
bcf RCSTA,CREN; Hiba torlese, gondolom mert nem olvastuk ki a regiszter
bsf RCSTA,CREN; Engedélyezzük a vetel adatregiszteret.
--------------------------------------
CREN: Folyamatos fogadás engedélyezése bit. A bit beállítása lehetővé teszi a folyamatos fogadás funkciót. A szinkron üzemmódban a CREN felülírja a SREN-t. |
ADDEN
RCSTA<3> |
ADDEN /Address Detect Enable bit/ Címzésként érzékeli az adatot mód bekapcsiolása
0 = Letiltja a címek detektálását, minden bitet fogad, így a 9. bitet paritásbitnek lehet használni.
Aszinkron módban a 8. bit (RX9 = 0): nem hatásos
1 = Engedélyezi a címek detektálását, engedélyezi a megszakítást és betülti a fogadási puffert ha RSR<8> értéke 1. |
FERR
RCSTA<2> |
FERR /Freming Error bit/ Frame hiba jelzőbit. A freme (keret) a START bittel kezdődik és a STOP bittel végződik.
0 = Nincs frame hiba
1 = frame hiba (nincs stopbit) |
OERR
RCSTA<1>
|
OERR /Overrun Error bit/ Ráfutást jelző bit
0 = Nincs réfutási hiba
1 = Ráfutás történt (Törlése: CREN bit törléssel ami az RCSTA regiszterben van) |
RX9D
RCSTA<0> |
Kilencedik adatbit.
Vett adat 9. bitje, pld. paritásbit. Paritásbitet nekünk kell előállítani. |
TXREG<0..7> |
|
RCREG<0..7> |
|
CSRC
TXSTA<7> |
CSRC /Clock Source Select bit/ Óraforrás kiválasztó bit
Aszinkron módban:
Nincs értelme mert csak belső előállítás van, mégpedig összehangban a két hardver egység között. Az összehangolás lesz a lényeges.
Szinkron módban:
0 = Szolga üzemmódban külső órajelből
1 = Mester módban belső előállítás BRG (Baud Rate Generator) egységból |
TX9
TXSTA<6> |
TX9 /9-Bit Transmit Enable bit/ Adathosz választó bit (8 vagy 9 bites)
0 = 8 bites adatküldés (ehhez hozzáadósik a START és a STOP bit) történik
1 = 9 bites adatküldés (ehhez hozzáadósik a START és a STOP bit) történik. A 9 bit lehet paritásbit vagy címadatot jelző vit a konfigurálásnak megfelelően |
TXEN
TXSTA<5> |
TXEN*1 /Transmir Enable bit/ Adatküldést engedélyező bit
0 = Adatküldés tiltva van
1 = Adatküldés engedélyezve van
*1: A SREN/CREN felülbírálja a TXEN szinkron módot, azzal a kivétellel, hogy a SREN nincs hatással a szinkron Slave üzemmódban. |
SYNC
TXSTA<4> |
SYNC /EUSART Mode Select bit/ Szinkron/aszinkron üzemmód kiválasztó bit
0 = Aszinkron üzemmód
1 = Szinkron üzemmód |
SENDB
TXSTA<3> |
SENDB /Send Break Character bit/ ?Küldje el a Break karakterbitet?
??????? |
BRGH
TXSTA<2> |
BRGH /High Baud Select bit/ Magas baud engedélyező bit. Baudrata kiszámításnál fontos.
0 = Alacsony sebesség
1 = magas sebesség
Szinkron módban: Nincs használatban |
TRMT
TXSTA<1> |
TRMT /Transmit Shift Register Status bit/ Adatküldés shift regiszter stásuszát jelző bit.
Adatküldéskor ezt a regisztert kell fogyelni, hogy áttöltődöt-e az adat a tényleges adatküldő shift regiszterne. ha 0-ra vált, betölthetjük a következő adatot.
0 = TSR regiszter tele van, vagyis megtelt
1 = TSR regiszter üres, így beletölthető a (következő) adat elküldésre. |
TX9D
TXSTA<0> |
TX9D /9th bit of Transmid Data/ 9. adatbit, ami a beállítástól függően lehet címadatot jelző bit és lehet paritásbit. Mi írjuk be még az adatregiszter (TXREG) feltöltése előtt. |
ABDOVF
BAUDCON<7> |
ABDOVF /Auto-Baud Acquisition Rollover Status bit/ Automatikus baud (adatátviteli sebesség) megkeresés engedélyező bit
0 = Nincs automatikus baudsebesség megállapítás a vevőnél, ezt nekünk kell beállítani programból
1 = Van automatikus baudsebesség megállapítás. Ilyenkor 55H (h'55') adatot illetve karaktert kell az adónak elküldeni, amiből a fogadó (vevő) meg tudja állapítani az adatsebességet (Baud-ot). ha a megállapítás megtörtént, tudtommal törölni kell ezt a bitet az üzemszerű adatátvitelhez. |
RCIDL
BAUDCON<6> |
RCIDL /Received operation Idle Status bit/ Adatfogadást Idle üzemmódban bekapcsoló bit
0 = Adatfogadás csak aktív üzemmódban
1 = Az adat fogadása Idle üzemmódban is |
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. |
|
|
|
|
|
|
|
|
|
|