Registry PIC16F84

adresa registr
stránka 0
registr
stránka 1
adresa
00h INDF (1) INDF (1) 80h
01h TMR0 OPTION 81h
02h PCL PCL 82h
03h SWR SWR 83h
04h FSR FSR 84h
05h PORTA TRISA 85h
06h PORTB TRISB 86h
07h -- -- 87h
08h EEDATA EECON1 88h
09h EEADR EECON2 (1) 89h
0Ah PCLATH PCLATH 8Ah
0Bh INTCON INTCON 8Bh
0Ch
-
4Fh
68 bajtů
pamět RAM
namapováno
jako stránka 0
8Ch
-
CFh
50h
-
7Eh
neimplementováno
(čte jako 0)
neimplementováno
(čte jako 0)
D0h
-
FFh
(1) nejsou fyzické registry

BANKA 0
Adresa registr bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
00h INDF  
01h TMR0  
02h PCL  
03h SWR IRP RP1 RP0 /TO /PD Z DC C
04h FSR  
05h PORTA -- -- -- RA4/T0CKI RA3 RA2 RA1 RA0
06h PORTB RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0
07h --  
08h EEDATA  
09h EEADR  
0Ah PCLATH -- -- --  
0Bh INTCON GIE EEIE T0IE INTE RBIE T0IF INTF RBIF
BANKA 1
Adresa registr bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
80h INDF  
81h OPTION /RBPU INTEDG T0CS TS0E PSA PS2 PS1 PS0
82h PCL  
83h SWR IRP RP1 RP0 /TO /PD Z DC C
84h FSR  
85h TRISA -- -- -- I / O I / O I / O I / O I / O
86h TRISB I / O I / O I / O I / O I / O I / O I / O I / O
87h --  
88h EECON1 -- -- -- EEIF WRERR WREN WR RD
89h EECON2  
8Ah PCLATH -- -- --  
8Bh INTCON GIE EEIE T0IE INTE RBIE T0IF INTF RBIF


INDF Indirect Addressing
Registr nepřímého adresování dat
Představuje jiný registr , jehož adresa je uložena v registru FSR
zpět nahoru
TMR0 Real Time Clock/Counter
Hodiny / čítač reálného času
8 - bitový registr, jehož obsah může být zvýšen externím signálem z vývodu RA4/T0CKI nebo vnitřními hodinami.
zpět nahoru
OPTION Option Register
Registr slouží k nastavení TMR0 , WDT a portu B.
  • Bity 0,1,2 - PS0-PS2 - natavení dělícího poměru předděličky
      bity 2-0 dělení TMR0 čas WTD
      0 0 0 1:2 1:1
      0 0 1 1:4 1:2
      0 1 0 1:8 1:4
      0 1 1 1:16 1:8
      1 0 0 1:32 1:16
      1 0 1 1:64 1:32
      1 1 0 1:128 1:64
      1 1 1 1:256 1:128
  • Bit 3 - PSA - připojení předděličky
    • 0 - před TMR0
    • 1 - za WDT
  • Bit 4 - RTE - aktivní hrana při práci s TMR0
    • 0 - náběžná : z 0 na 1
    • 1 - spádová : z 1 na 0
  • Bit 5 - RTS - zdroj signálu pro TMR0
    • 0 - frekvence oscilátoru/4
    • 1 - pin RA4 portu A
  • Bit 6 - INTEDG - aktivní hrana pro aktivaci přerušení z pinu RB0 portu B
    • 0 - náběžná : z 0 na 1
    • 1 - spádová : z 1 na 0
  • Bit 7 - /RBPU - povolení pull-up portu B
    • 0 - pull-up aktivní
    • 1 - pull-up neaktivní
zpět nahoru
PCL Program Counter Low
Spodních 8 bitů čítače programu.
Horní část čítač programu není přímo přístupná, lze do ní zapisovat prostřednictvím registru PCLATH
zpět nahoru
SWR SWR Register
Stavový registr.
Obsahuje informace o výsledku aritmetické operace , nastavuje banku registrů
  • Bit 0 - C - Carry/Borrow - indikuje při sčítání přetečení - přenos do 9. bitu, při odčítání podtečení , přenos do -1. bitu neboli záporný výsledek.
    instrukce RLF a RRF jej používají k přenosu mezi bity 7 a 0
  • Bit 1 - DC - Digit Carry - indikuje přenos mezy bity 3 a4 podobně jako C
  • Bit 2 - Z - Zero bit - indikuje nulový výsledek operace
  • Bit 3 - /PD - Power down - indikuje důvod startu:
  • Bit 4 - /TO - Time-out - indikuje důvod time-out:
  • Bit 5,6 - RP0,RP1 - Výběr banky registrů:
    • 00 = Banka 0
    • 01 = Banka 1
    • 10 = Banka 2
    • 11 = Banka 3
  • Bit 7 - IRP - Výběr banky pro nepřímé adresování:
    • 0 = Banka 0 a 1
    • 1 = Banka 2 a 3
