PIC16F886 registers

All 71 registers by peripheral, at their data-memory address as the register file map gives it (bank and offset), with their reset value and every bit.

CPU CPU core

INDF

Address
0x00
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

PCL

Address
0x02
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

STATUS

Address
0x03
Reset
x (not fixed at power-on)
Access
read/write
  1. 7IRP
  2. 6RP1
  3. 5RP0
  4. 4nTO
  5. 3nPD
  6. 2Z
  7. 1DC
  8. 0C
7 fields
FieldBitsWhat it does
IRP7
RP6:5
nTO4
nPD3
Z2
DC1
C0

FSR

Address
0x04
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

PCLATH

Address
0x0A
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

TMR0 Timer0

TMR0

Address
0x01
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

OPTION_REG

Address
0x81
Reset
0xFF
Access
read/write
  1. 7nRBPU
  2. 6INTEDG
  3. 5T0CS
  4. 4T0SE
  5. 3PSA
  6. 2PS2
  7. 1PS1
  8. 0PS0
6 fields
FieldBitsWhat it does
nRBPU7
INTEDG6
T0CS5
T0SE4
PSA3
PS2:0

PORTA I/O port A

PORTA

Address
0x05
Reset
x (not fixed at power-on)
Access
read/write
  1. 7RA7
  2. 6RA6
  3. 5RA5
  4. 4RA4
  5. 3RA3
  6. 2RA2
  7. 1RA1
  8. 0RA0
8 fields
FieldBitsWhat it does
RA77
RA66
RA55
RA44
RA33
RA22
RA11
RA00

TRISA

Address
0x85
Reset
0xFF
Access
read/write
  1. 7TRISA7
  2. 6TRISA6
  3. 5TRISA5
  4. 4TRISA4
  5. 3TRISA3
  6. 2TRISA2
  7. 1TRISA1
  8. 0TRISA0
8 fields
FieldBitsWhat it does
TRISA77
TRISA66
TRISA55
TRISA44
TRISA33
TRISA22
TRISA11
TRISA00

PORTB I/O port B

PORTB

Address
0x06
Reset
x (not fixed at power-on)
Access
read/write
  1. 7RB7
  2. 6RB6
  3. 5RB5
  4. 4RB4
  5. 3RB3
  6. 2RB2
  7. 1RB1
  8. 0RB0
8 fields
FieldBitsWhat it does
RB77
RB66
RB55
RB44
RB33
RB22
RB11
RB00

TRISB

Address
0x86
Reset
0xFF
Access
read/write
  1. 7TRISB7
  2. 6TRISB6
  3. 5TRISB5
  4. 4TRISB4
  5. 3TRISB3
  6. 2TRISB2
  7. 1TRISB1
  8. 0TRISB0
8 fields
FieldBitsWhat it does
TRISB77
TRISB66
TRISB55
TRISB44
TRISB33
TRISB22
TRISB11
TRISB00

WPUB

Address
0x95
Reset
0xFF
Access
read/write
  1. 7WPUB7
  2. 6WPUB6
  3. 5WPUB5
  4. 4WPUB4
  5. 3WPUB3
  6. 2WPUB2
  7. 1WPUB1
  8. 0WPUB0
1 field
FieldBitsWhat it does
WPUB7:0

IOCB

Address
0x96
Reset
0x00
Access
read/write
  1. 7IOCB7
  2. 6IOCB6
  3. 5IOCB5
  4. 4IOCB4
  5. 3IOCB3
  6. 2IOCB2
  7. 1IOCB1
  8. 0IOCB0
1 field
FieldBitsWhat it does
IOCB7:0

PORTC I/O port C

PORTC

Address
0x07
Reset
x (not fixed at power-on)
Access
read/write
  1. 7RC7
  2. 6RC6
  3. 5RC5
  4. 4RC4
  5. 3RC3
  6. 2RC2
  7. 1RC1
  8. 0RC0
