1 LIST 2 3;========================================================================== 4; Build date : Oct 21 2015 5; MPASM PIC16F721 processor include 6; 7; (c) Copyright 1999-2015 Microchip Technology, All rights reserved 8;========================================================================== 9 10 NOLIST 11 12;========================================================================== 13; This header file defines configurations, registers, and other useful 14; bits of information for the PIC16F721 microcontroller. These names 15; are taken to match the data sheets as closely as possible. 16; 17; Note that the processor must be selected before this file is included. 18; The processor may be selected the following ways: 19; 20; 1. Command line switch: 21; C:\MPASM MYFILE.ASM /PIC16F721 22; 2. LIST directive in the source file 23; LIST P=PIC16F721 24; 3. Processor Type entry in the MPASM full-screen interface 25; 4. Setting the processor in the MPLAB Project Dialog 26;========================================================================== 27 28;========================================================================== 29; 30; Verify Processor 31; 32;========================================================================== 33 IFNDEF __16F721 34 MESSG "Processor-header file mismatch. Verify selected processor." 35 ENDIF 36 37 38 39;========================================================================== 40; 41; Register Definitions 42; 43;========================================================================== 44 45W EQU H'0000' 46F EQU H'0001' 47 48;----- Register Files ----------------------------------------------------- 49 50;-----Bank0------------------ 51INDF EQU H'0000' 52TMR0 EQU H'0001' 53PCL EQU H'0002' 54STATUS EQU H'0003' 55FSR EQU H'0004' 56PORTA EQU H'0005' 57PORTB EQU H'0006' 58PORTC EQU H'0007' 59PCLATH EQU H'000A' 60INTCON EQU H'000B' 61PIR1 EQU H'000C' 62TMR1 EQU H'000E' 63TMR1L EQU H'000E' 64TMR1H EQU H'000F' 65T1CON EQU H'0010' 66TMR2 EQU H'0011' 67T2CON EQU H'0012' 68SSPBUF EQU H'0013' 69SSPCON EQU H'0014' 70CCPR1 EQU H'0015' 71CCPR1L EQU H'0015' 72CCPR1H EQU H'0016' 73CCP1CON EQU H'0017' 74RCSTA EQU H'0018' 75TXREG EQU H'0019' 76RCREG EQU H'001A' 77ADRES EQU H'001E' 78ADCON0 EQU H'001F' 79 80;-----Bank1------------------ 81OPTION_REG EQU H'0081' 82TRISA EQU H'0085' 83TRISB EQU H'0086' 84TRISC EQU H'0087' 85PIE1 EQU H'008C' 86PCON EQU H'008E' 87T1GCON EQU H'008F' 88OSCCON EQU H'0090' 89OSCTUNE EQU H'0091' 90PR2 EQU H'0092' 91SSPADD EQU H'0093' 92SSPMSK EQU H'0093' 93SSPSTAT EQU H'0094' 94WPUA EQU H'0095' 95IOCA EQU H'0096' 96TXSTA EQU H'0098' 97SPBRG EQU H'0099' 98FVRCON EQU H'009D' 99ADCON1 EQU H'009F' 100 101;-----Bank2------------------ 102PMDATL EQU H'010C' 103PMADRL EQU H'010D' 104PMDATH EQU H'010E' 105PMADRH EQU H'010F' 106WPUB EQU H'0115' 107IOCB EQU H'0116' 108 109;-----Bank3------------------ 110ANSELA EQU H'0185' 111ANSELB EQU H'0186' 112ANSELC EQU H'0187' 113PMCON1 EQU H'018C' 114PMCON2 EQU H'018D' 115 116;----- STATUS Bits ----------------------------------------------------- 117C EQU H'0000' 118DC EQU H'0001' 119Z EQU H'0002' 120NOT_PD EQU H'0003' 121NOT_TO EQU H'0004' 122IRP EQU H'0007' 123 124RP0 EQU H'0005' 125RP1 EQU H'0006' 126 127 128;----- PORTA Bits ----------------------------------------------------- 129RA0 EQU H'0000' 130RA1 EQU H'0001' 131RA2 EQU H'0002' 132RA3 EQU H'0003' 133RA4 EQU H'0004' 134RA5 EQU H'0005' 135 136 137;----- PORTB Bits ----------------------------------------------------- 138RB4 EQU H'0004' 139RB5 EQU H'0005' 140RB6 EQU H'0006' 141RB7 EQU H'0007' 142 143 144;----- PORTC Bits ----------------------------------------------------- 145RC0 EQU H'0000' 146RC1 EQU H'0001' 147RC2 EQU H'0002' 148RC3 EQU H'0003' 149RC4 EQU H'0004' 150RC5 EQU H'0005' 151RC6 EQU H'0006' 152RC7 EQU H'0007' 153 154 155;----- INTCON Bits ----------------------------------------------------- 156RABIF EQU H'0000' 157INTF EQU H'0001' 158TMR0IF EQU H'0002' 159RABIE EQU H'0003' 160INTE EQU H'0004' 161TMR0IE EQU H'0005' 162PEIE EQU H'0006' 163GIE EQU H'0007' 164 165 166;----- PIR1 Bits ----------------------------------------------------- 167TMR1IF EQU H'0000' 168TMR2IF EQU H'0001' 169CCP1IF EQU H'0002' 170SSPIF EQU H'0003' 171TXIF EQU H'0004' 172RCIF EQU H'0005' 173ADIF EQU H'0006' 174TMR1GIF EQU H'0007' 175 176 177;----- T1CON Bits ----------------------------------------------------- 178TMR1ON EQU H'0000' 179T1SYNC EQU H'0002' 180 181NOT_T1SYNC EQU H'0002' 182T1CKPS0 EQU H'0004' 183T1CKPS1 EQU H'0005' 184TMR1CS0 EQU H'0006' 185TMR1CS1 EQU H'0007' 186 187 188;----- T2CON Bits ----------------------------------------------------- 189TMR2ON EQU H'0002' 190 191T2CKPS0 EQU H'0000' 192T2CKPS1 EQU H'0001' 193TOUTPS0 EQU H'0003' 194TOUTPS1 EQU H'0004' 195TOUTPS2 EQU H'0005' 196TOUTPS3 EQU H'0006' 197 198 199;----- SSPCON Bits ----------------------------------------------------- 200CKP EQU H'0004' 201SSPEN EQU H'0005' 202SSPOV EQU H'0006' 203WCOL EQU H'0007' 204 205SSPM0 EQU H'0000' 206SSPM1 EQU H'0001' 207SSPM2 EQU H'0002' 208SSPM3 EQU H'0003' 209 210 211;----- CCP1CON Bits ----------------------------------------------------- 212B1 EQU H'0004' 213DC1 EQU H'0005' 214 215CCP1M0 EQU H'0000' 216CCP1M1 EQU H'0001' 217CCP1M2 EQU H'0002' 218CCP1M3 EQU H'0003' 219CCP1Y EQU H'0004' 220CCP1X EQU H'0005' 221 222 223;----- RCSTA Bits ----------------------------------------------------- 224RX9D EQU H'0000' 225OERR EQU H'0001' 226FERR EQU H'0002' 227ADDEN EQU H'0003' 228CREN EQU H'0004' 229SREN EQU H'0005' 230RX9 EQU H'0006' 231SPEN EQU H'0007' 232 233 234;----- ADCON0 Bits ----------------------------------------------------- 235ADON EQU H'0000' 236GO_NOT_DONE EQU H'0001' 237 238CHS0 EQU H'0002' 239CHS1 EQU H'0003' 240CHS2 EQU H'0004' 241CHS3 EQU H'0005' 242 243 244;----- OPTION_REG Bits ----------------------------------------------------- 245PSA EQU H'0003' 246T0SE EQU H'0004' 247T0CS EQU H'0005' 248INTEDG EQU H'0006' 249NOT_RABPU EQU H'0007' 250 251PS0 EQU H'0000' 252PS1 EQU H'0001' 253PS2 EQU H'0002' 254 255 256;----- TRISA Bits ----------------------------------------------------- 257TRISA0 EQU H'0000' 258TRISA1 EQU H'0001' 259TRISA2 EQU H'0002' 260TRISA4 EQU H'0004' 261TRISA5 EQU H'0005' 262 263 264;----- TRISB Bits ----------------------------------------------------- 265TRISB4 EQU H'0004' 266TRISB5 EQU H'0005' 267TRISB6 EQU H'0006' 268TRISB7 EQU H'0007' 269 270 271;----- TRISC Bits ----------------------------------------------------- 272TRISC0 EQU H'0000' 273TRISC1 EQU H'0001' 274TRISC2 EQU H'0002' 275TRISC3 EQU H'0003' 276TRISC4 EQU H'0004' 277TRISC5 EQU H'0005' 278TRISC6 EQU H'0006' 279TRISC7 EQU H'0007' 280 281 282;----- PIE1 Bits ----------------------------------------------------- 283TMR1IE EQU H'0000' 284TMR2IE EQU H'0001' 285CCP1IE EQU H'0002' 286SSPIE EQU H'0003' 287TXIE EQU H'0004' 288RCIE EQU H'0005' 289ADIE EQU H'0006' 290TMR1GIE EQU H'0007' 291 292 293;----- PCON Bits ----------------------------------------------------- 294NOT_BOR EQU H'0000' 295NOT_POR EQU H'0001' 296 297 298;----- T1GCON Bits ----------------------------------------------------- 299T1GVAL EQU H'0002' 300T1GGO_DONE EQU H'0003' 301T1GSPM EQU H'0004' 302T1GTM EQU H'0005' 303T1GPOL EQU H'0006' 304TMR1GE EQU H'0007' 305 306T1GSS0 EQU H'0000' 307T1GSS1 EQU H'0001' 308T1GGO_NOT_DONE EQU H'0003' 309 310 311;----- OSCCON Bits ----------------------------------------------------- 312ICSS EQU H'0002' 313ICSL EQU H'0003' 314 315IRCF0 EQU H'0004' 316IRCF1 EQU H'0005' 317 318 319;----- OSCTUNE Bits ----------------------------------------------------- 320TUN0 EQU H'0000' 321TUN1 EQU H'0001' 322TUN2 EQU H'0002' 323TUN3 EQU H'0003' 324TUN4 EQU H'0004' 325TUN5 EQU H'0005' 326 327 328;----- SSPADD Bits ----------------------------------------------------- 329ADD0 EQU H'0000' 330ADD1 EQU H'0001' 331ADD2 EQU H'0002' 332ADD3 EQU H'0003' 333ADD4 EQU H'0004' 334ADD5 EQU H'0005' 335ADD6 EQU H'0006' 336ADD7 EQU H'0007' 337 338 339;----- SSPMSK Bits ----------------------------------------------------- 340MSK0 EQU H'0000' 341MSK1 EQU H'0001' 342MSK2 EQU H'0002' 343MSK3 EQU H'0003' 344MSK4 EQU H'0004' 345MSK5 EQU H'0005' 346MSK6 EQU H'0006' 347MSK7 EQU H'0007' 348 349 350;----- SSPSTAT Bits ----------------------------------------------------- 351BF EQU H'0000' 352UA EQU H'0001' 353R_NOT_W EQU H'0002' 354S EQU H'0003' 355P EQU H'0004' 356D_NOT_A EQU H'0005' 357CKE EQU H'0006' 358SMP EQU H'0007' 359 360 361;----- WPUA Bits ----------------------------------------------------- 362WPUA0 EQU H'0000' 363WPUA1 EQU H'0001' 364WPUA2 EQU H'0002' 365WPUA3 EQU H'0003' 366WPUA4 EQU H'0004' 367WPUA5 EQU H'0005' 368 369 370;----- IOCA Bits ----------------------------------------------------- 371IOCA0 EQU H'0000' 372IOCA1 EQU H'0001' 373IOCA2 EQU H'0002' 374IOCA3 EQU H'0003' 375IOCA4 EQU H'0004' 376IOCA5 EQU H'0005' 377 378 379;----- TXSTA Bits ----------------------------------------------------- 380TX9D EQU H'0000' 381TRMT EQU H'0001' 382BRGH EQU H'0002' 383SYNC EQU H'0004' 384TXEN EQU H'0005' 385TX9 EQU H'0006' 386CSRC EQU H'0007' 387 388 389;----- FVRCON Bits ----------------------------------------------------- 390ADFVR0 EQU H'0000' 391ADFVR1 EQU H'0001' 392TSRNG EQU H'0004' 393TSEN EQU H'0005' 394FVREN EQU H'0006' 395FVRRDY EQU H'0007' 396 397 398;----- ADCON1 Bits ----------------------------------------------------- 399ADCS0 EQU H'0004' 400ADCS1 EQU H'0005' 401ADCS2 EQU H'0006' 402 403 404;----- WPUB Bits ----------------------------------------------------- 405WPUB4 EQU H'0004' 406WPUB5 EQU H'0005' 407WPUB6 EQU H'0006' 408WPUB7 EQU H'0007' 409 410 411;----- IOCB Bits ----------------------------------------------------- 412IOCB4 EQU H'0004' 413IOCB5 EQU H'0005' 414IOCB6 EQU H'0006' 415IOCB7 EQU H'0007' 416 417 418;----- ANSELA Bits ----------------------------------------------------- 419ANSA0 EQU H'0000' 420ANSA1 EQU H'0001' 421ANSA2 EQU H'0002' 422ANSA4 EQU H'0004' 423ANSA5 EQU H'0005' 424 425 426;----- ANSELB Bits ----------------------------------------------------- 427ANSB4 EQU H'0004' 428ANSB5 EQU H'0005' 429 430 431;----- ANSELC Bits ----------------------------------------------------- 432ANSC0 EQU H'0000' 433ANSC1 EQU H'0001' 434ANSC2 EQU H'0002' 435ANSC3 EQU H'0003' 436ANSC6 EQU H'0006' 437ANSC7 EQU H'0007' 438 439 440;----- PMCON1 Bits ----------------------------------------------------- 441RD EQU H'0000' 442WR EQU H'0001' 443WREN EQU H'0002' 444FREE EQU H'0004' 445LWLO EQU H'0005' 446CFGS EQU H'0006' 447 448 449 450 451;========================================================================== 452; 453; RAM Definitions 454; 455;========================================================================== 456 __MAXRAM H'01FF' 457 __BADRAM H'0008'-H'0009' 458 __BADRAM H'000D' 459 __BADRAM H'001B'-H'001D' 460 __BADRAM H'0088'-H'0089' 461 __BADRAM H'008D' 462 __BADRAM H'0097' 463 __BADRAM H'009A'-H'009C' 464 __BADRAM H'009E' 465 __BADRAM H'0105'-H'0109' 466 __BADRAM H'0110'-H'0114' 467 __BADRAM H'0117'-H'011F' 468 __BADRAM H'0188'-H'0189' 469 __BADRAM H'018E'-H'019F' 470 __BADRAM H'01A0'-H'01EF' 471 472;========================================================================== 473; 474; Configuration Bits 475; 476; NAME Address 477; CONFIG1 2007h 478; CONFIG2 2008h 479; 480;========================================================================== 481 482; The following is an assignment of address values for all of the 483; configuration registers for the purpose of table reads 484_CONFIG1 EQU H'2007' 485_CONFIG2 EQU H'2008' 486 487;----- CONFIG1 Options -------------------------------------------------- 488_FOSC_INTOSCIO EQU H'3FFC' ; INTOSCIO oscillator: I/O function on RA4/CLKO pin, I/O function on RA5/CLKI 489_INTOSC_NOCLKOUT EQU H'3FFC' ; INTOSCIO oscillator: I/O function on RA4/CLKO pin, I/O function on RA5/CLKI 490_FOSC_INTOSCCLK EQU H'3FFD' ; INTOSC oscillator: CLKO function on RA4/CLKO pin, I/O function on RA5/CLKI 491_INTOSC_CLKOUT EQU H'3FFD' ; INTOSC oscillator: CLKO function on RA4/CLKO pin, I/O function on RA5/CLKI 492_FOSC_ECIO EQU H'3FFE' ; EC oscillator: I/O function on RA4/CLKO pin, CLKI on RA5/CLKI 493_EC_OSC_NOCLKOUT EQU H'3FFE' ; EC oscillator: I/O function on RA4/CLKO pin, CLKI on RA5/CLKI 494_FOSC_ECCLK EQU H'3FFF' ; EC oscillator: CLKO function on RA4/CLKO pin, CLKI on RA5/CLKI 495_EC_OSC_CLKOUT EQU H'3FFF' ; EC oscillator: CLKO function on RA4/CLKO pin, CLKI on RA5/CLKI 496 497_WDTE_OFF EQU H'3FF7' ; WDT disabled 498_WDTEN_OFF EQU H'3FF7' ; WDT disabled 499_WDTE_ON EQU H'3FFF' ; WDT enabled 500_WDTEN_ON EQU H'3FFF' ; WDT enabled 501 502_PWRTE_ON EQU H'3FEF' ; PWRT enabled 503_PWRTE_OFF EQU H'3FFF' ; PWRT disabled 504 505_MCLRE_OFF EQU H'3FDF' ; RA3/MCLR/VPP pin function is digital input; MCLR internally disabled; Weak pull-up disabled 506_MCLRE_ON EQU H'3FFF' ; RA3/MCLR/VPP pin function is MCLR; Weak pull-up enabled. 507 508_CP_ON EQU H'3FBF' ; 0000h to 0FFFh code protection on 509_CP_OFF EQU H'3FFF' ; Code protection off 510 511_BOREN_OFF EQU H'3CFF' ; Brown-out Reset disabled (Preconditioned State) 512_BOREN_NSLEEP EQU H'3EFF' ; Brown-out Reset enabled during operation and disabled in Sleep 513_BOREN_ON EQU H'3FFF' ; Brown-out Reset enabled 514 515_PLLEN_OFF EQU H'2FFF' ; INTOSC Frequency is 500 kHz 516_PLLEN_ON EQU H'3FFF' ; INTOSC Frequency is 16 MHz (32x) 517 518;----- CONFIG2 Options -------------------------------------------------- 519_WRTEN_FULL EQU H'3FFC' ; 0h to FFFh of flash memory write protected, no address may be modified 520_WRTEN_HALF EQU H'3FFD' ; 0h to 7FFh of flash memory write protected, 800h to FFFh may be modified 521_WRTEN_BOOT EQU H'3FFE' ; 0h to 1FFh of flash memory write protected, 200h to FFFh may be modified 522_WRTEN_OFF EQU H'3FFF' ; Write protection off 523 524;----- DEVID Equates -------------------------------------------------- 525_DEVID1 EQU H'2006' 526 527;----- IDLOC Equates -------------------------------------------------- 528_IDLOC0 EQU H'2000' 529_IDLOC1 EQU H'2001' 530_IDLOC2 EQU H'2002' 531_IDLOC3 EQU H'2003' 532 533 LIST 534