1 LIST 2 3;========================================================================== 4; Build date : Oct 21 2015 5; MPASM PIC16C717 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 PIC16C717 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 /PIC16C717 22; 2. LIST directive in the source file 23; LIST P=PIC16C717 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 __16C717 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' 58PCLATH EQU H'000A' 59INTCON EQU H'000B' 60PIR1 EQU H'000C' 61PIR2 EQU H'000D' 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' 74ADRESH EQU H'001E' 75ADCON0 EQU H'001F' 76 77;-----Bank1------------------ 78OPTION_REG EQU H'0081' 79TRISA EQU H'0085' 80TRISB EQU H'0086' 81PIE1 EQU H'008C' 82PIE2 EQU H'008D' 83PCON EQU H'008E' 84SSPCON2 EQU H'0091' 85PR2 EQU H'0092' 86SSPADD EQU H'0093' 87SSPSTAT EQU H'0094' 88WPUB EQU H'0095' 89IOCB EQU H'0096' 90P1DEL EQU H'0097' 91REFCON EQU H'009B' 92LVDCON EQU H'009C' 93ANSEL EQU H'009D' 94ADRESL EQU H'009E' 95ADCON1 EQU H'009F' 96 97;-----Bank2------------------ 98PMDATL EQU H'010C' 99PMADRL EQU H'010D' 100PMDATH EQU H'010E' 101PMADRH EQU H'010F' 102 103;-----Bank3------------------ 104PMCON1 EQU H'018C' 105 106;----- STATUS Bits ----------------------------------------------------- 107C EQU H'0000' 108DC EQU H'0001' 109Z EQU H'0002' 110NOT_PD EQU H'0003' 111NOT_TO EQU H'0004' 112IRP EQU H'0007' 113 114RP0 EQU H'0005' 115RP1 EQU H'0006' 116 117 118;----- PORTA Bits ----------------------------------------------------- 119RA0 EQU H'0000' 120RA1 EQU H'0001' 121RA2 EQU H'0002' 122RA3 EQU H'0003' 123RA4 EQU H'0004' 124RA5 EQU H'0005' 125RA6 EQU H'0006' 126RA7 EQU H'0007' 127 128 129;----- PORTB Bits ----------------------------------------------------- 130RB0 EQU H'0000' 131RB1 EQU H'0001' 132RB2 EQU H'0002' 133RB3 EQU H'0003' 134RB4 EQU H'0004' 135RB5 EQU H'0005' 136RB6 EQU H'0006' 137RB7 EQU H'0007' 138 139 140;----- INTCON Bits ----------------------------------------------------- 141RBIF EQU H'0000' 142INTF EQU H'0001' 143T0IF EQU H'0002' 144RBIE EQU H'0003' 145INTE EQU H'0004' 146T0IE EQU H'0005' 147PEIE EQU H'0006' 148GIE EQU H'0007' 149 150TMR0IF EQU H'0002' 151TMR0IE EQU H'0005' 152 153 154;----- PIR1 Bits ----------------------------------------------------- 155TMR1IF EQU H'0000' 156TMR2IF EQU H'0001' 157CCP1IF EQU H'0002' 158SSPIF EQU H'0003' 159ADIF EQU H'0006' 160 161 162;----- PIR2 Bits ----------------------------------------------------- 163BCLIF EQU H'0003' 164LVDIF EQU H'0007' 165 166 167;----- T1CON Bits ----------------------------------------------------- 168TMR1ON EQU H'0000' 169TMR1CS EQU H'0001' 170NOT_T1SYNC EQU H'0002' 171T1OSCEN EQU H'0003' 172 173T1INSYNC EQU H'0002' 174T1CKPS0 EQU H'0004' 175T1CKPS1 EQU H'0005' 176 177 178;----- T2CON Bits ----------------------------------------------------- 179TMR2ON EQU H'0002' 180 181T2CKPS0 EQU H'0000' 182T2CKPS1 EQU H'0001' 183TOUTPS0 EQU H'0003' 184TOUTPS1 EQU H'0004' 185TOUTPS2 EQU H'0005' 186TOUTPS3 EQU H'0006' 187 188 189;----- SSPCON Bits ----------------------------------------------------- 190CKP EQU H'0004' 191SSPEN EQU H'0005' 192SSPOV EQU H'0006' 193WCOL EQU H'0007' 194 195SSPM0 EQU H'0000' 196SSPM1 EQU H'0001' 197SSPM2 EQU H'0002' 198SSPM3 EQU H'0003' 199 200 201;----- CCP1CON Bits ----------------------------------------------------- 202CCP1M0 EQU H'0000' 203CCP1M1 EQU H'0001' 204CCP1M2 EQU H'0002' 205CCP1M3 EQU H'0003' 206DC1B0 EQU H'0004' 207DC1B1 EQU H'0005' 208PWM1M0 EQU H'0006' 209PWM1M1 EQU H'0007' 210 211 212;----- ADCON0 Bits ----------------------------------------------------- 213ADON EQU H'0000' 214CHS3 EQU H'0001' 215GO_NOT_DONE EQU H'0002' 216 217GO EQU H'0002' 218CHS0 EQU H'0003' 219CHS1 EQU H'0004' 220CHS2 EQU H'0005' 221ADCS0 EQU H'0006' 222ADCS1 EQU H'0007' 223 224NOT_DONE EQU H'0002' 225 226GO_DONE EQU H'0002' 227 228 229;----- OPTION_REG Bits ----------------------------------------------------- 230PSA EQU H'0003' 231T0SE EQU H'0004' 232T0CS EQU H'0005' 233INTEDG EQU H'0006' 234NOT_RBPU EQU H'0007' 235 236PS0 EQU H'0000' 237PS1 EQU H'0001' 238PS2 EQU H'0002' 239 240 241;----- TRISA Bits ----------------------------------------------------- 242TRISA0 EQU H'0000' 243TRISA1 EQU H'0001' 244TRISA2 EQU H'0002' 245TRISA3 EQU H'0003' 246TRISA4 EQU H'0004' 247TRISA5 EQU H'0005' 248TRISA6 EQU H'0006' 249TRISA7 EQU H'0007' 250 251 252;----- TRISB Bits ----------------------------------------------------- 253TRISB0 EQU H'0000' 254TRISB1 EQU H'0001' 255TRISB2 EQU H'0002' 256TRISB3 EQU H'0003' 257TRISB4 EQU H'0004' 258TRISB5 EQU H'0005' 259TRISB6 EQU H'0006' 260TRISB7 EQU H'0007' 261 262 263;----- PIE1 Bits ----------------------------------------------------- 264TMR1IE EQU H'0000' 265TMR2IE EQU H'0001' 266CCP1IE EQU H'0002' 267SSPIE EQU H'0003' 268ADIE EQU H'0006' 269 270 271;----- PIE2 Bits ----------------------------------------------------- 272BCLIE EQU H'0003' 273LVDIE EQU H'0007' 274 275 276;----- PCON Bits ----------------------------------------------------- 277NOT_BOR EQU H'0000' 278NOT_POR EQU H'0001' 279OSCF EQU H'0003' 280 281NOT_BO EQU H'0000' 282 283 284;----- SSPCON2 Bits ----------------------------------------------------- 285SEN EQU H'0000' 286RSEN EQU H'0001' 287PEN EQU H'0002' 288RCEN EQU H'0003' 289ACKEN EQU H'0004' 290ACKDT EQU H'0005' 291ACKSTAT EQU H'0006' 292GCEN EQU H'0007' 293 294 295;----- SSPSTAT Bits ----------------------------------------------------- 296BF EQU H'0000' 297UA EQU H'0001' 298R_NOT_W EQU H'0002' 299S EQU H'0003' 300P EQU H'0004' 301D_NOT_A EQU H'0005' 302CKE EQU H'0006' 303SMP EQU H'0007' 304 305R EQU H'0002' 306D EQU H'0005' 307 308I2C_READ EQU H'0002' 309I2C_START EQU H'0003' 310I2C_STOP EQU H'0004' 311I2C_DATA EQU H'0005' 312 313R_W EQU H'0002' 314D_A EQU H'0005' 315 316READ_WRITE EQU H'0002' 317DATA_ADDRESS EQU H'0005' 318 319NOT_W EQU H'0002' 320NOT_A EQU H'0005' 321 322NOT_WRITE EQU H'0002' 323NOT_ADDRESS EQU H'0005' 324 325 326;----- WPUB Bits ----------------------------------------------------- 327WPUB0 EQU H'0000' 328WPUB1 EQU H'0001' 329WPUB2 EQU H'0002' 330WPUB3 EQU H'0003' 331WPUB4 EQU H'0004' 332WPUB5 EQU H'0005' 333WPUB6 EQU H'0006' 334WPUB7 EQU H'0007' 335 336 337;----- IOCB Bits ----------------------------------------------------- 338IOCB0 EQU H'0000' 339IOCB1 EQU H'0001' 340IOCB2 EQU H'0002' 341IOCB3 EQU H'0003' 342IOCB4 EQU H'0004' 343IOCB5 EQU H'0005' 344IOCB6 EQU H'0006' 345IOCB7 EQU H'0007' 346 347 348;----- REFCON Bits ----------------------------------------------------- 349VRLOEN EQU H'0004' 350VRHOEN EQU H'0005' 351VRLEN EQU H'0006' 352VRHEN EQU H'0007' 353 354 355;----- LVDCON Bits ----------------------------------------------------- 356LVDEN EQU H'0004' 357BGST EQU H'0005' 358 359LV0 EQU H'0000' 360LV1 EQU H'0001' 361LV2 EQU H'0002' 362LV3 EQU H'0003' 363 364 365;----- ANSEL Bits ----------------------------------------------------- 366ANS0 EQU H'0000' 367ANS1 EQU H'0001' 368ANS2 EQU H'0002' 369ANS3 EQU H'0003' 370ANS4 EQU H'0004' 371ANS5 EQU H'0005' 372 373 374;----- ADCON1 Bits ----------------------------------------------------- 375ADFM EQU H'0007' 376 377VCFG0 EQU H'0004' 378VCFG1 EQU H'0005' 379VCFG2 EQU H'0006' 380 381 382;----- PMCON1 Bits ----------------------------------------------------- 383RD EQU H'0000' 384 385 386 387 388;========================================================================== 389; 390; RAM Definitions 391; 392;========================================================================== 393 __MAXRAM H'01FF' 394 __BADRAM H'0007'-H'0009' 395 __BADRAM H'0018'-H'001D' 396 __BADRAM H'0087'-H'0089' 397 __BADRAM H'008F'-H'0090' 398 __BADRAM H'0098'-H'009A' 399 __BADRAM H'0105' 400 __BADRAM H'0107'-H'0109' 401 __BADRAM H'0110'-H'011F' 402 __BADRAM H'0185' 403 __BADRAM H'0187'-H'0189' 404 __BADRAM H'018D'-H'018F' 405 __BADRAM H'0190'-H'01EF' 406 407;========================================================================== 408; 409; Configuration Bits 410; 411; NAME Address 412; CONFIG1 2007h 413; 414;========================================================================== 415 416; The following is an assignment of address values for all of the 417; configuration registers for the purpose of table reads 418_CONFIG1 EQU H'2007' 419 420;----- CONFIG1 Options -------------------------------------------------- 421_FOSC_LP EQU H'3FF8' ; LP oscillator 422_LP_OSC EQU H'3FF8' ; LP oscillator 423_FOSC_XT EQU H'3FF9' ; XT oscillator 424_XT_OSC EQU H'3FF9' ; XT oscillator 425_FOSC_HS EQU H'3FFA' ; HS oscillator 426_HS_OSC EQU H'3FFA' ; HS oscillator 427_FOSC_EXTCLK EQU H'3FFB' ; EC I/O 428_EXTCLK_OSC EQU H'3FFB' ; EC I/O 429_FOSC_INTRCIO EQU H'3FFC' ; INTRC, OSC2 is I/O 430_INTRC_OSC_NOCLKOUT EQU H'3FFC' ; INTRC, OSC2 is I/O 431_FOSC_INTRCCLK EQU H'3FFD' ; INTRC, clockout on OSC2 432_INTRC_OSC_CLKOUT EQU H'3FFD' ; INTRC, clockout on OSC2 433_FOSC_ER_NOCLKOUT EQU H'3FFE' ; ER I/O 434_ER_OSC_NOCLKOUT EQU H'3FFE' ; ER I/O 435_FOSC_ER_CLKOUT EQU H'3FFF' ; ER CLKOUT 436_ER_OSC_CLKOUT EQU H'3FFF' ; ER CLKOUT 437 438_WDTE_OFF EQU H'3FF7' ; WDT disabled 439_WDT_OFF EQU H'3FF7' ; WDT disabled 440_WDTE_ON EQU H'3FFF' ; WDT enabled 441_WDT_ON EQU H'3FFF' ; WDT enabled 442 443_PWRTE_ON EQU H'3FEF' ; PWRT enabled 444_PWRTE_OFF EQU H'3FFF' ; PWRT disabled 445 446_MCLRE_OFF EQU H'3FDF' ; Internal 447_MCLRE_ON EQU H'3FFF' ; External 448 449_BOREN_OFF EQU H'3FBF' ; BOR disabled 450_BODEN_OFF EQU H'3FBF' ; BOR disabled 451_BOREN_ON EQU H'3FFF' ; BOR enabled 452_BODEN_ON EQU H'3FFF' ; BOR enabled 453 454_CP_ALL EQU H'0CFF' ; All memory is code protected 455_CP_OFF EQU H'3FFF' ; Code protection off 456 457_BODENV_45 EQU H'33FF' ; VBOR set to 4.5V 458_VBOR_45 EQU H'33FF' ; VBOR set to 4.5V 459_BODENV_42 EQU H'37FF' ; VBOR set to 4.2V 460_VBOR_42 EQU H'37FF' ; VBOR set to 4.2V 461_BODENV_27 EQU H'3BFF' ; VBOR set to 2.7V 462_VBOR_27 EQU H'3BFF' ; VBOR set to 2.7V 463_BODENV_25 EQU H'3FFF' ; VBOR set to 2.5V 464_VBOR_25 EQU H'3FFF' ; VBOR set to 2.5V 465 466 467;----- IDLOC Equates -------------------------------------------------- 468_IDLOC0 EQU H'2000' 469_IDLOC1 EQU H'2001' 470_IDLOC2 EQU H'2002' 471_IDLOC3 EQU H'2003' 472 473 LIST 474