8 fields
FieldBitsWhat it does
RC77
RC66
RC55
RC44
RC33
RC22
RC11
RC00

TRISC

Address
0x87
Reset
0xFF
Access
read/write
  1. 7TRISC7
  2. 6TRISC6
  3. 5TRISC5
  4. 4TRISC4
  5. 3TRISC3
  6. 2TRISC2
  7. 1TRISC1
  8. 0TRISC0
8 fields
FieldBitsWhat it does
TRISC77
TRISC66
TRISC55
TRISC44
TRISC33
TRISC22
TRISC11
TRISC00

PORTE I/O port E

PORTE

Address
0x09
Reset
x (not fixed at power-on)
Access
read only
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3RE3
  6. 2–
  7. 1–
  8. 0–
1 field
FieldBitsWhat it does
RE33

TRISE

Address
0x89
Reset
0x08
Access
read only
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3TRISE3
  6. 2–
  7. 1–
  8. 0–
1 field
FieldBitsWhat it does
TRISE33

INTERRUPT Interrupts

INTCON

Address
0x0B
Reset
x (not fixed at power-on)
Access
read/write
  1. 7GIE
  2. 6PEIE
  3. 5T0IE
  4. 4INTE
  5. 3RBIE
  6. 2T0IF
  7. 1INTF
  8. 0RBIF
8 fields
FieldBitsWhat it does
GIE7
PEIE6
T0IE5
INTE4
RBIE3
T0IF2
INTF1
RBIF0

PIR1

Address
0x0C
Reset
0x00
Access
read/write
  1. 7–
  2. 6ADIF
  3. 5RCIF
  4. 4TXIF
  5. 3SSPIF
  6. 2CCP1IF
  7. 1TMR2IF
  8. 0TMR1IF
7 fields
FieldBitsWhat it does
ADIF6
RCIF5
TXIF4
SSPIF3
CCP1IF2
TMR2IF1
TMR1IF0

PIR2

Address
0x0D
Reset
0x00
Access
read/write
  1. 7OSFIF
  2. 6C2IF
  3. 5C1IF
  4. 4EEIF
  5. 3BCLIF
  6. 2ULPWUIF
  7. 1–
  8. 0CCP2IF
7 fields
FieldBitsWhat it does
OSFIF7
C2IF6
C1IF5
EEIF4
BCLIF3
ULPWUIF2
CCP2IF0

PIE1

Address
0x8C
Reset
0x00
Access
read/write
  1. 7–
  2. 6ADIE
  3. 5RCIE
  4. 4TXIE
  5. 3SSPIE
  6. 2CCP1IE
  7. 1TMR2IE
  8. 0TMR1IE
7 fields
FieldBitsWhat it does
ADIE6
RCIE5
TXIE4
SSPIE3
CCP1IE2
TMR2IE1
TMR1IE0

PIE2

Address
0x8D
Reset
0x00
Access
read/write
  1. 7OSFIE
  2. 6C2IE
  3. 5C1IE
  4. 4EEIE
  5. 3BCLIE
  6. 2ULPWUIE
  7. 1–
  8. 0CCP2IE
7 fields
FieldBitsWhat it does
OSFIE7
C2IE6
C1IE5
EEIE4
BCLIE3
ULPWUIE2
CCP2IE0

TMR1 Timer1

TMR1L

Address
0x0E
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

TMR1H

Address
0x0F
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

T1CON

Address
0x10
Reset
0x00
Access
read/write
  1. 7T1GINV
  2. 6TMR1GE
  3. 5T1CKPS1
  4. 4T1CKPS0
  5. 3T1OSCEN
  6. 2nT1SYNC
  7. 1TMR1CS
  8. 0TMR1ON
7 fields
FieldBitsWhat it does
T1GINV7
TMR1GE6
T1CKPS5:4
T1OSCEN3
nT1SYNC2
TMR1CS1
TMR1ON0

TMR2 Timer2

