PIC16F785 registers

All 53 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. 4PCLATH4
  5. 3PCLATH3
  6. 2PCLATH2
  7. 1PCLATH1
  8. 0PCLATH0
1 field
FieldBitsWhat it does
PCLATH4: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. 7nRAPU
  2. 6INTEDG
  3. 5T0CS
  4. 4T0SE
  5. 3PSA
  6. 2PS2
  7. 1PS1
  8. 0PS0
6 fields
FieldBitsWhat it does
nRAPU7
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. 7–
  2. 6–
  3. 5RA5
  4. 4RA4
  5. 3RA3
  6. 2RA2
  7. 1RA1
  8. 0RA0
6 fields
FieldBitsWhat it does
RA55
RA44
RA33
RA22
RA11
RA00

TRISA

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

WPUA

Address
0x95
Reset
0x3F
Access
read/write
  1. 7–
  2. 6–
  3. 5WPUA5
  4. 4WPUA4
  5. 3WPUA3
  6. 2WPUA2
  7. 1WPUA1
  8. 0WPUA0
6 fields
FieldBitsWhat it does
WPUA55
WPUA44
WPUA33
WPUA22
WPUA11
WPUA00

IOCA

Address
0x96
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5IOCA5
  4. 4IOCA4
  5. 3IOCA3
  6. 2IOCA2
  7. 1IOCA1
  8. 0IOCA0
6 fields
FieldBitsWhat it does
IOCA55
IOCA44
IOCA33
IOCA22
IOCA11
IOCA00

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. 3–
  6. 2–
  7. 1–
  8. 0–
4 fields
FieldBitsWhat it does
RB77
RB66
RB55
RB44

TRISB

Address
0x86
Reset
0xF0
Access
read/write
  1. 7TRISB7
  2. 6TRISB6
  3. 5TRISB5
  4. 4TRISB4
  5. 3–
  6. 2–
  7. 1–
  8. 0–
4 fields
FieldBitsWhat it does
TRISB77
TRISB66
TRISB55
TRISB44

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

INTERRUPT Interrupts

INTCON

Address
0x0B
Reset
0x00
Access
read/write
  1. 7GIE
  2. 6PEIE
  3. 5T0IE
  4. 4INTE
  5. 3RAIE
  6. 2T0IF
  7. 1INTF
  8. 0RAIF
8 fields
FieldBitsWhat it does
GIE7
PEIE6
T0IE5
INTE4
RAIE3
T0IF2
INTF1
RAIF0

PIR1

Address
0x0C
Reset
0x00
Access
read/write
  1. 7EEIF
  2. 6ADIF
  3. 5CCP1IF
  4. 4C2IF
  5. 3C1IF
  6. 2OSFIF
  7. 1TMR2IF
  8. 0TMR1IF
8 fields
FieldBitsWhat it does
EEIF7
ADIF6
CCP1IF5
C2IF4
C1IF3
OSFIF2
TMR2IF1
TMR1IF0

PIE1

Address
0x8C
Reset
0x00
Access
read/write
  1. 7EEIE
  2. 6ADIE
  3. 5CCP1IE
  4. 4C2IE
  5. 3C1IE
  6. 2OSFIE
  7. 1TMR2IE
  8. 0TMR1IE
8 fields
FieldBitsWhat it does
EEIE7
ADIE6
CCP1IE5
C2IE4
C1IE3
OSFIE2
TMR2IE1
TMR1IE0

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–

CCP1 Capture/compare/PWM 1

CCPR1L

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–

CCPR1H

Address
0x14
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
0x15
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5DCB1
  4. 4DCB0
  5. 3CCP1M3
  6. 2CCP1M2
  7. 1CCP1M1
  8. 0CCP1M0
2 fields
FieldBitsWhat it does
DCB5:4
CCP1M3:0

OSCILLATOR Oscillator, power control and watchdog

WDTCON

Address
0x18
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

PCON

Address
0x8E
Reset
x (not fixed at power-on)
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4SBOREN
  5. 3–
  6. 2–
  7. 1nPOR
  8. 0nBOR
3 fields
FieldBitsWhat it does
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

REFCON

Address
0x98
Reset
0x00
Access
read/write
  1. 7–
  2. 6–
  3. 5BGST
  4. 4VRBB
  5. 3VREN
  6. 2VROE
  7. 1CVROE
  8. 0–