zpět nahoru
FSR File Select Register
Ukazatel pro nepřímé adresování.
Při nepřímém adresování je v něm uložená adresa registru s kterým se bude pracovat
zpět nahoru
PORTA Port A
Pětibitový obousměrný digitální port.
Nastavení vstupů nebo výstupů určuje registr TRISA. Vývod RA4 je ošetřen pomoci Shmittova klopného obvodu a lze jej použít jako zdroj hodin pro čítač TMR0. Výběr funkce RA4 nastavuje registr OPTION.
zpět nahoru
TRISA Tris A
Nastavení směru dat bitů portu A.
Pokud je bit nastaven (=1) je pin vstupem. Pokud je nulován (=0) je pin výstupem
zpět nahoru
PORTB Port B
Osmibitový obousměrný digitální port.
Nastavení vstupů nebo výstupů určuje registr TRISB. Pokud jsou bity 4-7 nastaveny jako vstupy mohou při změně stavu vyvolat přerušení. Při přerušení je generován příznak RBIF registru INTCON.
Bit 0 lze využít k vyvolání vnějšího přerušení. Nastavení aktivní hrany určuje bit INTEDG registru OPTION.
zpět nahoru
TRISB Tris B
Nastavení směru dat bitů portu B.
Pokud je bit nastaven (=1) je pin vstupem. Pokud je nulován (=0) je pin výstupem
zpět nahoru
EEDATA EEPROM Data
Data pro čtení / zápis do paměti EEPROM.
zpět nahoru
EEADR EEPROM Address
Adresa v paměti EEPROM.
zpět nahoru
EECON1 EEPROM Control 1
Řízení přístupu k paměti EEPROM.
  • Bit 0 - RD - Read - nastavením tohoto bitu se zahájí čtení bajtu z paměti EEPROM, jehož adresa byla uložena do EEADR.
  • Bit 1 - WR - Write - nastavením tohoto bitu se zahájí zápis bajtu do paměti EEPROM. Data k zápisu musí být uložena v registru EEDATA, adresa v registru EEADR
  • Bit 2 - WREN - Write Enable - povolení zápisu do EEPROM. Po zapnutí nebo resetu je zápis zakázán.
    • 0 - zápis zakázán
    • 1 - zápis povolen
  • Bit 3 - WRERR - Write Error Flag - chyba zápisu do EEPROM
    • 0 - zápis proběhl vpořádku
    • 1 - zápis do EEPROM byl přerušen vinou /MCLR nebo WDT
  • Bit 4 - EEIF - EEPROM Write Operation Interrupt Flag - ukončení zápisu do EEPROM, vyvolání přerušení pokud je povoleno bitem EEIE registru INTCON . Nutno nulovat programem.
    • 0 - operace zápisu dosud probíhá, nebo nebyla spuštěna
    • 1 - operace zápisu proběhla
  • Bity 5-7 nejsou použity , čtou se jako 0
zpět nahoru
EECON2 EEPROM Control 2
Speciální řídicí registr umožňující zápis dat do paměti EEPROM.
Není to fyzický registr, slouží jako ochrana proti nežádoucímu přepsání dat v paměti EEPROM.
zpět nahoru
PCLATH Program Counter Latch High
Horních 5 bitů čítače programu.
zpět nahoru
INTCON Interrupt Control
Registr pro řízení přerušení.
Bity jednotlivých příznaků přerušení je nutno nulovat programem.
  • Bit 0 - RBIF - RB Port Change Interrupt Flag - změna stavu bitů RB4 až RB7 portu B
    • 0 - stav se nezměnil
    • 1 - došlo ke změně
  • Bit 1 - INTF - RB0/INT Interrupt Flag - přerušení z vývodu RB0/INT portu B
    • 0 - přerušení nenastalo
    • 1 - přerušení nastalo
  • Bit 2 - T0IF - TMR0 Overflow Interrupt Flag - přerušení přetečením časovače TMR0
    • 0 - přetečení nenastalo
    • 1 - přetečení nastalo
  • Bit 3 - RBIE RB Port Change Interrupt Enable - povolení přerušení změnou stavu bitů RB4 až RB7 portu B
    • 0 - přerušení zakázáno
    • 1 - přerušení povoleno
  • Bit 4 - INTE - RB0/INT Interrupt Enable - povolení přerušení z vývodu RB0/INT portu B
    • 0 - přerušení zakázáno
    • 1 - přerušení povoleno
  • Bit 5 - T0IE - TMR0 Overflow Interrupt Enable - povolení přerušení přetečením časovače TMR0
    • 0 - přerušení zakázáno
    • 1 - přerušení povoleno
  • Bit 6 - EEIE - EEPROM Write Complete Interrupt Enable - povolení přerušení při dokončení zápisu do paměti EEPROM
    • 0 - přerušení zakázáno
    • 1 - přerušení povoleno
  • Bit 7 - GIE - Global Interrupt Enable - povolení všech přerušení
    • 0 - přerušení zakázáno
    • 1 - přerušení povoleno
zpět nahoru