TMR2

Address
0x11
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

T2CON

Address
0x12
Reset
0x00
Access
read/write
  1. 7–
  2. 6TOUTPS3
  3. 5TOUTPS2
  4. 4TOUTPS1
  5. 3TOUTPS0
  6. 2TMR2ON
  7. 1T2CKPS1
  8. 0T2CKPS0
3 fields
FieldBitsWhat it does
TOUTPS6:3
TMR2ON2
T2CKPS1:0

PR2

Address
0x92
Reset
0xFF
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

MSSP Master synchronous serial port (SPI, I²C)

SSPBUF

Address
0x13
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

SSPCON

Address
0x14
Reset
0x00
Access
read/write
  1. 7WCOL
  2. 6SSPOV
  3. 5SSPEN
  4. 4CKP
  5. 3SSPM3
  6. 2SSPM2
  7. 1SSPM1
  8. 0SSPM0
5 fields
FieldBitsWhat it does
WCOL7
SSPOV6
SSPEN5
CKP4
SSPM3:0

SSPCON2

Address
0x91
Reset
0x00
Access
read/write
  1. 7GCEN
  2. 6ACKSTAT
  3. 5ACKDT
  4. 4ACKEN
  5. 3RCEN
  6. 2PEN
  7. 1RSEN
  8. 0SEN
8 fields
FieldBitsWhat it does
GCEN7
ACKSTAT6
ACKDT5
ACKEN4
RCEN3
PEN2
RSEN1
SEN0

SSPADD

Address
0x93
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

SSPMSK

Address
0x93
Reset
0xFF
Access
read/write
  1. 7MSK7
  2. 6MSK6
  3. 5MSK5
  4. 4MSK4
  5. 3MSK3
  6. 2MSK2
  7. 1MSK1
  8. 0MSK0
8 fields
FieldBitsWhat it does
MSK77
MSK66
MSK55
MSK44
MSK33
MSK22
MSK11
MSK00

SSPSTAT

Address
0x94
Reset
0x00
Access
read/write
  1. 7SMP
  2. 6CKE
  3. 5D/nA
  4. 4P
  5. 3S
  6. 2R/nW
  7. 1UA
  8. 0BF
8 fields
FieldBitsWhat it does
SMP7
CKE6
D/nA5
P4
S3
R/nW2
UA1
BF0

CCP1 Capture/compare/PWM 1

CCPR1L

Address
0x15
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

CCPR1H

Address
0x16
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

CCP1CON

Address
0x17
Reset
0x00
Access
read/write
  1. 7P1M1
  2. 6P1M0
  3. 5DC1B1
  4. 4DC1B0
  5. 3CCP1M3
  6. 2CCP1M2
  7. 1CCP1M1
  8. 0CCP1M0
3 fields
FieldBitsWhat it does
P1M7:6
DC1B5:4
CCP1M3:0

EUSART USART

RCSTA

Address
0x18
Reset
x (not fixed at power-on)
Access
read/write
  1. 7SPEN
  2. 6RX9
  3. 5SREN
  4. 4CREN
  5. 3ADDEN
  6. 2FERR
  7. 1OERR
  8. 0RX9D
8 fields
FieldBitsWhat it does
SPEN7
RX96
SREN5
CREN4
ADDEN3
FERR2
OERR1
RX9D0

TXREG

Address
0x19
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

RCREG

Address
0x1A
Reset
0x00
Access
read only
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

TXSTA

Address
0x98
Reset
0x02
Access
read/write
  1. 7CSRC
  2. 6TX9
  3. 5TXEN
  4. 4SYNC
  5. 3SENDB
  6. 2BRGH
  7. 1TRMT
  8. 0TX9D
8 fields
FieldBitsWhat it does
CSRC7
TX96
TXEN5
SYNC4
SENDB3
BRGH2
TRMT1
TX9D0

SPBRG

Address
0x99
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

SPBRGH