5 fields
FieldBitsWhat it does
BGST5
VRBB4
VREN3
VROE2
CVROE1

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. 7ADFM
  2. 6VCFG
  3. 5CHS3
  4. 4CHS2
  5. 3CHS1
  6. 2CHS0
  7. 1GO/nDONE
  8. 0ADON
5 fields
FieldBitsWhat it does
ADFM7
VCFG6
CHS5:2
GO/nDONE1
ADON0

ANSEL0

Address
0x91
Reset
0xFF
Access
read/write
  1. 7ANS7
  2. 6ANS6
  3. 5ANS5
  4. 4ANS4
  5. 3ANS3
  6. 2ANS2
  7. 1ANS1
  8. 0ANS0
8 fields
FieldBitsWhat it does
ANS77
ANS66
ANS55
ANS44
ANS33
ANS22
ANS11
ANS00

ANSEL1

Address
0x93
Reset
0x0F
Access
read/write
  1. 7–
  2. 6–
  3. 5–
  4. 4–
  5. 3ANS11
  6. 2ANS10
  7. 1ANS9
  8. 0ANS8
4 fields
FieldBitsWhat it does
ANS113
ANS102
ANS91
ANS80

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. 7–
  2. 6ADCS2
  3. 5ADCS1
  4. 4ADCS0
  5. 3–
  6. 2–
  7. 1–
  8. 0–
1 field
FieldBitsWhat it does
ADCS6:4

COMPARATOR Comparators and voltage reference

VRCON

Address
0x99
Reset
0x00
Access
read/write
  1. 7C1VREN
  2. 6C2VREN
  3. 5VRR
  4. 4–
  5. 3VR3
  6. 2VR2
  7. 1VR1
  8. 0VR0
7 fields
FieldBitsWhat it does
C1VREN7
C2VREN6
VRR5
VR33
VR22
VR11
VR00

CM1CON0

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

CM2CON0

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

CM2CON1

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

NVM Data EEPROM and flash program memory

EEDATA

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

EEADR

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

EECON1

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

EECON2

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

SFR Other special function registers

PWMCON1

Address
0x110
Reset
0x00
Access
read/write
  1. 7OVRLP
  2. 6COMOD1
  3. 5COMOD0
  4. 4CMDLY4
  5. 3CMDLY3
  6. 2CMDLY2
  7. 1CMDLY1
  8. 0CMDLY0
3 fields
FieldBitsWhat it does
OVRLP7
COMOD6:5
CMDLY4:0

PWMCON0

Address
0x111
Reset
0x00
Access
read/write
  1. 7PRSEN
  2. 6PASEN
  3. 5BLANK2
  4. 4BLANK1
  5. 3SYNC1
  6. 2SYNC0
  7. 1PH2EN
  8. 0PH1EN
7 fields
FieldBitsWhat it does
PRSEN7
PASEN6
BLANK25
BLANK14
SYNC3:2
PH2EN1
PH1EN0

PWMCLK

Address
0x112
Reset
0x00
Access
read/write
  1. 7PWMASE
  2. 6PWMP1
  3. 5PWMP0
  4. 4PER4
  5. 3PER3
  6. 2PER2
  7. 1PER1
  8. 0PER0
3 fields
FieldBitsWhat it does
PWMASE7
PWMP6:5
PER4:0

PWMPH1

Address
0x113
Reset
0x00
Access
read/write
  1. 7POL
  2. 6C2EN
  3. 5C1EN
  4. 4PH4
  5. 3PH3
  6. 2PH2
  7. 1PH1
  8. 0PH0
4 fields
FieldBitsWhat it does
POL7
C2EN6
C1EN5
PH4:0

PWMPH2

Address
0x114
Reset
0x00
Access
read/write
  1. 7POL
  2. 6C2EN
  3. 5C1EN
  4. 4PH4
  5. 3PH3
  6. 2PH2
  7. 1PH1
  8. 0PH0
4 fields
FieldBitsWhat it does
POL7
C2EN6
C1EN5
PH4:0

OPA1CON

Address
0x11C
Reset
0x00
Access
read/write
  1. 7OPAON
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–
1 field
FieldBitsWhat it does
OPAON7

OPA2CON

Address
0x11D
Reset
0x00
Access
read/write
  1. 7OPAON
  2. 6–
  3. 5–
  4. 4–
  5. 3–
  6. 2–
  7. 1–
  8. 0–
1 field
FieldBitsWhat it does
OPAON7