Address
0x9A
Reset
0x00
Access
read/write
  1. 7SPBRGH7
  2. 6SPBRGH6
  3. 5SPBRGH5
  4. 4SPBRGH4
  5. 3SPBRGH3
  6. 2SPBRGH2
  7. 1SPBRGH1
  8. 0SPBRGH0
1 field
FieldBitsWhat it does
SPBRGH7:0

BAUDCTL

Address
0x187
Reset
0x40
Access
read/write
  1. 7ABDOVF
  2. 6RCIDL
  3. 5–
  4. 4SCKP
  5. 3BRG16
  6. 2–
  7. 1WUE
  8. 0ABDEN
6 fields
FieldBitsWhat it does
ABDOVF7
RCIDL6
SCKP4
BRG163
WUE1
ABDEN0

CCP2 Capture/compare/PWM 2

CCPR2L

Address
0x1B
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

CCPR2H

Address
0x1C
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

CCP2CON

Address
0x1D
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5DC2B1
  4. 4DC2B0
  5. 3CCP2M3
  6. 2CCP2M2
  7. 1CCP2M1
  8. 0CCP2M0
3 fields
FieldBitsWhat it does
DC2B15
DC2B04
CCP2M3:0

ADC Analog-to-digital converter

ADRESH

Address
0x1E
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

ADCON0

Address
0x1F
Reset
0x00
Access
read/write
  1. 7ADCS1
  2. 6ADCS0
  3. 5CHS3
  4. 4CHS2
  5. 3CHS1
  6. 2CHS0
  7. 1GO/nDONE
  8. 0ADON
4 fields
FieldBitsWhat it does
ADCS7:6
CHS5:2
GO/nDONE1
ADON0

ADRESL

Address
0x9E
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

ADCON1

Address
0x9F
Reset
0x00
Access
read/write
  1. 7ADFM
  2. 6–
  3. 5VCFG1
  4. 4VCFG0
  5. 3–
  6. 2–
  7. 1–
  8. 0–
3 fields
FieldBitsWhat it does
ADFM7
VCFG15
VCFG04

ANSEL

Address
0x188
Reset
0x1F
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4ANS4
  5. 3ANS3
  6. 2ANS2
  7. 1ANS1
  8. 0ANS0
5 fields
FieldBitsWhat it does
ANS44
ANS33
ANS22
ANS11
ANS00

OSCILLATOR Oscillator, power control and watchdog

PCON

Address
0x8E
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5ULPWUE
  4. 4SBOREN
  5. 3–
  6. 2–
  7. 1nPOR
  8. 0nBOR
4 fields
FieldBitsWhat it does
ULPWUE5
SBOREN4
nPOR1
nBOR0

OSCCON

Address
0x8F
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6IRCF2
  3. 5IRCF1
  4. 4IRCF0
  5. 3OSTS
  6. 2HTS
  7. 1LTS
  8. 0SCS
5 fields
FieldBitsWhat it does
IRCF6:4
OSTS3
HTS2
LTS1
SCS0

OSCTUNE

Address
0x90
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4TUN4
  5. 3TUN3
  6. 2TUN2
  7. 1TUN1
  8. 0TUN0
1 field
FieldBitsWhat it does
TUN4:0

WDTCON

Address
0x105
Reset
0x08
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4WDTPS3
  5. 3WDTPS2
  6. 2WDTPS1
  7. 1WDTPS0
  8. 0SWDTEN
2 fields
FieldBitsWhat it does
WDTPS4:1
SWDTEN0

COMPARATOR Comparators and voltage reference

VRCON

Address
0x97
Reset
0x00
Access
read/write
  1. 7VREN
  2. 6VROE
  3. 5VRR
  4. 4VRSS
  5. 3VR3
  6. 2VR2
  7. 1VR1
  8. 0VR0
5 fields
FieldBitsWhat it does
VREN7
VROE6
VRR5
VRSS4
VR3:0

CM1CON0

Address
0x107
Reset
0x00
Access
read/write
  1. 7C1ON
  2. 6C1OUT
  3. 5C1OE
  4. 4C1POL
  5. 3–
  6. 2C1R
  7. 1C1CH1
  8. 0C1CH0
6 fields
FieldBitsWhat it does
C1ON7
C1OUT6
C1OE5
C1POL4
C1R2
C1CH1:0

CM2CON0

Address
0x108
Reset
0x00
Access
read/write
  1. 7C2ON
  2. 6C2OUT
  3. 5C2OE
  4. 4C2POL
  5. 3–
  6. 2C2R
  7. 1C2CH1
  8. 0C2CH0
6 fields
FieldBitsWhat it does
C2ON7
C2OUT6
C2OE5
C2POL4
C2R2
C2CH1:0

CM2CON1

Address
0x109
Reset
0x02
Access
read/write
  1. 7MC1OUT
  2. 6MC2OUT
  3. 5C1RSEL
  4. 4C2RSEL
  5. 3–
  6. 2–
  7. 1T1GSS
  8. 0C2SYNC
6 fields
FieldBitsWhat it does
MC1OUT7
MC2OUT6
C1RSEL5
C2RSEL4
T1GSS1
C2SYNC0

SRCON

Address
0x185
Reset
0x00
Access
read/write
  1. 7SR1
  2. 6SR0
  3. 5C1SEN
  4. 4C2REN
  5. 3PULSS
  6. 2PULSR
  7. 1–
  8. 0FVREN
7 fields
FieldBitsWhat it does
SR17
SR06
C1SEN5
C2REN4
PULSS3
PULSR2
FVREN0

ECCP1 Enhanced capture/compare/PWM 1

PWM1CON

Address
0x9B
Reset
0x00
Access
read/write
  1. 7PRSEN
  2. 6PDC6
  3. 5PDC5
  4. 4PDC4
  5. 3PDC3
  6. 2PDC2
  7. 1PDC1
  8. 0PDC0
2 fields
FieldBitsWhat it does
PRSEN7
PDC6:0

ECCP Enhanced capture/compare/PWM

ECCPAS

Address
0x9C
Reset
0x00
Access
read/write
  1. 7ECCPASE
  2. 6ECCPAS2
  3. 5ECCPAS1
  4. 4ECCPAS0
  5. 3PSSAC1
  6. 2PSSAC0
  7. 1PSSBD1
  8. 0PSSBD0
4 fields
FieldBitsWhat it does
ECCPASE7
ECCPAS6:4
PSSAC3:2
PSSBD1:0

PSTRCON

Address
0x9D
Reset
0x01
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4STRSYNC
  5. 3STRD
  6. 2STRC
  7. 1STRB
  8. 0STRA
5 fields
FieldBitsWhat it does
STRSYNC4
STRD3
STRC2
STRB1
STRA0

NVM Data EEPROM and flash program memory

EEDATA

Address
0x10C
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

EEADR

Address
0x10D
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

EEDATH

Address
0x10E
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

EEADRH

Address
0x10F
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

EECON1

Address
0x18C
Reset
x (not fixed at power-on)
Access
read/write
  1. 7EEPGD
  2. 6–
  3. 5–
  4. 4–
  5. 3WRERR
  6. 2WREN
  7. 1WR
  8. 0RD
5 fields
FieldBitsWhat it does
EEPGD7
WRERR3
WREN2
WR1
RD0

EECON2

Address
0x18D
Reset
0x00
Access
write only
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–

PORTH I/O port H

ANSELH

Address
0x189
Reset
0x3F
Access
read/write
  1. 7–
  2. 6–
  3. 5ANS13
  4. 4ANS12
  5. 3ANS11
  6. 2ANS10
  7. 1ANS9
  8. 0ANS8
6 fields
FieldBitsWhat it does
ANS135
ANS124
ANS113
ANS102
ANS91
ANS80