1 /* 2 * This declarations of the PIC18F96J99 MCU. 3 * 4 * This file is part of the GNU PIC library for SDCC, originally 5 * created by Molnar Karoly <molnarkaroly@users.sf.net> 2016. 6 * 7 * This file is generated automatically by the cinc2h.pl, 2016-04-13 17:23:41 UTC. 8 * 9 * SDCC is licensed under the GNU Public license (GPL) v2. Note that 10 * this license covers the code to the compiler and other executables, 11 * but explicitly does not cover any code or objects generated by sdcc. 12 * 13 * For pic device libraries and header files which are derived from 14 * Microchip header (.inc) and linker script (.lkr) files Microchip 15 * requires that "The header files should state that they are only to be 16 * used with authentic Microchip devices" which makes them incompatible 17 * with the GPL. Pic device libraries and header files are located at 18 * non-free/lib and non-free/include directories respectively. 19 * Sdcc should be run with the --use-non-free command line option in 20 * order to include non-free header files and libraries. 21 * 22 * See http://sdcc.sourceforge.net/ for the latest information on sdcc. 23 */ 24 25 #ifndef __PIC18F96J99_H__ 26 #define __PIC18F96J99_H__ 27 28 //============================================================================== 29 30 //============================================================================== 31 // 32 // Register Definitions 33 // 34 //============================================================================== 35 36 37 //============================================================================== 38 // UEP0 Bits 39 40 extern __at(0x0DFF) __sfr UEP0; 41 42 typedef struct 43 { 44 unsigned EPSTALL : 1; 45 unsigned EPINEN : 1; 46 unsigned EPOUTEN : 1; 47 unsigned EPCONDIS : 1; 48 unsigned EPHSHK : 1; 49 unsigned : 1; 50 unsigned : 1; 51 unsigned : 1; 52 } __UEP0bits_t; 53 54 extern __at(0x0DFF) volatile __UEP0bits_t UEP0bits; 55 56 #define _EPSTALL 0x01 57 #define _EPINEN 0x02 58 #define _EPOUTEN 0x04 59 #define _EPCONDIS 0x08 60 #define _EPHSHK 0x10 61 62 //============================================================================== 63 64 65 //============================================================================== 66 // UEP1 Bits 67 68 extern __at(0x0E00) __sfr UEP1; 69 70 typedef struct 71 { 72 unsigned EPSTALL : 1; 73 unsigned EPINEN : 1; 74 unsigned EPOUTEN : 1; 75 unsigned EPCONDIS : 1; 76 unsigned EPHSHK : 1; 77 unsigned : 1; 78 unsigned : 1; 79 unsigned : 1; 80 } __UEP1bits_t; 81 82 extern __at(0x0E00) volatile __UEP1bits_t UEP1bits; 83 84 #define _UEP1_EPSTALL 0x01 85 #define _UEP1_EPINEN 0x02 86 #define _UEP1_EPOUTEN 0x04 87 #define _UEP1_EPCONDIS 0x08 88 #define _UEP1_EPHSHK 0x10 89 90 //============================================================================== 91 92 93 //============================================================================== 94 // UEP2 Bits 95 96 extern __at(0x0E01) __sfr UEP2; 97 98 typedef struct 99 { 100 unsigned EPSTALL : 1; 101 unsigned EPINEN : 1; 102 unsigned EPOUTEN : 1; 103 unsigned EPCONDIS : 1; 104 unsigned EPHSHK : 1; 105 unsigned : 1; 106 unsigned : 1; 107 unsigned : 1; 108 } __UEP2bits_t; 109 110 extern __at(0x0E01) volatile __UEP2bits_t UEP2bits; 111 112 #define _UEP2_EPSTALL 0x01 113 #define _UEP2_EPINEN 0x02 114 #define _UEP2_EPOUTEN 0x04 115 #define _UEP2_EPCONDIS 0x08 116 #define _UEP2_EPHSHK 0x10 117 118 //============================================================================== 119 120 121 //============================================================================== 122 // UEP3 Bits 123 124 extern __at(0x0E02) __sfr UEP3; 125 126 typedef struct 127 { 128 unsigned EPSTALL : 1; 129 unsigned EPINEN : 1; 130 unsigned EPOUTEN : 1; 131 unsigned EPCONDIS : 1; 132 unsigned EPHSHK : 1; 133 unsigned : 1; 134 unsigned : 1; 135 unsigned : 1; 136 } __UEP3bits_t; 137 138 extern __at(0x0E02) volatile __UEP3bits_t UEP3bits; 139 140 #define _UEP3_EPSTALL 0x01 141 #define _UEP3_EPINEN 0x02 142 #define _UEP3_EPOUTEN 0x04 143 #define _UEP3_EPCONDIS 0x08 144 #define _UEP3_EPHSHK 0x10 145 146 //============================================================================== 147 148 149 //============================================================================== 150 // UEP4 Bits 151 152 extern __at(0x0E03) __sfr UEP4; 153 154 typedef struct 155 { 156 unsigned EPSTALL : 1; 157 unsigned EPINEN : 1; 158 unsigned EPOUTEN : 1; 159 unsigned EPCONDIS : 1; 160 unsigned EPHSHK : 1; 161 unsigned : 1; 162 unsigned : 1; 163 unsigned : 1; 164 } __UEP4bits_t; 165 166 extern __at(0x0E03) volatile __UEP4bits_t UEP4bits; 167 168 #define _UEP4_EPSTALL 0x01 169 #define _UEP4_EPINEN 0x02 170 #define _UEP4_EPOUTEN 0x04 171 #define _UEP4_EPCONDIS 0x08 172 #define _UEP4_EPHSHK 0x10 173 174 //============================================================================== 175 176 177 //============================================================================== 178 // UEP5 Bits 179 180 extern __at(0x0E04) __sfr UEP5; 181 182 typedef struct 183 { 184 unsigned EPSTALL : 1; 185 unsigned EPINEN : 1; 186 unsigned EPOUTEN : 1; 187 unsigned EPCONDIS : 1; 188 unsigned EPHSHK : 1; 189 unsigned : 1; 190 unsigned : 1; 191 unsigned : 1; 192 } __UEP5bits_t; 193 194 extern __at(0x0E04) volatile __UEP5bits_t UEP5bits; 195 196 #define _UEP5_EPSTALL 0x01 197 #define _UEP5_EPINEN 0x02 198 #define _UEP5_EPOUTEN 0x04 199 #define _UEP5_EPCONDIS 0x08 200 #define _UEP5_EPHSHK 0x10 201 202 //============================================================================== 203 204 205 //============================================================================== 206 // UEP6 Bits 207 208 extern __at(0x0E05) __sfr UEP6; 209 210 typedef struct 211 { 212 unsigned EPSTALL : 1; 213 unsigned EPINEN : 1; 214 unsigned EPOUTEN : 1; 215 unsigned EPCONDIS : 1; 216 unsigned EPHSHK : 1; 217 unsigned : 1; 218 unsigned : 1; 219 unsigned : 1; 220 } __UEP6bits_t; 221 222 extern __at(0x0E05) volatile __UEP6bits_t UEP6bits; 223 224 #define _UEP6_EPSTALL 0x01 225 #define _UEP6_EPINEN 0x02 226 #define _UEP6_EPOUTEN 0x04 227 #define _UEP6_EPCONDIS 0x08 228 #define _UEP6_EPHSHK 0x10 229 230 //============================================================================== 231 232 233 //============================================================================== 234 // UEP7 Bits 235 236 extern __at(0x0E06) __sfr UEP7; 237 238 typedef struct 239 { 240 unsigned EPSTALL : 1; 241 unsigned EPINEN : 1; 242 unsigned EPOUTEN : 1; 243 unsigned EPCONDIS : 1; 244 unsigned EPHSHK : 1; 245 unsigned : 1; 246 unsigned : 1; 247 unsigned : 1; 248 } __UEP7bits_t; 249 250 extern __at(0x0E06) volatile __UEP7bits_t UEP7bits; 251 252 #define _UEP7_EPSTALL 0x01 253 #define _UEP7_EPINEN 0x02 254 #define _UEP7_EPOUTEN 0x04 255 #define _UEP7_EPCONDIS 0x08 256 #define _UEP7_EPHSHK 0x10 257 258 //============================================================================== 259 260 261 //============================================================================== 262 // UEP8 Bits 263 264 extern __at(0x0E07) __sfr UEP8; 265 266 typedef struct 267 { 268 unsigned EPSTALL : 1; 269 unsigned EPINEN : 1; 270 unsigned EPOUTEN : 1; 271 unsigned EPCONDIS : 1; 272 unsigned EPHSHK : 1; 273 unsigned : 1; 274 unsigned : 1; 275 unsigned : 1; 276 } __UEP8bits_t; 277 278 extern __at(0x0E07) volatile __UEP8bits_t UEP8bits; 279 280 #define _UEP8_EPSTALL 0x01 281 #define _UEP8_EPINEN 0x02 282 #define _UEP8_EPOUTEN 0x04 283 #define _UEP8_EPCONDIS 0x08 284 #define _UEP8_EPHSHK 0x10 285 286 //============================================================================== 287 288 289 //============================================================================== 290 // UEP9 Bits 291 292 extern __at(0x0E08) __sfr UEP9; 293 294 typedef struct 295 { 296 unsigned EPSTALL : 1; 297 unsigned EPINEN : 1; 298 unsigned EPOUTEN : 1; 299 unsigned EPCONDIS : 1; 300 unsigned EPHSHK : 1; 301 unsigned : 1; 302 unsigned : 1; 303 unsigned : 1; 304 } __UEP9bits_t; 305 306 extern __at(0x0E08) volatile __UEP9bits_t UEP9bits; 307 308 #define _UEP9_EPSTALL 0x01 309 #define _UEP9_EPINEN 0x02 310 #define _UEP9_EPOUTEN 0x04 311 #define _UEP9_EPCONDIS 0x08 312 #define _UEP9_EPHSHK 0x10 313 314 //============================================================================== 315 316 317 //============================================================================== 318 // UEP10 Bits 319 320 extern __at(0x0E09) __sfr UEP10; 321 322 typedef struct 323 { 324 unsigned EPSTALL : 1; 325 unsigned EPINEN : 1; 326 unsigned EPOUTEN : 1; 327 unsigned EPCONDIS : 1; 328 unsigned EPHSHK : 1; 329 unsigned : 1; 330 unsigned : 1; 331 unsigned : 1; 332 } __UEP10bits_t; 333 334 extern __at(0x0E09) volatile __UEP10bits_t UEP10bits; 335 336 #define _UEP10_EPSTALL 0x01 337 #define _UEP10_EPINEN 0x02 338 #define _UEP10_EPOUTEN 0x04 339 #define _UEP10_EPCONDIS 0x08 340 #define _UEP10_EPHSHK 0x10 341 342 //============================================================================== 343 344 345 //============================================================================== 346 // UEP11 Bits 347 348 extern __at(0x0E0A) __sfr UEP11; 349 350 typedef struct 351 { 352 unsigned EPSTALL : 1; 353 unsigned EPINEN : 1; 354 unsigned EPOUTEN : 1; 355 unsigned EPCONDIS : 1; 356 unsigned EPHSHK : 1; 357 unsigned : 1; 358 unsigned : 1; 359 unsigned : 1; 360 } __UEP11bits_t; 361 362 extern __at(0x0E0A) volatile __UEP11bits_t UEP11bits; 363 364 #define _UEP11_EPSTALL 0x01 365 #define _UEP11_EPINEN 0x02 366 #define _UEP11_EPOUTEN 0x04 367 #define _UEP11_EPCONDIS 0x08 368 #define _UEP11_EPHSHK 0x10 369 370 //============================================================================== 371 372 373 //============================================================================== 374 // UEP12 Bits 375 376 extern __at(0x0E0B) __sfr UEP12; 377 378 typedef struct 379 { 380 unsigned EPSTALL : 1; 381 unsigned EPINEN : 1; 382 unsigned EPOUTEN : 1; 383 unsigned EPCONDIS : 1; 384 unsigned EPHSHK : 1; 385 unsigned : 1; 386 unsigned : 1; 387 unsigned : 1; 388 } __UEP12bits_t; 389 390 extern __at(0x0E0B) volatile __UEP12bits_t UEP12bits; 391 392 #define _UEP12_EPSTALL 0x01 393 #define _UEP12_EPINEN 0x02 394 #define _UEP12_EPOUTEN 0x04 395 #define _UEP12_EPCONDIS 0x08 396 #define _UEP12_EPHSHK 0x10 397 398 //============================================================================== 399 400 401 //============================================================================== 402 // UEP13 Bits 403 404 extern __at(0x0E0C) __sfr UEP13; 405 406 typedef struct 407 { 408 unsigned EPSTALL : 1; 409 unsigned EPINEN : 1; 410 unsigned EPOUTEN : 1; 411 unsigned EPCONDIS : 1; 412 unsigned EPHSHK : 1; 413 unsigned : 1; 414 unsigned : 1; 415 unsigned : 1; 416 } __UEP13bits_t; 417 418 extern __at(0x0E0C) volatile __UEP13bits_t UEP13bits; 419 420 #define _UEP13_EPSTALL 0x01 421 #define _UEP13_EPINEN 0x02 422 #define _UEP13_EPOUTEN 0x04 423 #define _UEP13_EPCONDIS 0x08 424 #define _UEP13_EPHSHK 0x10 425 426 //============================================================================== 427 428 429 //============================================================================== 430 // UEP14 Bits 431 432 extern __at(0x0E0D) __sfr UEP14; 433 434 typedef struct 435 { 436 unsigned EPSTALL : 1; 437 unsigned EPINEN : 1; 438 unsigned EPOUTEN : 1; 439 unsigned EPCONDIS : 1; 440 unsigned EPHSHK : 1; 441 unsigned : 1; 442 unsigned : 1; 443 unsigned : 1; 444 } __UEP14bits_t; 445 446 extern __at(0x0E0D) volatile __UEP14bits_t UEP14bits; 447 448 #define _UEP14_EPSTALL 0x01 449 #define _UEP14_EPINEN 0x02 450 #define _UEP14_EPOUTEN 0x04 451 #define _UEP14_EPCONDIS 0x08 452 #define _UEP14_EPHSHK 0x10 453 454 //============================================================================== 455 456 457 //============================================================================== 458 // UEP15 Bits 459 460 extern __at(0x0E0E) __sfr UEP15; 461 462 typedef struct 463 { 464 unsigned EPSTALL : 1; 465 unsigned EPINEN : 1; 466 unsigned EPOUTEN : 1; 467 unsigned EPCONDIS : 1; 468 unsigned EPHSHK : 1; 469 unsigned : 1; 470 unsigned : 1; 471 unsigned : 1; 472 } __UEP15bits_t; 473 474 extern __at(0x0E0E) volatile __UEP15bits_t UEP15bits; 475 476 #define _UEP15_EPSTALL 0x01 477 #define _UEP15_EPINEN 0x02 478 #define _UEP15_EPOUTEN 0x04 479 #define _UEP15_EPCONDIS 0x08 480 #define _UEP15_EPHSHK 0x10 481 482 //============================================================================== 483 484 485 //============================================================================== 486 // UEIE Bits 487 488 extern __at(0x0E0F) __sfr UEIE; 489 490 typedef struct 491 { 492 unsigned PIDEE : 1; 493 unsigned CRC5EE : 1; 494 unsigned CRC16EE : 1; 495 unsigned DFN8EE : 1; 496 unsigned BTOEE : 1; 497 unsigned : 1; 498 unsigned : 1; 499 unsigned BTSEE : 1; 500 } __UEIEbits_t; 501 502 extern __at(0x0E0F) volatile __UEIEbits_t UEIEbits; 503 504 #define _PIDEE 0x01 505 #define _CRC5EE 0x02 506 #define _CRC16EE 0x04 507 #define _DFN8EE 0x08 508 #define _BTOEE 0x10 509 #define _BTSEE 0x80 510 511 //============================================================================== 512 513 514 //============================================================================== 515 // UIE Bits 516 517 extern __at(0x0E10) __sfr UIE; 518 519 typedef struct 520 { 521 unsigned URSTIE : 1; 522 unsigned UERRIE : 1; 523 unsigned ACTVIE : 1; 524 unsigned TRNIE : 1; 525 unsigned IDLEIE : 1; 526 unsigned STALLIE : 1; 527 unsigned SOFIE : 1; 528 unsigned : 1; 529 } __UIEbits_t; 530 531 extern __at(0x0E10) volatile __UIEbits_t UIEbits; 532 533 #define _URSTIE 0x01 534 #define _UERRIE 0x02 535 #define _ACTVIE 0x04 536 #define _TRNIE 0x08 537 #define _IDLEIE 0x10 538 #define _STALLIE 0x20 539 #define _SOFIE 0x40 540 541 //============================================================================== 542 543 544 //============================================================================== 545 // UCFG Bits 546 547 extern __at(0x0E11) __sfr UCFG; 548 549 typedef union 550 { 551 struct 552 { 553 unsigned PPB0 : 1; 554 unsigned PPB1 : 1; 555 unsigned FSEN : 1; 556 unsigned UTRDIS : 1; 557 unsigned UPUEN : 1; 558 unsigned : 1; 559 unsigned UOEMON : 1; 560 unsigned UTEYE : 1; 561 }; 562 563 struct 564 { 565 unsigned PPB : 2; 566 unsigned : 6; 567 }; 568 } __UCFGbits_t; 569 570 extern __at(0x0E11) volatile __UCFGbits_t UCFGbits; 571 572 #define _PPB0 0x01 573 #define _PPB1 0x02 574 #define _FSEN 0x04 575 #define _UTRDIS 0x08 576 #define _UPUEN 0x10 577 #define _UOEMON 0x40 578 #define _UTEYE 0x80 579 580 //============================================================================== 581 582 583 //============================================================================== 584 // RPOR0_1 Bits 585 586 extern __at(0x0E12) __sfr RPOR0_1; 587 588 typedef union 589 { 590 struct 591 { 592 unsigned RPO0R0 : 1; 593 unsigned RPO0R1 : 1; 594 unsigned RPO0R2 : 1; 595 unsigned RPO0R3 : 1; 596 unsigned RPO1R0 : 1; 597 unsigned RPO1R1 : 1; 598 unsigned RPO1R2 : 1; 599 unsigned RPO1R3 : 1; 600 }; 601 602 struct 603 { 604 unsigned RPO0R : 4; 605 unsigned : 4; 606 }; 607 608 struct 609 { 610 unsigned : 4; 611 unsigned RPO1R : 4; 612 }; 613 } __RPOR0_1bits_t; 614 615 extern __at(0x0E12) volatile __RPOR0_1bits_t RPOR0_1bits; 616 617 #define _RPO0R0 0x01 618 #define _RPO0R1 0x02 619 #define _RPO0R2 0x04 620 #define _RPO0R3 0x08 621 #define _RPO1R0 0x10 622 #define _RPO1R1 0x20 623 #define _RPO1R2 0x40 624 #define _RPO1R3 0x80 625 626 //============================================================================== 627 628 629 //============================================================================== 630 // RPOR2_3 Bits 631 632 extern __at(0x0E13) __sfr RPOR2_3; 633 634 typedef union 635 { 636 struct 637 { 638 unsigned RPO2R0 : 1; 639 unsigned RPO2R1 : 1; 640 unsigned RPO2R2 : 1; 641 unsigned RPO2R3 : 1; 642 unsigned RPO3R0 : 1; 643 unsigned RPO3R1 : 1; 644 unsigned RPO3R2 : 1; 645 unsigned RPO3R3 : 1; 646 }; 647 648 struct 649 { 650 unsigned RPO2R : 4; 651 unsigned : 4; 652 }; 653 654 struct 655 { 656 unsigned : 4; 657 unsigned RPO3R : 4; 658 }; 659 } __RPOR2_3bits_t; 660 661 extern __at(0x0E13) volatile __RPOR2_3bits_t RPOR2_3bits; 662 663 #define _RPO2R0 0x01 664 #define _RPO2R1 0x02 665 #define _RPO2R2 0x04 666 #define _RPO2R3 0x08 667 #define _RPO3R0 0x10 668 #define _RPO3R1 0x20 669 #define _RPO3R2 0x40 670 #define _RPO3R3 0x80 671 672 //============================================================================== 673 674 675 //============================================================================== 676 // RPOR4_5 Bits 677 678 extern __at(0x0E14) __sfr RPOR4_5; 679 680 typedef union 681 { 682 struct 683 { 684 unsigned RPO4R0 : 1; 685 unsigned RPO4R1 : 1; 686 unsigned RPO4R2 : 1; 687 unsigned RPO4R3 : 1; 688 unsigned RPO5R0 : 1; 689 unsigned RPO5R1 : 1; 690 unsigned RPO5R2 : 1; 691 unsigned RPO5R3 : 1; 692 }; 693 694 struct 695 { 696 unsigned RPO4R : 4; 697 unsigned : 4; 698 }; 699 700 struct 701 { 702 unsigned : 4; 703 unsigned RPO5R : 4; 704 }; 705 } __RPOR4_5bits_t; 706 707 extern __at(0x0E14) volatile __RPOR4_5bits_t RPOR4_5bits; 708 709 #define _RPO4R0 0x01 710 #define _RPO4R1 0x02 711 #define _RPO4R2 0x04 712 #define _RPO4R3 0x08 713 #define _RPO5R0 0x10 714 #define _RPO5R1 0x20 715 #define _RPO5R2 0x40 716 #define _RPO5R3 0x80 717 718 //============================================================================== 719 720 721 //============================================================================== 722 // RPOR6_7 Bits 723 724 extern __at(0x0E15) __sfr RPOR6_7; 725 726 typedef union 727 { 728 struct 729 { 730 unsigned RPO6R0 : 1; 731 unsigned RPO6R1 : 1; 732 unsigned RPO6R2 : 1; 733 unsigned RPO6R3 : 1; 734 unsigned RPO7R0 : 1; 735 unsigned RPO7R1 : 1; 736 unsigned RPO7R2 : 1; 737 unsigned RPO7R3 : 1; 738 }; 739 740 struct 741 { 742 unsigned RPO6R : 4; 743 unsigned : 4; 744 }; 745 746 struct 747 { 748 unsigned : 4; 749 unsigned RPO7R : 4; 750 }; 751 } __RPOR6_7bits_t; 752 753 extern __at(0x0E15) volatile __RPOR6_7bits_t RPOR6_7bits; 754 755 #define _RPO6R0 0x01 756 #define _RPO6R1 0x02 757 #define _RPO6R2 0x04 758 #define _RPO6R3 0x08 759 #define _RPO7R0 0x10 760 #define _RPO7R1 0x20 761 #define _RPO7R2 0x40 762 #define _RPO7R3 0x80 763 764 //============================================================================== 765 766 767 //============================================================================== 768 // RPOR8_9 Bits 769 770 extern __at(0x0E16) __sfr RPOR8_9; 771 772 typedef union 773 { 774 struct 775 { 776 unsigned RPO8R0 : 1; 777 unsigned RPO8R1 : 1; 778 unsigned RPO8R2 : 1; 779 unsigned RPO8R3 : 1; 780 unsigned RPO9R0 : 1; 781 unsigned RPO9R1 : 1; 782 unsigned RPO9R2 : 1; 783 unsigned RPO9R3 : 1; 784 }; 785 786 struct 787 { 788 unsigned RPO8R : 4; 789 unsigned : 4; 790 }; 791 792 struct 793 { 794 unsigned : 4; 795 unsigned RPO9R : 4; 796 }; 797 } __RPOR8_9bits_t; 798 799 extern __at(0x0E16) volatile __RPOR8_9bits_t RPOR8_9bits; 800 801 #define _RPO8R0 0x01 802 #define _RPO8R1 0x02 803 #define _RPO8R2 0x04 804 #define _RPO8R3 0x08 805 #define _RPO9R0 0x10 806 #define _RPO9R1 0x20 807 #define _RPO9R2 0x40 808 #define _RPO9R3 0x80 809 810 //============================================================================== 811 812 813 //============================================================================== 814 // RPOR10_11 Bits 815 816 extern __at(0x0E17) __sfr RPOR10_11; 817 818 typedef union 819 { 820 struct 821 { 822 unsigned RPO10R0 : 1; 823 unsigned RPO10R1 : 1; 824 unsigned RPO10R2 : 1; 825 unsigned RPO10R3 : 1; 826 unsigned RPO11R0 : 1; 827 unsigned RPO11R1 : 1; 828 unsigned RPO11R2 : 1; 829 unsigned RPO11R3 : 1; 830 }; 831 832 struct 833 { 834 unsigned RPO10R : 4; 835 unsigned : 4; 836 }; 837 838 struct 839 { 840 unsigned : 4; 841 unsigned RPO11R : 4; 842 }; 843 } __RPOR10_11bits_t; 844 845 extern __at(0x0E17) volatile __RPOR10_11bits_t RPOR10_11bits; 846 847 #define _RPO10R0 0x01 848 #define _RPO10R1 0x02 849 #define _RPO10R2 0x04 850 #define _RPO10R3 0x08 851 #define _RPO11R0 0x10 852 #define _RPO11R1 0x20 853 #define _RPO11R2 0x40 854 #define _RPO11R3 0x80 855 856 //============================================================================== 857 858 859 //============================================================================== 860 // RPOR12_13 Bits 861 862 extern __at(0x0E18) __sfr RPOR12_13; 863 864 typedef union 865 { 866 struct 867 { 868 unsigned RPO12R0 : 1; 869 unsigned RPO12R1 : 1; 870 unsigned RPO12R2 : 1; 871 unsigned RPO12R3 : 1; 872 unsigned RPO13R0 : 1; 873 unsigned RPO13R1 : 1; 874 unsigned RPO13R2 : 1; 875 unsigned RPO13R3 : 1; 876 }; 877 878 struct 879 { 880 unsigned RPO12R : 4; 881 unsigned : 4; 882 }; 883 884 struct 885 { 886 unsigned : 4; 887 unsigned RPO13R : 4; 888 }; 889 } __RPOR12_13bits_t; 890 891 extern __at(0x0E18) volatile __RPOR12_13bits_t RPOR12_13bits; 892 893 #define _RPO12R0 0x01 894 #define _RPO12R1 0x02 895 #define _RPO12R2 0x04 896 #define _RPO12R3 0x08 897 #define _RPO13R0 0x10 898 #define _RPO13R1 0x20 899 #define _RPO13R2 0x40 900 #define _RPO13R3 0x80 901 902 //============================================================================== 903 904 905 //============================================================================== 906 // RPOR14_15 Bits 907 908 extern __at(0x0E19) __sfr RPOR14_15; 909 910 typedef union 911 { 912 struct 913 { 914 unsigned RPO14R0 : 1; 915 unsigned RPO14R1 : 1; 916 unsigned RPO14R2 : 1; 917 unsigned RPO14R3 : 1; 918 unsigned RPO15R0 : 1; 919 unsigned RPO15R1 : 1; 920 unsigned RPO15R2 : 1; 921 unsigned RPO15R3 : 1; 922 }; 923 924 struct 925 { 926 unsigned RPO14R : 4; 927 unsigned : 4; 928 }; 929 930 struct 931 { 932 unsigned : 4; 933 unsigned RPO15R : 4; 934 }; 935 } __RPOR14_15bits_t; 936 937 extern __at(0x0E19) volatile __RPOR14_15bits_t RPOR14_15bits; 938 939 #define _RPO14R0 0x01 940 #define _RPO14R1 0x02 941 #define _RPO14R2 0x04 942 #define _RPO14R3 0x08 943 #define _RPO15R0 0x10 944 #define _RPO15R1 0x20 945 #define _RPO15R2 0x40 946 #define _RPO15R3 0x80 947 948 //============================================================================== 949 950 951 //============================================================================== 952 // RPOR16_17 Bits 953 954 extern __at(0x0E1A) __sfr RPOR16_17; 955 956 typedef union 957 { 958 struct 959 { 960 unsigned RPO16R0 : 1; 961 unsigned RPO16R1 : 1; 962 unsigned RPO16R2 : 1; 963 unsigned RPO16R3 : 1; 964 unsigned RPO17R0 : 1; 965 unsigned RPO17R1 : 1; 966 unsigned RPO17R2 : 1; 967 unsigned RPO17R3 : 1; 968 }; 969 970 struct 971 { 972 unsigned RPO16R : 4; 973 unsigned : 4; 974 }; 975 976 struct 977 { 978 unsigned : 4; 979 unsigned RPO17R : 4; 980 }; 981 } __RPOR16_17bits_t; 982 983 extern __at(0x0E1A) volatile __RPOR16_17bits_t RPOR16_17bits; 984 985 #define _RPO16R0 0x01 986 #define _RPO16R1 0x02 987 #define _RPO16R2 0x04 988 #define _RPO16R3 0x08 989 #define _RPO17R0 0x10 990 #define _RPO17R1 0x20 991 #define _RPO17R2 0x40 992 #define _RPO17R3 0x80 993 994 //============================================================================== 995 996 997 //============================================================================== 998 // RPOR18_19 Bits 999 1000 extern __at(0x0E1B) __sfr RPOR18_19; 1001 1002 typedef union 1003 { 1004 struct 1005 { 1006 unsigned RPO18R0 : 1; 1007 unsigned RPO18R1 : 1; 1008 unsigned RPO18R2 : 1; 1009 unsigned RPO18R3 : 1; 1010 unsigned RPO19R0 : 1; 1011 unsigned RPO19R1 : 1; 1012 unsigned RPO19R2 : 1; 1013 unsigned RPO19R3 : 1; 1014 }; 1015 1016 struct 1017 { 1018 unsigned RPO18R : 4; 1019 unsigned : 4; 1020 }; 1021 1022 struct 1023 { 1024 unsigned : 4; 1025 unsigned RPO19R : 4; 1026 }; 1027 } __RPOR18_19bits_t; 1028 1029 extern __at(0x0E1B) volatile __RPOR18_19bits_t RPOR18_19bits; 1030 1031 #define _RPO18R0 0x01 1032 #define _RPO18R1 0x02 1033 #define _RPO18R2 0x04 1034 #define _RPO18R3 0x08 1035 #define _RPO19R0 0x10 1036 #define _RPO19R1 0x20 1037 #define _RPO19R2 0x40 1038 #define _RPO19R3 0x80 1039 1040 //============================================================================== 1041 1042 1043 //============================================================================== 1044 // RPOR20_21 Bits 1045 1046 extern __at(0x0E1C) __sfr RPOR20_21; 1047 1048 typedef union 1049 { 1050 struct 1051 { 1052 unsigned RPO20R0 : 1; 1053 unsigned RPO20R1 : 1; 1054 unsigned RPO20R2 : 1; 1055 unsigned RPO20R3 : 1; 1056 unsigned RPO21R0 : 1; 1057 unsigned RPO21R1 : 1; 1058 unsigned RPO21R2 : 1; 1059 unsigned RPO21R3 : 1; 1060 }; 1061 1062 struct 1063 { 1064 unsigned RPO20R : 4; 1065 unsigned : 4; 1066 }; 1067 1068 struct 1069 { 1070 unsigned : 4; 1071 unsigned RPO21R : 4; 1072 }; 1073 } __RPOR20_21bits_t; 1074 1075 extern __at(0x0E1C) volatile __RPOR20_21bits_t RPOR20_21bits; 1076 1077 #define _RPO20R0 0x01 1078 #define _RPO20R1 0x02 1079 #define _RPO20R2 0x04 1080 #define _RPO20R3 0x08 1081 #define _RPO21R0 0x10 1082 #define _RPO21R1 0x20 1083 #define _RPO21R2 0x40 1084 #define _RPO21R3 0x80 1085 1086 //============================================================================== 1087 1088 1089 //============================================================================== 1090 // RPOR22_23 Bits 1091 1092 extern __at(0x0E1D) __sfr RPOR22_23; 1093 1094 typedef union 1095 { 1096 struct 1097 { 1098 unsigned RPO22R0 : 1; 1099 unsigned RPO22R1 : 1; 1100 unsigned RPO22R2 : 1; 1101 unsigned RPO22R3 : 1; 1102 unsigned RPO23R0 : 1; 1103 unsigned RPO23R1 : 1; 1104 unsigned RPO23R2 : 1; 1105 unsigned RPO23R3 : 1; 1106 }; 1107 1108 struct 1109 { 1110 unsigned RPO22R : 4; 1111 unsigned : 4; 1112 }; 1113 1114 struct 1115 { 1116 unsigned : 4; 1117 unsigned RPO23R : 4; 1118 }; 1119 } __RPOR22_23bits_t; 1120 1121 extern __at(0x0E1D) volatile __RPOR22_23bits_t RPOR22_23bits; 1122 1123 #define _RPO22R0 0x01 1124 #define _RPO22R1 0x02 1125 #define _RPO22R2 0x04 1126 #define _RPO22R3 0x08 1127 #define _RPO23R0 0x10 1128 #define _RPO23R1 0x20 1129 #define _RPO23R2 0x40 1130 #define _RPO23R3 0x80 1131 1132 //============================================================================== 1133 1134 1135 //============================================================================== 1136 // RPOR24_25 Bits 1137 1138 extern __at(0x0E1E) __sfr RPOR24_25; 1139 1140 typedef union 1141 { 1142 struct 1143 { 1144 unsigned RPO24R0 : 1; 1145 unsigned RPO24R1 : 1; 1146 unsigned RPO24R2 : 1; 1147 unsigned RPO24R3 : 1; 1148 unsigned RPO25R0 : 1; 1149 unsigned RPO25R1 : 1; 1150 unsigned RPO25R2 : 1; 1151 unsigned RPO25R3 : 1; 1152 }; 1153 1154 struct 1155 { 1156 unsigned RPO24R : 4; 1157 unsigned : 4; 1158 }; 1159 1160 struct 1161 { 1162 unsigned : 4; 1163 unsigned RPO25R : 4; 1164 }; 1165 } __RPOR24_25bits_t; 1166 1167 extern __at(0x0E1E) volatile __RPOR24_25bits_t RPOR24_25bits; 1168 1169 #define _RPO24R0 0x01 1170 #define _RPO24R1 0x02 1171 #define _RPO24R2 0x04 1172 #define _RPO24R3 0x08 1173 #define _RPO25R0 0x10 1174 #define _RPO25R1 0x20 1175 #define _RPO25R2 0x40 1176 #define _RPO25R3 0x80 1177 1178 //============================================================================== 1179 1180 1181 //============================================================================== 1182 // RPOR26_27 Bits 1183 1184 extern __at(0x0E1F) __sfr RPOR26_27; 1185 1186 typedef union 1187 { 1188 struct 1189 { 1190 unsigned RPO26R0 : 1; 1191 unsigned RPO26R1 : 1; 1192 unsigned RPO26R2 : 1; 1193 unsigned RPO26R3 : 1; 1194 unsigned RPO27R0 : 1; 1195 unsigned RPO27R1 : 1; 1196 unsigned RPO27R2 : 1; 1197 unsigned RPO27R3 : 1; 1198 }; 1199 1200 struct 1201 { 1202 unsigned RPO26R : 4; 1203 unsigned : 4; 1204 }; 1205 1206 struct 1207 { 1208 unsigned : 4; 1209 unsigned RPO27R : 4; 1210 }; 1211 } __RPOR26_27bits_t; 1212 1213 extern __at(0x0E1F) volatile __RPOR26_27bits_t RPOR26_27bits; 1214 1215 #define _RPO26R0 0x01 1216 #define _RPO26R1 0x02 1217 #define _RPO26R2 0x04 1218 #define _RPO26R3 0x08 1219 #define _RPO27R0 0x10 1220 #define _RPO27R1 0x20 1221 #define _RPO27R2 0x40 1222 #define _RPO27R3 0x80 1223 1224 //============================================================================== 1225 1226 1227 //============================================================================== 1228 // RPOR28_29 Bits 1229 1230 extern __at(0x0E20) __sfr RPOR28_29; 1231 1232 typedef union 1233 { 1234 struct 1235 { 1236 unsigned RPO28R0 : 1; 1237 unsigned RPO28R1 : 1; 1238 unsigned RPO28R2 : 1; 1239 unsigned RPO28R3 : 1; 1240 unsigned RPO29R0 : 1; 1241 unsigned RPO29R1 : 1; 1242 unsigned RPO29R2 : 1; 1243 unsigned RPO29R3 : 1; 1244 }; 1245 1246 struct 1247 { 1248 unsigned RPO28R : 4; 1249 unsigned : 4; 1250 }; 1251 1252 struct 1253 { 1254 unsigned : 4; 1255 unsigned RPO29R : 4; 1256 }; 1257 } __RPOR28_29bits_t; 1258 1259 extern __at(0x0E20) volatile __RPOR28_29bits_t RPOR28_29bits; 1260 1261 #define _RPO28R0 0x01 1262 #define _RPO28R1 0x02 1263 #define _RPO28R2 0x04 1264 #define _RPO28R3 0x08 1265 #define _RPO29R0 0x10 1266 #define _RPO29R1 0x20 1267 #define _RPO29R2 0x40 1268 #define _RPO29R3 0x80 1269 1270 //============================================================================== 1271 1272 1273 //============================================================================== 1274 // RPOR30_31 Bits 1275 1276 extern __at(0x0E21) __sfr RPOR30_31; 1277 1278 typedef union 1279 { 1280 struct 1281 { 1282 unsigned RPO30R0 : 1; 1283 unsigned RPO30R1 : 1; 1284 unsigned RPO30R2 : 1; 1285 unsigned RPO30R3 : 1; 1286 unsigned RPO31R0 : 1; 1287 unsigned RPO31R1 : 1; 1288 unsigned RPO31R2 : 1; 1289 unsigned RPO31R3 : 1; 1290 }; 1291 1292 struct 1293 { 1294 unsigned RPO30R : 4; 1295 unsigned : 4; 1296 }; 1297 1298 struct 1299 { 1300 unsigned : 4; 1301 unsigned RPO31R : 4; 1302 }; 1303 } __RPOR30_31bits_t; 1304 1305 extern __at(0x0E21) volatile __RPOR30_31bits_t RPOR30_31bits; 1306 1307 #define _RPO30R0 0x01 1308 #define _RPO30R1 0x02 1309 #define _RPO30R2 0x04 1310 #define _RPO30R3 0x08 1311 #define _RPO31R0 0x10 1312 #define _RPO31R1 0x20 1313 #define _RPO31R2 0x40 1314 #define _RPO31R3 0x80 1315 1316 //============================================================================== 1317 1318 1319 //============================================================================== 1320 // RPOR32_33 Bits 1321 1322 extern __at(0x0E22) __sfr RPOR32_33; 1323 1324 typedef union 1325 { 1326 struct 1327 { 1328 unsigned RPO32R0 : 1; 1329 unsigned RPO32R1 : 1; 1330 unsigned RPO32R2 : 1; 1331 unsigned RPO32R3 : 1; 1332 unsigned RPO33R0 : 1; 1333 unsigned RPO33R1 : 1; 1334 unsigned RPO33R2 : 1; 1335 unsigned RPO33R3 : 1; 1336 }; 1337 1338 struct 1339 { 1340 unsigned RPO32R : 4; 1341 unsigned : 4; 1342 }; 1343 1344 struct 1345 { 1346 unsigned : 4; 1347 unsigned RPO33R : 4; 1348 }; 1349 } __RPOR32_33bits_t; 1350 1351 extern __at(0x0E22) volatile __RPOR32_33bits_t RPOR32_33bits; 1352 1353 #define _RPO32R0 0x01 1354 #define _RPO32R1 0x02 1355 #define _RPO32R2 0x04 1356 #define _RPO32R3 0x08 1357 #define _RPO33R0 0x10 1358 #define _RPO33R1 0x20 1359 #define _RPO33R2 0x40 1360 #define _RPO33R3 0x80 1361 1362 //============================================================================== 1363 1364 1365 //============================================================================== 1366 // RPOR34_35 Bits 1367 1368 extern __at(0x0E23) __sfr RPOR34_35; 1369 1370 typedef union 1371 { 1372 struct 1373 { 1374 unsigned RPO34R0 : 1; 1375 unsigned RPO34R1 : 1; 1376 unsigned RPO34R2 : 1; 1377 unsigned RPO34R3 : 1; 1378 unsigned RPO35R0 : 1; 1379 unsigned RPO35R1 : 1; 1380 unsigned RPO35R2 : 1; 1381 unsigned RPO35R3 : 1; 1382 }; 1383 1384 struct 1385 { 1386 unsigned RPO34R : 4; 1387 unsigned : 4; 1388 }; 1389 1390 struct 1391 { 1392 unsigned : 4; 1393 unsigned RPO35R : 4; 1394 }; 1395 } __RPOR34_35bits_t; 1396 1397 extern __at(0x0E23) volatile __RPOR34_35bits_t RPOR34_35bits; 1398 1399 #define _RPO34R0 0x01 1400 #define _RPO34R1 0x02 1401 #define _RPO34R2 0x04 1402 #define _RPO34R3 0x08 1403 #define _RPO35R0 0x10 1404 #define _RPO35R1 0x20 1405 #define _RPO35R2 0x40 1406 #define _RPO35R3 0x80 1407 1408 //============================================================================== 1409 1410 1411 //============================================================================== 1412 // RPOR36_37 Bits 1413 1414 extern __at(0x0E24) __sfr RPOR36_37; 1415 1416 typedef union 1417 { 1418 struct 1419 { 1420 unsigned RPO36R0 : 1; 1421 unsigned RPO36R1 : 1; 1422 unsigned RPO36R2 : 1; 1423 unsigned RPO36R3 : 1; 1424 unsigned RPO37R0 : 1; 1425 unsigned RPO37R1 : 1; 1426 unsigned RPO37R2 : 1; 1427 unsigned RPO37R3 : 1; 1428 }; 1429 1430 struct 1431 { 1432 unsigned RPO36R : 4; 1433 unsigned : 4; 1434 }; 1435 1436 struct 1437 { 1438 unsigned : 4; 1439 unsigned RPO37R : 4; 1440 }; 1441 } __RPOR36_37bits_t; 1442 1443 extern __at(0x0E24) volatile __RPOR36_37bits_t RPOR36_37bits; 1444 1445 #define _RPO36R0 0x01 1446 #define _RPO36R1 0x02 1447 #define _RPO36R2 0x04 1448 #define _RPO36R3 0x08 1449 #define _RPO37R0 0x10 1450 #define _RPO37R1 0x20 1451 #define _RPO37R2 0x40 1452 #define _RPO37R3 0x80 1453 1454 //============================================================================== 1455 1456 1457 //============================================================================== 1458 // RPOR38_39 Bits 1459 1460 extern __at(0x0E25) __sfr RPOR38_39; 1461 1462 typedef union 1463 { 1464 struct 1465 { 1466 unsigned RPO38R0 : 1; 1467 unsigned RPO38R1 : 1; 1468 unsigned RPO38R2 : 1; 1469 unsigned RPO38R3 : 1; 1470 unsigned RPO39R0 : 1; 1471 unsigned RPO39R1 : 1; 1472 unsigned RPO39R2 : 1; 1473 unsigned RPO39R3 : 1; 1474 }; 1475 1476 struct 1477 { 1478 unsigned RPO38R : 4; 1479 unsigned : 4; 1480 }; 1481 1482 struct 1483 { 1484 unsigned : 4; 1485 unsigned RPO39R : 4; 1486 }; 1487 } __RPOR38_39bits_t; 1488 1489 extern __at(0x0E25) volatile __RPOR38_39bits_t RPOR38_39bits; 1490 1491 #define _RPO38R0 0x01 1492 #define _RPO38R1 0x02 1493 #define _RPO38R2 0x04 1494 #define _RPO38R3 0x08 1495 #define _RPO39R0 0x10 1496 #define _RPO39R1 0x20 1497 #define _RPO39R2 0x40 1498 #define _RPO39R3 0x80 1499 1500 //============================================================================== 1501 1502 1503 //============================================================================== 1504 // RPOR40_41 Bits 1505 1506 extern __at(0x0E26) __sfr RPOR40_41; 1507 1508 typedef union 1509 { 1510 struct 1511 { 1512 unsigned RPO40R0 : 1; 1513 unsigned RPO40R1 : 1; 1514 unsigned RPO40R2 : 1; 1515 unsigned RPO40R3 : 1; 1516 unsigned RPO41R0 : 1; 1517 unsigned RPO41R1 : 1; 1518 unsigned RPO41R2 : 1; 1519 unsigned RPO41R3 : 1; 1520 }; 1521 1522 struct 1523 { 1524 unsigned RPO40R : 4; 1525 unsigned : 4; 1526 }; 1527 1528 struct 1529 { 1530 unsigned : 4; 1531 unsigned RPO41R : 4; 1532 }; 1533 } __RPOR40_41bits_t; 1534 1535 extern __at(0x0E26) volatile __RPOR40_41bits_t RPOR40_41bits; 1536 1537 #define _RPO40R0 0x01 1538 #define _RPO40R1 0x02 1539 #define _RPO40R2 0x04 1540 #define _RPO40R3 0x08 1541 #define _RPO41R0 0x10 1542 #define _RPO41R1 0x20 1543 #define _RPO41R2 0x40 1544 #define _RPO41R3 0x80 1545 1546 //============================================================================== 1547 1548 1549 //============================================================================== 1550 // RPOR42_43 Bits 1551 1552 extern __at(0x0E27) __sfr RPOR42_43; 1553 1554 typedef union 1555 { 1556 struct 1557 { 1558 unsigned RPO42R0 : 1; 1559 unsigned RPO42R1 : 1; 1560 unsigned RPO42R2 : 1; 1561 unsigned RPO42R3 : 1; 1562 unsigned RPO43R0 : 1; 1563 unsigned RPO43R1 : 1; 1564 unsigned RPO43R2 : 1; 1565 unsigned RPO43R3 : 1; 1566 }; 1567 1568 struct 1569 { 1570 unsigned RPO42R : 4; 1571 unsigned : 4; 1572 }; 1573 1574 struct 1575 { 1576 unsigned : 4; 1577 unsigned RPO43R : 4; 1578 }; 1579 } __RPOR42_43bits_t; 1580 1581 extern __at(0x0E27) volatile __RPOR42_43bits_t RPOR42_43bits; 1582 1583 #define _RPO42R0 0x01 1584 #define _RPO42R1 0x02 1585 #define _RPO42R2 0x04 1586 #define _RPO42R3 0x08 1587 #define _RPO43R0 0x10 1588 #define _RPO43R1 0x20 1589 #define _RPO43R2 0x40 1590 #define _RPO43R3 0x80 1591 1592 //============================================================================== 1593 1594 1595 //============================================================================== 1596 // RPOR44_45 Bits 1597 1598 extern __at(0x0E28) __sfr RPOR44_45; 1599 1600 typedef union 1601 { 1602 struct 1603 { 1604 unsigned RPO44R0 : 1; 1605 unsigned RPO44R1 : 1; 1606 unsigned RPO44R2 : 1; 1607 unsigned RPO44R3 : 1; 1608 unsigned RPO45R0 : 1; 1609 unsigned RPO45R1 : 1; 1610 unsigned RPO45R2 : 1; 1611 unsigned RPO45R3 : 1; 1612 }; 1613 1614 struct 1615 { 1616 unsigned RPO44R : 4; 1617 unsigned : 4; 1618 }; 1619 1620 struct 1621 { 1622 unsigned : 4; 1623 unsigned RPO45R : 4; 1624 }; 1625 } __RPOR44_45bits_t; 1626 1627 extern __at(0x0E28) volatile __RPOR44_45bits_t RPOR44_45bits; 1628 1629 #define _RPO44R0 0x01 1630 #define _RPO44R1 0x02 1631 #define _RPO44R2 0x04 1632 #define _RPO44R3 0x08 1633 #define _RPO45R0 0x10 1634 #define _RPO45R1 0x20 1635 #define _RPO45R2 0x40 1636 #define _RPO45R3 0x80 1637 1638 //============================================================================== 1639 1640 1641 //============================================================================== 1642 // RPOR46 Bits 1643 1644 extern __at(0x0E29) __sfr RPOR46; 1645 1646 typedef union 1647 { 1648 struct 1649 { 1650 unsigned RPO46R0 : 1; 1651 unsigned RPO46R1 : 1; 1652 unsigned RPO46R2 : 1; 1653 unsigned RPO46R3 : 1; 1654 unsigned : 1; 1655 unsigned : 1; 1656 unsigned : 1; 1657 unsigned : 1; 1658 }; 1659 1660 struct 1661 { 1662 unsigned RPO46R : 4; 1663 unsigned : 4; 1664 }; 1665 } __RPOR46bits_t; 1666 1667 extern __at(0x0E29) volatile __RPOR46bits_t RPOR46bits; 1668 1669 #define _RPO46R0 0x01 1670 #define _RPO46R1 0x02 1671 #define _RPO46R2 0x04 1672 #define _RPO46R3 0x08 1673 1674 //============================================================================== 1675 1676 1677 //============================================================================== 1678 // RPINR0_1 Bits 1679 1680 extern __at(0x0E2A) __sfr RPINR0_1; 1681 1682 typedef union 1683 { 1684 struct 1685 { 1686 unsigned U1RXR0 : 1; 1687 unsigned U1RXR1 : 1; 1688 unsigned U1RXR2 : 1; 1689 unsigned U1RXR3 : 1; 1690 unsigned U1TXR0 : 1; 1691 unsigned U1TXR1 : 1; 1692 unsigned U1TXR2 : 1; 1693 unsigned U1TXR3 : 1; 1694 }; 1695 1696 struct 1697 { 1698 unsigned U1RXR : 4; 1699 unsigned : 4; 1700 }; 1701 1702 struct 1703 { 1704 unsigned : 4; 1705 unsigned U1TXR : 4; 1706 }; 1707 } __RPINR0_1bits_t; 1708 1709 extern __at(0x0E2A) volatile __RPINR0_1bits_t RPINR0_1bits; 1710 1711 #define _U1RXR0 0x01 1712 #define _U1RXR1 0x02 1713 #define _U1RXR2 0x04 1714 #define _U1RXR3 0x08 1715 #define _U1TXR0 0x10 1716 #define _U1TXR1 0x20 1717 #define _U1TXR2 0x40 1718 #define _U1TXR3 0x80 1719 1720 //============================================================================== 1721 1722 1723 //============================================================================== 1724 // RPINR2_3 Bits 1725 1726 extern __at(0x0E2B) __sfr RPINR2_3; 1727 1728 typedef union 1729 { 1730 struct 1731 { 1732 unsigned U2RXR0 : 1; 1733 unsigned U2RXR1 : 1; 1734 unsigned U2RXR2 : 1; 1735 unsigned U2RXR3 : 1; 1736 unsigned U2TXR0 : 1; 1737 unsigned U2TXR1 : 1; 1738 unsigned U2TXR2 : 1; 1739 unsigned U2TXR3 : 1; 1740 }; 1741 1742 struct 1743 { 1744 unsigned U2RXR : 4; 1745 unsigned : 4; 1746 }; 1747 1748 struct 1749 { 1750 unsigned : 4; 1751 unsigned U2TXR : 4; 1752 }; 1753 } __RPINR2_3bits_t; 1754 1755 extern __at(0x0E2B) volatile __RPINR2_3bits_t RPINR2_3bits; 1756 1757 #define _U2RXR0 0x01 1758 #define _U2RXR1 0x02 1759 #define _U2RXR2 0x04 1760 #define _U2RXR3 0x08 1761 #define _U2TXR0 0x10 1762 #define _U2TXR1 0x20 1763 #define _U2TXR2 0x40 1764 #define _U2TXR3 0x80 1765 1766 //============================================================================== 1767 1768 1769 //============================================================================== 1770 // RPINR4_5 Bits 1771 1772 extern __at(0x0E2C) __sfr RPINR4_5; 1773 1774 typedef union 1775 { 1776 struct 1777 { 1778 unsigned U3RXR0 : 1; 1779 unsigned U3RXR1 : 1; 1780 unsigned U3RXR2 : 1; 1781 unsigned U3RXR3 : 1; 1782 unsigned U3TXR0 : 1; 1783 unsigned U3TXR1 : 1; 1784 unsigned U3TXR2 : 1; 1785 unsigned U3TXR3 : 1; 1786 }; 1787 1788 struct 1789 { 1790 unsigned U3RXR : 4; 1791 unsigned : 4; 1792 }; 1793 1794 struct 1795 { 1796 unsigned : 4; 1797 unsigned U3TXR : 4; 1798 }; 1799 } __RPINR4_5bits_t; 1800 1801 extern __at(0x0E2C) volatile __RPINR4_5bits_t RPINR4_5bits; 1802 1803 #define _U3RXR0 0x01 1804 #define _U3RXR1 0x02 1805 #define _U3RXR2 0x04 1806 #define _U3RXR3 0x08 1807 #define _U3TXR0 0x10 1808 #define _U3TXR1 0x20 1809 #define _U3TXR2 0x40 1810 #define _U3TXR3 0x80 1811 1812 //============================================================================== 1813 1814 1815 //============================================================================== 1816 // RPINR6_7 Bits 1817 1818 extern __at(0x0E2D) __sfr RPINR6_7; 1819 1820 typedef union 1821 { 1822 struct 1823 { 1824 unsigned U4RXR0 : 1; 1825 unsigned U4RXR1 : 1; 1826 unsigned U4RXR2 : 1; 1827 unsigned U4RXR3 : 1; 1828 unsigned U4TXR0 : 1; 1829 unsigned U4TXR1 : 1; 1830 unsigned U4TXR2 : 1; 1831 unsigned U4TXR3 : 1; 1832 }; 1833 1834 struct 1835 { 1836 unsigned U4RXR : 4; 1837 unsigned : 4; 1838 }; 1839 1840 struct 1841 { 1842 unsigned : 4; 1843 unsigned U4TXR : 4; 1844 }; 1845 } __RPINR6_7bits_t; 1846 1847 extern __at(0x0E2D) volatile __RPINR6_7bits_t RPINR6_7bits; 1848 1849 #define _U4RXR0 0x01 1850 #define _U4RXR1 0x02 1851 #define _U4RXR2 0x04 1852 #define _U4RXR3 0x08 1853 #define _U4TXR0 0x10 1854 #define _U4TXR1 0x20 1855 #define _U4TXR2 0x40 1856 #define _U4TXR3 0x80 1857 1858 //============================================================================== 1859 1860 1861 //============================================================================== 1862 // RPINR8_9 Bits 1863 1864 extern __at(0x0E2E) __sfr RPINR8_9; 1865 1866 typedef union 1867 { 1868 struct 1869 { 1870 unsigned SCK1R0 : 1; 1871 unsigned SCK1R1 : 1; 1872 unsigned SCK1R2 : 1; 1873 unsigned SCK1R3 : 1; 1874 unsigned SDI1R0 : 1; 1875 unsigned SDI1R1 : 1; 1876 unsigned SDI1R2 : 1; 1877 unsigned SDI1R3 : 1; 1878 }; 1879 1880 struct 1881 { 1882 unsigned SCK1R : 4; 1883 unsigned : 4; 1884 }; 1885 1886 struct 1887 { 1888 unsigned : 4; 1889 unsigned SDI1R : 4; 1890 }; 1891 } __RPINR8_9bits_t; 1892 1893 extern __at(0x0E2E) volatile __RPINR8_9bits_t RPINR8_9bits; 1894 1895 #define _SCK1R0 0x01 1896 #define _SCK1R1 0x02 1897 #define _SCK1R2 0x04 1898 #define _SCK1R3 0x08 1899 #define _SDI1R0 0x10 1900 #define _SDI1R1 0x20 1901 #define _SDI1R2 0x40 1902 #define _SDI1R3 0x80 1903 1904 //============================================================================== 1905 1906 1907 //============================================================================== 1908 // RPINR10_11 Bits 1909 1910 extern __at(0x0E2F) __sfr RPINR10_11; 1911 1912 typedef union 1913 { 1914 struct 1915 { 1916 unsigned SS1R0 : 1; 1917 unsigned SS1R1 : 1; 1918 unsigned SS1R2 : 1; 1919 unsigned SS1R3 : 1; 1920 unsigned SCK2R0 : 1; 1921 unsigned SCK2R1 : 1; 1922 unsigned SCK2R2 : 1; 1923 unsigned SCK2R3 : 1; 1924 }; 1925 1926 struct 1927 { 1928 unsigned SS1R : 4; 1929 unsigned : 4; 1930 }; 1931 1932 struct 1933 { 1934 unsigned : 4; 1935 unsigned SCK2R : 4; 1936 }; 1937 } __RPINR10_11bits_t; 1938 1939 extern __at(0x0E2F) volatile __RPINR10_11bits_t RPINR10_11bits; 1940 1941 #define _SS1R0 0x01 1942 #define _SS1R1 0x02 1943 #define _SS1R2 0x04 1944 #define _SS1R3 0x08 1945 #define _SCK2R0 0x10 1946 #define _SCK2R1 0x20 1947 #define _SCK2R2 0x40 1948 #define _SCK2R3 0x80 1949 1950 //============================================================================== 1951 1952 1953 //============================================================================== 1954 // RPINR12_13 Bits 1955 1956 extern __at(0x0E30) __sfr RPINR12_13; 1957 1958 typedef union 1959 { 1960 struct 1961 { 1962 unsigned SDI2R0 : 1; 1963 unsigned SDI2R1 : 1; 1964 unsigned SDI2R2 : 1; 1965 unsigned SDI2R3 : 1; 1966 unsigned SS2R0 : 1; 1967 unsigned SS2R1 : 1; 1968 unsigned SS2R2 : 1; 1969 unsigned SS2R3 : 1; 1970 }; 1971 1972 struct 1973 { 1974 unsigned SDI2R : 4; 1975 unsigned : 4; 1976 }; 1977 1978 struct 1979 { 1980 unsigned : 4; 1981 unsigned SS2R : 4; 1982 }; 1983 } __RPINR12_13bits_t; 1984 1985 extern __at(0x0E30) volatile __RPINR12_13bits_t RPINR12_13bits; 1986 1987 #define _SDI2R0 0x01 1988 #define _SDI2R1 0x02 1989 #define _SDI2R2 0x04 1990 #define _SDI2R3 0x08 1991 #define _SS2R0 0x10 1992 #define _SS2R1 0x20 1993 #define _SS2R2 0x40 1994 #define _SS2R3 0x80 1995 1996 //============================================================================== 1997 1998 1999 //============================================================================== 2000 // RPINR14_15 Bits 2001 2002 extern __at(0x0E31) __sfr RPINR14_15; 2003 2004 typedef union 2005 { 2006 struct 2007 { 2008 unsigned FLT0R0 : 1; 2009 unsigned FLT0R1 : 1; 2010 unsigned FLT0R2 : 1; 2011 unsigned FLT0R3 : 1; 2012 unsigned ECCP1R0 : 1; 2013 unsigned ECCP1R1 : 1; 2014 unsigned ECCP1R2 : 1; 2015 unsigned ECCP1R3 : 1; 2016 }; 2017 2018 struct 2019 { 2020 unsigned FLT0R : 4; 2021 unsigned : 4; 2022 }; 2023 2024 struct 2025 { 2026 unsigned : 4; 2027 unsigned ECCP1R : 4; 2028 }; 2029 } __RPINR14_15bits_t; 2030 2031 extern __at(0x0E31) volatile __RPINR14_15bits_t RPINR14_15bits; 2032 2033 #define _FLT0R0 0x01 2034 #define _FLT0R1 0x02 2035 #define _FLT0R2 0x04 2036 #define _FLT0R3 0x08 2037 #define _ECCP1R0 0x10 2038 #define _ECCP1R1 0x20 2039 #define _ECCP1R2 0x40 2040 #define _ECCP1R3 0x80 2041 2042 //============================================================================== 2043 2044 2045 //============================================================================== 2046 // RPINR16_17 Bits 2047 2048 extern __at(0x0E32) __sfr RPINR16_17; 2049 2050 typedef union 2051 { 2052 struct 2053 { 2054 unsigned ECCP2R0 : 1; 2055 unsigned ECCP2R1 : 1; 2056 unsigned ECCP2R2 : 1; 2057 unsigned ECCP2R3 : 1; 2058 unsigned ECCP3R0 : 1; 2059 unsigned ECCP3R1 : 1; 2060 unsigned ECCP3R2 : 1; 2061 unsigned ECCP3R3 : 1; 2062 }; 2063 2064 struct 2065 { 2066 unsigned ECCP2R : 4; 2067 unsigned : 4; 2068 }; 2069 2070 struct 2071 { 2072 unsigned : 4; 2073 unsigned ECCP3R : 4; 2074 }; 2075 } __RPINR16_17bits_t; 2076 2077 extern __at(0x0E32) volatile __RPINR16_17bits_t RPINR16_17bits; 2078 2079 #define _ECCP2R0 0x01 2080 #define _ECCP2R1 0x02 2081 #define _ECCP2R2 0x04 2082 #define _ECCP2R3 0x08 2083 #define _ECCP3R0 0x10 2084 #define _ECCP3R1 0x20 2085 #define _ECCP3R2 0x40 2086 #define _ECCP3R3 0x80 2087 2088 //============================================================================== 2089 2090 2091 //============================================================================== 2092 // RPINR18_19 Bits 2093 2094 extern __at(0x0E33) __sfr RPINR18_19; 2095 2096 typedef union 2097 { 2098 struct 2099 { 2100 unsigned IOC0R0 : 1; 2101 unsigned IOC0R1 : 1; 2102 unsigned IOC0R2 : 1; 2103 unsigned IOC0R3 : 1; 2104 unsigned IOC1R0 : 1; 2105 unsigned IOC1R1 : 1; 2106 unsigned IOC1R2 : 1; 2107 unsigned IOC1R3 : 1; 2108 }; 2109 2110 struct 2111 { 2112 unsigned IOC0R : 4; 2113 unsigned : 4; 2114 }; 2115 2116 struct 2117 { 2118 unsigned : 4; 2119 unsigned IOC1R : 4; 2120 }; 2121 } __RPINR18_19bits_t; 2122 2123 extern __at(0x0E33) volatile __RPINR18_19bits_t RPINR18_19bits; 2124 2125 #define _IOC0R0 0x01 2126 #define _IOC0R1 0x02 2127 #define _IOC0R2 0x04 2128 #define _IOC0R3 0x08 2129 #define _IOC1R0 0x10 2130 #define _IOC1R1 0x20 2131 #define _IOC1R2 0x40 2132 #define _IOC1R3 0x80 2133 2134 //============================================================================== 2135 2136 2137 //============================================================================== 2138 // RPINR20_21 Bits 2139 2140 extern __at(0x0E34) __sfr RPINR20_21; 2141 2142 typedef union 2143 { 2144 struct 2145 { 2146 unsigned IOC2R0 : 1; 2147 unsigned IOC2R1 : 1; 2148 unsigned IOC2R2 : 1; 2149 unsigned IOC2R3 : 1; 2150 unsigned IOC3R0 : 1; 2151 unsigned IOC3R1 : 1; 2152 unsigned IOC3R2 : 1; 2153 unsigned IOC3R3 : 1; 2154 }; 2155 2156 struct 2157 { 2158 unsigned IOC2R : 4; 2159 unsigned : 4; 2160 }; 2161 2162 struct 2163 { 2164 unsigned : 4; 2165 unsigned IOC3R : 4; 2166 }; 2167 } __RPINR20_21bits_t; 2168 2169 extern __at(0x0E34) volatile __RPINR20_21bits_t RPINR20_21bits; 2170 2171 #define _IOC2R0 0x01 2172 #define _IOC2R1 0x02 2173 #define _IOC2R2 0x04 2174 #define _IOC2R3 0x08 2175 #define _IOC3R0 0x10 2176 #define _IOC3R1 0x20 2177 #define _IOC3R2 0x40 2178 #define _IOC3R3 0x80 2179 2180 //============================================================================== 2181 2182 2183 //============================================================================== 2184 // RPINR22_23 Bits 2185 2186 extern __at(0x0E35) __sfr RPINR22_23; 2187 2188 typedef union 2189 { 2190 struct 2191 { 2192 unsigned IOC4R0 : 1; 2193 unsigned IOC4R1 : 1; 2194 unsigned IOC4R2 : 1; 2195 unsigned IOC4R3 : 1; 2196 unsigned IOC5R0 : 1; 2197 unsigned IOC5R1 : 1; 2198 unsigned IOC5R2 : 1; 2199 unsigned IOC5R3 : 1; 2200 }; 2201 2202 struct 2203 { 2204 unsigned IOC4R : 4; 2205 unsigned : 4; 2206 }; 2207 2208 struct 2209 { 2210 unsigned : 4; 2211 unsigned IOC5R : 4; 2212 }; 2213 } __RPINR22_23bits_t; 2214 2215 extern __at(0x0E35) volatile __RPINR22_23bits_t RPINR22_23bits; 2216 2217 #define _IOC4R0 0x01 2218 #define _IOC4R1 0x02 2219 #define _IOC4R2 0x04 2220 #define _IOC4R3 0x08 2221 #define _IOC5R0 0x10 2222 #define _IOC5R1 0x20 2223 #define _IOC5R2 0x40 2224 #define _IOC5R3 0x80 2225 2226 //============================================================================== 2227 2228 2229 //============================================================================== 2230 // RPINR24_25 Bits 2231 2232 extern __at(0x0E36) __sfr RPINR24_25; 2233 2234 typedef union 2235 { 2236 struct 2237 { 2238 unsigned IOC6R0 : 1; 2239 unsigned IOC6R1 : 1; 2240 unsigned IOC6R2 : 1; 2241 unsigned IOC6R3 : 1; 2242 unsigned IOC7R0 : 1; 2243 unsigned IOC7R1 : 1; 2244 unsigned IOC7R2 : 1; 2245 unsigned IOC7R3 : 1; 2246 }; 2247 2248 struct 2249 { 2250 unsigned IOC6R : 4; 2251 unsigned : 4; 2252 }; 2253 2254 struct 2255 { 2256 unsigned : 4; 2257 unsigned IOC7R : 4; 2258 }; 2259 } __RPINR24_25bits_t; 2260 2261 extern __at(0x0E36) volatile __RPINR24_25bits_t RPINR24_25bits; 2262 2263 #define _IOC6R0 0x01 2264 #define _IOC6R1 0x02 2265 #define _IOC6R2 0x04 2266 #define _IOC6R3 0x08 2267 #define _IOC7R0 0x10 2268 #define _IOC7R1 0x20 2269 #define _IOC7R2 0x40 2270 #define _IOC7R3 0x80 2271 2272 //============================================================================== 2273 2274 2275 //============================================================================== 2276 // RPINR26_27 Bits 2277 2278 extern __at(0x0E37) __sfr RPINR26_27; 2279 2280 typedef union 2281 { 2282 struct 2283 { 2284 unsigned INT1R0 : 1; 2285 unsigned INT1R1 : 1; 2286 unsigned INT1R2 : 1; 2287 unsigned INT1R3 : 1; 2288 unsigned INT2R0 : 1; 2289 unsigned INT2R1 : 1; 2290 unsigned INT2R2 : 1; 2291 unsigned INT2R3 : 1; 2292 }; 2293 2294 struct 2295 { 2296 unsigned INT1R : 4; 2297 unsigned : 4; 2298 }; 2299 2300 struct 2301 { 2302 unsigned : 4; 2303 unsigned INT2R : 4; 2304 }; 2305 } __RPINR26_27bits_t; 2306 2307 extern __at(0x0E37) volatile __RPINR26_27bits_t RPINR26_27bits; 2308 2309 #define _INT1R0 0x01 2310 #define _INT1R1 0x02 2311 #define _INT1R2 0x04 2312 #define _INT1R3 0x08 2313 #define _INT2R0 0x10 2314 #define _INT2R1 0x20 2315 #define _INT2R2 0x40 2316 #define _INT2R3 0x80 2317 2318 //============================================================================== 2319 2320 2321 //============================================================================== 2322 // RPINR28_29 Bits 2323 2324 extern __at(0x0E38) __sfr RPINR28_29; 2325 2326 typedef union 2327 { 2328 struct 2329 { 2330 unsigned INT3R0 : 1; 2331 unsigned INT3R1 : 1; 2332 unsigned INT3R2 : 1; 2333 unsigned INT3R3 : 1; 2334 unsigned MDMINR0 : 1; 2335 unsigned MDMINR1 : 1; 2336 unsigned MDMINR2 : 1; 2337 unsigned MDMINR3 : 1; 2338 }; 2339 2340 struct 2341 { 2342 unsigned INT3R : 4; 2343 unsigned : 4; 2344 }; 2345 2346 struct 2347 { 2348 unsigned : 4; 2349 unsigned MDMINR : 4; 2350 }; 2351 } __RPINR28_29bits_t; 2352 2353 extern __at(0x0E38) volatile __RPINR28_29bits_t RPINR28_29bits; 2354 2355 #define _INT3R0 0x01 2356 #define _INT3R1 0x02 2357 #define _INT3R2 0x04 2358 #define _INT3R3 0x08 2359 #define _MDMINR0 0x10 2360 #define _MDMINR1 0x20 2361 #define _MDMINR2 0x40 2362 #define _MDMINR3 0x80 2363 2364 //============================================================================== 2365 2366 2367 //============================================================================== 2368 // RPINR30_31 Bits 2369 2370 extern __at(0x0E39) __sfr RPINR30_31; 2371 2372 typedef union 2373 { 2374 struct 2375 { 2376 unsigned MDCIN1R0 : 1; 2377 unsigned MDCIN1R1 : 1; 2378 unsigned MDCIN1R2 : 1; 2379 unsigned MDCIN1R3 : 1; 2380 unsigned MDCIN2R0 : 1; 2381 unsigned MDCIN2R1 : 1; 2382 unsigned MDCIN2R2 : 1; 2383 unsigned MDCIN2R3 : 1; 2384 }; 2385 2386 struct 2387 { 2388 unsigned MDCIN1R : 4; 2389 unsigned : 4; 2390 }; 2391 2392 struct 2393 { 2394 unsigned : 4; 2395 unsigned MDCIN2R : 4; 2396 }; 2397 } __RPINR30_31bits_t; 2398 2399 extern __at(0x0E39) volatile __RPINR30_31bits_t RPINR30_31bits; 2400 2401 #define _MDCIN1R0 0x01 2402 #define _MDCIN1R1 0x02 2403 #define _MDCIN1R2 0x04 2404 #define _MDCIN1R3 0x08 2405 #define _MDCIN2R0 0x10 2406 #define _MDCIN2R1 0x20 2407 #define _MDCIN2R2 0x40 2408 #define _MDCIN2R3 0x80 2409 2410 //============================================================================== 2411 2412 2413 //============================================================================== 2414 // RPINR32_33 Bits 2415 2416 extern __at(0x0E3A) __sfr RPINR32_33; 2417 2418 typedef union 2419 { 2420 struct 2421 { 2422 unsigned CCP4R0 : 1; 2423 unsigned CCP4R1 : 1; 2424 unsigned CCP4R2 : 1; 2425 unsigned CCP4R3 : 1; 2426 unsigned CCP5R0 : 1; 2427 unsigned CCP5R1 : 1; 2428 unsigned CCP5R2 : 1; 2429 unsigned CCP5R3 : 1; 2430 }; 2431 2432 struct 2433 { 2434 unsigned CCP4R : 4; 2435 unsigned : 4; 2436 }; 2437 2438 struct 2439 { 2440 unsigned : 4; 2441 unsigned CCP5R : 4; 2442 }; 2443 } __RPINR32_33bits_t; 2444 2445 extern __at(0x0E3A) volatile __RPINR32_33bits_t RPINR32_33bits; 2446 2447 #define _CCP4R0 0x01 2448 #define _CCP4R1 0x02 2449 #define _CCP4R2 0x04 2450 #define _CCP4R3 0x08 2451 #define _CCP5R0 0x10 2452 #define _CCP5R1 0x20 2453 #define _CCP5R2 0x40 2454 #define _CCP5R3 0x80 2455 2456 //============================================================================== 2457 2458 2459 //============================================================================== 2460 // RPINR34_35 Bits 2461 2462 extern __at(0x0E3B) __sfr RPINR34_35; 2463 2464 typedef union 2465 { 2466 struct 2467 { 2468 unsigned CCP6R0 : 1; 2469 unsigned CCP6R1 : 1; 2470 unsigned CCP6R2 : 1; 2471 unsigned CCP6R3 : 1; 2472 unsigned CCP7R0 : 1; 2473 unsigned CCP7R1 : 1; 2474 unsigned CCP7R2 : 1; 2475 unsigned CCP7R3 : 1; 2476 }; 2477 2478 struct 2479 { 2480 unsigned CCP6R : 4; 2481 unsigned : 4; 2482 }; 2483 2484 struct 2485 { 2486 unsigned : 4; 2487 unsigned CCP7R : 4; 2488 }; 2489 } __RPINR34_35bits_t; 2490 2491 extern __at(0x0E3B) volatile __RPINR34_35bits_t RPINR34_35bits; 2492 2493 #define _CCP6R0 0x01 2494 #define _CCP6R1 0x02 2495 #define _CCP6R2 0x04 2496 #define _CCP6R3 0x08 2497 #define _CCP7R0 0x10 2498 #define _CCP7R1 0x20 2499 #define _CCP7R2 0x40 2500 #define _CCP7R3 0x80 2501 2502 //============================================================================== 2503 2504 2505 //============================================================================== 2506 // RPINR36_37 Bits 2507 2508 extern __at(0x0E3C) __sfr RPINR36_37; 2509 2510 typedef union 2511 { 2512 struct 2513 { 2514 unsigned CCP8R0 : 1; 2515 unsigned CCP8R1 : 1; 2516 unsigned CCP8R2 : 1; 2517 unsigned CCP8R3 : 1; 2518 unsigned CCP9R0 : 1; 2519 unsigned CCP9R1 : 1; 2520 unsigned CCP9R2 : 1; 2521 unsigned CCP9R3 : 1; 2522 }; 2523 2524 struct 2525 { 2526 unsigned CCP8R : 4; 2527 unsigned : 4; 2528 }; 2529 2530 struct 2531 { 2532 unsigned : 4; 2533 unsigned CCP9R : 4; 2534 }; 2535 } __RPINR36_37bits_t; 2536 2537 extern __at(0x0E3C) volatile __RPINR36_37bits_t RPINR36_37bits; 2538 2539 #define _CCP8R0 0x01 2540 #define _CCP8R1 0x02 2541 #define _CCP8R2 0x04 2542 #define _CCP8R3 0x08 2543 #define _CCP9R0 0x10 2544 #define _CCP9R1 0x20 2545 #define _CCP9R2 0x40 2546 #define _CCP9R3 0x80 2547 2548 //============================================================================== 2549 2550 2551 //============================================================================== 2552 // RPINR38_39 Bits 2553 2554 extern __at(0x0E3D) __sfr RPINR38_39; 2555 2556 typedef union 2557 { 2558 struct 2559 { 2560 unsigned CCP10R0 : 1; 2561 unsigned CCP10R1 : 1; 2562 unsigned CCP10R2 : 1; 2563 unsigned CCP10R3 : 1; 2564 unsigned T0CKIR0 : 1; 2565 unsigned T0CKIR1 : 1; 2566 unsigned T0CKIR2 : 1; 2567 unsigned T0CKIR3 : 1; 2568 }; 2569 2570 struct 2571 { 2572 unsigned CCP10R : 4; 2573 unsigned : 4; 2574 }; 2575 2576 struct 2577 { 2578 unsigned : 4; 2579 unsigned T0CKIR : 4; 2580 }; 2581 } __RPINR38_39bits_t; 2582 2583 extern __at(0x0E3D) volatile __RPINR38_39bits_t RPINR38_39bits; 2584 2585 #define _CCP10R0 0x01 2586 #define _CCP10R1 0x02 2587 #define _CCP10R2 0x04 2588 #define _CCP10R3 0x08 2589 #define _T0CKIR0 0x10 2590 #define _T0CKIR1 0x20 2591 #define _T0CKIR2 0x40 2592 #define _T0CKIR3 0x80 2593 2594 //============================================================================== 2595 2596 2597 //============================================================================== 2598 // RPINR40_41 Bits 2599 2600 extern __at(0x0E3E) __sfr RPINR40_41; 2601 2602 typedef union 2603 { 2604 struct 2605 { 2606 unsigned T1GR0 : 1; 2607 unsigned T1GR1 : 1; 2608 unsigned T1GR2 : 1; 2609 unsigned T1GR3 : 1; 2610 unsigned T1CKIR0 : 1; 2611 unsigned T1CKIR1 : 1; 2612 unsigned T1CKIR2 : 1; 2613 unsigned T1CKIR3 : 1; 2614 }; 2615 2616 struct 2617 { 2618 unsigned T1GR : 4; 2619 unsigned : 4; 2620 }; 2621 2622 struct 2623 { 2624 unsigned : 4; 2625 unsigned T1CKIR : 4; 2626 }; 2627 } __RPINR40_41bits_t; 2628 2629 extern __at(0x0E3E) volatile __RPINR40_41bits_t RPINR40_41bits; 2630 2631 #define _T1GR0 0x01 2632 #define _T1GR1 0x02 2633 #define _T1GR2 0x04 2634 #define _T1GR3 0x08 2635 #define _T1CKIR0 0x10 2636 #define _T1CKIR1 0x20 2637 #define _T1CKIR2 0x40 2638 #define _T1CKIR3 0x80 2639 2640 //============================================================================== 2641 2642 2643 //============================================================================== 2644 // RPINR42_43 Bits 2645 2646 extern __at(0x0E3F) __sfr RPINR42_43; 2647 2648 typedef union 2649 { 2650 struct 2651 { 2652 unsigned T3GR0 : 1; 2653 unsigned T3GR1 : 1; 2654 unsigned T3GR2 : 1; 2655 unsigned T3GR3 : 1; 2656 unsigned T3CKIR0 : 1; 2657 unsigned T3CKIR1 : 1; 2658 unsigned T3CKIR2 : 1; 2659 unsigned T3CKIR3 : 1; 2660 }; 2661 2662 struct 2663 { 2664 unsigned T3GR : 4; 2665 unsigned : 4; 2666 }; 2667 2668 struct 2669 { 2670 unsigned : 4; 2671 unsigned T3CKIR : 4; 2672 }; 2673 } __RPINR42_43bits_t; 2674 2675 extern __at(0x0E3F) volatile __RPINR42_43bits_t RPINR42_43bits; 2676 2677 #define _T3GR0 0x01 2678 #define _T3GR1 0x02 2679 #define _T3GR2 0x04 2680 #define _T3GR3 0x08 2681 #define _T3CKIR0 0x10 2682 #define _T3CKIR1 0x20 2683 #define _T3CKIR2 0x40 2684 #define _T3CKIR3 0x80 2685 2686 //============================================================================== 2687 2688 2689 //============================================================================== 2690 // RPINR44_45 Bits 2691 2692 extern __at(0x0E40) __sfr RPINR44_45; 2693 2694 typedef union 2695 { 2696 struct 2697 { 2698 unsigned T5GR0 : 1; 2699 unsigned T5GR1 : 1; 2700 unsigned T5GR2 : 1; 2701 unsigned T5GR3 : 1; 2702 unsigned T5CKIR0 : 1; 2703 unsigned T5CKIR1 : 1; 2704 unsigned T5CKIR2 : 1; 2705 unsigned T5CKIR3 : 1; 2706 }; 2707 2708 struct 2709 { 2710 unsigned T5GR : 4; 2711 unsigned : 4; 2712 }; 2713 2714 struct 2715 { 2716 unsigned : 4; 2717 unsigned T5CKIR : 4; 2718 }; 2719 } __RPINR44_45bits_t; 2720 2721 extern __at(0x0E40) volatile __RPINR44_45bits_t RPINR44_45bits; 2722 2723 #define _T5GR0 0x01 2724 #define _T5GR1 0x02 2725 #define _T5GR2 0x04 2726 #define _T5GR3 0x08 2727 #define _T5CKIR0 0x10 2728 #define _T5CKIR1 0x20 2729 #define _T5CKIR2 0x40 2730 #define _T5CKIR3 0x80 2731 2732 //============================================================================== 2733 2734 2735 //============================================================================== 2736 // RPINR46_47 Bits 2737 2738 extern __at(0x0E41) __sfr RPINR46_47; 2739 2740 typedef union 2741 { 2742 struct 2743 { 2744 unsigned PBIO0R0 : 1; 2745 unsigned PBIO0R1 : 1; 2746 unsigned PBIO0R2 : 1; 2747 unsigned PBIO0R3 : 1; 2748 unsigned PBIO1R0 : 1; 2749 unsigned PBIO1R1 : 1; 2750 unsigned PBIO1R2 : 1; 2751 unsigned PBIO1R3 : 1; 2752 }; 2753 2754 struct 2755 { 2756 unsigned PBIO0R : 4; 2757 unsigned : 4; 2758 }; 2759 2760 struct 2761 { 2762 unsigned : 4; 2763 unsigned PBIO1R : 4; 2764 }; 2765 } __RPINR46_47bits_t; 2766 2767 extern __at(0x0E41) volatile __RPINR46_47bits_t RPINR46_47bits; 2768 2769 #define _PBIO0R0 0x01 2770 #define _PBIO0R1 0x02 2771 #define _PBIO0R2 0x04 2772 #define _PBIO0R3 0x08 2773 #define _PBIO1R0 0x10 2774 #define _PBIO1R1 0x20 2775 #define _PBIO1R2 0x40 2776 #define _PBIO1R3 0x80 2777 2778 //============================================================================== 2779 2780 2781 //============================================================================== 2782 // RPINR48_49 Bits 2783 2784 extern __at(0x0E42) __sfr RPINR48_49; 2785 2786 typedef union 2787 { 2788 struct 2789 { 2790 unsigned PBIO2R0 : 1; 2791 unsigned PBIO2R1 : 1; 2792 unsigned PBIO2R2 : 1; 2793 unsigned PBIO2R3 : 1; 2794 unsigned PBIO3R0 : 1; 2795 unsigned PBIO3R1 : 1; 2796 unsigned PBIO3R2 : 1; 2797 unsigned PBIO3R3 : 1; 2798 }; 2799 2800 struct 2801 { 2802 unsigned PBIO2R : 4; 2803 unsigned : 4; 2804 }; 2805 2806 struct 2807 { 2808 unsigned : 4; 2809 unsigned PBIO3R : 4; 2810 }; 2811 } __RPINR48_49bits_t; 2812 2813 extern __at(0x0E42) volatile __RPINR48_49bits_t RPINR48_49bits; 2814 2815 #define _PBIO2R0 0x01 2816 #define _PBIO2R1 0x02 2817 #define _PBIO2R2 0x04 2818 #define _PBIO2R3 0x08 2819 #define _PBIO3R0 0x10 2820 #define _PBIO3R1 0x20 2821 #define _PBIO3R2 0x40 2822 #define _PBIO3R3 0x80 2823 2824 //============================================================================== 2825 2826 2827 //============================================================================== 2828 // RPINR50_51 Bits 2829 2830 extern __at(0x0E43) __sfr RPINR50_51; 2831 2832 typedef union 2833 { 2834 struct 2835 { 2836 unsigned PBIO4R0 : 1; 2837 unsigned PBIO4R1 : 1; 2838 unsigned PBIO4R2 : 1; 2839 unsigned PBIO4R3 : 1; 2840 unsigned PBIO5R0 : 1; 2841 unsigned PBIO5R1 : 1; 2842 unsigned PBIO5R2 : 1; 2843 unsigned PBIO5R3 : 1; 2844 }; 2845 2846 struct 2847 { 2848 unsigned PBIO4R : 4; 2849 unsigned : 4; 2850 }; 2851 2852 struct 2853 { 2854 unsigned : 4; 2855 unsigned PBIO5R : 4; 2856 }; 2857 } __RPINR50_51bits_t; 2858 2859 extern __at(0x0E43) volatile __RPINR50_51bits_t RPINR50_51bits; 2860 2861 #define _PBIO4R0 0x01 2862 #define _PBIO4R1 0x02 2863 #define _PBIO4R2 0x04 2864 #define _PBIO4R3 0x08 2865 #define _PBIO5R0 0x10 2866 #define _PBIO5R1 0x20 2867 #define _PBIO5R2 0x40 2868 #define _PBIO5R3 0x80 2869 2870 //============================================================================== 2871 2872 2873 //============================================================================== 2874 // RPINR52_53 Bits 2875 2876 extern __at(0x0E44) __sfr RPINR52_53; 2877 2878 typedef union 2879 { 2880 struct 2881 { 2882 unsigned PBIO6R0 : 1; 2883 unsigned PBIO6R1 : 1; 2884 unsigned PBIO6R2 : 1; 2885 unsigned PBIO6R3 : 1; 2886 unsigned PBIO7R0 : 1; 2887 unsigned PBIO7R1 : 1; 2888 unsigned PBIO7R2 : 1; 2889 unsigned PBIO7R3 : 1; 2890 }; 2891 2892 struct 2893 { 2894 unsigned PBIO6R : 4; 2895 unsigned : 4; 2896 }; 2897 2898 struct 2899 { 2900 unsigned : 4; 2901 unsigned PBIO7R : 4; 2902 }; 2903 } __RPINR52_53bits_t; 2904 2905 extern __at(0x0E44) volatile __RPINR52_53bits_t RPINR52_53bits; 2906 2907 #define _PBIO6R0 0x01 2908 #define _PBIO6R1 0x02 2909 #define _PBIO6R2 0x04 2910 #define _PBIO6R3 0x08 2911 #define _PBIO7R0 0x10 2912 #define _PBIO7R1 0x20 2913 #define _PBIO7R2 0x40 2914 #define _PBIO7R3 0x80 2915 2916 //============================================================================== 2917 2918 2919 //============================================================================== 2920 // ANCON3 Bits 2921 2922 extern __at(0x0E45) __sfr ANCON3; 2923 2924 typedef struct 2925 { 2926 unsigned ANSEL16 : 1; 2927 unsigned ANSEL17 : 1; 2928 unsigned ANSEL18 : 1; 2929 unsigned ANSEL19 : 1; 2930 unsigned ANSEL20 : 1; 2931 unsigned ANSEL21 : 1; 2932 unsigned ANSEL22 : 1; 2933 unsigned ANSEL23 : 1; 2934 } __ANCON3bits_t; 2935 2936 extern __at(0x0E45) volatile __ANCON3bits_t ANCON3bits; 2937 2938 #define _ANSEL16 0x01 2939 #define _ANSEL17 0x02 2940 #define _ANSEL18 0x04 2941 #define _ANSEL19 0x08 2942 #define _ANSEL20 0x10 2943 #define _ANSEL21 0x20 2944 #define _ANSEL22 0x40 2945 #define _ANSEL23 0x80 2946 2947 //============================================================================== 2948 2949 2950 //============================================================================== 2951 // ANCON2 Bits 2952 2953 extern __at(0x0E46) __sfr ANCON2; 2954 2955 typedef struct 2956 { 2957 unsigned ANSEL8 : 1; 2958 unsigned ANSEL9 : 1; 2959 unsigned ANSEL10 : 1; 2960 unsigned ANSEL11 : 1; 2961 unsigned ANSEL12 : 1; 2962 unsigned ANSEL13 : 1; 2963 unsigned ANSEL14 : 1; 2964 unsigned ANSEL15 : 1; 2965 } __ANCON2bits_t; 2966 2967 extern __at(0x0E46) volatile __ANCON2bits_t ANCON2bits; 2968 2969 #define _ANSEL8 0x01 2970 #define _ANSEL9 0x02 2971 #define _ANSEL10 0x04 2972 #define _ANSEL11 0x08 2973 #define _ANSEL12 0x10 2974 #define _ANSEL13 0x20 2975 #define _ANSEL14 0x40 2976 #define _ANSEL15 0x80 2977 2978 //============================================================================== 2979 2980 2981 //============================================================================== 2982 // ANCON1 Bits 2983 2984 extern __at(0x0E47) __sfr ANCON1; 2985 2986 typedef struct 2987 { 2988 unsigned ANSEL0 : 1; 2989 unsigned ANSEL1 : 1; 2990 unsigned ANSEL2 : 1; 2991 unsigned ANSEL3 : 1; 2992 unsigned ANSEL4 : 1; 2993 unsigned ANSEL5 : 1; 2994 unsigned ANSEL6 : 1; 2995 unsigned ANSEL7 : 1; 2996 } __ANCON1bits_t; 2997 2998 extern __at(0x0E47) volatile __ANCON1bits_t ANCON1bits; 2999 3000 #define _ANSEL0 0x01 3001 #define _ANSEL1 0x02 3002 #define _ANSEL2 0x04 3003 #define _ANSEL3 0x08 3004 #define _ANSEL4 0x10 3005 #define _ANSEL5 0x20 3006 #define _ANSEL6 0x40 3007 #define _ANSEL7 0x80 3008 3009 //============================================================================== 3010 3011 extern __at(0x0E48) __sfr ADCBUF1; 3012 extern __at(0x0E48) __sfr ADCBUF1L; 3013 extern __at(0x0E49) __sfr ADCBUF1H; 3014 extern __at(0x0E4A) __sfr ADCBUF2; 3015 extern __at(0x0E4A) __sfr ADCBUF2L; 3016 extern __at(0x0E4B) __sfr ADCBUF2H; 3017 extern __at(0x0E4C) __sfr ADCBUF3; 3018 extern __at(0x0E4C) __sfr ADCBUF3L; 3019 extern __at(0x0E4D) __sfr ADCBUF3H; 3020 extern __at(0x0E4E) __sfr ADCBUF4; 3021 extern __at(0x0E4E) __sfr ADCBUF4L; 3022 extern __at(0x0E4F) __sfr ADCBUF4H; 3023 extern __at(0x0E50) __sfr ADCBUF5; 3024 extern __at(0x0E50) __sfr ADCBUF5L; 3025 extern __at(0x0E51) __sfr ADCBUF5H; 3026 extern __at(0x0E52) __sfr ADCBUF6; 3027 extern __at(0x0E52) __sfr ADCBUF6L; 3028 extern __at(0x0E53) __sfr ADCBUF6H; 3029 extern __at(0x0E54) __sfr ADCBUF7; 3030 extern __at(0x0E54) __sfr ADCBUF7L; 3031 extern __at(0x0E55) __sfr ADCBUF7H; 3032 extern __at(0x0E56) __sfr ADCBUF8; 3033 extern __at(0x0E56) __sfr ADCBUF8L; 3034 extern __at(0x0E57) __sfr ADCBUF8H; 3035 extern __at(0x0E58) __sfr ADCBUF9; 3036 extern __at(0x0E58) __sfr ADCBUF9L; 3037 extern __at(0x0E59) __sfr ADCBUF9H; 3038 extern __at(0x0E5A) __sfr ADCBUF10; 3039 extern __at(0x0E5A) __sfr ADCBUF10L; 3040 extern __at(0x0E5B) __sfr ADCBUF10H; 3041 extern __at(0x0E5C) __sfr ADCBUF11; 3042 extern __at(0x0E5C) __sfr ADCBUF11L; 3043 extern __at(0x0E5D) __sfr ADCBUF11H; 3044 extern __at(0x0E5E) __sfr ADCBUF12; 3045 extern __at(0x0E5E) __sfr ADCBUF12L; 3046 extern __at(0x0E5F) __sfr ADCBUF12H; 3047 extern __at(0x0E60) __sfr ADCBUF13; 3048 extern __at(0x0E60) __sfr ADCBUF13L; 3049 extern __at(0x0E61) __sfr ADCBUF13H; 3050 extern __at(0x0E62) __sfr ADCBUF14; 3051 extern __at(0x0E62) __sfr ADCBUF14L; 3052 extern __at(0x0E63) __sfr ADCBUF14H; 3053 extern __at(0x0E64) __sfr ADCBUF15; 3054 extern __at(0x0E64) __sfr ADCBUF15L; 3055 extern __at(0x0E65) __sfr ADCBUF15H; 3056 extern __at(0x0E66) __sfr ADCBUF16; 3057 extern __at(0x0E66) __sfr ADCBUF16L; 3058 extern __at(0x0E67) __sfr ADCBUF16H; 3059 extern __at(0x0E68) __sfr ADCBUF17; 3060 extern __at(0x0E68) __sfr ADCBUF17L; 3061 extern __at(0x0E69) __sfr ADCBUF17H; 3062 extern __at(0x0E6A) __sfr ADCBUF18; 3063 extern __at(0x0E6A) __sfr ADCBUF18L; 3064 extern __at(0x0E6B) __sfr ADCBUF18H; 3065 extern __at(0x0E6C) __sfr ADCBUF19; 3066 extern __at(0x0E6C) __sfr ADCBUF19L; 3067 extern __at(0x0E6D) __sfr ADCBUF19H; 3068 extern __at(0x0E6E) __sfr ADCBUF20; 3069 extern __at(0x0E6E) __sfr ADCBUF20L; 3070 extern __at(0x0E6F) __sfr ADCBUF20H; 3071 extern __at(0x0E70) __sfr ADCBUF21; 3072 extern __at(0x0E70) __sfr ADCBUF21L; 3073 extern __at(0x0E71) __sfr ADCBUF21H; 3074 extern __at(0x0E72) __sfr ADCBUF22; 3075 extern __at(0x0E72) __sfr ADCBUF22L; 3076 extern __at(0x0E73) __sfr ADCBUF22H; 3077 extern __at(0x0E74) __sfr ADCBUF23; 3078 extern __at(0x0E74) __sfr ADCBUF23L; 3079 extern __at(0x0E75) __sfr ADCBUF23H; 3080 extern __at(0x0E76) __sfr ADCBUF24; 3081 extern __at(0x0E76) __sfr ADCBUF24L; 3082 extern __at(0x0E77) __sfr ADCBUF24H; 3083 extern __at(0x0E78) __sfr ADCBUF25; 3084 extern __at(0x0E78) __sfr ADCBUF25L; 3085 extern __at(0x0E79) __sfr ADCBUF25H; 3086 3087 //============================================================================== 3088 // ADCTMUEN0L Bits 3089 3090 extern __at(0x0E7A) __sfr ADCTMUEN0L; 3091 3092 typedef struct 3093 { 3094 unsigned CTMUEN0 : 1; 3095 unsigned CTMUEN1 : 1; 3096 unsigned CTMUEN2 : 1; 3097 unsigned CTMUEN3 : 1; 3098 unsigned CTMUEN4 : 1; 3099 unsigned CTMUEN5 : 1; 3100 unsigned CTMUEN6 : 1; 3101 unsigned CTMUEN7 : 1; 3102 } __ADCTMUEN0Lbits_t; 3103 3104 extern __at(0x0E7A) volatile __ADCTMUEN0Lbits_t ADCTMUEN0Lbits; 3105 3106 #define _CTMUEN0 0x01 3107 #define _CTMUEN1 0x02 3108 #define _CTMUEN2 0x04 3109 #define _CTMUEN3 0x08 3110 #define _CTMUEN4 0x10 3111 #define _CTMUEN5 0x20 3112 #define _CTMUEN6 0x40 3113 #define _CTMUEN7 0x80 3114 3115 //============================================================================== 3116 3117 3118 //============================================================================== 3119 // ADCTMUEN0H Bits 3120 3121 extern __at(0x0E7B) __sfr ADCTMUEN0H; 3122 3123 typedef struct 3124 { 3125 unsigned CTMUEN8 : 1; 3126 unsigned CTMUEN9 : 1; 3127 unsigned CTMUEN10 : 1; 3128 unsigned CTMUEN11 : 1; 3129 unsigned CTMUEN12 : 1; 3130 unsigned CTMUEN13 : 1; 3131 unsigned CTMUEN14 : 1; 3132 unsigned CTMUEN15 : 1; 3133 } __ADCTMUEN0Hbits_t; 3134 3135 extern __at(0x0E7B) volatile __ADCTMUEN0Hbits_t ADCTMUEN0Hbits; 3136 3137 #define _CTMUEN8 0x01 3138 #define _CTMUEN9 0x02 3139 #define _CTMUEN10 0x04 3140 #define _CTMUEN11 0x08 3141 #define _CTMUEN12 0x10 3142 #define _CTMUEN13 0x20 3143 #define _CTMUEN14 0x40 3144 #define _CTMUEN15 0x80 3145 3146 //============================================================================== 3147 3148 3149 //============================================================================== 3150 // ADCTMUEN1L Bits 3151 3152 extern __at(0x0E7C) __sfr ADCTMUEN1L; 3153 3154 typedef struct 3155 { 3156 unsigned CTUMEN16 : 1; 3157 unsigned CTUMEN17 : 1; 3158 unsigned CTUMEN18 : 1; 3159 unsigned CTUMEN19 : 1; 3160 unsigned CTMUEN20 : 1; 3161 unsigned CTMUEN21 : 1; 3162 unsigned CTMUEN22 : 1; 3163 unsigned CTMUEN23 : 1; 3164 } __ADCTMUEN1Lbits_t; 3165 3166 extern __at(0x0E7C) volatile __ADCTMUEN1Lbits_t ADCTMUEN1Lbits; 3167 3168 #define _CTUMEN16 0x01 3169 #define _CTUMEN17 0x02 3170 #define _CTUMEN18 0x04 3171 #define _CTUMEN19 0x08 3172 #define _CTMUEN20 0x10 3173 #define _CTMUEN21 0x20 3174 #define _CTMUEN22 0x40 3175 #define _CTMUEN23 0x80 3176 3177 //============================================================================== 3178 3179 3180 //============================================================================== 3181 // ADCTMUEN1H Bits 3182 3183 extern __at(0x0E7D) __sfr ADCTMUEN1H; 3184 3185 typedef struct 3186 { 3187 unsigned CTUMEN24 : 1; 3188 unsigned CTUMEN25 : 1; 3189 unsigned CTUMEN26 : 1; 3190 unsigned CTUMEN27 : 1; 3191 unsigned CTUMEN28 : 1; 3192 unsigned CTUMEN29 : 1; 3193 unsigned CTMUEN30 : 1; 3194 unsigned : 1; 3195 } __ADCTMUEN1Hbits_t; 3196 3197 extern __at(0x0E7D) volatile __ADCTMUEN1Hbits_t ADCTMUEN1Hbits; 3198 3199 #define _CTUMEN24 0x01 3200 #define _CTUMEN25 0x02 3201 #define _CTUMEN26 0x04 3202 #define _CTUMEN27 0x08 3203 #define _CTUMEN28 0x10 3204 #define _CTUMEN29 0x20 3205 #define _CTMUEN30 0x40 3206 3207 //============================================================================== 3208 3209 3210 //============================================================================== 3211 // ADCHIT0L Bits 3212 3213 extern __at(0x0E7E) __sfr ADCHIT0L; 3214 3215 typedef struct 3216 { 3217 unsigned CHH0 : 1; 3218 unsigned CHH1 : 1; 3219 unsigned CHH2 : 1; 3220 unsigned CHH3 : 1; 3221 unsigned CHH4 : 1; 3222 unsigned CHH5 : 1; 3223 unsigned CHH6 : 1; 3224 unsigned CHH7 : 1; 3225 } __ADCHIT0Lbits_t; 3226 3227 extern __at(0x0E7E) volatile __ADCHIT0Lbits_t ADCHIT0Lbits; 3228 3229 #define _CHH0 0x01 3230 #define _CHH1 0x02 3231 #define _CHH2 0x04 3232 #define _CHH3 0x08 3233 #define _CHH4 0x10 3234 #define _CHH5 0x20 3235 #define _CHH6 0x40 3236 #define _CHH7 0x80 3237 3238 //============================================================================== 3239 3240 3241 //============================================================================== 3242 // ADCHIT0H Bits 3243 3244 extern __at(0x0E7F) __sfr ADCHIT0H; 3245 3246 typedef struct 3247 { 3248 unsigned CHH8 : 1; 3249 unsigned CHH9 : 1; 3250 unsigned CHH10 : 1; 3251 unsigned CHH11 : 1; 3252 unsigned CHH12 : 1; 3253 unsigned CHH13 : 1; 3254 unsigned CHH14 : 1; 3255 unsigned CHH15 : 1; 3256 } __ADCHIT0Hbits_t; 3257 3258 extern __at(0x0E7F) volatile __ADCHIT0Hbits_t ADCHIT0Hbits; 3259 3260 #define _CHH8 0x01 3261 #define _CHH9 0x02 3262 #define _CHH10 0x04 3263 #define _CHH11 0x08 3264 #define _CHH12 0x10 3265 #define _CHH13 0x20 3266 #define _CHH14 0x40 3267 #define _CHH15 0x80 3268 3269 //============================================================================== 3270 3271 3272 //============================================================================== 3273 // ADCHIT1L Bits 3274 3275 extern __at(0x0E80) __sfr ADCHIT1L; 3276 3277 typedef struct 3278 { 3279 unsigned CHH16 : 1; 3280 unsigned CHH17 : 1; 3281 unsigned CHH18 : 1; 3282 unsigned CHH19 : 1; 3283 unsigned CHH20 : 1; 3284 unsigned CHH21 : 1; 3285 unsigned CHH22 : 1; 3286 unsigned CHH23 : 1; 3287 } __ADCHIT1Lbits_t; 3288 3289 extern __at(0x0E80) volatile __ADCHIT1Lbits_t ADCHIT1Lbits; 3290 3291 #define _CHH16 0x01 3292 #define _CHH17 0x02 3293 #define _CHH18 0x04 3294 #define _CHH19 0x08 3295 #define _CHH20 0x10 3296 #define _CHH21 0x20 3297 #define _CHH22 0x40 3298 #define _CHH23 0x80 3299 3300 //============================================================================== 3301 3302 3303 //============================================================================== 3304 // ADCHIT1H Bits 3305 3306 extern __at(0x0E81) __sfr ADCHIT1H; 3307 3308 typedef struct 3309 { 3310 unsigned CHH24 : 1; 3311 unsigned CHH25 : 1; 3312 unsigned CHH26 : 1; 3313 unsigned CHH27 : 1; 3314 unsigned CHH28 : 1; 3315 unsigned CHH29 : 1; 3316 unsigned CHH30 : 1; 3317 unsigned : 1; 3318 } __ADCHIT1Hbits_t; 3319 3320 extern __at(0x0E81) volatile __ADCHIT1Hbits_t ADCHIT1Hbits; 3321 3322 #define _CHH24 0x01 3323 #define _CHH25 0x02 3324 #define _CHH26 0x04 3325 #define _CHH27 0x08 3326 #define _CHH28 0x10 3327 #define _CHH29 0x20 3328 #define _CHH30 0x40 3329 3330 //============================================================================== 3331 3332 3333 //============================================================================== 3334 // ADCSS0L Bits 3335 3336 extern __at(0x0E82) __sfr ADCSS0L; 3337 3338 typedef struct 3339 { 3340 unsigned CSS0 : 1; 3341 unsigned CSS1 : 1; 3342 unsigned CSS2 : 1; 3343 unsigned CSS3 : 1; 3344 unsigned CSS4 : 1; 3345 unsigned CSS5 : 1; 3346 unsigned CSS6 : 1; 3347 unsigned CSS7 : 1; 3348 } __ADCSS0Lbits_t; 3349 3350 extern __at(0x0E82) volatile __ADCSS0Lbits_t ADCSS0Lbits; 3351 3352 #define _CSS0 0x01 3353 #define _CSS1 0x02 3354 #define _CSS2 0x04 3355 #define _CSS3 0x08 3356 #define _CSS4 0x10 3357 #define _CSS5 0x20 3358 #define _CSS6 0x40 3359 #define _CSS7 0x80 3360 3361 //============================================================================== 3362 3363 3364 //============================================================================== 3365 // ADCSS0H Bits 3366 3367 extern __at(0x0E83) __sfr ADCSS0H; 3368 3369 typedef struct 3370 { 3371 unsigned CSS8 : 1; 3372 unsigned CSS9 : 1; 3373 unsigned CSS10 : 1; 3374 unsigned CSS11 : 1; 3375 unsigned CSS12 : 1; 3376 unsigned CSS13 : 1; 3377 unsigned CSS14 : 1; 3378 unsigned CSS15 : 1; 3379 } __ADCSS0Hbits_t; 3380 3381 extern __at(0x0E83) volatile __ADCSS0Hbits_t ADCSS0Hbits; 3382 3383 #define _CSS8 0x01 3384 #define _CSS9 0x02 3385 #define _CSS10 0x04 3386 #define _CSS11 0x08 3387 #define _CSS12 0x10 3388 #define _CSS13 0x20 3389 #define _CSS14 0x40 3390 #define _CSS15 0x80 3391 3392 //============================================================================== 3393 3394 3395 //============================================================================== 3396 // ADCSS1L Bits 3397 3398 extern __at(0x0E84) __sfr ADCSS1L; 3399 3400 typedef struct 3401 { 3402 unsigned CSS16 : 1; 3403 unsigned CSS17 : 1; 3404 unsigned CSS18 : 1; 3405 unsigned CSS19 : 1; 3406 unsigned CSS20 : 1; 3407 unsigned CSS21 : 1; 3408 unsigned CSS22 : 1; 3409 unsigned CSS23 : 1; 3410 } __ADCSS1Lbits_t; 3411 3412 extern __at(0x0E84) volatile __ADCSS1Lbits_t ADCSS1Lbits; 3413 3414 #define _CSS16 0x01 3415 #define _CSS17 0x02 3416 #define _CSS18 0x04 3417 #define _CSS19 0x08 3418 #define _CSS20 0x10 3419 #define _CSS21 0x20 3420 #define _CSS22 0x40 3421 #define _CSS23 0x80 3422 3423 //============================================================================== 3424 3425 3426 //============================================================================== 3427 // ADCSS1H Bits 3428 3429 extern __at(0x0E85) __sfr ADCSS1H; 3430 3431 typedef struct 3432 { 3433 unsigned CSS24 : 1; 3434 unsigned CSS25 : 1; 3435 unsigned CSS26 : 1; 3436 unsigned CSS27 : 1; 3437 unsigned CSS28 : 1; 3438 unsigned CSS29 : 1; 3439 unsigned CSS30 : 1; 3440 unsigned : 1; 3441 } __ADCSS1Hbits_t; 3442 3443 extern __at(0x0E85) volatile __ADCSS1Hbits_t ADCSS1Hbits; 3444 3445 #define _CSS24 0x01 3446 #define _CSS25 0x02 3447 #define _CSS26 0x04 3448 #define _CSS27 0x08 3449 #define _CSS28 0x10 3450 #define _CSS29 0x20 3451 #define _CSS30 0x40 3452 3453 //============================================================================== 3454 3455 3456 //============================================================================== 3457 // ADCHS0L Bits 3458 3459 extern __at(0x0E86) __sfr ADCHS0L; 3460 3461 typedef union 3462 { 3463 struct 3464 { 3465 unsigned CH0SA0 : 1; 3466 unsigned CH0SA1 : 1; 3467 unsigned CH0SA2 : 1; 3468 unsigned CH0SA3 : 1; 3469 unsigned CH0SA4 : 1; 3470 unsigned CH0NA0 : 1; 3471 unsigned CH0NA1 : 1; 3472 unsigned CH0NA2 : 1; 3473 }; 3474 3475 struct 3476 { 3477 unsigned CH0SA : 5; 3478 unsigned : 3; 3479 }; 3480 3481 struct 3482 { 3483 unsigned : 5; 3484 unsigned CH0NA : 3; 3485 }; 3486 } __ADCHS0Lbits_t; 3487 3488 extern __at(0x0E86) volatile __ADCHS0Lbits_t ADCHS0Lbits; 3489 3490 #define _CH0SA0 0x01 3491 #define _CH0SA1 0x02 3492 #define _CH0SA2 0x04 3493 #define _CH0SA3 0x08 3494 #define _CH0SA4 0x10 3495 #define _CH0NA0 0x20 3496 #define _CH0NA1 0x40 3497 #define _CH0NA2 0x80 3498 3499 //============================================================================== 3500 3501 3502 //============================================================================== 3503 // ADCHS0H Bits 3504 3505 extern __at(0x0E87) __sfr ADCHS0H; 3506 3507 typedef union 3508 { 3509 struct 3510 { 3511 unsigned CH0SB0 : 1; 3512 unsigned CH0SB1 : 1; 3513 unsigned CH0SB2 : 1; 3514 unsigned CH0SB3 : 1; 3515 unsigned CH0SB4 : 1; 3516 unsigned CH0NB0 : 1; 3517 unsigned CH0NB1 : 1; 3518 unsigned CH0NB2 : 1; 3519 }; 3520 3521 struct 3522 { 3523 unsigned CH0SB : 5; 3524 unsigned : 3; 3525 }; 3526 3527 struct 3528 { 3529 unsigned : 5; 3530 unsigned CH0NB : 3; 3531 }; 3532 } __ADCHS0Hbits_t; 3533 3534 extern __at(0x0E87) volatile __ADCHS0Hbits_t ADCHS0Hbits; 3535 3536 #define _CH0SB0 0x01 3537 #define _CH0SB1 0x02 3538 #define _CH0SB2 0x04 3539 #define _CH0SB3 0x08 3540 #define _CH0SB4 0x10 3541 #define _CH0NB0 0x20 3542 #define _CH0NB1 0x40 3543 #define _CH0NB2 0x80 3544 3545 //============================================================================== 3546 3547 3548 //============================================================================== 3549 // ADCON5L Bits 3550 3551 extern __at(0x0E88) __sfr ADCON5L; 3552 3553 typedef union 3554 { 3555 struct 3556 { 3557 unsigned CM0 : 1; 3558 unsigned CM1 : 1; 3559 unsigned WM0 : 1; 3560 unsigned WM1 : 1; 3561 unsigned : 1; 3562 unsigned : 1; 3563 unsigned : 1; 3564 unsigned : 1; 3565 }; 3566 3567 struct 3568 { 3569 unsigned CM : 2; 3570 unsigned : 6; 3571 }; 3572 3573 struct 3574 { 3575 unsigned : 2; 3576 unsigned WM : 2; 3577 unsigned : 4; 3578 }; 3579 } __ADCON5Lbits_t; 3580 3581 extern __at(0x0E88) volatile __ADCON5Lbits_t ADCON5Lbits; 3582 3583 #define _CM0 0x01 3584 #define _CM1 0x02 3585 #define _WM0 0x04 3586 #define _WM1 0x08 3587 3588 //============================================================================== 3589 3590 3591 //============================================================================== 3592 // ADCON5H Bits 3593 3594 extern __at(0x0E89) __sfr ADCON5H; 3595 3596 typedef union 3597 { 3598 struct 3599 { 3600 unsigned ASINTMD0 : 1; 3601 unsigned ASINTMD1 : 1; 3602 unsigned : 1; 3603 unsigned : 1; 3604 unsigned : 1; 3605 unsigned CTMUREQ : 1; 3606 unsigned LPENA : 1; 3607 unsigned ASENA : 1; 3608 }; 3609 3610 struct 3611 { 3612 unsigned ASINTMD : 2; 3613 unsigned : 6; 3614 }; 3615 } __ADCON5Hbits_t; 3616 3617 extern __at(0x0E89) volatile __ADCON5Hbits_t ADCON5Hbits; 3618 3619 #define _ASINTMD0 0x01 3620 #define _ASINTMD1 0x02 3621 #define _CTMUREQ 0x20 3622 #define _LPENA 0x40 3623 #define _ASENA 0x80 3624 3625 //============================================================================== 3626 3627 3628 //============================================================================== 3629 // ADCON3L Bits 3630 3631 extern __at(0x0E8A) __sfr ADCON3L; 3632 3633 typedef struct 3634 { 3635 unsigned ADCS0 : 1; 3636 unsigned ADCS1 : 1; 3637 unsigned ADCS2 : 1; 3638 unsigned ADCS3 : 1; 3639 unsigned ADCS4 : 1; 3640 unsigned ADCS5 : 1; 3641 unsigned ADCS6 : 1; 3642 unsigned ADCS7 : 1; 3643 } __ADCON3Lbits_t; 3644 3645 extern __at(0x0E8A) volatile __ADCON3Lbits_t ADCON3Lbits; 3646 3647 #define _ADCS0 0x01 3648 #define _ADCS1 0x02 3649 #define _ADCS2 0x04 3650 #define _ADCS3 0x08 3651 #define _ADCS4 0x10 3652 #define _ADCS5 0x20 3653 #define _ADCS6 0x40 3654 #define _ADCS7 0x80 3655 3656 //============================================================================== 3657 3658 3659 //============================================================================== 3660 // ADCON3H Bits 3661 3662 extern __at(0x0E8B) __sfr ADCON3H; 3663 3664 typedef union 3665 { 3666 struct 3667 { 3668 unsigned SAMC0 : 1; 3669 unsigned SAMC1 : 1; 3670 unsigned SAMC2 : 1; 3671 unsigned SAMC3 : 1; 3672 unsigned SAMC4 : 1; 3673 unsigned PUMPEN : 1; 3674 unsigned EXTSAM : 1; 3675 unsigned ADRC : 1; 3676 }; 3677 3678 struct 3679 { 3680 unsigned SAMC : 5; 3681 unsigned : 3; 3682 }; 3683 } __ADCON3Hbits_t; 3684 3685 extern __at(0x0E8B) volatile __ADCON3Hbits_t ADCON3Hbits; 3686 3687 #define _SAMC0 0x01 3688 #define _SAMC1 0x02 3689 #define _SAMC2 0x04 3690 #define _SAMC3 0x08 3691 #define _SAMC4 0x10 3692 #define _PUMPEN 0x20 3693 #define _EXTSAM 0x40 3694 #define _ADRC 0x80 3695 3696 //============================================================================== 3697 3698 3699 //============================================================================== 3700 // ADCON2L Bits 3701 3702 extern __at(0x0E8C) __sfr ADCON2L; 3703 3704 typedef union 3705 { 3706 struct 3707 { 3708 unsigned ALTS : 1; 3709 unsigned BUFM : 1; 3710 unsigned SMPI0 : 1; 3711 unsigned SMPI1 : 1; 3712 unsigned SMPI2 : 1; 3713 unsigned SMPI3 : 1; 3714 unsigned SMPI4 : 1; 3715 unsigned BUFS : 1; 3716 }; 3717 3718 struct 3719 { 3720 unsigned : 2; 3721 unsigned SMPI : 5; 3722 unsigned : 1; 3723 }; 3724 } __ADCON2Lbits_t; 3725 3726 extern __at(0x0E8C) volatile __ADCON2Lbits_t ADCON2Lbits; 3727 3728 #define _ALTS 0x01 3729 #define _BUFM 0x02 3730 #define _SMPI0 0x04 3731 #define _SMPI1 0x08 3732 #define _SMPI2 0x10 3733 #define _SMPI3 0x20 3734 #define _SMPI4 0x40 3735 #define _BUFS 0x80 3736 3737 //============================================================================== 3738 3739 3740 //============================================================================== 3741 // ADCON2H Bits 3742 3743 extern __at(0x0E8D) __sfr ADCON2H; 3744 3745 typedef union 3746 { 3747 struct 3748 { 3749 unsigned : 1; 3750 unsigned : 1; 3751 unsigned CSCNA : 1; 3752 unsigned BUFREGEN : 1; 3753 unsigned OFFCAL : 1; 3754 unsigned NVCFG0 : 1; 3755 unsigned PVCFG0 : 1; 3756 unsigned PVCFG1 : 1; 3757 }; 3758 3759 struct 3760 { 3761 unsigned : 6; 3762 unsigned PVCFG : 2; 3763 }; 3764 } __ADCON2Hbits_t; 3765 3766 extern __at(0x0E8D) volatile __ADCON2Hbits_t ADCON2Hbits; 3767 3768 #define _CSCNA 0x04 3769 #define _BUFREGEN 0x08 3770 #define _OFFCAL 0x10 3771 #define _NVCFG0 0x20 3772 #define _PVCFG0 0x40 3773 #define _PVCFG1 0x80 3774 3775 //============================================================================== 3776 3777 3778 //============================================================================== 3779 // LCDDATA0 Bits 3780 3781 extern __at(0x0E8E) __sfr LCDDATA0; 3782 3783 typedef struct 3784 { 3785 unsigned S00C0 : 1; 3786 unsigned S01C0 : 1; 3787 unsigned S02C0 : 1; 3788 unsigned S03C0 : 1; 3789 unsigned S04C0 : 1; 3790 unsigned S05C0 : 1; 3791 unsigned S06C0 : 1; 3792 unsigned S07C0 : 1; 3793 } __LCDDATA0bits_t; 3794 3795 extern __at(0x0E8E) volatile __LCDDATA0bits_t LCDDATA0bits; 3796 3797 #define _S00C0 0x01 3798 #define _S01C0 0x02 3799 #define _S02C0 0x04 3800 #define _S03C0 0x08 3801 #define _S04C0 0x10 3802 #define _S05C0 0x20 3803 #define _S06C0 0x40 3804 #define _S07C0 0x80 3805 3806 //============================================================================== 3807 3808 3809 //============================================================================== 3810 // LCDDATA1 Bits 3811 3812 extern __at(0x0E8F) __sfr LCDDATA1; 3813 3814 typedef struct 3815 { 3816 unsigned S08C0 : 1; 3817 unsigned S09C0 : 1; 3818 unsigned S10C0 : 1; 3819 unsigned S11C0 : 1; 3820 unsigned S12C0 : 1; 3821 unsigned S13C0 : 1; 3822 unsigned S14C0 : 1; 3823 unsigned S15C0 : 1; 3824 } __LCDDATA1bits_t; 3825 3826 extern __at(0x0E8F) volatile __LCDDATA1bits_t LCDDATA1bits; 3827 3828 #define _S08C0 0x01 3829 #define _S09C0 0x02 3830 #define _S10C0 0x04 3831 #define _S11C0 0x08 3832 #define _S12C0 0x10 3833 #define _S13C0 0x20 3834 #define _S14C0 0x40 3835 #define _S15C0 0x80 3836 3837 //============================================================================== 3838 3839 3840 //============================================================================== 3841 // LCDDATA2 Bits 3842 3843 extern __at(0x0E90) __sfr LCDDATA2; 3844 3845 typedef struct 3846 { 3847 unsigned S16C0 : 1; 3848 unsigned S17C0 : 1; 3849 unsigned S18C0 : 1; 3850 unsigned S19C0 : 1; 3851 unsigned S20C0 : 1; 3852 unsigned S21C0 : 1; 3853 unsigned S22C0 : 1; 3854 unsigned S23C0 : 1; 3855 } __LCDDATA2bits_t; 3856 3857 extern __at(0x0E90) volatile __LCDDATA2bits_t LCDDATA2bits; 3858 3859 #define _S16C0 0x01 3860 #define _S17C0 0x02 3861 #define _S18C0 0x04 3862 #define _S19C0 0x08 3863 #define _S20C0 0x10 3864 #define _S21C0 0x20 3865 #define _S22C0 0x40 3866 #define _S23C0 0x80 3867 3868 //============================================================================== 3869 3870 3871 //============================================================================== 3872 // LCDDATA3 Bits 3873 3874 extern __at(0x0E91) __sfr LCDDATA3; 3875 3876 typedef struct 3877 { 3878 unsigned S24C0 : 1; 3879 unsigned S25C0 : 1; 3880 unsigned S26C0 : 1; 3881 unsigned S27C0 : 1; 3882 unsigned S28C0 : 1; 3883 unsigned S29C0 : 1; 3884 unsigned S30C0 : 1; 3885 unsigned S31C0 : 1; 3886 } __LCDDATA3bits_t; 3887 3888 extern __at(0x0E91) volatile __LCDDATA3bits_t LCDDATA3bits; 3889 3890 #define _S24C0 0x01 3891 #define _S25C0 0x02 3892 #define _S26C0 0x04 3893 #define _S27C0 0x08 3894 #define _S28C0 0x10 3895 #define _S29C0 0x20 3896 #define _S30C0 0x40 3897 #define _S31C0 0x80 3898 3899 //============================================================================== 3900 3901 3902 //============================================================================== 3903 // LCDDATA4 Bits 3904 3905 extern __at(0x0E92) __sfr LCDDATA4; 3906 3907 typedef struct 3908 { 3909 unsigned S32C0 : 1; 3910 unsigned S33C0 : 1; 3911 unsigned S34C0 : 1; 3912 unsigned S35C0 : 1; 3913 unsigned S36C0 : 1; 3914 unsigned S37C0 : 1; 3915 unsigned S38C0 : 1; 3916 unsigned S39C0 : 1; 3917 } __LCDDATA4bits_t; 3918 3919 extern __at(0x0E92) volatile __LCDDATA4bits_t LCDDATA4bits; 3920 3921 #define _S32C0 0x01 3922 #define _S33C0 0x02 3923 #define _S34C0 0x04 3924 #define _S35C0 0x08 3925 #define _S36C0 0x10 3926 #define _S37C0 0x20 3927 #define _S38C0 0x40 3928 #define _S39C0 0x80 3929 3930 //============================================================================== 3931 3932 3933 //============================================================================== 3934 // LCDDATA5 Bits 3935 3936 extern __at(0x0E93) __sfr LCDDATA5; 3937 3938 typedef struct 3939 { 3940 unsigned S40C0 : 1; 3941 unsigned S41C0 : 1; 3942 unsigned S42C0 : 1; 3943 unsigned S43C0 : 1; 3944 unsigned S44C0 : 1; 3945 unsigned S45C0 : 1; 3946 unsigned S46C0 : 1; 3947 unsigned S47C0 : 1; 3948 } __LCDDATA5bits_t; 3949 3950 extern __at(0x0E93) volatile __LCDDATA5bits_t LCDDATA5bits; 3951 3952 #define _S40C0 0x01 3953 #define _S41C0 0x02 3954 #define _S42C0 0x04 3955 #define _S43C0 0x08 3956 #define _S44C0 0x10 3957 #define _S45C0 0x20 3958 #define _S46C0 0x40 3959 #define _S47C0 0x80 3960 3961 //============================================================================== 3962 3963 3964 //============================================================================== 3965 // LCDDATA6 Bits 3966 3967 extern __at(0x0E94) __sfr LCDDATA6; 3968 3969 typedef struct 3970 { 3971 unsigned S48C0 : 1; 3972 unsigned S49C0 : 1; 3973 unsigned S50C0 : 1; 3974 unsigned S51C0 : 1; 3975 unsigned S52C0 : 1; 3976 unsigned S53C0 : 1; 3977 unsigned S54C0 : 1; 3978 unsigned S55C0 : 1; 3979 } __LCDDATA6bits_t; 3980 3981 extern __at(0x0E94) volatile __LCDDATA6bits_t LCDDATA6bits; 3982 3983 #define _S48C0 0x01 3984 #define _S49C0 0x02 3985 #define _S50C0 0x04 3986 #define _S51C0 0x08 3987 #define _S52C0 0x10 3988 #define _S53C0 0x20 3989 #define _S54C0 0x40 3990 #define _S55C0 0x80 3991 3992 //============================================================================== 3993 3994 3995 //============================================================================== 3996 // LCDDATA7 Bits 3997 3998 extern __at(0x0E95) __sfr LCDDATA7; 3999 4000 typedef struct 4001 { 4002 unsigned S56C0 : 1; 4003 unsigned S57C0 : 1; 4004 unsigned S58C0 : 1; 4005 unsigned S59C0 : 1; 4006 unsigned S60C0 : 1; 4007 unsigned S61C0 : 1; 4008 unsigned S62C0 : 1; 4009 unsigned S63C0 : 1; 4010 } __LCDDATA7bits_t; 4011 4012 extern __at(0x0E95) volatile __LCDDATA7bits_t LCDDATA7bits; 4013 4014 #define _S56C0 0x01 4015 #define _S57C0 0x02 4016 #define _S58C0 0x04 4017 #define _S59C0 0x08 4018 #define _S60C0 0x10 4019 #define _S61C0 0x20 4020 #define _S62C0 0x40 4021 #define _S63C0 0x80 4022 4023 //============================================================================== 4024 4025 4026 //============================================================================== 4027 // LCDDATA8 Bits 4028 4029 extern __at(0x0E96) __sfr LCDDATA8; 4030 4031 typedef struct 4032 { 4033 unsigned S00C1 : 1; 4034 unsigned S01C1 : 1; 4035 unsigned S02C1 : 1; 4036 unsigned S03C1 : 1; 4037 unsigned S04C1 : 1; 4038 unsigned S05C1 : 1; 4039 unsigned S06C1 : 1; 4040 unsigned S07C1 : 1; 4041 } __LCDDATA8bits_t; 4042 4043 extern __at(0x0E96) volatile __LCDDATA8bits_t LCDDATA8bits; 4044 4045 #define _S00C1 0x01 4046 #define _S01C1 0x02 4047 #define _S02C1 0x04 4048 #define _S03C1 0x08 4049 #define _S04C1 0x10 4050 #define _S05C1 0x20 4051 #define _S06C1 0x40 4052 #define _S07C1 0x80 4053 4054 //============================================================================== 4055 4056 4057 //============================================================================== 4058 // LCDDATA9 Bits 4059 4060 extern __at(0x0E97) __sfr LCDDATA9; 4061 4062 typedef struct 4063 { 4064 unsigned S08C1 : 1; 4065 unsigned S09C1 : 1; 4066 unsigned S10C1 : 1; 4067 unsigned S11C1 : 1; 4068 unsigned S12C1 : 1; 4069 unsigned S13C1 : 1; 4070 unsigned S14C1 : 1; 4071 unsigned S15C1 : 1; 4072 } __LCDDATA9bits_t; 4073 4074 extern __at(0x0E97) volatile __LCDDATA9bits_t LCDDATA9bits; 4075 4076 #define _S08C1 0x01 4077 #define _S09C1 0x02 4078 #define _S10C1 0x04 4079 #define _S11C1 0x08 4080 #define _S12C1 0x10 4081 #define _S13C1 0x20 4082 #define _S14C1 0x40 4083 #define _S15C1 0x80 4084 4085 //============================================================================== 4086 4087 4088 //============================================================================== 4089 // LCDDATA10 Bits 4090 4091 extern __at(0x0E98) __sfr LCDDATA10; 4092 4093 typedef struct 4094 { 4095 unsigned S16C1 : 1; 4096 unsigned S17C1 : 1; 4097 unsigned S18C1 : 1; 4098 unsigned S19C1 : 1; 4099 unsigned S20C1 : 1; 4100 unsigned S21C1 : 1; 4101 unsigned S22C1 : 1; 4102 unsigned S23C1 : 1; 4103 } __LCDDATA10bits_t; 4104 4105 extern __at(0x0E98) volatile __LCDDATA10bits_t LCDDATA10bits; 4106 4107 #define _S16C1 0x01 4108 #define _S17C1 0x02 4109 #define _S18C1 0x04 4110 #define _S19C1 0x08 4111 #define _S20C1 0x10 4112 #define _S21C1 0x20 4113 #define _S22C1 0x40 4114 #define _S23C1 0x80 4115 4116 //============================================================================== 4117 4118 4119 //============================================================================== 4120 // LCDDATA11 Bits 4121 4122 extern __at(0x0E99) __sfr LCDDATA11; 4123 4124 typedef struct 4125 { 4126 unsigned S24C1 : 1; 4127 unsigned S25C1 : 1; 4128 unsigned S26C1 : 1; 4129 unsigned S27C1 : 1; 4130 unsigned S28C1 : 1; 4131 unsigned S29C1 : 1; 4132 unsigned S30C1 : 1; 4133 unsigned S31C1 : 1; 4134 } __LCDDATA11bits_t; 4135 4136 extern __at(0x0E99) volatile __LCDDATA11bits_t LCDDATA11bits; 4137 4138 #define _S24C1 0x01 4139 #define _S25C1 0x02 4140 #define _S26C1 0x04 4141 #define _S27C1 0x08 4142 #define _S28C1 0x10 4143 #define _S29C1 0x20 4144 #define _S30C1 0x40 4145 #define _S31C1 0x80 4146 4147 //============================================================================== 4148 4149 4150 //============================================================================== 4151 // LCDDATA12 Bits 4152 4153 extern __at(0x0E9A) __sfr LCDDATA12; 4154 4155 typedef struct 4156 { 4157 unsigned S32C1 : 1; 4158 unsigned S33C1 : 1; 4159 unsigned S34C1 : 1; 4160 unsigned S35C1 : 1; 4161 unsigned S36C1 : 1; 4162 unsigned S37C1 : 1; 4163 unsigned S38C1 : 1; 4164 unsigned S39C1 : 1; 4165 } __LCDDATA12bits_t; 4166 4167 extern __at(0x0E9A) volatile __LCDDATA12bits_t LCDDATA12bits; 4168 4169 #define _S32C1 0x01 4170 #define _S33C1 0x02 4171 #define _S34C1 0x04 4172 #define _S35C1 0x08 4173 #define _S36C1 0x10 4174 #define _S37C1 0x20 4175 #define _S38C1 0x40 4176 #define _S39C1 0x80 4177 4178 //============================================================================== 4179 4180 4181 //============================================================================== 4182 // LCDDATA13 Bits 4183 4184 extern __at(0x0E9B) __sfr LCDDATA13; 4185 4186 typedef struct 4187 { 4188 unsigned S40C1 : 1; 4189 unsigned S41C1 : 1; 4190 unsigned S42C1 : 1; 4191 unsigned S43C1 : 1; 4192 unsigned S44C1 : 1; 4193 unsigned S45C1 : 1; 4194 unsigned S46C1 : 1; 4195 unsigned S47C1 : 1; 4196 } __LCDDATA13bits_t; 4197 4198 extern __at(0x0E9B) volatile __LCDDATA13bits_t LCDDATA13bits; 4199 4200 #define _S40C1 0x01 4201 #define _S41C1 0x02 4202 #define _S42C1 0x04 4203 #define _S43C1 0x08 4204 #define _S44C1 0x10 4205 #define _S45C1 0x20 4206 #define _S46C1 0x40 4207 #define _S47C1 0x80 4208 4209 //============================================================================== 4210 4211 4212 //============================================================================== 4213 // LCDDATA14 Bits 4214 4215 extern __at(0x0E9C) __sfr LCDDATA14; 4216 4217 typedef struct 4218 { 4219 unsigned S48C1 : 1; 4220 unsigned S49C1 : 1; 4221 unsigned S50C1 : 1; 4222 unsigned S51C1 : 1; 4223 unsigned S52C1 : 1; 4224 unsigned S53C1 : 1; 4225 unsigned S54C1 : 1; 4226 unsigned S55C1 : 1; 4227 } __LCDDATA14bits_t; 4228 4229 extern __at(0x0E9C) volatile __LCDDATA14bits_t LCDDATA14bits; 4230 4231 #define _S48C1 0x01 4232 #define _S49C1 0x02 4233 #define _S50C1 0x04 4234 #define _S51C1 0x08 4235 #define _S52C1 0x10 4236 #define _S53C1 0x20 4237 #define _S54C1 0x40 4238 #define _S55C1 0x80 4239 4240 //============================================================================== 4241 4242 4243 //============================================================================== 4244 // LCDDATA15 Bits 4245 4246 extern __at(0x0E9D) __sfr LCDDATA15; 4247 4248 typedef struct 4249 { 4250 unsigned S56C1 : 1; 4251 unsigned S57C1 : 1; 4252 unsigned S58C1 : 1; 4253 unsigned S59C1 : 1; 4254 unsigned S60C1 : 1; 4255 unsigned S61C1 : 1; 4256 unsigned S62C1 : 1; 4257 unsigned S63C1 : 1; 4258 } __LCDDATA15bits_t; 4259 4260 extern __at(0x0E9D) volatile __LCDDATA15bits_t LCDDATA15bits; 4261 4262 #define _S56C1 0x01 4263 #define _S57C1 0x02 4264 #define _S58C1 0x04 4265 #define _S59C1 0x08 4266 #define _S60C1 0x10 4267 #define _S61C1 0x20 4268 #define _S62C1 0x40 4269 #define _S63C1 0x80 4270 4271 //============================================================================== 4272 4273 4274 //============================================================================== 4275 // LCDDATA16 Bits 4276 4277 extern __at(0x0E9E) __sfr LCDDATA16; 4278 4279 typedef struct 4280 { 4281 unsigned S00C2 : 1; 4282 unsigned S01C2 : 1; 4283 unsigned S02C2 : 1; 4284 unsigned S03C2 : 1; 4285 unsigned S04C2 : 1; 4286 unsigned S05C2 : 1; 4287 unsigned S06C2 : 1; 4288 unsigned S07C2 : 1; 4289 } __LCDDATA16bits_t; 4290 4291 extern __at(0x0E9E) volatile __LCDDATA16bits_t LCDDATA16bits; 4292 4293 #define _S00C2 0x01 4294 #define _S01C2 0x02 4295 #define _S02C2 0x04 4296 #define _S03C2 0x08 4297 #define _S04C2 0x10 4298 #define _S05C2 0x20 4299 #define _S06C2 0x40 4300 #define _S07C2 0x80 4301 4302 //============================================================================== 4303 4304 4305 //============================================================================== 4306 // LCDDATA17 Bits 4307 4308 extern __at(0x0E9F) __sfr LCDDATA17; 4309 4310 typedef struct 4311 { 4312 unsigned S08C2 : 1; 4313 unsigned S09C2 : 1; 4314 unsigned S10C2 : 1; 4315 unsigned S11C2 : 1; 4316 unsigned S12C2 : 1; 4317 unsigned S13C2 : 1; 4318 unsigned S14C2 : 1; 4319 unsigned S15C2 : 1; 4320 } __LCDDATA17bits_t; 4321 4322 extern __at(0x0E9F) volatile __LCDDATA17bits_t LCDDATA17bits; 4323 4324 #define _S08C2 0x01 4325 #define _S09C2 0x02 4326 #define _S10C2 0x04 4327 #define _S11C2 0x08 4328 #define _S12C2 0x10 4329 #define _S13C2 0x20 4330 #define _S14C2 0x40 4331 #define _S15C2 0x80 4332 4333 //============================================================================== 4334 4335 4336 //============================================================================== 4337 // LCDDATA18 Bits 4338 4339 extern __at(0x0EA0) __sfr LCDDATA18; 4340 4341 typedef struct 4342 { 4343 unsigned S16C2 : 1; 4344 unsigned S17C2 : 1; 4345 unsigned S18C2 : 1; 4346 unsigned S19C2 : 1; 4347 unsigned S20C2 : 1; 4348 unsigned S21C2 : 1; 4349 unsigned S22C2 : 1; 4350 unsigned S23C2 : 1; 4351 } __LCDDATA18bits_t; 4352 4353 extern __at(0x0EA0) volatile __LCDDATA18bits_t LCDDATA18bits; 4354 4355 #define _S16C2 0x01 4356 #define _S17C2 0x02 4357 #define _S18C2 0x04 4358 #define _S19C2 0x08 4359 #define _S20C2 0x10 4360 #define _S21C2 0x20 4361 #define _S22C2 0x40 4362 #define _S23C2 0x80 4363 4364 //============================================================================== 4365 4366 4367 //============================================================================== 4368 // LCDDATA19 Bits 4369 4370 extern __at(0x0EA1) __sfr LCDDATA19; 4371 4372 typedef struct 4373 { 4374 unsigned S24C2 : 1; 4375 unsigned S25C2 : 1; 4376 unsigned S26C2 : 1; 4377 unsigned S27C2 : 1; 4378 unsigned S28C2 : 1; 4379 unsigned S29C2 : 1; 4380 unsigned S30C2 : 1; 4381 unsigned S31C2 : 1; 4382 } __LCDDATA19bits_t; 4383 4384 extern __at(0x0EA1) volatile __LCDDATA19bits_t LCDDATA19bits; 4385 4386 #define _S24C2 0x01 4387 #define _S25C2 0x02 4388 #define _S26C2 0x04 4389 #define _S27C2 0x08 4390 #define _S28C2 0x10 4391 #define _S29C2 0x20 4392 #define _S30C2 0x40 4393 #define _S31C2 0x80 4394 4395 //============================================================================== 4396 4397 4398 //============================================================================== 4399 // LCDDATA20 Bits 4400 4401 extern __at(0x0EA2) __sfr LCDDATA20; 4402 4403 typedef struct 4404 { 4405 unsigned S32C2 : 1; 4406 unsigned S33C2 : 1; 4407 unsigned S34C2 : 1; 4408 unsigned S35C2 : 1; 4409 unsigned S36C2 : 1; 4410 unsigned S37C2 : 1; 4411 unsigned S38C2 : 1; 4412 unsigned S39C2 : 1; 4413 } __LCDDATA20bits_t; 4414 4415 extern __at(0x0EA2) volatile __LCDDATA20bits_t LCDDATA20bits; 4416 4417 #define _S32C2 0x01 4418 #define _S33C2 0x02 4419 #define _S34C2 0x04 4420 #define _S35C2 0x08 4421 #define _S36C2 0x10 4422 #define _S37C2 0x20 4423 #define _S38C2 0x40 4424 #define _S39C2 0x80 4425 4426 //============================================================================== 4427 4428 4429 //============================================================================== 4430 // LCDDATA21 Bits 4431 4432 extern __at(0x0EA3) __sfr LCDDATA21; 4433 4434 typedef struct 4435 { 4436 unsigned S40C2 : 1; 4437 unsigned S41C2 : 1; 4438 unsigned S42C2 : 1; 4439 unsigned S43C2 : 1; 4440 unsigned S44C2 : 1; 4441 unsigned S45C2 : 1; 4442 unsigned S46C2 : 1; 4443 unsigned S47C2 : 1; 4444 } __LCDDATA21bits_t; 4445 4446 extern __at(0x0EA3) volatile __LCDDATA21bits_t LCDDATA21bits; 4447 4448 #define _S40C2 0x01 4449 #define _S41C2 0x02 4450 #define _S42C2 0x04 4451 #define _S43C2 0x08 4452 #define _S44C2 0x10 4453 #define _S45C2 0x20 4454 #define _S46C2 0x40 4455 #define _S47C2 0x80 4456 4457 //============================================================================== 4458 4459 4460 //============================================================================== 4461 // LCDDATA22 Bits 4462 4463 extern __at(0x0EA4) __sfr LCDDATA22; 4464 4465 typedef struct 4466 { 4467 unsigned S48C2 : 1; 4468 unsigned S49C2 : 1; 4469 unsigned S50C2 : 1; 4470 unsigned S51C2 : 1; 4471 unsigned S52C2 : 1; 4472 unsigned S53C2 : 1; 4473 unsigned S54C2 : 1; 4474 unsigned S55C2 : 1; 4475 } __LCDDATA22bits_t; 4476 4477 extern __at(0x0EA4) volatile __LCDDATA22bits_t LCDDATA22bits; 4478 4479 #define _S48C2 0x01 4480 #define _S49C2 0x02 4481 #define _S50C2 0x04 4482 #define _S51C2 0x08 4483 #define _S52C2 0x10 4484 #define _S53C2 0x20 4485 #define _S54C2 0x40 4486 #define _S55C2 0x80 4487 4488 //============================================================================== 4489 4490 4491 //============================================================================== 4492 // LCDDATA23 Bits 4493 4494 extern __at(0x0EA5) __sfr LCDDATA23; 4495 4496 typedef struct 4497 { 4498 unsigned S56C2 : 1; 4499 unsigned S57C2 : 1; 4500 unsigned S58C2 : 1; 4501 unsigned S59C2 : 1; 4502 unsigned S60C2 : 1; 4503 unsigned S61C2 : 1; 4504 unsigned S62C2 : 1; 4505 unsigned S63C2 : 1; 4506 } __LCDDATA23bits_t; 4507 4508 extern __at(0x0EA5) volatile __LCDDATA23bits_t LCDDATA23bits; 4509 4510 #define _S56C2 0x01 4511 #define _S57C2 0x02 4512 #define _S58C2 0x04 4513 #define _S59C2 0x08 4514 #define _S60C2 0x10 4515 #define _S61C2 0x20 4516 #define _S62C2 0x40 4517 #define _S63C2 0x80 4518 4519 //============================================================================== 4520 4521 4522 //============================================================================== 4523 // LCDDATA24 Bits 4524 4525 extern __at(0x0EA6) __sfr LCDDATA24; 4526 4527 typedef struct 4528 { 4529 unsigned S00C3 : 1; 4530 unsigned S01C3 : 1; 4531 unsigned S02C3 : 1; 4532 unsigned S03C3 : 1; 4533 unsigned S04C3 : 1; 4534 unsigned S05C3 : 1; 4535 unsigned S06C3 : 1; 4536 unsigned S07C3 : 1; 4537 } __LCDDATA24bits_t; 4538 4539 extern __at(0x0EA6) volatile __LCDDATA24bits_t LCDDATA24bits; 4540 4541 #define _S00C3 0x01 4542 #define _S01C3 0x02 4543 #define _S02C3 0x04 4544 #define _S03C3 0x08 4545 #define _S04C3 0x10 4546 #define _S05C3 0x20 4547 #define _S06C3 0x40 4548 #define _S07C3 0x80 4549 4550 //============================================================================== 4551 4552 4553 //============================================================================== 4554 // LCDDATA25 Bits 4555 4556 extern __at(0x0EA7) __sfr LCDDATA25; 4557 4558 typedef struct 4559 { 4560 unsigned S08C3 : 1; 4561 unsigned S09C3 : 1; 4562 unsigned S10C3 : 1; 4563 unsigned S11C3 : 1; 4564 unsigned S12C3 : 1; 4565 unsigned S13C3 : 1; 4566 unsigned S14C3 : 1; 4567 unsigned S15C3 : 1; 4568 } __LCDDATA25bits_t; 4569 4570 extern __at(0x0EA7) volatile __LCDDATA25bits_t LCDDATA25bits; 4571 4572 #define _S08C3 0x01 4573 #define _S09C3 0x02 4574 #define _S10C3 0x04 4575 #define _S11C3 0x08 4576 #define _S12C3 0x10 4577 #define _S13C3 0x20 4578 #define _S14C3 0x40 4579 #define _S15C3 0x80 4580 4581 //============================================================================== 4582 4583 4584 //============================================================================== 4585 // LCDDATA26 Bits 4586 4587 extern __at(0x0EA8) __sfr LCDDATA26; 4588 4589 typedef struct 4590 { 4591 unsigned S16C3 : 1; 4592 unsigned S17C3 : 1; 4593 unsigned S18C3 : 1; 4594 unsigned S19C3 : 1; 4595 unsigned S20C3 : 1; 4596 unsigned S21C3 : 1; 4597 unsigned S22C3 : 1; 4598 unsigned S23C3 : 1; 4599 } __LCDDATA26bits_t; 4600 4601 extern __at(0x0EA8) volatile __LCDDATA26bits_t LCDDATA26bits; 4602 4603 #define _S16C3 0x01 4604 #define _S17C3 0x02 4605 #define _S18C3 0x04 4606 #define _S19C3 0x08 4607 #define _S20C3 0x10 4608 #define _S21C3 0x20 4609 #define _S22C3 0x40 4610 #define _S23C3 0x80 4611 4612 //============================================================================== 4613 4614 4615 //============================================================================== 4616 // LCDDATA27 Bits 4617 4618 extern __at(0x0EA9) __sfr LCDDATA27; 4619 4620 typedef struct 4621 { 4622 unsigned S24C3 : 1; 4623 unsigned S25C3 : 1; 4624 unsigned S26C3 : 1; 4625 unsigned S27C3 : 1; 4626 unsigned S28C3 : 1; 4627 unsigned S29C3 : 1; 4628 unsigned S30C3 : 1; 4629 unsigned S31C3 : 1; 4630 } __LCDDATA27bits_t; 4631 4632 extern __at(0x0EA9) volatile __LCDDATA27bits_t LCDDATA27bits; 4633 4634 #define _S24C3 0x01 4635 #define _S25C3 0x02 4636 #define _S26C3 0x04 4637 #define _S27C3 0x08 4638 #define _S28C3 0x10 4639 #define _S29C3 0x20 4640 #define _S30C3 0x40 4641 #define _S31C3 0x80 4642 4643 //============================================================================== 4644 4645 4646 //============================================================================== 4647 // LCDDATA28 Bits 4648 4649 extern __at(0x0EAA) __sfr LCDDATA28; 4650 4651 typedef struct 4652 { 4653 unsigned S32C3 : 1; 4654 unsigned S33C3 : 1; 4655 unsigned S34C3 : 1; 4656 unsigned S35C3 : 1; 4657 unsigned S36C3 : 1; 4658 unsigned S37C3 : 1; 4659 unsigned S38C3 : 1; 4660 unsigned S39C3 : 1; 4661 } __LCDDATA28bits_t; 4662 4663 extern __at(0x0EAA) volatile __LCDDATA28bits_t LCDDATA28bits; 4664 4665 #define _S32C3 0x01 4666 #define _S33C3 0x02 4667 #define _S34C3 0x04 4668 #define _S35C3 0x08 4669 #define _S36C3 0x10 4670 #define _S37C3 0x20 4671 #define _S38C3 0x40 4672 #define _S39C3 0x80 4673 4674 //============================================================================== 4675 4676 4677 //============================================================================== 4678 // LCDDATA29 Bits 4679 4680 extern __at(0x0EAB) __sfr LCDDATA29; 4681 4682 typedef struct 4683 { 4684 unsigned S40C3 : 1; 4685 unsigned S41C3 : 1; 4686 unsigned S42C3 : 1; 4687 unsigned S43C3 : 1; 4688 unsigned S44C3 : 1; 4689 unsigned S45C3 : 1; 4690 unsigned S46C3 : 1; 4691 unsigned S47C3 : 1; 4692 } __LCDDATA29bits_t; 4693 4694 extern __at(0x0EAB) volatile __LCDDATA29bits_t LCDDATA29bits; 4695 4696 #define _S40C3 0x01 4697 #define _S41C3 0x02 4698 #define _S42C3 0x04 4699 #define _S43C3 0x08 4700 #define _S44C3 0x10 4701 #define _S45C3 0x20 4702 #define _S46C3 0x40 4703 #define _S47C3 0x80 4704 4705 //============================================================================== 4706 4707 4708 //============================================================================== 4709 // LCDDATA30 Bits 4710 4711 extern __at(0x0EAC) __sfr LCDDATA30; 4712 4713 typedef struct 4714 { 4715 unsigned S48C3 : 1; 4716 unsigned S49C3 : 1; 4717 unsigned S50C3 : 1; 4718 unsigned S51C3 : 1; 4719 unsigned S52C3 : 1; 4720 unsigned S53C3 : 1; 4721 unsigned S54C3 : 1; 4722 unsigned S55C3 : 1; 4723 } __LCDDATA30bits_t; 4724 4725 extern __at(0x0EAC) volatile __LCDDATA30bits_t LCDDATA30bits; 4726 4727 #define _S48C3 0x01 4728 #define _S49C3 0x02 4729 #define _S50C3 0x04 4730 #define _S51C3 0x08 4731 #define _S52C3 0x10 4732 #define _S53C3 0x20 4733 #define _S54C3 0x40 4734 #define _S55C3 0x80 4735 4736 //============================================================================== 4737 4738 4739 //============================================================================== 4740 // LCDDATA31 Bits 4741 4742 extern __at(0x0EAD) __sfr LCDDATA31; 4743 4744 typedef struct 4745 { 4746 unsigned S56C3 : 1; 4747 unsigned S57C3 : 1; 4748 unsigned S58C3 : 1; 4749 unsigned S59C3 : 1; 4750 unsigned S60C3 : 1; 4751 unsigned S61C3 : 1; 4752 unsigned S62C3 : 1; 4753 unsigned S63C3 : 1; 4754 } __LCDDATA31bits_t; 4755 4756 extern __at(0x0EAD) volatile __LCDDATA31bits_t LCDDATA31bits; 4757 4758 #define _S56C3 0x01 4759 #define _S57C3 0x02 4760 #define _S58C3 0x04 4761 #define _S59C3 0x08 4762 #define _S60C3 0x10 4763 #define _S61C3 0x20 4764 #define _S62C3 0x40 4765 #define _S63C3 0x80 4766 4767 //============================================================================== 4768 4769 4770 //============================================================================== 4771 // LCDDATA32 Bits 4772 4773 extern __at(0x0EAE) __sfr LCDDATA32; 4774 4775 typedef struct 4776 { 4777 unsigned S00C4 : 1; 4778 unsigned S01C4 : 1; 4779 unsigned S02C4 : 1; 4780 unsigned S03C4 : 1; 4781 unsigned S04C4 : 1; 4782 unsigned S05C4 : 1; 4783 unsigned S06C4 : 1; 4784 unsigned S07C4 : 1; 4785 } __LCDDATA32bits_t; 4786 4787 extern __at(0x0EAE) volatile __LCDDATA32bits_t LCDDATA32bits; 4788 4789 #define _S00C4 0x01 4790 #define _S01C4 0x02 4791 #define _S02C4 0x04 4792 #define _S03C4 0x08 4793 #define _S04C4 0x10 4794 #define _S05C4 0x20 4795 #define _S06C4 0x40 4796 #define _S07C4 0x80 4797 4798 //============================================================================== 4799 4800 4801 //============================================================================== 4802 // LCDDATA33 Bits 4803 4804 extern __at(0x0EAF) __sfr LCDDATA33; 4805 4806 typedef struct 4807 { 4808 unsigned S08C4 : 1; 4809 unsigned S09C4 : 1; 4810 unsigned S10C4 : 1; 4811 unsigned S11C4 : 1; 4812 unsigned S12C4 : 1; 4813 unsigned S13C4 : 1; 4814 unsigned S14C4 : 1; 4815 unsigned S15C4 : 1; 4816 } __LCDDATA33bits_t; 4817 4818 extern __at(0x0EAF) volatile __LCDDATA33bits_t LCDDATA33bits; 4819 4820 #define _S08C4 0x01 4821 #define _S09C4 0x02 4822 #define _S10C4 0x04 4823 #define _S11C4 0x08 4824 #define _S12C4 0x10 4825 #define _S13C4 0x20 4826 #define _S14C4 0x40 4827 #define _S15C4 0x80 4828 4829 //============================================================================== 4830 4831 4832 //============================================================================== 4833 // LCDDATA34 Bits 4834 4835 extern __at(0x0EB0) __sfr LCDDATA34; 4836 4837 typedef struct 4838 { 4839 unsigned S16C4 : 1; 4840 unsigned S17C4 : 1; 4841 unsigned S18C4 : 1; 4842 unsigned S19C4 : 1; 4843 unsigned S20C4 : 1; 4844 unsigned S21C4 : 1; 4845 unsigned S22C4 : 1; 4846 unsigned S23C4 : 1; 4847 } __LCDDATA34bits_t; 4848 4849 extern __at(0x0EB0) volatile __LCDDATA34bits_t LCDDATA34bits; 4850 4851 #define _S16C4 0x01 4852 #define _S17C4 0x02 4853 #define _S18C4 0x04 4854 #define _S19C4 0x08 4855 #define _S20C4 0x10 4856 #define _S21C4 0x20 4857 #define _S22C4 0x40 4858 #define _S23C4 0x80 4859 4860 //============================================================================== 4861 4862 4863 //============================================================================== 4864 // LCDDATA35 Bits 4865 4866 extern __at(0x0EB1) __sfr LCDDATA35; 4867 4868 typedef struct 4869 { 4870 unsigned S24C4 : 1; 4871 unsigned S25C4 : 1; 4872 unsigned S26C4 : 1; 4873 unsigned S27C4 : 1; 4874 unsigned S28C4 : 1; 4875 unsigned S29C4 : 1; 4876 unsigned S30C4 : 1; 4877 unsigned S31C4 : 1; 4878 } __LCDDATA35bits_t; 4879 4880 extern __at(0x0EB1) volatile __LCDDATA35bits_t LCDDATA35bits; 4881 4882 #define _S24C4 0x01 4883 #define _S25C4 0x02 4884 #define _S26C4 0x04 4885 #define _S27C4 0x08 4886 #define _S28C4 0x10 4887 #define _S29C4 0x20 4888 #define _S30C4 0x40 4889 #define _S31C4 0x80 4890 4891 //============================================================================== 4892 4893 4894 //============================================================================== 4895 // LCDDATA36 Bits 4896 4897 extern __at(0x0EB2) __sfr LCDDATA36; 4898 4899 typedef struct 4900 { 4901 unsigned S32C4 : 1; 4902 unsigned S33C4 : 1; 4903 unsigned S34C4 : 1; 4904 unsigned S35C4 : 1; 4905 unsigned S36C4 : 1; 4906 unsigned S37C4 : 1; 4907 unsigned S38C4 : 1; 4908 unsigned S39C4 : 1; 4909 } __LCDDATA36bits_t; 4910 4911 extern __at(0x0EB2) volatile __LCDDATA36bits_t LCDDATA36bits; 4912 4913 #define _S32C4 0x01 4914 #define _S33C4 0x02 4915 #define _S34C4 0x04 4916 #define _S35C4 0x08 4917 #define _S36C4 0x10 4918 #define _S37C4 0x20 4919 #define _S38C4 0x40 4920 #define _S39C4 0x80 4921 4922 //============================================================================== 4923 4924 4925 //============================================================================== 4926 // LCDDATA37 Bits 4927 4928 extern __at(0x0EB3) __sfr LCDDATA37; 4929 4930 typedef struct 4931 { 4932 unsigned S40C4 : 1; 4933 unsigned S41C4 : 1; 4934 unsigned S42C4 : 1; 4935 unsigned S43C4 : 1; 4936 unsigned S44C4 : 1; 4937 unsigned S45C4 : 1; 4938 unsigned S46C4 : 1; 4939 unsigned S47C4 : 1; 4940 } __LCDDATA37bits_t; 4941 4942 extern __at(0x0EB3) volatile __LCDDATA37bits_t LCDDATA37bits; 4943 4944 #define _S40C4 0x01 4945 #define _S41C4 0x02 4946 #define _S42C4 0x04 4947 #define _S43C4 0x08 4948 #define _S44C4 0x10 4949 #define _S45C4 0x20 4950 #define _S46C4 0x40 4951 #define _S47C4 0x80 4952 4953 //============================================================================== 4954 4955 4956 //============================================================================== 4957 // LCDDATA38 Bits 4958 4959 extern __at(0x0EB4) __sfr LCDDATA38; 4960 4961 typedef struct 4962 { 4963 unsigned S48C4 : 1; 4964 unsigned S49C4 : 1; 4965 unsigned S50C4 : 1; 4966 unsigned S51C4 : 1; 4967 unsigned S52C4 : 1; 4968 unsigned S53C4 : 1; 4969 unsigned S54C4 : 1; 4970 unsigned S55C4 : 1; 4971 } __LCDDATA38bits_t; 4972 4973 extern __at(0x0EB4) volatile __LCDDATA38bits_t LCDDATA38bits; 4974 4975 #define _S48C4 0x01 4976 #define _S49C4 0x02 4977 #define _S50C4 0x04 4978 #define _S51C4 0x08 4979 #define _S52C4 0x10 4980 #define _S53C4 0x20 4981 #define _S54C4 0x40 4982 #define _S55C4 0x80 4983 4984 //============================================================================== 4985 4986 4987 //============================================================================== 4988 // LCDDATA39 Bits 4989 4990 extern __at(0x0EB5) __sfr LCDDATA39; 4991 4992 typedef struct 4993 { 4994 unsigned S56C4 : 1; 4995 unsigned S57C4 : 1; 4996 unsigned S58C4 : 1; 4997 unsigned S59C4 : 1; 4998 unsigned S60C4 : 1; 4999 unsigned S61C4 : 1; 5000 unsigned S62C4 : 1; 5001 unsigned S63C4 : 1; 5002 } __LCDDATA39bits_t; 5003 5004 extern __at(0x0EB5) volatile __LCDDATA39bits_t LCDDATA39bits; 5005 5006 #define _S56C4 0x01 5007 #define _S57C4 0x02 5008 #define _S58C4 0x04 5009 #define _S59C4 0x08 5010 #define _S60C4 0x10 5011 #define _S61C4 0x20 5012 #define _S62C4 0x40 5013 #define _S63C4 0x80 5014 5015 //============================================================================== 5016 5017 5018 //============================================================================== 5019 // LCDDATA40 Bits 5020 5021 extern __at(0x0EB6) __sfr LCDDATA40; 5022 5023 typedef struct 5024 { 5025 unsigned S00C5 : 1; 5026 unsigned S01C5 : 1; 5027 unsigned S02C5 : 1; 5028 unsigned S03C5 : 1; 5029 unsigned S04C5 : 1; 5030 unsigned S05C5 : 1; 5031 unsigned S06C5 : 1; 5032 unsigned S07C5 : 1; 5033 } __LCDDATA40bits_t; 5034 5035 extern __at(0x0EB6) volatile __LCDDATA40bits_t LCDDATA40bits; 5036 5037 #define _S00C5 0x01 5038 #define _S01C5 0x02 5039 #define _S02C5 0x04 5040 #define _S03C5 0x08 5041 #define _S04C5 0x10 5042 #define _S05C5 0x20 5043 #define _S06C5 0x40 5044 #define _S07C5 0x80 5045 5046 //============================================================================== 5047 5048 5049 //============================================================================== 5050 // LCDDATA41 Bits 5051 5052 extern __at(0x0EB7) __sfr LCDDATA41; 5053 5054 typedef struct 5055 { 5056 unsigned S08C5 : 1; 5057 unsigned S09C5 : 1; 5058 unsigned S10C5 : 1; 5059 unsigned S11C5 : 1; 5060 unsigned S12C5 : 1; 5061 unsigned S13C5 : 1; 5062 unsigned S14C5 : 1; 5063 unsigned S15C5 : 1; 5064 } __LCDDATA41bits_t; 5065 5066 extern __at(0x0EB7) volatile __LCDDATA41bits_t LCDDATA41bits; 5067 5068 #define _S08C5 0x01 5069 #define _S09C5 0x02 5070 #define _S10C5 0x04 5071 #define _S11C5 0x08 5072 #define _S12C5 0x10 5073 #define _S13C5 0x20 5074 #define _S14C5 0x40 5075 #define _S15C5 0x80 5076 5077 //============================================================================== 5078 5079 5080 //============================================================================== 5081 // LCDDATA42 Bits 5082 5083 extern __at(0x0EB8) __sfr LCDDATA42; 5084 5085 typedef struct 5086 { 5087 unsigned S16C5 : 1; 5088 unsigned S17C5 : 1; 5089 unsigned S18C5 : 1; 5090 unsigned S19C5 : 1; 5091 unsigned S20C5 : 1; 5092 unsigned S21C5 : 1; 5093 unsigned S22C5 : 1; 5094 unsigned S23C5 : 1; 5095 } __LCDDATA42bits_t; 5096 5097 extern __at(0x0EB8) volatile __LCDDATA42bits_t LCDDATA42bits; 5098 5099 #define _S16C5 0x01 5100 #define _S17C5 0x02 5101 #define _S18C5 0x04 5102 #define _S19C5 0x08 5103 #define _S20C5 0x10 5104 #define _S21C5 0x20 5105 #define _S22C5 0x40 5106 #define _S23C5 0x80 5107 5108 //============================================================================== 5109 5110 5111 //============================================================================== 5112 // LCDDATA43 Bits 5113 5114 extern __at(0x0EB9) __sfr LCDDATA43; 5115 5116 typedef struct 5117 { 5118 unsigned S24C5 : 1; 5119 unsigned S25C5 : 1; 5120 unsigned S26C5 : 1; 5121 unsigned S27C5 : 1; 5122 unsigned S28C5 : 1; 5123 unsigned S29C5 : 1; 5124 unsigned S30C5 : 1; 5125 unsigned S31C5 : 1; 5126 } __LCDDATA43bits_t; 5127 5128 extern __at(0x0EB9) volatile __LCDDATA43bits_t LCDDATA43bits; 5129 5130 #define _S24C5 0x01 5131 #define _S25C5 0x02 5132 #define _S26C5 0x04 5133 #define _S27C5 0x08 5134 #define _S28C5 0x10 5135 #define _S29C5 0x20 5136 #define _S30C5 0x40 5137 #define _S31C5 0x80 5138 5139 //============================================================================== 5140 5141 5142 //============================================================================== 5143 // LCDDATA44 Bits 5144 5145 extern __at(0x0EBA) __sfr LCDDATA44; 5146 5147 typedef struct 5148 { 5149 unsigned S32C5 : 1; 5150 unsigned S33C5 : 1; 5151 unsigned S34C5 : 1; 5152 unsigned S35C5 : 1; 5153 unsigned S36C5 : 1; 5154 unsigned S37C5 : 1; 5155 unsigned S38C5 : 1; 5156 unsigned S39C5 : 1; 5157 } __LCDDATA44bits_t; 5158 5159 extern __at(0x0EBA) volatile __LCDDATA44bits_t LCDDATA44bits; 5160 5161 #define _S32C5 0x01 5162 #define _S33C5 0x02 5163 #define _S34C5 0x04 5164 #define _S35C5 0x08 5165 #define _S36C5 0x10 5166 #define _S37C5 0x20 5167 #define _S38C5 0x40 5168 #define _S39C5 0x80 5169 5170 //============================================================================== 5171 5172 5173 //============================================================================== 5174 // LCDDATA45 Bits 5175 5176 extern __at(0x0EBB) __sfr LCDDATA45; 5177 5178 typedef struct 5179 { 5180 unsigned S40C5 : 1; 5181 unsigned S41C5 : 1; 5182 unsigned S42C5 : 1; 5183 unsigned S43C5 : 1; 5184 unsigned S44C5 : 1; 5185 unsigned S45C5 : 1; 5186 unsigned S46C5 : 1; 5187 unsigned S47C5 : 1; 5188 } __LCDDATA45bits_t; 5189 5190 extern __at(0x0EBB) volatile __LCDDATA45bits_t LCDDATA45bits; 5191 5192 #define _S40C5 0x01 5193 #define _S41C5 0x02 5194 #define _S42C5 0x04 5195 #define _S43C5 0x08 5196 #define _S44C5 0x10 5197 #define _S45C5 0x20 5198 #define _S46C5 0x40 5199 #define _S47C5 0x80 5200 5201 //============================================================================== 5202 5203 5204 //============================================================================== 5205 // LCDDATA46 Bits 5206 5207 extern __at(0x0EBC) __sfr LCDDATA46; 5208 5209 typedef struct 5210 { 5211 unsigned S48C5 : 1; 5212 unsigned S49C5 : 1; 5213 unsigned S50C5 : 1; 5214 unsigned S51C5 : 1; 5215 unsigned S52C5 : 1; 5216 unsigned S53C5 : 1; 5217 unsigned S54C5 : 1; 5218 unsigned S55C5 : 1; 5219 } __LCDDATA46bits_t; 5220 5221 extern __at(0x0EBC) volatile __LCDDATA46bits_t LCDDATA46bits; 5222 5223 #define _S48C5 0x01 5224 #define _S49C5 0x02 5225 #define _S50C5 0x04 5226 #define _S51C5 0x08 5227 #define _S52C5 0x10 5228 #define _S53C5 0x20 5229 #define _S54C5 0x40 5230 #define _S55C5 0x80 5231 5232 //============================================================================== 5233 5234 5235 //============================================================================== 5236 // LCDDATA47 Bits 5237 5238 extern __at(0x0EBD) __sfr LCDDATA47; 5239 5240 typedef struct 5241 { 5242 unsigned S56C5 : 1; 5243 unsigned S57C5 : 1; 5244 unsigned S58C5 : 1; 5245 unsigned S59C5 : 1; 5246 unsigned S60C5 : 1; 5247 unsigned S61C5 : 1; 5248 unsigned S62C5 : 1; 5249 unsigned S63C5 : 1; 5250 } __LCDDATA47bits_t; 5251 5252 extern __at(0x0EBD) volatile __LCDDATA47bits_t LCDDATA47bits; 5253 5254 #define _S56C5 0x01 5255 #define _S57C5 0x02 5256 #define _S58C5 0x04 5257 #define _S59C5 0x08 5258 #define _S60C5 0x10 5259 #define _S61C5 0x20 5260 #define _S62C5 0x40 5261 #define _S63C5 0x80 5262 5263 //============================================================================== 5264 5265 5266 //============================================================================== 5267 // LCDDATA48 Bits 5268 5269 extern __at(0x0EBE) __sfr LCDDATA48; 5270 5271 typedef struct 5272 { 5273 unsigned S00C6 : 1; 5274 unsigned S01C6 : 1; 5275 unsigned S02C6 : 1; 5276 unsigned S03C6 : 1; 5277 unsigned S04C6 : 1; 5278 unsigned S05C6 : 1; 5279 unsigned S06C6 : 1; 5280 unsigned S07C6 : 1; 5281 } __LCDDATA48bits_t; 5282 5283 extern __at(0x0EBE) volatile __LCDDATA48bits_t LCDDATA48bits; 5284 5285 #define _S00C6 0x01 5286 #define _S01C6 0x02 5287 #define _S02C6 0x04 5288 #define _S03C6 0x08 5289 #define _S04C6 0x10 5290 #define _S05C6 0x20 5291 #define _S06C6 0x40 5292 #define _S07C6 0x80 5293 5294 //============================================================================== 5295 5296 5297 //============================================================================== 5298 // LCDDATA49 Bits 5299 5300 extern __at(0x0EBF) __sfr LCDDATA49; 5301 5302 typedef struct 5303 { 5304 unsigned S08C6 : 1; 5305 unsigned S09C6 : 1; 5306 unsigned S10C6 : 1; 5307 unsigned S11C6 : 1; 5308 unsigned S12C6 : 1; 5309 unsigned S13C6 : 1; 5310 unsigned S14C6 : 1; 5311 unsigned S15C6 : 1; 5312 } __LCDDATA49bits_t; 5313 5314 extern __at(0x0EBF) volatile __LCDDATA49bits_t LCDDATA49bits; 5315 5316 #define _S08C6 0x01 5317 #define _S09C6 0x02 5318 #define _S10C6 0x04 5319 #define _S11C6 0x08 5320 #define _S12C6 0x10 5321 #define _S13C6 0x20 5322 #define _S14C6 0x40 5323 #define _S15C6 0x80 5324 5325 //============================================================================== 5326 5327 5328 //============================================================================== 5329 // LCDDATA50 Bits 5330 5331 extern __at(0x0EC0) __sfr LCDDATA50; 5332 5333 typedef struct 5334 { 5335 unsigned S16C6 : 1; 5336 unsigned S17C6 : 1; 5337 unsigned S18C6 : 1; 5338 unsigned S19C6 : 1; 5339 unsigned S20C6 : 1; 5340 unsigned S21C6 : 1; 5341 unsigned S22C6 : 1; 5342 unsigned S23C6 : 1; 5343 } __LCDDATA50bits_t; 5344 5345 extern __at(0x0EC0) volatile __LCDDATA50bits_t LCDDATA50bits; 5346 5347 #define _S16C6 0x01 5348 #define _S17C6 0x02 5349 #define _S18C6 0x04 5350 #define _S19C6 0x08 5351 #define _S20C6 0x10 5352 #define _S21C6 0x20 5353 #define _S22C6 0x40 5354 #define _S23C6 0x80 5355 5356 //============================================================================== 5357 5358 5359 //============================================================================== 5360 // LCDDATA51 Bits 5361 5362 extern __at(0x0EC1) __sfr LCDDATA51; 5363 5364 typedef struct 5365 { 5366 unsigned S24C6 : 1; 5367 unsigned S25C6 : 1; 5368 unsigned S26C6 : 1; 5369 unsigned S27C6 : 1; 5370 unsigned S28C6 : 1; 5371 unsigned S29C6 : 1; 5372 unsigned S30C6 : 1; 5373 unsigned S31C6 : 1; 5374 } __LCDDATA51bits_t; 5375 5376 extern __at(0x0EC1) volatile __LCDDATA51bits_t LCDDATA51bits; 5377 5378 #define _S24C6 0x01 5379 #define _S25C6 0x02 5380 #define _S26C6 0x04 5381 #define _S27C6 0x08 5382 #define _S28C6 0x10 5383 #define _S29C6 0x20 5384 #define _S30C6 0x40 5385 #define _S31C6 0x80 5386 5387 //============================================================================== 5388 5389 5390 //============================================================================== 5391 // LCDDATA52 Bits 5392 5393 extern __at(0x0EC2) __sfr LCDDATA52; 5394 5395 typedef struct 5396 { 5397 unsigned S32C6 : 1; 5398 unsigned S33C6 : 1; 5399 unsigned S34C6 : 1; 5400 unsigned S35C6 : 1; 5401 unsigned S36C6 : 1; 5402 unsigned S37C6 : 1; 5403 unsigned S38C6 : 1; 5404 unsigned S39C6 : 1; 5405 } __LCDDATA52bits_t; 5406 5407 extern __at(0x0EC2) volatile __LCDDATA52bits_t LCDDATA52bits; 5408 5409 #define _S32C6 0x01 5410 #define _S33C6 0x02 5411 #define _S34C6 0x04 5412 #define _S35C6 0x08 5413 #define _S36C6 0x10 5414 #define _S37C6 0x20 5415 #define _S38C6 0x40 5416 #define _S39C6 0x80 5417 5418 //============================================================================== 5419 5420 5421 //============================================================================== 5422 // LCDDATA53 Bits 5423 5424 extern __at(0x0EC3) __sfr LCDDATA53; 5425 5426 typedef struct 5427 { 5428 unsigned S40C6 : 1; 5429 unsigned S41C6 : 1; 5430 unsigned S42C6 : 1; 5431 unsigned S43C6 : 1; 5432 unsigned S44C6 : 1; 5433 unsigned S45C6 : 1; 5434 unsigned S46C6 : 1; 5435 unsigned S47C6 : 1; 5436 } __LCDDATA53bits_t; 5437 5438 extern __at(0x0EC3) volatile __LCDDATA53bits_t LCDDATA53bits; 5439 5440 #define _S40C6 0x01 5441 #define _S41C6 0x02 5442 #define _S42C6 0x04 5443 #define _S43C6 0x08 5444 #define _S44C6 0x10 5445 #define _S45C6 0x20 5446 #define _S46C6 0x40 5447 #define _S47C6 0x80 5448 5449 //============================================================================== 5450 5451 5452 //============================================================================== 5453 // LCDDATA54 Bits 5454 5455 extern __at(0x0EC4) __sfr LCDDATA54; 5456 5457 typedef struct 5458 { 5459 unsigned S48C6 : 1; 5460 unsigned S49C6 : 1; 5461 unsigned S50C6 : 1; 5462 unsigned S51C6 : 1; 5463 unsigned S52C6 : 1; 5464 unsigned S53C6 : 1; 5465 unsigned S54C6 : 1; 5466 unsigned S55C6 : 1; 5467 } __LCDDATA54bits_t; 5468 5469 extern __at(0x0EC4) volatile __LCDDATA54bits_t LCDDATA54bits; 5470 5471 #define _S48C6 0x01 5472 #define _S49C6 0x02 5473 #define _S50C6 0x04 5474 #define _S51C6 0x08 5475 #define _S52C6 0x10 5476 #define _S53C6 0x20 5477 #define _S54C6 0x40 5478 #define _S55C6 0x80 5479 5480 //============================================================================== 5481 5482 5483 //============================================================================== 5484 // LCDDATA55 Bits 5485 5486 extern __at(0x0EC5) __sfr LCDDATA55; 5487 5488 typedef struct 5489 { 5490 unsigned S56C6 : 1; 5491 unsigned S57C6 : 1; 5492 unsigned S58C6 : 1; 5493 unsigned S59C6 : 1; 5494 unsigned S60C6 : 1; 5495 unsigned S61C6 : 1; 5496 unsigned S62C6 : 1; 5497 unsigned S63C6 : 1; 5498 } __LCDDATA55bits_t; 5499 5500 extern __at(0x0EC5) volatile __LCDDATA55bits_t LCDDATA55bits; 5501 5502 #define _S56C6 0x01 5503 #define _S57C6 0x02 5504 #define _S58C6 0x04 5505 #define _S59C6 0x08 5506 #define _S60C6 0x10 5507 #define _S61C6 0x20 5508 #define _S62C6 0x40 5509 #define _S63C6 0x80 5510 5511 //============================================================================== 5512 5513 5514 //============================================================================== 5515 // LCDDATA56 Bits 5516 5517 extern __at(0x0EC6) __sfr LCDDATA56; 5518 5519 typedef struct 5520 { 5521 unsigned S00C7 : 1; 5522 unsigned S01C7 : 1; 5523 unsigned S02C7 : 1; 5524 unsigned S03C7 : 1; 5525 unsigned S04C7 : 1; 5526 unsigned S05C7 : 1; 5527 unsigned S06C7 : 1; 5528 unsigned S07C7 : 1; 5529 } __LCDDATA56bits_t; 5530 5531 extern __at(0x0EC6) volatile __LCDDATA56bits_t LCDDATA56bits; 5532 5533 #define _S00C7 0x01 5534 #define _S01C7 0x02 5535 #define _S02C7 0x04 5536 #define _S03C7 0x08 5537 #define _S04C7 0x10 5538 #define _S05C7 0x20 5539 #define _S06C7 0x40 5540 #define _S07C7 0x80 5541 5542 //============================================================================== 5543 5544 5545 //============================================================================== 5546 // LCDDATA57 Bits 5547 5548 extern __at(0x0EC7) __sfr LCDDATA57; 5549 5550 typedef struct 5551 { 5552 unsigned S08C7 : 1; 5553 unsigned S09C7 : 1; 5554 unsigned S10C7 : 1; 5555 unsigned S11C7 : 1; 5556 unsigned S12C7 : 1; 5557 unsigned S13C7 : 1; 5558 unsigned S14C7 : 1; 5559 unsigned S15C7 : 1; 5560 } __LCDDATA57bits_t; 5561 5562 extern __at(0x0EC7) volatile __LCDDATA57bits_t LCDDATA57bits; 5563 5564 #define _S08C7 0x01 5565 #define _S09C7 0x02 5566 #define _S10C7 0x04 5567 #define _S11C7 0x08 5568 #define _S12C7 0x10 5569 #define _S13C7 0x20 5570 #define _S14C7 0x40 5571 #define _S15C7 0x80 5572 5573 //============================================================================== 5574 5575 5576 //============================================================================== 5577 // LCDDATA58 Bits 5578 5579 extern __at(0x0EC8) __sfr LCDDATA58; 5580 5581 typedef struct 5582 { 5583 unsigned S16C7 : 1; 5584 unsigned S17C7 : 1; 5585 unsigned S18C7 : 1; 5586 unsigned S19C7 : 1; 5587 unsigned S20C7 : 1; 5588 unsigned S21C7 : 1; 5589 unsigned S22C7 : 1; 5590 unsigned S23C7 : 1; 5591 } __LCDDATA58bits_t; 5592 5593 extern __at(0x0EC8) volatile __LCDDATA58bits_t LCDDATA58bits; 5594 5595 #define _S16C7 0x01 5596 #define _S17C7 0x02 5597 #define _S18C7 0x04 5598 #define _S19C7 0x08 5599 #define _S20C7 0x10 5600 #define _S21C7 0x20 5601 #define _S22C7 0x40 5602 #define _S23C7 0x80 5603 5604 //============================================================================== 5605 5606 5607 //============================================================================== 5608 // LCDDATA59 Bits 5609 5610 extern __at(0x0EC9) __sfr LCDDATA59; 5611 5612 typedef struct 5613 { 5614 unsigned S24C7 : 1; 5615 unsigned S25C7 : 1; 5616 unsigned S26C7 : 1; 5617 unsigned S27C7 : 1; 5618 unsigned S28C7 : 1; 5619 unsigned S29C7 : 1; 5620 unsigned S30C7 : 1; 5621 unsigned S31C7 : 1; 5622 } __LCDDATA59bits_t; 5623 5624 extern __at(0x0EC9) volatile __LCDDATA59bits_t LCDDATA59bits; 5625 5626 #define _S24C7 0x01 5627 #define _S25C7 0x02 5628 #define _S26C7 0x04 5629 #define _S27C7 0x08 5630 #define _S28C7 0x10 5631 #define _S29C7 0x20 5632 #define _S30C7 0x40 5633 #define _S31C7 0x80 5634 5635 //============================================================================== 5636 5637 5638 //============================================================================== 5639 // LCDDATA60 Bits 5640 5641 extern __at(0x0ECA) __sfr LCDDATA60; 5642 5643 typedef struct 5644 { 5645 unsigned S32C7 : 1; 5646 unsigned S33C7 : 1; 5647 unsigned S34C7 : 1; 5648 unsigned S35C7 : 1; 5649 unsigned S36C7 : 1; 5650 unsigned S37C7 : 1; 5651 unsigned S38C7 : 1; 5652 unsigned S39C7 : 1; 5653 } __LCDDATA60bits_t; 5654 5655 extern __at(0x0ECA) volatile __LCDDATA60bits_t LCDDATA60bits; 5656 5657 #define _S32C7 0x01 5658 #define _S33C7 0x02 5659 #define _S34C7 0x04 5660 #define _S35C7 0x08 5661 #define _S36C7 0x10 5662 #define _S37C7 0x20 5663 #define _S38C7 0x40 5664 #define _S39C7 0x80 5665 5666 //============================================================================== 5667 5668 5669 //============================================================================== 5670 // LCDDATA61 Bits 5671 5672 extern __at(0x0ECB) __sfr LCDDATA61; 5673 5674 typedef struct 5675 { 5676 unsigned S40C7 : 1; 5677 unsigned S41C7 : 1; 5678 unsigned S42C7 : 1; 5679 unsigned S43C7 : 1; 5680 unsigned S44C7 : 1; 5681 unsigned S45C7 : 1; 5682 unsigned S46C7 : 1; 5683 unsigned S47C7 : 1; 5684 } __LCDDATA61bits_t; 5685 5686 extern __at(0x0ECB) volatile __LCDDATA61bits_t LCDDATA61bits; 5687 5688 #define _S40C7 0x01 5689 #define _S41C7 0x02 5690 #define _S42C7 0x04 5691 #define _S43C7 0x08 5692 #define _S44C7 0x10 5693 #define _S45C7 0x20 5694 #define _S46C7 0x40 5695 #define _S47C7 0x80 5696 5697 //============================================================================== 5698 5699 5700 //============================================================================== 5701 // LCDDATA62 Bits 5702 5703 extern __at(0x0ECC) __sfr LCDDATA62; 5704 5705 typedef struct 5706 { 5707 unsigned S48C7 : 1; 5708 unsigned S49C7 : 1; 5709 unsigned S50C7 : 1; 5710 unsigned S51C7 : 1; 5711 unsigned S52C7 : 1; 5712 unsigned S53C7 : 1; 5713 unsigned S54C7 : 1; 5714 unsigned S55C7 : 1; 5715 } __LCDDATA62bits_t; 5716 5717 extern __at(0x0ECC) volatile __LCDDATA62bits_t LCDDATA62bits; 5718 5719 #define _S48C7 0x01 5720 #define _S49C7 0x02 5721 #define _S50C7 0x04 5722 #define _S51C7 0x08 5723 #define _S52C7 0x10 5724 #define _S53C7 0x20 5725 #define _S54C7 0x40 5726 #define _S55C7 0x80 5727 5728 //============================================================================== 5729 5730 5731 //============================================================================== 5732 // LCDDATA63 Bits 5733 5734 extern __at(0x0ECD) __sfr LCDDATA63; 5735 5736 typedef struct 5737 { 5738 unsigned S56C7 : 1; 5739 unsigned S57C7 : 1; 5740 unsigned S58C7 : 1; 5741 unsigned S59C7 : 1; 5742 unsigned S60C7 : 1; 5743 unsigned S61C7 : 1; 5744 unsigned S62C7 : 1; 5745 unsigned S63C7 : 1; 5746 } __LCDDATA63bits_t; 5747 5748 extern __at(0x0ECD) volatile __LCDDATA63bits_t LCDDATA63bits; 5749 5750 #define _S56C7 0x01 5751 #define _S57C7 0x02 5752 #define _S58C7 0x04 5753 #define _S59C7 0x08 5754 #define _S60C7 0x10 5755 #define _S61C7 0x20 5756 #define _S62C7 0x40 5757 #define _S63C7 0x80 5758 5759 //============================================================================== 5760 5761 5762 //============================================================================== 5763 // LCDSE0 Bits 5764 5765 extern __at(0x0ECE) __sfr LCDSE0; 5766 5767 typedef struct 5768 { 5769 unsigned SE00 : 1; 5770 unsigned SE01 : 1; 5771 unsigned SE02 : 1; 5772 unsigned SE03 : 1; 5773 unsigned SE04 : 1; 5774 unsigned SE05 : 1; 5775 unsigned SE06 : 1; 5776 unsigned SE07 : 1; 5777 } __LCDSE0bits_t; 5778 5779 extern __at(0x0ECE) volatile __LCDSE0bits_t LCDSE0bits; 5780 5781 #define _SE00 0x01 5782 #define _SE01 0x02 5783 #define _SE02 0x04 5784 #define _SE03 0x08 5785 #define _SE04 0x10 5786 #define _SE05 0x20 5787 #define _SE06 0x40 5788 #define _SE07 0x80 5789 5790 //============================================================================== 5791 5792 5793 //============================================================================== 5794 // LCDSE1 Bits 5795 5796 extern __at(0x0ECF) __sfr LCDSE1; 5797 5798 typedef struct 5799 { 5800 unsigned SE08 : 1; 5801 unsigned SE09 : 1; 5802 unsigned SE10 : 1; 5803 unsigned SE11 : 1; 5804 unsigned SE12 : 1; 5805 unsigned SE13 : 1; 5806 unsigned SE14 : 1; 5807 unsigned SE15 : 1; 5808 } __LCDSE1bits_t; 5809 5810 extern __at(0x0ECF) volatile __LCDSE1bits_t LCDSE1bits; 5811 5812 #define _SE08 0x01 5813 #define _SE09 0x02 5814 #define _SE10 0x04 5815 #define _SE11 0x08 5816 #define _SE12 0x10 5817 #define _SE13 0x20 5818 #define _SE14 0x40 5819 #define _SE15 0x80 5820 5821 //============================================================================== 5822 5823 5824 //============================================================================== 5825 // LCDSE2 Bits 5826 5827 extern __at(0x0ED0) __sfr LCDSE2; 5828 5829 typedef struct 5830 { 5831 unsigned SE16 : 1; 5832 unsigned SE17 : 1; 5833 unsigned SE18 : 1; 5834 unsigned SE19 : 1; 5835 unsigned SE20 : 1; 5836 unsigned SE21 : 1; 5837 unsigned SE22 : 1; 5838 unsigned SE23 : 1; 5839 } __LCDSE2bits_t; 5840 5841 extern __at(0x0ED0) volatile __LCDSE2bits_t LCDSE2bits; 5842 5843 #define _SE16 0x01 5844 #define _SE17 0x02 5845 #define _SE18 0x04 5846 #define _SE19 0x08 5847 #define _SE20 0x10 5848 #define _SE21 0x20 5849 #define _SE22 0x40 5850 #define _SE23 0x80 5851 5852 //============================================================================== 5853 5854 5855 //============================================================================== 5856 // LCDSE3 Bits 5857 5858 extern __at(0x0ED1) __sfr LCDSE3; 5859 5860 typedef struct 5861 { 5862 unsigned SE24 : 1; 5863 unsigned SE25 : 1; 5864 unsigned SE26 : 1; 5865 unsigned SE27 : 1; 5866 unsigned SE28 : 1; 5867 unsigned SE29 : 1; 5868 unsigned SE30 : 1; 5869 unsigned SE31 : 1; 5870 } __LCDSE3bits_t; 5871 5872 extern __at(0x0ED1) volatile __LCDSE3bits_t LCDSE3bits; 5873 5874 #define _SE24 0x01 5875 #define _SE25 0x02 5876 #define _SE26 0x04 5877 #define _SE27 0x08 5878 #define _SE28 0x10 5879 #define _SE29 0x20 5880 #define _SE30 0x40 5881 #define _SE31 0x80 5882 5883 //============================================================================== 5884 5885 5886 //============================================================================== 5887 // LCDSE4 Bits 5888 5889 extern __at(0x0ED2) __sfr LCDSE4; 5890 5891 typedef struct 5892 { 5893 unsigned SE32 : 1; 5894 unsigned SE33 : 1; 5895 unsigned SE34 : 1; 5896 unsigned SE35 : 1; 5897 unsigned SE36 : 1; 5898 unsigned SE37 : 1; 5899 unsigned SE38 : 1; 5900 unsigned SE39 : 1; 5901 } __LCDSE4bits_t; 5902 5903 extern __at(0x0ED2) volatile __LCDSE4bits_t LCDSE4bits; 5904 5905 #define _SE32 0x01 5906 #define _SE33 0x02 5907 #define _SE34 0x04 5908 #define _SE35 0x08 5909 #define _SE36 0x10 5910 #define _SE37 0x20 5911 #define _SE38 0x40 5912 #define _SE39 0x80 5913 5914 //============================================================================== 5915 5916 5917 //============================================================================== 5918 // LCDSE5 Bits 5919 5920 extern __at(0x0ED3) __sfr LCDSE5; 5921 5922 typedef struct 5923 { 5924 unsigned SE40 : 1; 5925 unsigned SE41 : 1; 5926 unsigned SE42 : 1; 5927 unsigned SE43 : 1; 5928 unsigned SE44 : 1; 5929 unsigned SE45 : 1; 5930 unsigned SE46 : 1; 5931 unsigned SE47 : 1; 5932 } __LCDSE5bits_t; 5933 5934 extern __at(0x0ED3) volatile __LCDSE5bits_t LCDSE5bits; 5935 5936 #define _SE40 0x01 5937 #define _SE41 0x02 5938 #define _SE42 0x04 5939 #define _SE43 0x08 5940 #define _SE44 0x10 5941 #define _SE45 0x20 5942 #define _SE46 0x40 5943 #define _SE47 0x80 5944 5945 //============================================================================== 5946 5947 5948 //============================================================================== 5949 // LCDSE6 Bits 5950 5951 extern __at(0x0ED4) __sfr LCDSE6; 5952 5953 typedef struct 5954 { 5955 unsigned SE48 : 1; 5956 unsigned SE49 : 1; 5957 unsigned SE50 : 1; 5958 unsigned SE51 : 1; 5959 unsigned SE52 : 1; 5960 unsigned SE53 : 1; 5961 unsigned SE54 : 1; 5962 unsigned SE55 : 1; 5963 } __LCDSE6bits_t; 5964 5965 extern __at(0x0ED4) volatile __LCDSE6bits_t LCDSE6bits; 5966 5967 #define _SE48 0x01 5968 #define _SE49 0x02 5969 #define _SE50 0x04 5970 #define _SE51 0x08 5971 #define _SE52 0x10 5972 #define _SE53 0x20 5973 #define _SE54 0x40 5974 #define _SE55 0x80 5975 5976 //============================================================================== 5977 5978 5979 //============================================================================== 5980 // LCDSE7 Bits 5981 5982 extern __at(0x0ED5) __sfr LCDSE7; 5983 5984 typedef struct 5985 { 5986 unsigned SE56 : 1; 5987 unsigned SE57 : 1; 5988 unsigned SE58 : 1; 5989 unsigned SE59 : 1; 5990 unsigned SE60 : 1; 5991 unsigned SE61 : 1; 5992 unsigned SE62 : 1; 5993 unsigned SE63 : 1; 5994 } __LCDSE7bits_t; 5995 5996 extern __at(0x0ED5) volatile __LCDSE7bits_t LCDSE7bits; 5997 5998 #define _SE56 0x01 5999 #define _SE57 0x02 6000 #define _SE58 0x04 6001 #define _SE59 0x08 6002 #define _SE60 0x10 6003 #define _SE61 0x20 6004 #define _SE62 0x40 6005 #define _SE63 0x80 6006 6007 //============================================================================== 6008 6009 6010 //============================================================================== 6011 // LCDRL Bits 6012 6013 extern __at(0x0ED6) __sfr LCDRL; 6014 6015 typedef union 6016 { 6017 struct 6018 { 6019 unsigned LRLAT0 : 1; 6020 unsigned LRLAT1 : 1; 6021 unsigned LRLAT2 : 1; 6022 unsigned : 1; 6023 unsigned LRLBP0 : 1; 6024 unsigned LRLBP1 : 1; 6025 unsigned LRLAP0 : 1; 6026 unsigned LRLAP1 : 1; 6027 }; 6028 6029 struct 6030 { 6031 unsigned LRLAT : 3; 6032 unsigned : 5; 6033 }; 6034 6035 struct 6036 { 6037 unsigned : 4; 6038 unsigned LRLBP : 2; 6039 unsigned : 2; 6040 }; 6041 6042 struct 6043 { 6044 unsigned : 6; 6045 unsigned LRLAP : 2; 6046 }; 6047 } __LCDRLbits_t; 6048 6049 extern __at(0x0ED6) volatile __LCDRLbits_t LCDRLbits; 6050 6051 #define _LRLAT0 0x01 6052 #define _LRLAT1 0x02 6053 #define _LRLAT2 0x04 6054 #define _LRLBP0 0x10 6055 #define _LRLBP1 0x20 6056 #define _LRLAP0 0x40 6057 #define _LRLAP1 0x80 6058 6059 //============================================================================== 6060 6061 6062 //============================================================================== 6063 // LCDREF Bits 6064 6065 extern __at(0x0ED7) __sfr LCDREF; 6066 6067 typedef union 6068 { 6069 struct 6070 { 6071 unsigned VLCD1PE : 1; 6072 unsigned VLCD2PE : 1; 6073 unsigned VLCD3PE : 1; 6074 unsigned LCDCST0 : 1; 6075 unsigned LCDCST1 : 1; 6076 unsigned LCDCST2 : 1; 6077 unsigned : 1; 6078 unsigned LCDIRE : 1; 6079 }; 6080 6081 struct 6082 { 6083 unsigned : 3; 6084 unsigned LCDCST : 3; 6085 unsigned : 2; 6086 }; 6087 } __LCDREFbits_t; 6088 6089 extern __at(0x0ED7) volatile __LCDREFbits_t LCDREFbits; 6090 6091 #define _VLCD1PE 0x01 6092 #define _VLCD2PE 0x02 6093 #define _VLCD3PE 0x04 6094 #define _LCDCST0 0x08 6095 #define _LCDCST1 0x10 6096 #define _LCDCST2 0x20 6097 #define _LCDIRE 0x80 6098 6099 //============================================================================== 6100 6101 6102 //============================================================================== 6103 // LCDREG Bits 6104 6105 extern __at(0x0ED8) __sfr LCDREG; 6106 6107 typedef union 6108 { 6109 struct 6110 { 6111 unsigned CLKSEL0 : 1; 6112 unsigned CLKSEL1 : 1; 6113 unsigned MODE13 : 1; 6114 unsigned BIAS0 : 1; 6115 unsigned BIAS1 : 1; 6116 unsigned BIAS2 : 1; 6117 unsigned : 1; 6118 unsigned CPEN : 1; 6119 }; 6120 6121 struct 6122 { 6123 unsigned CLKSEL : 2; 6124 unsigned : 6; 6125 }; 6126 6127 struct 6128 { 6129 unsigned : 3; 6130 unsigned BIAS : 3; 6131 unsigned : 2; 6132 }; 6133 } __LCDREGbits_t; 6134 6135 extern __at(0x0ED8) volatile __LCDREGbits_t LCDREGbits; 6136 6137 #define _CLKSEL0 0x01 6138 #define _CLKSEL1 0x02 6139 #define _MODE13 0x04 6140 #define _BIAS0 0x08 6141 #define _BIAS1 0x10 6142 #define _BIAS2 0x20 6143 #define _CPEN 0x80 6144 6145 //============================================================================== 6146 6147 6148 //============================================================================== 6149 // LCDCON Bits 6150 6151 extern __at(0x0ED9) __sfr LCDCON; 6152 6153 typedef union 6154 { 6155 struct 6156 { 6157 unsigned LMUX0 : 1; 6158 unsigned LMUX1 : 1; 6159 unsigned LMUX2 : 1; 6160 unsigned CS0 : 1; 6161 unsigned CS1 : 1; 6162 unsigned WERR : 1; 6163 unsigned SLPEN : 1; 6164 unsigned LCDEN : 1; 6165 }; 6166 6167 struct 6168 { 6169 unsigned LMUX : 3; 6170 unsigned : 5; 6171 }; 6172 6173 struct 6174 { 6175 unsigned : 3; 6176 unsigned CS : 2; 6177 unsigned : 3; 6178 }; 6179 } __LCDCONbits_t; 6180 6181 extern __at(0x0ED9) volatile __LCDCONbits_t LCDCONbits; 6182 6183 #define _LMUX0 0x01 6184 #define _LMUX1 0x02 6185 #define _LMUX2 0x04 6186 #define _CS0 0x08 6187 #define _CS1 0x10 6188 #define _WERR 0x20 6189 #define _SLPEN 0x40 6190 #define _LCDEN 0x80 6191 6192 //============================================================================== 6193 6194 6195 //============================================================================== 6196 // LCDPS Bits 6197 6198 extern __at(0x0EDA) __sfr LCDPS; 6199 6200 typedef union 6201 { 6202 struct 6203 { 6204 unsigned LP0 : 1; 6205 unsigned LP1 : 1; 6206 unsigned LP2 : 1; 6207 unsigned LP3 : 1; 6208 unsigned WA : 1; 6209 unsigned LCDA : 1; 6210 unsigned BIASMD : 1; 6211 unsigned WFT : 1; 6212 }; 6213 6214 struct 6215 { 6216 unsigned LP : 4; 6217 unsigned : 4; 6218 }; 6219 } __LCDPSbits_t; 6220 6221 extern __at(0x0EDA) volatile __LCDPSbits_t LCDPSbits; 6222 6223 #define _LP0 0x01 6224 #define _LP1 0x02 6225 #define _LP2 0x04 6226 #define _LP3 0x08 6227 #define _WA 0x10 6228 #define _LCDA 0x20 6229 #define _BIASMD 0x40 6230 #define _WFT 0x80 6231 6232 //============================================================================== 6233 6234 6235 //============================================================================== 6236 // REFO2CON3 Bits 6237 6238 extern __at(0x0EDB) __sfr REFO2CON3; 6239 6240 typedef struct 6241 { 6242 unsigned RODIV8 : 1; 6243 unsigned RODIV9 : 1; 6244 unsigned RODIV10 : 1; 6245 unsigned RODIV11 : 1; 6246 unsigned RODIV12 : 1; 6247 unsigned RODIV13 : 1; 6248 unsigned RODIV14 : 1; 6249 unsigned : 1; 6250 } __REFO2CON3bits_t; 6251 6252 extern __at(0x0EDB) volatile __REFO2CON3bits_t REFO2CON3bits; 6253 6254 #define _REFO2CON3_RODIV8 0x01 6255 #define _REFO2CON3_RODIV9 0x02 6256 #define _REFO2CON3_RODIV10 0x04 6257 #define _REFO2CON3_RODIV11 0x08 6258 #define _REFO2CON3_RODIV12 0x10 6259 #define _REFO2CON3_RODIV13 0x20 6260 #define _REFO2CON3_RODIV14 0x40 6261 6262 //============================================================================== 6263 6264 6265 //============================================================================== 6266 // REFO2CON2 Bits 6267 6268 extern __at(0x0EDC) __sfr REFO2CON2; 6269 6270 typedef struct 6271 { 6272 unsigned RODIV0 : 1; 6273 unsigned RODIV1 : 1; 6274 unsigned RODIV2 : 1; 6275 unsigned RODIV3 : 1; 6276 unsigned RODIV4 : 1; 6277 unsigned RODIV5 : 1; 6278 unsigned RODIV6 : 1; 6279 unsigned RODIV7 : 1; 6280 } __REFO2CON2bits_t; 6281 6282 extern __at(0x0EDC) volatile __REFO2CON2bits_t REFO2CON2bits; 6283 6284 #define _REFO2CON2_RODIV0 0x01 6285 #define _REFO2CON2_RODIV1 0x02 6286 #define _REFO2CON2_RODIV2 0x04 6287 #define _REFO2CON2_RODIV3 0x08 6288 #define _REFO2CON2_RODIV4 0x10 6289 #define _REFO2CON2_RODIV5 0x20 6290 #define _REFO2CON2_RODIV6 0x40 6291 #define _REFO2CON2_RODIV7 0x80 6292 6293 //============================================================================== 6294 6295 6296 //============================================================================== 6297 // REFO2CON1 Bits 6298 6299 extern __at(0x0EDD) __sfr REFO2CON1; 6300 6301 typedef union 6302 { 6303 struct 6304 { 6305 unsigned ROSEL0 : 1; 6306 unsigned ROSEL1 : 1; 6307 unsigned ROSEL2 : 1; 6308 unsigned ROSEL3 : 1; 6309 unsigned : 1; 6310 unsigned : 1; 6311 unsigned : 1; 6312 unsigned : 1; 6313 }; 6314 6315 struct 6316 { 6317 unsigned ROSEL : 4; 6318 unsigned : 4; 6319 }; 6320 } __REFO2CON1bits_t; 6321 6322 extern __at(0x0EDD) volatile __REFO2CON1bits_t REFO2CON1bits; 6323 6324 #define _REFO2CON1_ROSEL0 0x01 6325 #define _REFO2CON1_ROSEL1 0x02 6326 #define _REFO2CON1_ROSEL2 0x04 6327 #define _REFO2CON1_ROSEL3 0x08 6328 6329 //============================================================================== 6330 6331 6332 //============================================================================== 6333 // REFO2CON Bits 6334 6335 extern __at(0x0EDE) __sfr REFO2CON; 6336 6337 typedef struct 6338 { 6339 unsigned ACTIVE : 1; 6340 unsigned DIVSWEN : 1; 6341 unsigned : 1; 6342 unsigned ROSSLP : 1; 6343 unsigned ROOE : 1; 6344 unsigned ROSIDL : 1; 6345 unsigned : 1; 6346 unsigned ROON : 1; 6347 } __REFO2CONbits_t; 6348 6349 extern __at(0x0EDE) volatile __REFO2CONbits_t REFO2CONbits; 6350 6351 #define _REFO2CON_ACTIVE 0x01 6352 #define _REFO2CON_DIVSWEN 0x02 6353 #define _REFO2CON_ROSSLP 0x08 6354 #define _REFO2CON_ROOE 0x10 6355 #define _REFO2CON_ROSIDL 0x20 6356 #define _REFO2CON_ROON 0x80 6357 6358 //============================================================================== 6359 6360 6361 //============================================================================== 6362 // REFO1CON3 Bits 6363 6364 extern __at(0x0EDF) __sfr REFO1CON3; 6365 6366 typedef struct 6367 { 6368 unsigned RODIV8 : 1; 6369 unsigned RODIV9 : 1; 6370 unsigned RODIV10 : 1; 6371 unsigned RODIV11 : 1; 6372 unsigned RODIV12 : 1; 6373 unsigned RODIV13 : 1; 6374 unsigned RODIV14 : 1; 6375 unsigned : 1; 6376 } __REFO1CON3bits_t; 6377 6378 extern __at(0x0EDF) volatile __REFO1CON3bits_t REFO1CON3bits; 6379 6380 #define _RODIV8 0x01 6381 #define _RODIV9 0x02 6382 #define _RODIV10 0x04 6383 #define _RODIV11 0x08 6384 #define _RODIV12 0x10 6385 #define _RODIV13 0x20 6386 #define _RODIV14 0x40 6387 6388 //============================================================================== 6389 6390 6391 //============================================================================== 6392 // REFO1CON2 Bits 6393 6394 extern __at(0x0EE0) __sfr REFO1CON2; 6395 6396 typedef struct 6397 { 6398 unsigned RODIV0 : 1; 6399 unsigned RODIV1 : 1; 6400 unsigned RODIV2 : 1; 6401 unsigned RODIV3 : 1; 6402 unsigned RODIV4 : 1; 6403 unsigned RODIV5 : 1; 6404 unsigned RODIV6 : 1; 6405 unsigned RODIV7 : 1; 6406 } __REFO1CON2bits_t; 6407 6408 extern __at(0x0EE0) volatile __REFO1CON2bits_t REFO1CON2bits; 6409 6410 #define _RODIV0 0x01 6411 #define _RODIV1 0x02 6412 #define _RODIV2 0x04 6413 #define _RODIV3 0x08 6414 #define _RODIV4 0x10 6415 #define _RODIV5 0x20 6416 #define _RODIV6 0x40 6417 #define _RODIV7 0x80 6418 6419 //============================================================================== 6420 6421 6422 //============================================================================== 6423 // REFO1CON1 Bits 6424 6425 extern __at(0x0EE1) __sfr REFO1CON1; 6426 6427 typedef union 6428 { 6429 struct 6430 { 6431 unsigned ROSEL0 : 1; 6432 unsigned ROSEL1 : 1; 6433 unsigned ROSEL2 : 1; 6434 unsigned ROSEL3 : 1; 6435 unsigned : 1; 6436 unsigned : 1; 6437 unsigned : 1; 6438 unsigned : 1; 6439 }; 6440 6441 struct 6442 { 6443 unsigned ROSEL : 4; 6444 unsigned : 4; 6445 }; 6446 } __REFO1CON1bits_t; 6447 6448 extern __at(0x0EE1) volatile __REFO1CON1bits_t REFO1CON1bits; 6449 6450 #define _ROSEL0 0x01 6451 #define _ROSEL1 0x02 6452 #define _ROSEL2 0x04 6453 #define _ROSEL3 0x08 6454 6455 //============================================================================== 6456 6457 6458 //============================================================================== 6459 // REFO1CON Bits 6460 6461 extern __at(0x0EE2) __sfr REFO1CON; 6462 6463 typedef struct 6464 { 6465 unsigned ACTIVE : 1; 6466 unsigned DIVSWEN : 1; 6467 unsigned : 1; 6468 unsigned ROSSLP : 1; 6469 unsigned ROOE : 1; 6470 unsigned ROSIDL : 1; 6471 unsigned : 1; 6472 unsigned ROON : 1; 6473 } __REFO1CONbits_t; 6474 6475 extern __at(0x0EE2) volatile __REFO1CONbits_t REFO1CONbits; 6476 6477 #define _ACTIVE 0x01 6478 #define _DIVSWEN 0x02 6479 #define _ROSSLP 0x08 6480 #define _ROOE 0x10 6481 #define _ROSIDL 0x20 6482 #define _ROON 0x80 6483 6484 //============================================================================== 6485 6486 6487 //============================================================================== 6488 // MEMCON Bits 6489 6490 extern __at(0x0EE3) __sfr MEMCON; 6491 6492 typedef union 6493 { 6494 struct 6495 { 6496 unsigned WM0 : 1; 6497 unsigned WM1 : 1; 6498 unsigned : 1; 6499 unsigned : 1; 6500 unsigned WAIT0 : 1; 6501 unsigned WAIT1 : 1; 6502 unsigned : 1; 6503 unsigned EBDIS : 1; 6504 }; 6505 6506 struct 6507 { 6508 unsigned WM : 2; 6509 unsigned : 6; 6510 }; 6511 6512 struct 6513 { 6514 unsigned : 4; 6515 unsigned WAIT : 2; 6516 unsigned : 2; 6517 }; 6518 } __MEMCONbits_t; 6519 6520 extern __at(0x0EE3) volatile __MEMCONbits_t MEMCONbits; 6521 6522 #define _MEMCON_WM0 0x01 6523 #define _MEMCON_WM1 0x02 6524 #define _MEMCON_WAIT0 0x10 6525 #define _MEMCON_WAIT1 0x20 6526 #define _MEMCON_EBDIS 0x80 6527 6528 //============================================================================== 6529 6530 6531 //============================================================================== 6532 // PORTL Bits 6533 6534 extern __at(0x0EE4) __sfr PORTL; 6535 6536 typedef struct 6537 { 6538 unsigned RL0 : 1; 6539 unsigned RL1 : 1; 6540 unsigned RL2 : 1; 6541 unsigned RL3 : 1; 6542 unsigned RL4 : 1; 6543 unsigned RL5 : 1; 6544 unsigned RL6 : 1; 6545 unsigned RL7 : 1; 6546 } __PORTLbits_t; 6547 6548 extern __at(0x0EE4) volatile __PORTLbits_t PORTLbits; 6549 6550 #define _RL0 0x01 6551 #define _RL1 0x02 6552 #define _RL2 0x04 6553 #define _RL3 0x08 6554 #define _RL4 0x10 6555 #define _RL5 0x20 6556 #define _RL6 0x40 6557 #define _RL7 0x80 6558 6559 //============================================================================== 6560 6561 6562 //============================================================================== 6563 // LATL Bits 6564 6565 extern __at(0x0EE5) __sfr LATL; 6566 6567 typedef struct 6568 { 6569 unsigned LATL0 : 1; 6570 unsigned LATL1 : 1; 6571 unsigned LATL2 : 1; 6572 unsigned LATL3 : 1; 6573 unsigned LATL4 : 1; 6574 unsigned LATL5 : 1; 6575 unsigned LATL6 : 1; 6576 unsigned LATL7 : 1; 6577 } __LATLbits_t; 6578 6579 extern __at(0x0EE5) volatile __LATLbits_t LATLbits; 6580 6581 #define _LATL0 0x01 6582 #define _LATL1 0x02 6583 #define _LATL2 0x04 6584 #define _LATL3 0x08 6585 #define _LATL4 0x10 6586 #define _LATL5 0x20 6587 #define _LATL6 0x40 6588 #define _LATL7 0x80 6589 6590 //============================================================================== 6591 6592 6593 //============================================================================== 6594 // TRISL Bits 6595 6596 extern __at(0x0EE6) __sfr TRISL; 6597 6598 typedef struct 6599 { 6600 unsigned TRISL0 : 1; 6601 unsigned TRISL1 : 1; 6602 unsigned TRISL2 : 1; 6603 unsigned TRISL3 : 1; 6604 unsigned TRISL4 : 1; 6605 unsigned TRISL5 : 1; 6606 unsigned TRISL6 : 1; 6607 unsigned TRISL7 : 1; 6608 } __TRISLbits_t; 6609 6610 extern __at(0x0EE6) volatile __TRISLbits_t TRISLbits; 6611 6612 #define _TRISL0 0x01 6613 #define _TRISL1 0x02 6614 #define _TRISL2 0x04 6615 #define _TRISL3 0x08 6616 #define _TRISL4 0x10 6617 #define _TRISL5 0x20 6618 #define _TRISL6 0x40 6619 #define _TRISL7 0x80 6620 6621 //============================================================================== 6622 6623 6624 //============================================================================== 6625 // PORTK Bits 6626 6627 extern __at(0x0EE7) __sfr PORTK; 6628 6629 typedef struct 6630 { 6631 unsigned RK0 : 1; 6632 unsigned RK1 : 1; 6633 unsigned RK2 : 1; 6634 unsigned RK3 : 1; 6635 unsigned RK4 : 1; 6636 unsigned RK5 : 1; 6637 unsigned RK6 : 1; 6638 unsigned RK7 : 1; 6639 } __PORTKbits_t; 6640 6641 extern __at(0x0EE7) volatile __PORTKbits_t PORTKbits; 6642 6643 #define _RK0 0x01 6644 #define _RK1 0x02 6645 #define _RK2 0x04 6646 #define _RK3 0x08 6647 #define _RK4 0x10 6648 #define _RK5 0x20 6649 #define _RK6 0x40 6650 #define _RK7 0x80 6651 6652 //============================================================================== 6653 6654 6655 //============================================================================== 6656 // LATK Bits 6657 6658 extern __at(0x0EE8) __sfr LATK; 6659 6660 typedef struct 6661 { 6662 unsigned LATK0 : 1; 6663 unsigned LATK1 : 1; 6664 unsigned LATK2 : 1; 6665 unsigned LATK3 : 1; 6666 unsigned LATK4 : 1; 6667 unsigned LATK5 : 1; 6668 unsigned LATK6 : 1; 6669 unsigned LATK7 : 1; 6670 } __LATKbits_t; 6671 6672 extern __at(0x0EE8) volatile __LATKbits_t LATKbits; 6673 6674 #define _LATK0 0x01 6675 #define _LATK1 0x02 6676 #define _LATK2 0x04 6677 #define _LATK3 0x08 6678 #define _LATK4 0x10 6679 #define _LATK5 0x20 6680 #define _LATK6 0x40 6681 #define _LATK7 0x80 6682 6683 //============================================================================== 6684 6685 6686 //============================================================================== 6687 // TRISK Bits 6688 6689 extern __at(0x0EE9) __sfr TRISK; 6690 6691 typedef struct 6692 { 6693 unsigned TRISK0 : 1; 6694 unsigned TRISK1 : 1; 6695 unsigned TRISK2 : 1; 6696 unsigned TRISK3 : 1; 6697 unsigned TRISK4 : 1; 6698 unsigned TRISK5 : 1; 6699 unsigned TRISK6 : 1; 6700 unsigned TRISK7 : 1; 6701 } __TRISKbits_t; 6702 6703 extern __at(0x0EE9) volatile __TRISKbits_t TRISKbits; 6704 6705 #define _TRISK0 0x01 6706 #define _TRISK1 0x02 6707 #define _TRISK2 0x04 6708 #define _TRISK3 0x08 6709 #define _TRISK4 0x10 6710 #define _TRISK5 0x20 6711 #define _TRISK6 0x40 6712 #define _TRISK7 0x80 6713 6714 //============================================================================== 6715 6716 6717 //============================================================================== 6718 // ODCON2 Bits 6719 6720 extern __at(0x0EEA) __sfr ODCON2; 6721 6722 typedef struct 6723 { 6724 unsigned ECCP3OD : 1; 6725 unsigned CCP4OD : 1; 6726 unsigned CCP5OD : 1; 6727 unsigned CCP6OD : 1; 6728 unsigned CCP7OD : 1; 6729 unsigned CCP8OD : 1; 6730 unsigned CCP9OD : 1; 6731 unsigned CCP10OD : 1; 6732 } __ODCON2bits_t; 6733 6734 extern __at(0x0EEA) volatile __ODCON2bits_t ODCON2bits; 6735 6736 #define _ECCP3OD 0x01 6737 #define _CCP4OD 0x02 6738 #define _CCP5OD 0x04 6739 #define _CCP6OD 0x08 6740 #define _CCP7OD 0x10 6741 #define _CCP8OD 0x20 6742 #define _CCP9OD 0x40 6743 #define _CCP10OD 0x80 6744 6745 //============================================================================== 6746 6747 6748 //============================================================================== 6749 // ODCON1 Bits 6750 6751 extern __at(0x0EEB) __sfr ODCON1; 6752 6753 typedef struct 6754 { 6755 unsigned SSP1OD : 1; 6756 unsigned SSP2OD : 1; 6757 unsigned USART1OD : 1; 6758 unsigned USART2OD : 1; 6759 unsigned USART3OD : 1; 6760 unsigned USART4OD : 1; 6761 unsigned ECCP1OD : 1; 6762 unsigned ECCP2OD : 1; 6763 } __ODCON1bits_t; 6764 6765 extern __at(0x0EEB) volatile __ODCON1bits_t ODCON1bits; 6766 6767 #define _SSP1OD 0x01 6768 #define _SSP2OD 0x02 6769 #define _USART1OD 0x04 6770 #define _USART2OD 0x08 6771 #define _USART3OD 0x10 6772 #define _USART4OD 0x20 6773 #define _ECCP1OD 0x40 6774 #define _ECCP2OD 0x80 6775 6776 //============================================================================== 6777 6778 6779 //============================================================================== 6780 // MDCARL Bits 6781 6782 extern __at(0x0EEC) __sfr MDCARL; 6783 6784 typedef union 6785 { 6786 struct 6787 { 6788 unsigned MDCL0 : 1; 6789 unsigned MDCL1 : 1; 6790 unsigned MDCL2 : 1; 6791 unsigned MDCL3 : 1; 6792 unsigned : 1; 6793 unsigned MDCLSYNC : 1; 6794 unsigned MDCLPOL : 1; 6795 unsigned MDCLODIS : 1; 6796 }; 6797 6798 struct 6799 { 6800 unsigned MDCL : 4; 6801 unsigned : 4; 6802 }; 6803 } __MDCARLbits_t; 6804 6805 extern __at(0x0EEC) volatile __MDCARLbits_t MDCARLbits; 6806 6807 #define _MDCL0 0x01 6808 #define _MDCL1 0x02 6809 #define _MDCL2 0x04 6810 #define _MDCL3 0x08 6811 #define _MDCLSYNC 0x20 6812 #define _MDCLPOL 0x40 6813 #define _MDCLODIS 0x80 6814 6815 //============================================================================== 6816 6817 6818 //============================================================================== 6819 // MDCARH Bits 6820 6821 extern __at(0x0EED) __sfr MDCARH; 6822 6823 typedef union 6824 { 6825 struct 6826 { 6827 unsigned MDCH0 : 1; 6828 unsigned MDCH1 : 1; 6829 unsigned MDCH2 : 1; 6830 unsigned MDCH3 : 1; 6831 unsigned : 1; 6832 unsigned MDCHSYNC : 1; 6833 unsigned MDCHPOL : 1; 6834 unsigned MDCHODIS : 1; 6835 }; 6836 6837 struct 6838 { 6839 unsigned MDCH : 4; 6840 unsigned : 4; 6841 }; 6842 } __MDCARHbits_t; 6843 6844 extern __at(0x0EED) volatile __MDCARHbits_t MDCARHbits; 6845 6846 #define _MDCH0 0x01 6847 #define _MDCH1 0x02 6848 #define _MDCH2 0x04 6849 #define _MDCH3 0x08 6850 #define _MDCHSYNC 0x20 6851 #define _MDCHPOL 0x40 6852 #define _MDCHODIS 0x80 6853 6854 //============================================================================== 6855 6856 6857 //============================================================================== 6858 // MDSRC Bits 6859 6860 extern __at(0x0EEE) __sfr MDSRC; 6861 6862 typedef union 6863 { 6864 struct 6865 { 6866 unsigned MDSRC0 : 1; 6867 unsigned MDSRC1 : 1; 6868 unsigned MDSRC2 : 1; 6869 unsigned MDSRC3 : 1; 6870 unsigned : 1; 6871 unsigned : 1; 6872 unsigned : 1; 6873 unsigned MDSODIS : 1; 6874 }; 6875 6876 struct 6877 { 6878 unsigned MDSRC : 4; 6879 unsigned : 4; 6880 }; 6881 } __MDSRCbits_t; 6882 6883 extern __at(0x0EEE) volatile __MDSRCbits_t MDSRCbits; 6884 6885 #define _MDSRC0 0x01 6886 #define _MDSRC1 0x02 6887 #define _MDSRC2 0x04 6888 #define _MDSRC3 0x08 6889 #define _MDSODIS 0x80 6890 6891 //============================================================================== 6892 6893 6894 //============================================================================== 6895 // MDCON Bits 6896 6897 extern __at(0x0EEF) __sfr MDCON; 6898 6899 typedef struct 6900 { 6901 unsigned MDBIT : 1; 6902 unsigned : 1; 6903 unsigned : 1; 6904 unsigned MDO : 1; 6905 unsigned MDOPOL : 1; 6906 unsigned MDSLR : 1; 6907 unsigned MDOE : 1; 6908 unsigned MDEN : 1; 6909 } __MDCONbits_t; 6910 6911 extern __at(0x0EEF) volatile __MDCONbits_t MDCONbits; 6912 6913 #define _MDBIT 0x01 6914 #define _MDO 0x08 6915 #define _MDOPOL 0x10 6916 #define _MDSLR 0x20 6917 #define _MDOE 0x40 6918 #define _MDEN 0x80 6919 6920 //============================================================================== 6921 6922 6923 //============================================================================== 6924 // PMD4 Bits 6925 6926 extern __at(0x0EF0) __sfr PMD4; 6927 6928 typedef struct 6929 { 6930 unsigned EMBMD : 1; 6931 unsigned : 1; 6932 unsigned LVDMD : 1; 6933 unsigned IOCMD : 1; 6934 unsigned USBMD : 1; 6935 unsigned CMP3MD : 1; 6936 unsigned CMP2MD : 1; 6937 unsigned CMP1MD : 1; 6938 } __PMD4bits_t; 6939 6940 extern __at(0x0EF0) volatile __PMD4bits_t PMD4bits; 6941 6942 #define _EMBMD 0x01 6943 #define _LVDMD 0x04 6944 #define _IOCMD 0x08 6945 #define _USBMD 0x10 6946 #define _CMP3MD 0x20 6947 #define _CMP2MD 0x40 6948 #define _CMP1MD 0x80 6949 6950 //============================================================================== 6951 6952 6953 //============================================================================== 6954 // PMD3 Bits 6955 6956 extern __at(0x0EF1) __sfr PMD3; 6957 6958 typedef union 6959 { 6960 struct 6961 { 6962 unsigned REFO2MD : 1; 6963 unsigned REFO1MD : 1; 6964 unsigned PSPMD : 1; 6965 unsigned LCDMD : 1; 6966 unsigned RTCCMD : 1; 6967 unsigned ADCMD : 1; 6968 unsigned CTMUMD : 1; 6969 unsigned MODMD : 1; 6970 }; 6971 6972 struct 6973 { 6974 unsigned : 1; 6975 unsigned : 1; 6976 unsigned : 1; 6977 unsigned : 1; 6978 unsigned : 1; 6979 unsigned : 1; 6980 unsigned : 1; 6981 unsigned TXMMD : 1; 6982 }; 6983 } __PMD3bits_t; 6984 6985 extern __at(0x0EF1) volatile __PMD3bits_t PMD3bits; 6986 6987 #define _REFO2MD 0x01 6988 #define _REFO1MD 0x02 6989 #define _PSPMD 0x04 6990 #define _LCDMD 0x08 6991 #define _RTCCMD 0x10 6992 #define _ADCMD 0x20 6993 #define _CTMUMD 0x40 6994 #define _MODMD 0x80 6995 #define _TXMMD 0x80 6996 6997 //============================================================================== 6998 6999 7000 //============================================================================== 7001 // PMD2 Bits 7002 7003 extern __at(0x0EF2) __sfr PMD2; 7004 7005 typedef struct 7006 { 7007 unsigned TMR0MD : 1; 7008 unsigned TMR1MD : 1; 7009 unsigned TMR2MD : 1; 7010 unsigned TMR3MD : 1; 7011 unsigned TMR4MD : 1; 7012 unsigned TMR5MD : 1; 7013 unsigned TMR6MD : 1; 7014 unsigned TMR8MD : 1; 7015 } __PMD2bits_t; 7016 7017 extern __at(0x0EF2) volatile __PMD2bits_t PMD2bits; 7018 7019 #define _TMR0MD 0x01 7020 #define _TMR1MD 0x02 7021 #define _TMR2MD 0x04 7022 #define _TMR3MD 0x08 7023 #define _TMR4MD 0x10 7024 #define _TMR5MD 0x20 7025 #define _TMR6MD 0x40 7026 #define _TMR8MD 0x80 7027 7028 //============================================================================== 7029 7030 7031 //============================================================================== 7032 // PMD1 Bits 7033 7034 extern __at(0x0EF3) __sfr PMD1; 7035 7036 typedef struct 7037 { 7038 unsigned SSP1MD : 1; 7039 unsigned SSP2MD : 1; 7040 unsigned UART1MD : 1; 7041 unsigned UART2MD : 1; 7042 unsigned UART3MD : 1; 7043 unsigned UART4MD : 1; 7044 unsigned ECCP1MD : 1; 7045 unsigned ECCP2MD : 1; 7046 } __PMD1bits_t; 7047 7048 extern __at(0x0EF3) volatile __PMD1bits_t PMD1bits; 7049 7050 #define _SSP1MD 0x01 7051 #define _SSP2MD 0x02 7052 #define _UART1MD 0x04 7053 #define _UART2MD 0x08 7054 #define _UART3MD 0x10 7055 #define _UART4MD 0x20 7056 #define _ECCP1MD 0x40 7057 #define _ECCP2MD 0x80 7058 7059 //============================================================================== 7060 7061 7062 //============================================================================== 7063 // PMD0 Bits 7064 7065 extern __at(0x0EF4) __sfr PMD0; 7066 7067 typedef struct 7068 { 7069 unsigned ECCP3MD : 1; 7070 unsigned CCP4MD : 1; 7071 unsigned CCP5MD : 1; 7072 unsigned CCP6MD : 1; 7073 unsigned CCP7MD : 1; 7074 unsigned CCP8MD : 1; 7075 unsigned CCP9MD : 1; 7076 unsigned CCP10MD : 1; 7077 } __PMD0bits_t; 7078 7079 extern __at(0x0EF4) volatile __PMD0bits_t PMD0bits; 7080 7081 #define _ECCP3MD 0x01 7082 #define _CCP4MD 0x02 7083 #define _CCP5MD 0x04 7084 #define _CCP6MD 0x08 7085 #define _CCP7MD 0x10 7086 #define _CCP8MD 0x20 7087 #define _CCP9MD 0x40 7088 #define _CCP10MD 0x80 7089 7090 //============================================================================== 7091 7092 7093 //============================================================================== 7094 // CTMUCON4 Bits 7095 7096 extern __at(0x0EF5) __sfr CTMUCON4; 7097 7098 typedef union 7099 { 7100 struct 7101 { 7102 unsigned EDG1STAT : 1; 7103 unsigned EDG2STAT : 1; 7104 unsigned EDG1SEL0 : 1; 7105 unsigned EDG1SEL1 : 1; 7106 unsigned EDG1SEL2 : 1; 7107 unsigned EDG1SEL3 : 1; 7108 unsigned EDG1POL : 1; 7109 unsigned EDG1EN : 1; 7110 }; 7111 7112 struct 7113 { 7114 unsigned : 2; 7115 unsigned EDG1SEL : 4; 7116 unsigned : 2; 7117 }; 7118 } __CTMUCON4bits_t; 7119 7120 extern __at(0x0EF5) volatile __CTMUCON4bits_t CTMUCON4bits; 7121 7122 #define _EDG1STAT 0x01 7123 #define _EDG2STAT 0x02 7124 #define _EDG1SEL0 0x04 7125 #define _EDG1SEL1 0x08 7126 #define _EDG1SEL2 0x10 7127 #define _EDG1SEL3 0x20 7128 #define _EDG1POL 0x40 7129 #define _EDG1EN 0x80 7130 7131 //============================================================================== 7132 7133 7134 //============================================================================== 7135 // CTMUCON3 Bits 7136 7137 extern __at(0x0EF6) __sfr CTMUCON3; 7138 7139 typedef union 7140 { 7141 struct 7142 { 7143 unsigned : 1; 7144 unsigned : 1; 7145 unsigned EDG2SEL0 : 1; 7146 unsigned EDG2SEL1 : 1; 7147 unsigned EDG2SEL2 : 1; 7148 unsigned EDG2SEL3 : 1; 7149 unsigned EDG2POL : 1; 7150 unsigned EDG2EN : 1; 7151 }; 7152 7153 struct 7154 { 7155 unsigned : 2; 7156 unsigned EDG2SEL : 4; 7157 unsigned : 2; 7158 }; 7159 } __CTMUCON3bits_t; 7160 7161 extern __at(0x0EF6) volatile __CTMUCON3bits_t CTMUCON3bits; 7162 7163 #define _EDG2SEL0 0x04 7164 #define _EDG2SEL1 0x08 7165 #define _EDG2SEL2 0x10 7166 #define _EDG2SEL3 0x20 7167 #define _EDG2POL 0x40 7168 #define _EDG2EN 0x80 7169 7170 //============================================================================== 7171 7172 7173 //============================================================================== 7174 // CTMUCON2 Bits 7175 7176 extern __at(0x0EF7) __sfr CTMUCON2; 7177 7178 typedef union 7179 { 7180 struct 7181 { 7182 unsigned IRNG0 : 1; 7183 unsigned IRNG1 : 1; 7184 unsigned ITRIM0 : 1; 7185 unsigned ITRIM1 : 1; 7186 unsigned ITRIM2 : 1; 7187 unsigned ITRIM3 : 1; 7188 unsigned ITRIM4 : 1; 7189 unsigned ITRIM5 : 1; 7190 }; 7191 7192 struct 7193 { 7194 unsigned IRNG : 2; 7195 unsigned : 6; 7196 }; 7197 7198 struct 7199 { 7200 unsigned : 2; 7201 unsigned ITRIM : 6; 7202 }; 7203 } __CTMUCON2bits_t; 7204 7205 extern __at(0x0EF7) volatile __CTMUCON2bits_t CTMUCON2bits; 7206 7207 #define _IRNG0 0x01 7208 #define _IRNG1 0x02 7209 #define _ITRIM0 0x04 7210 #define _ITRIM1 0x08 7211 #define _ITRIM2 0x10 7212 #define _ITRIM3 0x20 7213 #define _ITRIM4 0x40 7214 #define _ITRIM5 0x80 7215 7216 //============================================================================== 7217 7218 7219 //============================================================================== 7220 // CTMUCON1 Bits 7221 7222 extern __at(0x0EF8) __sfr CTMUCON1; 7223 7224 typedef struct 7225 { 7226 unsigned CTTRIG : 1; 7227 unsigned IDISSEN : 1; 7228 unsigned EDGSEQEN : 1; 7229 unsigned EDGEN : 1; 7230 unsigned TGEN : 1; 7231 unsigned CTMUSIDL : 1; 7232 unsigned : 1; 7233 unsigned CTMUEN : 1; 7234 } __CTMUCON1bits_t; 7235 7236 extern __at(0x0EF8) volatile __CTMUCON1bits_t CTMUCON1bits; 7237 7238 #define _CTTRIG 0x01 7239 #define _IDISSEN 0x02 7240 #define _EDGSEQEN 0x04 7241 #define _EDGEN 0x08 7242 #define _TGEN 0x10 7243 #define _CTMUSIDL 0x20 7244 #define _CTMUEN 0x80 7245 7246 //============================================================================== 7247 7248 extern __at(0x0EF9) __sfr TXREG4; 7249 extern __at(0x0EFA) __sfr RCREG4; 7250 7251 //============================================================================== 7252 // SPBRG4 Bits 7253 7254 extern __at(0x0EFB) __sfr SPBRG4; 7255 7256 typedef struct 7257 { 7258 unsigned BRG0 : 1; 7259 unsigned BRG1 : 1; 7260 unsigned BRG2 : 1; 7261 unsigned BRG3 : 1; 7262 unsigned BRG4 : 1; 7263 unsigned BRG5 : 1; 7264 unsigned BRG6 : 1; 7265 unsigned BRG7 : 1; 7266 } __SPBRG4bits_t; 7267 7268 extern __at(0x0EFB) volatile __SPBRG4bits_t SPBRG4bits; 7269 7270 #define _SPBRG4_BRG0 0x01 7271 #define _SPBRG4_BRG1 0x02 7272 #define _SPBRG4_BRG2 0x04 7273 #define _SPBRG4_BRG3 0x08 7274 #define _SPBRG4_BRG4 0x10 7275 #define _SPBRG4_BRG5 0x20 7276 #define _SPBRG4_BRG6 0x40 7277 #define _SPBRG4_BRG7 0x80 7278 7279 //============================================================================== 7280 7281 7282 //============================================================================== 7283 // SPBRGH4 Bits 7284 7285 extern __at(0x0EFC) __sfr SPBRGH4; 7286 7287 typedef struct 7288 { 7289 unsigned BRG8 : 1; 7290 unsigned BRG9 : 1; 7291 unsigned BRG10 : 1; 7292 unsigned BRG11 : 1; 7293 unsigned BRG12 : 1; 7294 unsigned BRG13 : 1; 7295 unsigned BRG14 : 1; 7296 unsigned BRG15 : 1; 7297 } __SPBRGH4bits_t; 7298 7299 extern __at(0x0EFC) volatile __SPBRGH4bits_t SPBRGH4bits; 7300 7301 #define _SPBRGH4_BRG8 0x01 7302 #define _SPBRGH4_BRG9 0x02 7303 #define _SPBRGH4_BRG10 0x04 7304 #define _SPBRGH4_BRG11 0x08 7305 #define _SPBRGH4_BRG12 0x10 7306 #define _SPBRGH4_BRG13 0x20 7307 #define _SPBRGH4_BRG14 0x40 7308 #define _SPBRGH4_BRG15 0x80 7309 7310 //============================================================================== 7311 7312 7313 //============================================================================== 7314 // BAUDCON4 Bits 7315 7316 extern __at(0x0EFD) __sfr BAUDCON4; 7317 7318 typedef struct 7319 { 7320 unsigned ABDEN : 1; 7321 unsigned WUE : 1; 7322 unsigned IREN : 1; 7323 unsigned BRG16 : 1; 7324 unsigned TXCKP : 1; 7325 unsigned RXDTP : 1; 7326 unsigned RCIDL : 1; 7327 unsigned ABDOVF : 1; 7328 } __BAUDCON4bits_t; 7329 7330 extern __at(0x0EFD) volatile __BAUDCON4bits_t BAUDCON4bits; 7331 7332 #define _BAUDCON4_ABDEN 0x01 7333 #define _BAUDCON4_WUE 0x02 7334 #define _BAUDCON4_IREN 0x04 7335 #define _BAUDCON4_BRG16 0x08 7336 #define _BAUDCON4_TXCKP 0x10 7337 #define _BAUDCON4_RXDTP 0x20 7338 #define _BAUDCON4_RCIDL 0x40 7339 #define _BAUDCON4_ABDOVF 0x80 7340 7341 //============================================================================== 7342 7343 7344 //============================================================================== 7345 // TXSTA4 Bits 7346 7347 extern __at(0x0EFE) __sfr TXSTA4; 7348 7349 typedef struct 7350 { 7351 unsigned TX9D : 1; 7352 unsigned TRMT : 1; 7353 unsigned BRGH : 1; 7354 unsigned SENDB : 1; 7355 unsigned SYNC : 1; 7356 unsigned TXEN : 1; 7357 unsigned TX9 : 1; 7358 unsigned CSRC : 1; 7359 } __TXSTA4bits_t; 7360 7361 extern __at(0x0EFE) volatile __TXSTA4bits_t TXSTA4bits; 7362 7363 #define _TXSTA4_TX9D 0x01 7364 #define _TXSTA4_TRMT 0x02 7365 #define _TXSTA4_BRGH 0x04 7366 #define _TXSTA4_SENDB 0x08 7367 #define _TXSTA4_SYNC 0x10 7368 #define _TXSTA4_TXEN 0x20 7369 #define _TXSTA4_TX9 0x40 7370 #define _TXSTA4_CSRC 0x80 7371 7372 //============================================================================== 7373 7374 7375 //============================================================================== 7376 // RCSTA4 Bits 7377 7378 extern __at(0x0EFF) __sfr RCSTA4; 7379 7380 typedef struct 7381 { 7382 unsigned RX9D : 1; 7383 unsigned OERR : 1; 7384 unsigned FERR : 1; 7385 unsigned ADDEN : 1; 7386 unsigned CREN : 1; 7387 unsigned SREN : 1; 7388 unsigned RX9 : 1; 7389 unsigned SPEN : 1; 7390 } __RCSTA4bits_t; 7391 7392 extern __at(0x0EFF) volatile __RCSTA4bits_t RCSTA4bits; 7393 7394 #define _RCSTA4_RX9D 0x01 7395 #define _RCSTA4_OERR 0x02 7396 #define _RCSTA4_FERR 0x04 7397 #define _RCSTA4_ADDEN 0x08 7398 #define _RCSTA4_CREN 0x10 7399 #define _RCSTA4_SREN 0x20 7400 #define _RCSTA4_RX9 0x40 7401 #define _RCSTA4_SPEN 0x80 7402 7403 //============================================================================== 7404 7405 7406 //============================================================================== 7407 // DMACON2 Bits 7408 7409 extern __at(0x0F00) __sfr DMACON2; 7410 7411 typedef union 7412 { 7413 struct 7414 { 7415 unsigned INTLVL0 : 1; 7416 unsigned INTLVL1 : 1; 7417 unsigned INTLVL2 : 1; 7418 unsigned INTLVL3 : 1; 7419 unsigned DLYCYC0 : 1; 7420 unsigned DLYCYC1 : 1; 7421 unsigned DLYCYC2 : 1; 7422 unsigned DLYCYC3 : 1; 7423 }; 7424 7425 struct 7426 { 7427 unsigned INTLVL : 4; 7428 unsigned : 4; 7429 }; 7430 7431 struct 7432 { 7433 unsigned : 4; 7434 unsigned DLYCYC : 4; 7435 }; 7436 } __DMACON2bits_t; 7437 7438 extern __at(0x0F00) volatile __DMACON2bits_t DMACON2bits; 7439 7440 #define _INTLVL0 0x01 7441 #define _INTLVL1 0x02 7442 #define _INTLVL2 0x04 7443 #define _INTLVL3 0x08 7444 #define _DLYCYC0 0x10 7445 #define _DLYCYC1 0x20 7446 #define _DLYCYC2 0x40 7447 #define _DLYCYC3 0x80 7448 7449 //============================================================================== 7450 7451 7452 //============================================================================== 7453 // ANCFG Bits 7454 7455 extern __at(0x0F01) __sfr ANCFG; 7456 7457 typedef struct 7458 { 7459 unsigned VBGEN : 1; 7460 unsigned VBG2EN : 1; 7461 unsigned VBG6EN : 1; 7462 unsigned : 1; 7463 unsigned : 1; 7464 unsigned : 1; 7465 unsigned : 1; 7466 unsigned : 1; 7467 } __ANCFGbits_t; 7468 7469 extern __at(0x0F01) volatile __ANCFGbits_t ANCFGbits; 7470 7471 #define _VBGEN 0x01 7472 #define _VBG2EN 0x02 7473 #define _VBG6EN 0x04 7474 7475 //============================================================================== 7476 7477 extern __at(0x0F02) __sfr SSP2ADD; 7478 extern __at(0x0F03) __sfr SSP2BUF; 7479 7480 //============================================================================== 7481 // T4CON Bits 7482 7483 extern __at(0x0F04) __sfr T4CON; 7484 7485 typedef union 7486 { 7487 struct 7488 { 7489 unsigned T4CKPS0 : 1; 7490 unsigned T4CKPS1 : 1; 7491 unsigned TMR4ON : 1; 7492 unsigned T4OUTPS0 : 1; 7493 unsigned T4OUTPS1 : 1; 7494 unsigned T4OUTPS2 : 1; 7495 unsigned T4OUTPS3 : 1; 7496 unsigned : 1; 7497 }; 7498 7499 struct 7500 { 7501 unsigned T4CKPS : 2; 7502 unsigned : 6; 7503 }; 7504 7505 struct 7506 { 7507 unsigned : 3; 7508 unsigned T4OUTPS : 4; 7509 unsigned : 1; 7510 }; 7511 } __T4CONbits_t; 7512 7513 extern __at(0x0F04) volatile __T4CONbits_t T4CONbits; 7514 7515 #define _T4CKPS0 0x01 7516 #define _T4CKPS1 0x02 7517 #define _TMR4ON 0x04 7518 #define _T4OUTPS0 0x08 7519 #define _T4OUTPS1 0x10 7520 #define _T4OUTPS2 0x20 7521 #define _T4OUTPS3 0x40 7522 7523 //============================================================================== 7524 7525 extern __at(0x0F05) __sfr PR4; 7526 extern __at(0x0F06) __sfr TMR4; 7527 7528 //============================================================================== 7529 // CCP7CON Bits 7530 7531 extern __at(0x0F07) __sfr CCP7CON; 7532 7533 typedef union 7534 { 7535 struct 7536 { 7537 unsigned CCP7M0 : 1; 7538 unsigned CCP7M1 : 1; 7539 unsigned CCP7M2 : 1; 7540 unsigned CCP7M3 : 1; 7541 unsigned DC7B0 : 1; 7542 unsigned DC7B1 : 1; 7543 unsigned : 1; 7544 unsigned : 1; 7545 }; 7546 7547 struct 7548 { 7549 unsigned : 1; 7550 unsigned : 1; 7551 unsigned : 1; 7552 unsigned : 1; 7553 unsigned CCP7Y : 1; 7554 unsigned CCP7X : 1; 7555 unsigned : 1; 7556 unsigned : 1; 7557 }; 7558 7559 struct 7560 { 7561 unsigned CCP7M : 4; 7562 unsigned : 4; 7563 }; 7564 7565 struct 7566 { 7567 unsigned : 4; 7568 unsigned DC7B : 2; 7569 unsigned : 2; 7570 }; 7571 } __CCP7CONbits_t; 7572 7573 extern __at(0x0F07) volatile __CCP7CONbits_t CCP7CONbits; 7574 7575 #define _CCP7M0 0x01 7576 #define _CCP7M1 0x02 7577 #define _CCP7M2 0x04 7578 #define _CCP7M3 0x08 7579 #define _DC7B0 0x10 7580 #define _CCP7Y 0x10 7581 #define _DC7B1 0x20 7582 #define _CCP7X 0x20 7583 7584 //============================================================================== 7585 7586 extern __at(0x0F08) __sfr CCPR7; 7587 extern __at(0x0F08) __sfr CCPR7L; 7588 extern __at(0x0F09) __sfr CCPR7H; 7589 7590 //============================================================================== 7591 // CCP6CON Bits 7592 7593 extern __at(0x0F0A) __sfr CCP6CON; 7594 7595 typedef union 7596 { 7597 struct 7598 { 7599 unsigned CCP6M0 : 1; 7600 unsigned CCP6M1 : 1; 7601 unsigned CCP6M2 : 1; 7602 unsigned CCP6M3 : 1; 7603 unsigned DC6B0 : 1; 7604 unsigned DC6B1 : 1; 7605 unsigned : 1; 7606 unsigned : 1; 7607 }; 7608 7609 struct 7610 { 7611 unsigned : 1; 7612 unsigned : 1; 7613 unsigned : 1; 7614 unsigned : 1; 7615 unsigned CCP6Y : 1; 7616 unsigned CCP6X : 1; 7617 unsigned : 1; 7618 unsigned : 1; 7619 }; 7620 7621 struct 7622 { 7623 unsigned CCP6M : 4; 7624 unsigned : 4; 7625 }; 7626 7627 struct 7628 { 7629 unsigned : 4; 7630 unsigned DC6B : 2; 7631 unsigned : 2; 7632 }; 7633 } __CCP6CONbits_t; 7634 7635 extern __at(0x0F0A) volatile __CCP6CONbits_t CCP6CONbits; 7636 7637 #define _CCP6M0 0x01 7638 #define _CCP6M1 0x02 7639 #define _CCP6M2 0x04 7640 #define _CCP6M3 0x08 7641 #define _DC6B0 0x10 7642 #define _CCP6Y 0x10 7643 #define _DC6B1 0x20 7644 #define _CCP6X 0x20 7645 7646 //============================================================================== 7647 7648 extern __at(0x0F0B) __sfr CCPR6; 7649 extern __at(0x0F0B) __sfr CCPR6L; 7650 extern __at(0x0F0C) __sfr CCPR6H; 7651 7652 //============================================================================== 7653 // CCP5CON Bits 7654 7655 extern __at(0x0F0D) __sfr CCP5CON; 7656 7657 typedef union 7658 { 7659 struct 7660 { 7661 unsigned CCP5M0 : 1; 7662 unsigned CCP5M1 : 1; 7663 unsigned CCP5M2 : 1; 7664 unsigned CCP5M3 : 1; 7665 unsigned DC5B0 : 1; 7666 unsigned DC5B1 : 1; 7667 unsigned : 1; 7668 unsigned : 1; 7669 }; 7670 7671 struct 7672 { 7673 unsigned : 1; 7674 unsigned : 1; 7675 unsigned : 1; 7676 unsigned : 1; 7677 unsigned CCP5Y : 1; 7678 unsigned CCP5X : 1; 7679 unsigned : 1; 7680 unsigned : 1; 7681 }; 7682 7683 struct 7684 { 7685 unsigned CCP5M : 4; 7686 unsigned : 4; 7687 }; 7688 7689 struct 7690 { 7691 unsigned : 4; 7692 unsigned DC5B : 2; 7693 unsigned : 2; 7694 }; 7695 } __CCP5CONbits_t; 7696 7697 extern __at(0x0F0D) volatile __CCP5CONbits_t CCP5CONbits; 7698 7699 #define _CCP5M0 0x01 7700 #define _CCP5M1 0x02 7701 #define _CCP5M2 0x04 7702 #define _CCP5M3 0x08 7703 #define _DC5B0 0x10 7704 #define _CCP5Y 0x10 7705 #define _DC5B1 0x20 7706 #define _CCP5X 0x20 7707 7708 //============================================================================== 7709 7710 extern __at(0x0F0E) __sfr CCPR5; 7711 extern __at(0x0F0E) __sfr CCPR5L; 7712 extern __at(0x0F0F) __sfr CCPR5H; 7713 7714 //============================================================================== 7715 // CCP4CON Bits 7716 7717 extern __at(0x0F10) __sfr CCP4CON; 7718 7719 typedef union 7720 { 7721 struct 7722 { 7723 unsigned CCP4M0 : 1; 7724 unsigned CCP4M1 : 1; 7725 unsigned CCP4M2 : 1; 7726 unsigned CCP4M3 : 1; 7727 unsigned DC4B0 : 1; 7728 unsigned DC4B1 : 1; 7729 unsigned : 1; 7730 unsigned : 1; 7731 }; 7732 7733 struct 7734 { 7735 unsigned : 1; 7736 unsigned : 1; 7737 unsigned : 1; 7738 unsigned : 1; 7739 unsigned CCP4Y : 1; 7740 unsigned CCP4X : 1; 7741 unsigned : 1; 7742 unsigned : 1; 7743 }; 7744 7745 struct 7746 { 7747 unsigned CCP4M : 4; 7748 unsigned : 4; 7749 }; 7750 7751 struct 7752 { 7753 unsigned : 4; 7754 unsigned DC4B : 2; 7755 unsigned : 2; 7756 }; 7757 } __CCP4CONbits_t; 7758 7759 extern __at(0x0F10) volatile __CCP4CONbits_t CCP4CONbits; 7760 7761 #define _CCP4M0 0x01 7762 #define _CCP4M1 0x02 7763 #define _CCP4M2 0x04 7764 #define _CCP4M3 0x08 7765 #define _DC4B0 0x10 7766 #define _CCP4Y 0x10 7767 #define _DC4B1 0x20 7768 #define _CCP4X 0x20 7769 7770 //============================================================================== 7771 7772 extern __at(0x0F11) __sfr CCPR4; 7773 extern __at(0x0F11) __sfr CCPR4L; 7774 extern __at(0x0F12) __sfr CCPR4H; 7775 7776 //============================================================================== 7777 // T5GCON Bits 7778 7779 extern __at(0x0F13) __sfr T5GCON; 7780 7781 typedef union 7782 { 7783 struct 7784 { 7785 unsigned T5GSS0 : 1; 7786 unsigned T5GSS1 : 1; 7787 unsigned T5GVAL : 1; 7788 unsigned T5GGO_NOT_T5DONE : 1; 7789 unsigned T5GSPM : 1; 7790 unsigned T5GTM : 1; 7791 unsigned T5GPOL : 1; 7792 unsigned TMR5GE : 1; 7793 }; 7794 7795 struct 7796 { 7797 unsigned : 1; 7798 unsigned : 1; 7799 unsigned : 1; 7800 unsigned T5GGO : 1; 7801 unsigned : 1; 7802 unsigned : 1; 7803 unsigned : 1; 7804 unsigned : 1; 7805 }; 7806 7807 struct 7808 { 7809 unsigned : 1; 7810 unsigned : 1; 7811 unsigned : 1; 7812 unsigned NOT_T5DONE : 1; 7813 unsigned : 1; 7814 unsigned : 1; 7815 unsigned : 1; 7816 unsigned : 1; 7817 }; 7818 7819 struct 7820 { 7821 unsigned T5GSS : 2; 7822 unsigned : 6; 7823 }; 7824 } __T5GCONbits_t; 7825 7826 extern __at(0x0F13) volatile __T5GCONbits_t T5GCONbits; 7827 7828 #define _T5GSS0 0x01 7829 #define _T5GSS1 0x02 7830 #define _T5GVAL 0x04 7831 #define _T5GGO_NOT_T5DONE 0x08 7832 #define _T5GGO 0x08 7833 #define _NOT_T5DONE 0x08 7834 #define _T5GSPM 0x10 7835 #define _T5GTM 0x20 7836 #define _T5GPOL 0x40 7837 #define _TMR5GE 0x80 7838 7839 //============================================================================== 7840 7841 7842 //============================================================================== 7843 // T5CON Bits 7844 7845 extern __at(0x0F14) __sfr T5CON; 7846 7847 typedef union 7848 { 7849 struct 7850 { 7851 unsigned TMR5ON : 1; 7852 unsigned RD16 : 1; 7853 unsigned NOT_T5SYNC : 1; 7854 unsigned SOSCEN : 1; 7855 unsigned T5CKPS0 : 1; 7856 unsigned T5CKPS1 : 1; 7857 unsigned TMR5CS0 : 1; 7858 unsigned TMR5CS1 : 1; 7859 }; 7860 7861 struct 7862 { 7863 unsigned : 4; 7864 unsigned T5CKPS : 2; 7865 unsigned : 2; 7866 }; 7867 7868 struct 7869 { 7870 unsigned : 6; 7871 unsigned TMR5CS : 2; 7872 }; 7873 } __T5CONbits_t; 7874 7875 extern __at(0x0F14) volatile __T5CONbits_t T5CONbits; 7876 7877 #define _T5CON_TMR5ON 0x01 7878 #define _T5CON_RD16 0x02 7879 #define _T5CON_NOT_T5SYNC 0x04 7880 #define _T5CON_SOSCEN 0x08 7881 #define _T5CON_T5CKPS0 0x10 7882 #define _T5CON_T5CKPS1 0x20 7883 #define _T5CON_TMR5CS0 0x40 7884 #define _T5CON_TMR5CS1 0x80 7885 7886 //============================================================================== 7887 7888 extern __at(0x0F15) __sfr TMR5; 7889 extern __at(0x0F15) __sfr TMR5L; 7890 extern __at(0x0F16) __sfr TMR5H; 7891 7892 //============================================================================== 7893 // SSP2MSK Bits 7894 7895 extern __at(0x0F17) __sfr SSP2MSK; 7896 7897 typedef struct 7898 { 7899 unsigned MSK0 : 1; 7900 unsigned MSK1 : 1; 7901 unsigned MSK2 : 1; 7902 unsigned MSK3 : 1; 7903 unsigned MSK4 : 1; 7904 unsigned MSK5 : 1; 7905 unsigned MSK6 : 1; 7906 unsigned MSK7 : 1; 7907 } __SSP2MSKbits_t; 7908 7909 extern __at(0x0F17) volatile __SSP2MSKbits_t SSP2MSKbits; 7910 7911 #define _SSP2MSK_MSK0 0x01 7912 #define _SSP2MSK_MSK1 0x02 7913 #define _SSP2MSK_MSK2 0x04 7914 #define _SSP2MSK_MSK3 0x08 7915 #define _SSP2MSK_MSK4 0x10 7916 #define _SSP2MSK_MSK5 0x20 7917 #define _SSP2MSK_MSK6 0x40 7918 #define _SSP2MSK_MSK7 0x80 7919 7920 //============================================================================== 7921 7922 7923 //============================================================================== 7924 // SSP2CON2 Bits 7925 7926 extern __at(0x0F18) __sfr SSP2CON2; 7927 7928 typedef union 7929 { 7930 struct 7931 { 7932 unsigned SEN : 1; 7933 unsigned RSEN : 1; 7934 unsigned PEN : 1; 7935 unsigned RCEN : 1; 7936 unsigned ACKEN : 1; 7937 unsigned ACKDT : 1; 7938 unsigned ACKSTAT : 1; 7939 unsigned GCEN : 1; 7940 }; 7941 7942 struct 7943 { 7944 unsigned : 1; 7945 unsigned ADMSK1 : 1; 7946 unsigned ADMSK2 : 1; 7947 unsigned ADMSK3 : 1; 7948 unsigned ADMSK4 : 1; 7949 unsigned ADMSK5 : 1; 7950 unsigned : 1; 7951 unsigned : 1; 7952 }; 7953 } __SSP2CON2bits_t; 7954 7955 extern __at(0x0F18) volatile __SSP2CON2bits_t SSP2CON2bits; 7956 7957 #define _SSP2CON2_SEN 0x01 7958 #define _SSP2CON2_RSEN 0x02 7959 #define _SSP2CON2_ADMSK1 0x02 7960 #define _SSP2CON2_PEN 0x04 7961 #define _SSP2CON2_ADMSK2 0x04 7962 #define _SSP2CON2_RCEN 0x08 7963 #define _SSP2CON2_ADMSK3 0x08 7964 #define _SSP2CON2_ACKEN 0x10 7965 #define _SSP2CON2_ADMSK4 0x10 7966 #define _SSP2CON2_ACKDT 0x20 7967 #define _SSP2CON2_ADMSK5 0x20 7968 #define _SSP2CON2_ACKSTAT 0x40 7969 #define _SSP2CON2_GCEN 0x80 7970 7971 //============================================================================== 7972 7973 7974 //============================================================================== 7975 // SSP2CON1 Bits 7976 7977 extern __at(0x0F19) __sfr SSP2CON1; 7978 7979 typedef union 7980 { 7981 struct 7982 { 7983 unsigned SSPM0 : 1; 7984 unsigned SSPM1 : 1; 7985 unsigned SSPM2 : 1; 7986 unsigned SSPM3 : 1; 7987 unsigned CKP : 1; 7988 unsigned SSPEN : 1; 7989 unsigned SSPOV : 1; 7990 unsigned WCOL : 1; 7991 }; 7992 7993 struct 7994 { 7995 unsigned SSPM : 4; 7996 unsigned : 4; 7997 }; 7998 } __SSP2CON1bits_t; 7999 8000 extern __at(0x0F19) volatile __SSP2CON1bits_t SSP2CON1bits; 8001 8002 #define _SSP2CON1_SSPM0 0x01 8003 #define _SSP2CON1_SSPM1 0x02 8004 #define _SSP2CON1_SSPM2 0x04 8005 #define _SSP2CON1_SSPM3 0x08 8006 #define _SSP2CON1_CKP 0x10 8007 #define _SSP2CON1_SSPEN 0x20 8008 #define _SSP2CON1_SSPOV 0x40 8009 #define _SSP2CON1_WCOL 0x80 8010 8011 //============================================================================== 8012 8013 8014 //============================================================================== 8015 // SSP2STAT Bits 8016 8017 extern __at(0x0F1A) __sfr SSP2STAT; 8018 8019 typedef union 8020 { 8021 struct 8022 { 8023 unsigned BF : 1; 8024 unsigned UA : 1; 8025 unsigned R_NOT_W : 1; 8026 unsigned S : 1; 8027 unsigned P : 1; 8028 unsigned D_NOT_A : 1; 8029 unsigned CKE : 1; 8030 unsigned SMP : 1; 8031 }; 8032 8033 struct 8034 { 8035 unsigned : 1; 8036 unsigned : 1; 8037 unsigned R_W : 1; 8038 unsigned I2C_START : 1; 8039 unsigned I2C_STOP : 1; 8040 unsigned D_A : 1; 8041 unsigned : 1; 8042 unsigned : 1; 8043 }; 8044 8045 struct 8046 { 8047 unsigned : 1; 8048 unsigned : 1; 8049 unsigned NOT_W : 1; 8050 unsigned : 1; 8051 unsigned : 1; 8052 unsigned NOT_A : 1; 8053 unsigned : 1; 8054 unsigned : 1; 8055 }; 8056 8057 struct 8058 { 8059 unsigned : 1; 8060 unsigned : 1; 8061 unsigned NOT_WRITE : 1; 8062 unsigned : 1; 8063 unsigned : 1; 8064 unsigned NOT_ADDRESS : 1; 8065 unsigned : 1; 8066 unsigned : 1; 8067 }; 8068 8069 struct 8070 { 8071 unsigned : 1; 8072 unsigned : 1; 8073 unsigned READ_WRITE : 1; 8074 unsigned : 1; 8075 unsigned : 1; 8076 unsigned DATA_ADDRESS : 1; 8077 unsigned : 1; 8078 unsigned : 1; 8079 }; 8080 8081 struct 8082 { 8083 unsigned : 1; 8084 unsigned : 1; 8085 unsigned I2C_READ : 1; 8086 unsigned : 1; 8087 unsigned : 1; 8088 unsigned I2C_DAT : 1; 8089 unsigned : 1; 8090 unsigned : 1; 8091 }; 8092 } __SSP2STATbits_t; 8093 8094 extern __at(0x0F1A) volatile __SSP2STATbits_t SSP2STATbits; 8095 8096 #define _SSP2STAT_BF 0x01 8097 #define _SSP2STAT_UA 0x02 8098 #define _SSP2STAT_R_NOT_W 0x04 8099 #define _SSP2STAT_R_W 0x04 8100 #define _SSP2STAT_NOT_W 0x04 8101 #define _SSP2STAT_NOT_WRITE 0x04 8102 #define _SSP2STAT_READ_WRITE 0x04 8103 #define _SSP2STAT_I2C_READ 0x04 8104 #define _SSP2STAT_S 0x08 8105 #define _SSP2STAT_I2C_START 0x08 8106 #define _SSP2STAT_P 0x10 8107 #define _SSP2STAT_I2C_STOP 0x10 8108 #define _SSP2STAT_D_NOT_A 0x20 8109 #define _SSP2STAT_D_A 0x20 8110 #define _SSP2STAT_NOT_A 0x20 8111 #define _SSP2STAT_NOT_ADDRESS 0x20 8112 #define _SSP2STAT_DATA_ADDRESS 0x20 8113 #define _SSP2STAT_I2C_DAT 0x20 8114 #define _SSP2STAT_CKE 0x40 8115 #define _SSP2STAT_SMP 0x80 8116 8117 //============================================================================== 8118 8119 8120 //============================================================================== 8121 // PSTR3CON Bits 8122 8123 extern __at(0x0F1B) __sfr PSTR3CON; 8124 8125 typedef union 8126 { 8127 struct 8128 { 8129 unsigned STRA : 1; 8130 unsigned STRB : 1; 8131 unsigned STRC : 1; 8132 unsigned STRD : 1; 8133 unsigned STRSYNC : 1; 8134 unsigned : 1; 8135 unsigned CMPL0 : 1; 8136 unsigned CMPL1 : 1; 8137 }; 8138 8139 struct 8140 { 8141 unsigned : 6; 8142 unsigned CMPL : 2; 8143 }; 8144 } __PSTR3CONbits_t; 8145 8146 extern __at(0x0F1B) volatile __PSTR3CONbits_t PSTR3CONbits; 8147 8148 #define _PSTR3CON_STRA 0x01 8149 #define _PSTR3CON_STRB 0x02 8150 #define _PSTR3CON_STRC 0x04 8151 #define _PSTR3CON_STRD 0x08 8152 #define _PSTR3CON_STRSYNC 0x10 8153 #define _PSTR3CON_CMPL0 0x40 8154 #define _PSTR3CON_CMPL1 0x80 8155 8156 //============================================================================== 8157 8158 8159 //============================================================================== 8160 // PSTR2CON Bits 8161 8162 extern __at(0x0F1C) __sfr PSTR2CON; 8163 8164 typedef union 8165 { 8166 struct 8167 { 8168 unsigned STRA : 1; 8169 unsigned STRB : 1; 8170 unsigned STRC : 1; 8171 unsigned STRD : 1; 8172 unsigned STRSYNC : 1; 8173 unsigned : 1; 8174 unsigned CMPL0 : 1; 8175 unsigned CMPL1 : 1; 8176 }; 8177 8178 struct 8179 { 8180 unsigned : 6; 8181 unsigned CMPL : 2; 8182 }; 8183 } __PSTR2CONbits_t; 8184 8185 extern __at(0x0F1C) volatile __PSTR2CONbits_t PSTR2CONbits; 8186 8187 #define _PSTR2CON_STRA 0x01 8188 #define _PSTR2CON_STRB 0x02 8189 #define _PSTR2CON_STRC 0x04 8190 #define _PSTR2CON_STRD 0x08 8191 #define _PSTR2CON_STRSYNC 0x10 8192 #define _PSTR2CON_CMPL0 0x40 8193 #define _PSTR2CON_CMPL1 0x80 8194 8195 //============================================================================== 8196 8197 extern __at(0x0F1D) __sfr TXREG2; 8198 extern __at(0x0F1E) __sfr RCREG2; 8199 8200 //============================================================================== 8201 // SPBRG2 Bits 8202 8203 extern __at(0x0F1F) __sfr SPBRG2; 8204 8205 typedef struct 8206 { 8207 unsigned BRG0 : 1; 8208 unsigned BRG1 : 1; 8209 unsigned BRG2 : 1; 8210 unsigned BRG3 : 1; 8211 unsigned BRG4 : 1; 8212 unsigned BRG5 : 1; 8213 unsigned BRG6 : 1; 8214 unsigned BRG7 : 1; 8215 } __SPBRG2bits_t; 8216 8217 extern __at(0x0F1F) volatile __SPBRG2bits_t SPBRG2bits; 8218 8219 #define _SPBRG2_BRG0 0x01 8220 #define _SPBRG2_BRG1 0x02 8221 #define _SPBRG2_BRG2 0x04 8222 #define _SPBRG2_BRG3 0x08 8223 #define _SPBRG2_BRG4 0x10 8224 #define _SPBRG2_BRG5 0x20 8225 #define _SPBRG2_BRG6 0x40 8226 #define _SPBRG2_BRG7 0x80 8227 8228 //============================================================================== 8229 8230 8231 //============================================================================== 8232 // SPBRGH2 Bits 8233 8234 extern __at(0x0F20) __sfr SPBRGH2; 8235 8236 typedef struct 8237 { 8238 unsigned BRG8 : 1; 8239 unsigned BRG9 : 1; 8240 unsigned BRG10 : 1; 8241 unsigned BRG11 : 1; 8242 unsigned BRG12 : 1; 8243 unsigned BRG13 : 1; 8244 unsigned BRG14 : 1; 8245 unsigned BRG15 : 1; 8246 } __SPBRGH2bits_t; 8247 8248 extern __at(0x0F20) volatile __SPBRGH2bits_t SPBRGH2bits; 8249 8250 #define _SPBRGH2_BRG8 0x01 8251 #define _SPBRGH2_BRG9 0x02 8252 #define _SPBRGH2_BRG10 0x04 8253 #define _SPBRGH2_BRG11 0x08 8254 #define _SPBRGH2_BRG12 0x10 8255 #define _SPBRGH2_BRG13 0x20 8256 #define _SPBRGH2_BRG14 0x40 8257 #define _SPBRGH2_BRG15 0x80 8258 8259 //============================================================================== 8260 8261 extern __at(0x0F21) __sfr DSGPR3; 8262 extern __at(0x0F22) __sfr DSGPR2; 8263 extern __at(0x0F23) __sfr DSGPR1; 8264 extern __at(0x0F24) __sfr DSGPR0; 8265 8266 //============================================================================== 8267 // DSWAKEH Bits 8268 8269 extern __at(0x0F25) __sfr DSWAKEH; 8270 8271 typedef struct 8272 { 8273 unsigned DSINT0 : 1; 8274 unsigned : 1; 8275 unsigned : 1; 8276 unsigned : 1; 8277 unsigned : 1; 8278 unsigned : 1; 8279 unsigned : 1; 8280 unsigned : 1; 8281 } __DSWAKEHbits_t; 8282 8283 extern __at(0x0F25) volatile __DSWAKEHbits_t DSWAKEHbits; 8284 8285 #define _DSINT0 0x01 8286 8287 //============================================================================== 8288 8289 8290 //============================================================================== 8291 // DSWAKEL Bits 8292 8293 extern __at(0x0F26) __sfr DSWAKEL; 8294 8295 typedef struct 8296 { 8297 unsigned DSPOR : 1; 8298 unsigned DSICD : 1; 8299 unsigned DSMCLR : 1; 8300 unsigned DSRTC : 1; 8301 unsigned DSWDT : 1; 8302 unsigned DSULP : 1; 8303 unsigned BOR : 1; 8304 unsigned DSFLT : 1; 8305 } __DSWAKELbits_t; 8306 8307 extern __at(0x0F26) volatile __DSWAKELbits_t DSWAKELbits; 8308 8309 #define _DSPOR 0x01 8310 #define _DSICD 0x02 8311 #define _DSMCLR 0x04 8312 #define _DSRTC 0x08 8313 #define _DSWDT 0x10 8314 #define _DSULP 0x20 8315 #define _BOR 0x40 8316 #define _DSFLT 0x80 8317 8318 //============================================================================== 8319 8320 8321 //============================================================================== 8322 // DSCONH Bits 8323 8324 extern __at(0x0F27) __sfr DSCONH; 8325 8326 typedef struct 8327 { 8328 unsigned RTCWDIS : 1; 8329 unsigned : 1; 8330 unsigned : 1; 8331 unsigned : 1; 8332 unsigned : 1; 8333 unsigned : 1; 8334 unsigned : 1; 8335 unsigned DSEN : 1; 8336 } __DSCONHbits_t; 8337 8338 extern __at(0x0F27) volatile __DSCONHbits_t DSCONHbits; 8339 8340 #define _RTCWDIS 0x01 8341 #define _DSEN 0x80 8342 8343 //============================================================================== 8344 8345 8346 //============================================================================== 8347 // DSCONL Bits 8348 8349 extern __at(0x0F28) __sfr DSCONL; 8350 8351 typedef struct 8352 { 8353 unsigned RELEASE : 1; 8354 unsigned DSBOR : 1; 8355 unsigned ULPWDIS : 1; 8356 unsigned : 1; 8357 unsigned : 1; 8358 unsigned : 1; 8359 unsigned : 1; 8360 unsigned : 1; 8361 } __DSCONLbits_t; 8362 8363 extern __at(0x0F28) volatile __DSCONLbits_t DSCONLbits; 8364 8365 #define _RELEASE 0x01 8366 #define _DSBOR 0x02 8367 #define _ULPWDIS 0x04 8368 8369 //============================================================================== 8370 8371 extern __at(0x0F29) __sfr TXREG3; 8372 extern __at(0x0F2A) __sfr RCREG3; 8373 8374 //============================================================================== 8375 // SPBRG3 Bits 8376 8377 extern __at(0x0F2B) __sfr SPBRG3; 8378 8379 typedef struct 8380 { 8381 unsigned BRG0 : 1; 8382 unsigned BRG1 : 1; 8383 unsigned BRG2 : 1; 8384 unsigned BRG3 : 1; 8385 unsigned BRG4 : 1; 8386 unsigned BRG5 : 1; 8387 unsigned BRG6 : 1; 8388 unsigned BRG7 : 1; 8389 } __SPBRG3bits_t; 8390 8391 extern __at(0x0F2B) volatile __SPBRG3bits_t SPBRG3bits; 8392 8393 #define _SPBRG3_BRG0 0x01 8394 #define _SPBRG3_BRG1 0x02 8395 #define _SPBRG3_BRG2 0x04 8396 #define _SPBRG3_BRG3 0x08 8397 #define _SPBRG3_BRG4 0x10 8398 #define _SPBRG3_BRG5 0x20 8399 #define _SPBRG3_BRG6 0x40 8400 #define _SPBRG3_BRG7 0x80 8401 8402 //============================================================================== 8403 8404 8405 //============================================================================== 8406 // SPBRGH3 Bits 8407 8408 extern __at(0x0F2C) __sfr SPBRGH3; 8409 8410 typedef struct 8411 { 8412 unsigned BRG8 : 1; 8413 unsigned BRG9 : 1; 8414 unsigned BRG10 : 1; 8415 unsigned BRG11 : 1; 8416 unsigned BRG12 : 1; 8417 unsigned BRG13 : 1; 8418 unsigned BRG14 : 1; 8419 unsigned BRG15 : 1; 8420 } __SPBRGH3bits_t; 8421 8422 extern __at(0x0F2C) volatile __SPBRGH3bits_t SPBRGH3bits; 8423 8424 #define _SPBRGH3_BRG8 0x01 8425 #define _SPBRGH3_BRG9 0x02 8426 #define _SPBRGH3_BRG10 0x04 8427 #define _SPBRGH3_BRG11 0x08 8428 #define _SPBRGH3_BRG12 0x10 8429 #define _SPBRGH3_BRG13 0x20 8430 #define _SPBRGH3_BRG14 0x40 8431 #define _SPBRGH3_BRG15 0x80 8432 8433 //============================================================================== 8434 8435 8436 //============================================================================== 8437 // BAUDCON3 Bits 8438 8439 extern __at(0x0F2D) __sfr BAUDCON3; 8440 8441 typedef struct 8442 { 8443 unsigned ABDEN : 1; 8444 unsigned WUE : 1; 8445 unsigned IREN : 1; 8446 unsigned BRG16 : 1; 8447 unsigned TXCKP : 1; 8448 unsigned RXDTP : 1; 8449 unsigned RCIDL : 1; 8450 unsigned ABDOVF : 1; 8451 } __BAUDCON3bits_t; 8452 8453 extern __at(0x0F2D) volatile __BAUDCON3bits_t BAUDCON3bits; 8454 8455 #define _BAUDCON3_ABDEN 0x01 8456 #define _BAUDCON3_WUE 0x02 8457 #define _BAUDCON3_IREN 0x04 8458 #define _BAUDCON3_BRG16 0x08 8459 #define _BAUDCON3_TXCKP 0x10 8460 #define _BAUDCON3_RXDTP 0x20 8461 #define _BAUDCON3_RCIDL 0x40 8462 #define _BAUDCON3_ABDOVF 0x80 8463 8464 //============================================================================== 8465 8466 8467 //============================================================================== 8468 // TXSTA3 Bits 8469 8470 extern __at(0x0F2E) __sfr TXSTA3; 8471 8472 typedef struct 8473 { 8474 unsigned TX9D : 1; 8475 unsigned TRMT : 1; 8476 unsigned BRGH : 1; 8477 unsigned SENDB : 1; 8478 unsigned SYNC : 1; 8479 unsigned TXEN : 1; 8480 unsigned TX9 : 1; 8481 unsigned CSRC : 1; 8482 } __TXSTA3bits_t; 8483 8484 extern __at(0x0F2E) volatile __TXSTA3bits_t TXSTA3bits; 8485 8486 #define _TXSTA3_TX9D 0x01 8487 #define _TXSTA3_TRMT 0x02 8488 #define _TXSTA3_BRGH 0x04 8489 #define _TXSTA3_SENDB 0x08 8490 #define _TXSTA3_SYNC 0x10 8491 #define _TXSTA3_TXEN 0x20 8492 #define _TXSTA3_TX9 0x40 8493 #define _TXSTA3_CSRC 0x80 8494 8495 //============================================================================== 8496 8497 8498 //============================================================================== 8499 // RCSTA3 Bits 8500 8501 extern __at(0x0F2F) __sfr RCSTA3; 8502 8503 typedef struct 8504 { 8505 unsigned RX9D : 1; 8506 unsigned OERR : 1; 8507 unsigned FERR : 1; 8508 unsigned ADDEN : 1; 8509 unsigned CREN : 1; 8510 unsigned SREN : 1; 8511 unsigned RX9 : 1; 8512 unsigned SPEN : 1; 8513 } __RCSTA3bits_t; 8514 8515 extern __at(0x0F2F) volatile __RCSTA3bits_t RCSTA3bits; 8516 8517 #define _RCSTA3_RX9D 0x01 8518 #define _RCSTA3_OERR 0x02 8519 #define _RCSTA3_FERR 0x04 8520 #define _RCSTA3_ADDEN 0x08 8521 #define _RCSTA3_CREN 0x10 8522 #define _RCSTA3_SREN 0x20 8523 #define _RCSTA3_RX9 0x40 8524 #define _RCSTA3_SPEN 0x80 8525 8526 //============================================================================== 8527 8528 8529 //============================================================================== 8530 // SPBRGH Bits 8531 8532 extern __at(0x0F30) __sfr SPBRGH; 8533 8534 typedef struct 8535 { 8536 unsigned BRG8 : 1; 8537 unsigned BRG9 : 1; 8538 unsigned BRG10 : 1; 8539 unsigned BRG11 : 1; 8540 unsigned BRG12 : 1; 8541 unsigned BRG13 : 1; 8542 unsigned BRG14 : 1; 8543 unsigned BRG15 : 1; 8544 } __SPBRGHbits_t; 8545 8546 extern __at(0x0F30) volatile __SPBRGHbits_t SPBRGHbits; 8547 8548 #define _BRG8 0x01 8549 #define _BRG9 0x02 8550 #define _BRG10 0x04 8551 #define _BRG11 0x08 8552 #define _BRG12 0x10 8553 #define _BRG13 0x20 8554 #define _BRG14 0x40 8555 #define _BRG15 0x80 8556 8557 //============================================================================== 8558 8559 8560 //============================================================================== 8561 // SPBRGH1 Bits 8562 8563 extern __at(0x0F30) __sfr SPBRGH1; 8564 8565 typedef struct 8566 { 8567 unsigned BRG8 : 1; 8568 unsigned BRG9 : 1; 8569 unsigned BRG10 : 1; 8570 unsigned BRG11 : 1; 8571 unsigned BRG12 : 1; 8572 unsigned BRG13 : 1; 8573 unsigned BRG14 : 1; 8574 unsigned BRG15 : 1; 8575 } __SPBRGH1bits_t; 8576 8577 extern __at(0x0F30) volatile __SPBRGH1bits_t SPBRGH1bits; 8578 8579 #define _SPBRGH1_BRG8 0x01 8580 #define _SPBRGH1_BRG9 0x02 8581 #define _SPBRGH1_BRG10 0x04 8582 #define _SPBRGH1_BRG11 0x08 8583 #define _SPBRGH1_BRG12 0x10 8584 #define _SPBRGH1_BRG13 0x20 8585 #define _SPBRGH1_BRG14 0x40 8586 #define _SPBRGH1_BRG15 0x80 8587 8588 //============================================================================== 8589 8590 8591 //============================================================================== 8592 // BAUDCON2 Bits 8593 8594 extern __at(0x0F31) __sfr BAUDCON2; 8595 8596 typedef struct 8597 { 8598 unsigned ABDEN : 1; 8599 unsigned WUE : 1; 8600 unsigned IREN : 1; 8601 unsigned BRG16 : 1; 8602 unsigned TXCKP : 1; 8603 unsigned RXDTP : 1; 8604 unsigned RCIDL : 1; 8605 unsigned ABDOVF : 1; 8606 } __BAUDCON2bits_t; 8607 8608 extern __at(0x0F31) volatile __BAUDCON2bits_t BAUDCON2bits; 8609 8610 #define _BAUDCON2_ABDEN 0x01 8611 #define _BAUDCON2_WUE 0x02 8612 #define _BAUDCON2_IREN 0x04 8613 #define _BAUDCON2_BRG16 0x08 8614 #define _BAUDCON2_TXCKP 0x10 8615 #define _BAUDCON2_RXDTP 0x20 8616 #define _BAUDCON2_RCIDL 0x40 8617 #define _BAUDCON2_ABDOVF 0x80 8618 8619 //============================================================================== 8620 8621 8622 //============================================================================== 8623 // TXSTA2 Bits 8624 8625 extern __at(0x0F32) __sfr TXSTA2; 8626 8627 typedef struct 8628 { 8629 unsigned TX9D : 1; 8630 unsigned TRMT : 1; 8631 unsigned BRGH : 1; 8632 unsigned SENDB : 1; 8633 unsigned SYNC : 1; 8634 unsigned TXEN : 1; 8635 unsigned TX9 : 1; 8636 unsigned CSRC : 1; 8637 } __TXSTA2bits_t; 8638 8639 extern __at(0x0F32) volatile __TXSTA2bits_t TXSTA2bits; 8640 8641 #define _TXSTA2_TX9D 0x01 8642 #define _TXSTA2_TRMT 0x02 8643 #define _TXSTA2_BRGH 0x04 8644 #define _TXSTA2_SENDB 0x08 8645 #define _TXSTA2_SYNC 0x10 8646 #define _TXSTA2_TXEN 0x20 8647 #define _TXSTA2_TX9 0x40 8648 #define _TXSTA2_CSRC 0x80 8649 8650 //============================================================================== 8651 8652 8653 //============================================================================== 8654 // RCSTA2 Bits 8655 8656 extern __at(0x0F33) __sfr RCSTA2; 8657 8658 typedef struct 8659 { 8660 unsigned RX9D : 1; 8661 unsigned OERR : 1; 8662 unsigned FERR : 1; 8663 unsigned ADDEN : 1; 8664 unsigned CREN : 1; 8665 unsigned SREN : 1; 8666 unsigned RX9 : 1; 8667 unsigned SPEN : 1; 8668 } __RCSTA2bits_t; 8669 8670 extern __at(0x0F33) volatile __RCSTA2bits_t RCSTA2bits; 8671 8672 #define _RCSTA2_RX9D 0x01 8673 #define _RCSTA2_OERR 0x02 8674 #define _RCSTA2_FERR 0x04 8675 #define _RCSTA2_ADDEN 0x08 8676 #define _RCSTA2_CREN 0x10 8677 #define _RCSTA2_SREN 0x20 8678 #define _RCSTA2_RX9 0x40 8679 #define _RCSTA2_SPEN 0x80 8680 8681 //============================================================================== 8682 8683 8684 //============================================================================== 8685 // CCPTMRS2 Bits 8686 8687 extern __at(0x0F34) __sfr CCPTMRS2; 8688 8689 typedef union 8690 { 8691 struct 8692 { 8693 unsigned C8TSEL0 : 1; 8694 unsigned C8TSEL1 : 1; 8695 unsigned C9TSEL : 1; 8696 unsigned : 1; 8697 unsigned C10TSEL : 1; 8698 unsigned : 1; 8699 unsigned : 1; 8700 unsigned : 1; 8701 }; 8702 8703 struct 8704 { 8705 unsigned : 1; 8706 unsigned : 1; 8707 unsigned C9TSEL0 : 1; 8708 unsigned : 1; 8709 unsigned C10TSEL0 : 1; 8710 unsigned : 1; 8711 unsigned : 1; 8712 unsigned : 1; 8713 }; 8714 8715 struct 8716 { 8717 unsigned C8TSEL : 2; 8718 unsigned : 6; 8719 }; 8720 } __CCPTMRS2bits_t; 8721 8722 extern __at(0x0F34) volatile __CCPTMRS2bits_t CCPTMRS2bits; 8723 8724 #define _C8TSEL0 0x01 8725 #define _C8TSEL1 0x02 8726 #define _C9TSEL 0x04 8727 #define _C9TSEL0 0x04 8728 #define _C10TSEL 0x10 8729 #define _C10TSEL0 0x10 8730 8731 //============================================================================== 8732 8733 8734 //============================================================================== 8735 // CCPTMRS1 Bits 8736 8737 extern __at(0x0F35) __sfr CCPTMRS1; 8738 8739 typedef union 8740 { 8741 struct 8742 { 8743 unsigned C4TSEL0 : 1; 8744 unsigned C4TSEL1 : 1; 8745 unsigned C5TSEL : 1; 8746 unsigned : 1; 8747 unsigned C6TSEL : 1; 8748 unsigned : 1; 8749 unsigned C7TSEL0 : 1; 8750 unsigned C7TSEL1 : 1; 8751 }; 8752 8753 struct 8754 { 8755 unsigned : 1; 8756 unsigned : 1; 8757 unsigned C5TSEL0 : 1; 8758 unsigned : 1; 8759 unsigned C6TSEL0 : 1; 8760 unsigned : 1; 8761 unsigned : 1; 8762 unsigned : 1; 8763 }; 8764 8765 struct 8766 { 8767 unsigned C4TSEL : 2; 8768 unsigned : 6; 8769 }; 8770 8771 struct 8772 { 8773 unsigned : 6; 8774 unsigned C7TSEL : 2; 8775 }; 8776 } __CCPTMRS1bits_t; 8777 8778 extern __at(0x0F35) volatile __CCPTMRS1bits_t CCPTMRS1bits; 8779 8780 #define _C4TSEL0 0x01 8781 #define _C4TSEL1 0x02 8782 #define _C5TSEL 0x04 8783 #define _C5TSEL0 0x04 8784 #define _C6TSEL 0x10 8785 #define _C6TSEL0 0x10 8786 #define _C7TSEL0 0x40 8787 #define _C7TSEL1 0x80 8788 8789 //============================================================================== 8790 8791 8792 //============================================================================== 8793 // CCPTMRS0 Bits 8794 8795 extern __at(0x0F36) __sfr CCPTMRS0; 8796 8797 typedef union 8798 { 8799 struct 8800 { 8801 unsigned C1TSEL0 : 1; 8802 unsigned C1TSEL1 : 1; 8803 unsigned C1TSEL2 : 1; 8804 unsigned C2TSEL0 : 1; 8805 unsigned C2TSEL1 : 1; 8806 unsigned C2TSEL2 : 1; 8807 unsigned C3TSEL0 : 1; 8808 unsigned C3TSEL1 : 1; 8809 }; 8810 8811 struct 8812 { 8813 unsigned C1TSEL : 3; 8814 unsigned : 5; 8815 }; 8816 8817 struct 8818 { 8819 unsigned : 3; 8820 unsigned C2TSEL : 3; 8821 unsigned : 2; 8822 }; 8823 8824 struct 8825 { 8826 unsigned : 6; 8827 unsigned C3TSEL : 2; 8828 }; 8829 } __CCPTMRS0bits_t; 8830 8831 extern __at(0x0F36) volatile __CCPTMRS0bits_t CCPTMRS0bits; 8832 8833 #define _C1TSEL0 0x01 8834 #define _C1TSEL1 0x02 8835 #define _C1TSEL2 0x04 8836 #define _C2TSEL0 0x08 8837 #define _C2TSEL1 0x10 8838 #define _C2TSEL2 0x20 8839 #define _C3TSEL0 0x40 8840 #define _C3TSEL1 0x80 8841 8842 //============================================================================== 8843 8844 8845 //============================================================================== 8846 // CM3CON Bits 8847 8848 extern __at(0x0F37) __sfr CM3CON; 8849 8850 typedef union 8851 { 8852 struct 8853 { 8854 unsigned CCH0 : 1; 8855 unsigned CCH1 : 1; 8856 unsigned CREF : 1; 8857 unsigned EVPOL0 : 1; 8858 unsigned EVPOL1 : 1; 8859 unsigned CPOL : 1; 8860 unsigned COE : 1; 8861 unsigned CON : 1; 8862 }; 8863 8864 struct 8865 { 8866 unsigned CCH : 2; 8867 unsigned : 6; 8868 }; 8869 8870 struct 8871 { 8872 unsigned : 3; 8873 unsigned EVPOL : 2; 8874 unsigned : 3; 8875 }; 8876 } __CM3CONbits_t; 8877 8878 extern __at(0x0F37) volatile __CM3CONbits_t CM3CONbits; 8879 8880 #define _CM3CON_CCH0 0x01 8881 #define _CM3CON_CCH1 0x02 8882 #define _CM3CON_CREF 0x04 8883 #define _CM3CON_EVPOL0 0x08 8884 #define _CM3CON_EVPOL1 0x10 8885 #define _CM3CON_CPOL 0x20 8886 #define _CM3CON_COE 0x40 8887 #define _CM3CON_CON 0x80 8888 8889 //============================================================================== 8890 8891 8892 //============================================================================== 8893 // CM2CON Bits 8894 8895 extern __at(0x0F38) __sfr CM2CON; 8896 8897 typedef union 8898 { 8899 struct 8900 { 8901 unsigned CCH0 : 1; 8902 unsigned CCH1 : 1; 8903 unsigned CREF : 1; 8904 unsigned EVPOL0 : 1; 8905 unsigned EVPOL1 : 1; 8906 unsigned CPOL : 1; 8907 unsigned COE : 1; 8908 unsigned CON : 1; 8909 }; 8910 8911 struct 8912 { 8913 unsigned CCH : 2; 8914 unsigned : 6; 8915 }; 8916 8917 struct 8918 { 8919 unsigned : 3; 8920 unsigned EVPOL : 2; 8921 unsigned : 3; 8922 }; 8923 } __CM2CONbits_t; 8924 8925 extern __at(0x0F38) volatile __CM2CONbits_t CM2CONbits; 8926 8927 #define _CM2CON_CCH0 0x01 8928 #define _CM2CON_CCH1 0x02 8929 #define _CM2CON_CREF 0x04 8930 #define _CM2CON_EVPOL0 0x08 8931 #define _CM2CON_EVPOL1 0x10 8932 #define _CM2CON_CPOL 0x20 8933 #define _CM2CON_COE 0x40 8934 #define _CM2CON_CON 0x80 8935 8936 //============================================================================== 8937 8938 8939 //============================================================================== 8940 // SSP2CON3 Bits 8941 8942 extern __at(0x0F39) __sfr SSP2CON3; 8943 8944 typedef struct 8945 { 8946 unsigned DHEN : 1; 8947 unsigned AHEN : 1; 8948 unsigned SBCDE : 1; 8949 unsigned SDAHT : 1; 8950 unsigned BOEN : 1; 8951 unsigned SCIE : 1; 8952 unsigned PCIE : 1; 8953 unsigned ACKTIM : 1; 8954 } __SSP2CON3bits_t; 8955 8956 extern __at(0x0F39) volatile __SSP2CON3bits_t SSP2CON3bits; 8957 8958 #define _SSP2CON3_DHEN 0x01 8959 #define _SSP2CON3_AHEN 0x02 8960 #define _SSP2CON3_SBCDE 0x04 8961 #define _SSP2CON3_SDAHT 0x08 8962 #define _SSP2CON3_BOEN 0x10 8963 #define _SSP2CON3_SCIE 0x20 8964 #define _SSP2CON3_PCIE 0x40 8965 #define _SSP2CON3_ACKTIM 0x80 8966 8967 //============================================================================== 8968 8969 8970 //============================================================================== 8971 // T8CON Bits 8972 8973 extern __at(0x0F3A) __sfr T8CON; 8974 8975 typedef union 8976 { 8977 struct 8978 { 8979 unsigned T8CKPS0 : 1; 8980 unsigned T8CKPS1 : 1; 8981 unsigned TMR8ON : 1; 8982 unsigned T8OUTPS0 : 1; 8983 unsigned T8OUTPS1 : 1; 8984 unsigned T8OUTPS2 : 1; 8985 unsigned T8OUTPS3 : 1; 8986 unsigned : 1; 8987 }; 8988 8989 struct 8990 { 8991 unsigned T8CKPS : 2; 8992 unsigned : 6; 8993 }; 8994 8995 struct 8996 { 8997 unsigned : 3; 8998 unsigned T8OUTPS : 4; 8999 unsigned : 1; 9000 }; 9001 } __T8CONbits_t; 9002 9003 extern __at(0x0F3A) volatile __T8CONbits_t T8CONbits; 9004 9005 #define _T8CKPS0 0x01 9006 #define _T8CKPS1 0x02 9007 #define _TMR8ON 0x04 9008 #define _T8OUTPS0 0x08 9009 #define _T8OUTPS1 0x10 9010 #define _T8OUTPS2 0x20 9011 #define _T8OUTPS3 0x40 9012 9013 //============================================================================== 9014 9015 extern __at(0x0F3B) __sfr PR8; 9016 extern __at(0x0F3C) __sfr TMR8; 9017 9018 //============================================================================== 9019 // T6CON Bits 9020 9021 extern __at(0x0F3D) __sfr T6CON; 9022 9023 typedef union 9024 { 9025 struct 9026 { 9027 unsigned T6CKPS0 : 1; 9028 unsigned T6CKPS1 : 1; 9029 unsigned TMR6ON : 1; 9030 unsigned T6OUTPS0 : 1; 9031 unsigned T6OUTPS1 : 1; 9032 unsigned T6OUTPS2 : 1; 9033 unsigned T6OUTPS3 : 1; 9034 unsigned : 1; 9035 }; 9036 9037 struct 9038 { 9039 unsigned T6CKPS : 2; 9040 unsigned : 6; 9041 }; 9042 9043 struct 9044 { 9045 unsigned : 3; 9046 unsigned T6OUTPS : 4; 9047 unsigned : 1; 9048 }; 9049 } __T6CONbits_t; 9050 9051 extern __at(0x0F3D) volatile __T6CONbits_t T6CONbits; 9052 9053 #define _T6CKPS0 0x01 9054 #define _T6CKPS1 0x02 9055 #define _TMR6ON 0x04 9056 #define _T6OUTPS0 0x08 9057 #define _T6OUTPS1 0x10 9058 #define _T6OUTPS2 0x20 9059 #define _T6OUTPS3 0x40 9060 9061 //============================================================================== 9062 9063 extern __at(0x0F3E) __sfr PR6; 9064 extern __at(0x0F3F) __sfr TMR6; 9065 9066 //============================================================================== 9067 // CCP10CON Bits 9068 9069 extern __at(0x0F40) __sfr CCP10CON; 9070 9071 typedef union 9072 { 9073 struct 9074 { 9075 unsigned CCP10M0 : 1; 9076 unsigned CCP10M1 : 1; 9077 unsigned CCP10M2 : 1; 9078 unsigned CCP10M3 : 1; 9079 unsigned DC10B0 : 1; 9080 unsigned DC10B1 : 1; 9081 unsigned : 1; 9082 unsigned : 1; 9083 }; 9084 9085 struct 9086 { 9087 unsigned : 1; 9088 unsigned : 1; 9089 unsigned : 1; 9090 unsigned : 1; 9091 unsigned CCP10Y : 1; 9092 unsigned CCP10X : 1; 9093 unsigned : 1; 9094 unsigned : 1; 9095 }; 9096 9097 struct 9098 { 9099 unsigned CCP10M : 4; 9100 unsigned : 4; 9101 }; 9102 9103 struct 9104 { 9105 unsigned : 4; 9106 unsigned DC10B : 2; 9107 unsigned : 2; 9108 }; 9109 } __CCP10CONbits_t; 9110 9111 extern __at(0x0F40) volatile __CCP10CONbits_t CCP10CONbits; 9112 9113 #define _CCP10M0 0x01 9114 #define _CCP10M1 0x02 9115 #define _CCP10M2 0x04 9116 #define _CCP10M3 0x08 9117 #define _DC10B0 0x10 9118 #define _CCP10Y 0x10 9119 #define _DC10B1 0x20 9120 #define _CCP10X 0x20 9121 9122 //============================================================================== 9123 9124 extern __at(0x0F41) __sfr CCPR10; 9125 extern __at(0x0F41) __sfr CCPR10L; 9126 extern __at(0x0F42) __sfr CCPR10H; 9127 9128 //============================================================================== 9129 // CCP9CON Bits 9130 9131 extern __at(0x0F43) __sfr CCP9CON; 9132 9133 typedef union 9134 { 9135 struct 9136 { 9137 unsigned CCP9M0 : 1; 9138 unsigned CCP9M1 : 1; 9139 unsigned CCP9M2 : 1; 9140 unsigned CCP9M3 : 1; 9141 unsigned DC9B0 : 1; 9142 unsigned DC9B1 : 1; 9143 unsigned : 1; 9144 unsigned : 1; 9145 }; 9146 9147 struct 9148 { 9149 unsigned : 1; 9150 unsigned : 1; 9151 unsigned : 1; 9152 unsigned : 1; 9153 unsigned CCP9Y : 1; 9154 unsigned CCP9X : 1; 9155 unsigned : 1; 9156 unsigned : 1; 9157 }; 9158 9159 struct 9160 { 9161 unsigned CCP9M : 4; 9162 unsigned : 4; 9163 }; 9164 9165 struct 9166 { 9167 unsigned : 4; 9168 unsigned DC9B : 2; 9169 unsigned : 2; 9170 }; 9171 } __CCP9CONbits_t; 9172 9173 extern __at(0x0F43) volatile __CCP9CONbits_t CCP9CONbits; 9174 9175 #define _CCP9M0 0x01 9176 #define _CCP9M1 0x02 9177 #define _CCP9M2 0x04 9178 #define _CCP9M3 0x08 9179 #define _DC9B0 0x10 9180 #define _CCP9Y 0x10 9181 #define _DC9B1 0x20 9182 #define _CCP9X 0x20 9183 9184 //============================================================================== 9185 9186 extern __at(0x0F44) __sfr CCPR9; 9187 extern __at(0x0F44) __sfr CCPR9L; 9188 extern __at(0x0F45) __sfr CCPR9H; 9189 9190 //============================================================================== 9191 // CCP8CON Bits 9192 9193 extern __at(0x0F46) __sfr CCP8CON; 9194 9195 typedef union 9196 { 9197 struct 9198 { 9199 unsigned CCP8M0 : 1; 9200 unsigned CCP8M1 : 1; 9201 unsigned CCP8M2 : 1; 9202 unsigned CCP8M3 : 1; 9203 unsigned DC8B0 : 1; 9204 unsigned DC8B1 : 1; 9205 unsigned : 1; 9206 unsigned : 1; 9207 }; 9208 9209 struct 9210 { 9211 unsigned : 1; 9212 unsigned : 1; 9213 unsigned : 1; 9214 unsigned : 1; 9215 unsigned CCP8Y : 1; 9216 unsigned CCP8X : 1; 9217 unsigned : 1; 9218 unsigned : 1; 9219 }; 9220 9221 struct 9222 { 9223 unsigned CCP8M : 4; 9224 unsigned : 4; 9225 }; 9226 9227 struct 9228 { 9229 unsigned : 4; 9230 unsigned DC8B : 2; 9231 unsigned : 2; 9232 }; 9233 } __CCP8CONbits_t; 9234 9235 extern __at(0x0F46) volatile __CCP8CONbits_t CCP8CONbits; 9236 9237 #define _CCP8M0 0x01 9238 #define _CCP8M1 0x02 9239 #define _CCP8M2 0x04 9240 #define _CCP8M3 0x08 9241 #define _DC8B0 0x10 9242 #define _CCP8Y 0x10 9243 #define _DC8B1 0x20 9244 #define _CCP8X 0x20 9245 9246 //============================================================================== 9247 9248 extern __at(0x0F47) __sfr CCPR8; 9249 extern __at(0x0F47) __sfr CCPR8L; 9250 extern __at(0x0F48) __sfr CCPR8H; 9251 9252 //============================================================================== 9253 // CCP3CON Bits 9254 9255 extern __at(0x0F49) __sfr CCP3CON; 9256 9257 typedef union 9258 { 9259 struct 9260 { 9261 unsigned CCP3M0 : 1; 9262 unsigned CCP3M1 : 1; 9263 unsigned CCP3M2 : 1; 9264 unsigned CCP3M3 : 1; 9265 unsigned DC3B0 : 1; 9266 unsigned DC3B1 : 1; 9267 unsigned P3M0 : 1; 9268 unsigned P3M1 : 1; 9269 }; 9270 9271 struct 9272 { 9273 unsigned : 1; 9274 unsigned : 1; 9275 unsigned : 1; 9276 unsigned : 1; 9277 unsigned CCP3Y : 1; 9278 unsigned CCP3X : 1; 9279 unsigned : 1; 9280 unsigned : 1; 9281 }; 9282 9283 struct 9284 { 9285 unsigned CCP3M : 4; 9286 unsigned : 4; 9287 }; 9288 9289 struct 9290 { 9291 unsigned : 4; 9292 unsigned DC3B : 2; 9293 unsigned : 2; 9294 }; 9295 9296 struct 9297 { 9298 unsigned : 6; 9299 unsigned P3M : 2; 9300 }; 9301 } __CCP3CONbits_t; 9302 9303 extern __at(0x0F49) volatile __CCP3CONbits_t CCP3CONbits; 9304 9305 #define _CCP3M0 0x01 9306 #define _CCP3M1 0x02 9307 #define _CCP3M2 0x04 9308 #define _CCP3M3 0x08 9309 #define _DC3B0 0x10 9310 #define _CCP3Y 0x10 9311 #define _DC3B1 0x20 9312 #define _CCP3X 0x20 9313 #define _P3M0 0x40 9314 #define _P3M1 0x80 9315 9316 //============================================================================== 9317 9318 extern __at(0x0F4A) __sfr CCPR3; 9319 extern __at(0x0F4A) __sfr CCPR3L; 9320 extern __at(0x0F4B) __sfr CCPR3H; 9321 9322 //============================================================================== 9323 // ECCP3DEL Bits 9324 9325 extern __at(0x0F4C) __sfr ECCP3DEL; 9326 9327 typedef union 9328 { 9329 struct 9330 { 9331 unsigned P3DC0 : 1; 9332 unsigned P3DC1 : 1; 9333 unsigned P3DC2 : 1; 9334 unsigned P3DC3 : 1; 9335 unsigned P3DC4 : 1; 9336 unsigned P3DC5 : 1; 9337 unsigned P3DC6 : 1; 9338 unsigned P3RSEN : 1; 9339 }; 9340 9341 struct 9342 { 9343 unsigned P3DC : 7; 9344 unsigned : 1; 9345 }; 9346 } __ECCP3DELbits_t; 9347 9348 extern __at(0x0F4C) volatile __ECCP3DELbits_t ECCP3DELbits; 9349 9350 #define _P3DC0 0x01 9351 #define _P3DC1 0x02 9352 #define _P3DC2 0x04 9353 #define _P3DC3 0x08 9354 #define _P3DC4 0x10 9355 #define _P3DC5 0x20 9356 #define _P3DC6 0x40 9357 #define _P3RSEN 0x80 9358 9359 //============================================================================== 9360 9361 9362 //============================================================================== 9363 // ECCP3AS Bits 9364 9365 extern __at(0x0F4D) __sfr ECCP3AS; 9366 9367 typedef union 9368 { 9369 struct 9370 { 9371 unsigned PSS3BD0 : 1; 9372 unsigned PSS3BD1 : 1; 9373 unsigned PSS3AC0 : 1; 9374 unsigned PSS3AC1 : 1; 9375 unsigned ECCP3AS0 : 1; 9376 unsigned ECCP3AS1 : 1; 9377 unsigned ECCP3AS2 : 1; 9378 unsigned ECCP3ASE : 1; 9379 }; 9380 9381 struct 9382 { 9383 unsigned PSS3BD : 2; 9384 unsigned : 6; 9385 }; 9386 9387 struct 9388 { 9389 unsigned : 2; 9390 unsigned PSS3AC : 2; 9391 unsigned : 4; 9392 }; 9393 9394 struct 9395 { 9396 unsigned : 4; 9397 unsigned ECCP3AS : 3; 9398 unsigned : 1; 9399 }; 9400 } __ECCP3ASbits_t; 9401 9402 extern __at(0x0F4D) volatile __ECCP3ASbits_t ECCP3ASbits; 9403 9404 #define _PSS3BD0 0x01 9405 #define _PSS3BD1 0x02 9406 #define _PSS3AC0 0x04 9407 #define _PSS3AC1 0x08 9408 #define _ECCP3AS0 0x10 9409 #define _ECCP3AS1 0x20 9410 #define _ECCP3AS2 0x40 9411 #define _ECCP3ASE 0x80 9412 9413 //============================================================================== 9414 9415 9416 //============================================================================== 9417 // CCP2CON Bits 9418 9419 extern __at(0x0F4E) __sfr CCP2CON; 9420 9421 typedef union 9422 { 9423 struct 9424 { 9425 unsigned CCP2M0 : 1; 9426 unsigned CCP2M1 : 1; 9427 unsigned CCP2M2 : 1; 9428 unsigned CCP2M3 : 1; 9429 unsigned DC2B0 : 1; 9430 unsigned DC2B1 : 1; 9431 unsigned P2M0 : 1; 9432 unsigned P2M1 : 1; 9433 }; 9434 9435 struct 9436 { 9437 unsigned : 1; 9438 unsigned : 1; 9439 unsigned : 1; 9440 unsigned : 1; 9441 unsigned CCP2Y : 1; 9442 unsigned CCP2X : 1; 9443 unsigned : 1; 9444 unsigned : 1; 9445 }; 9446 9447 struct 9448 { 9449 unsigned CCP2M : 4; 9450 unsigned : 4; 9451 }; 9452 9453 struct 9454 { 9455 unsigned : 4; 9456 unsigned DC2B : 2; 9457 unsigned : 2; 9458 }; 9459 9460 struct 9461 { 9462 unsigned : 6; 9463 unsigned P2M : 2; 9464 }; 9465 } __CCP2CONbits_t; 9466 9467 extern __at(0x0F4E) volatile __CCP2CONbits_t CCP2CONbits; 9468 9469 #define _CCP2M0 0x01 9470 #define _CCP2M1 0x02 9471 #define _CCP2M2 0x04 9472 #define _CCP2M3 0x08 9473 #define _DC2B0 0x10 9474 #define _CCP2Y 0x10 9475 #define _DC2B1 0x20 9476 #define _CCP2X 0x20 9477 #define _P2M0 0x40 9478 #define _P2M1 0x80 9479 9480 //============================================================================== 9481 9482 extern __at(0x0F4F) __sfr CCPR2; 9483 extern __at(0x0F4F) __sfr CCPR2L; 9484 extern __at(0x0F50) __sfr CCPR2H; 9485 9486 //============================================================================== 9487 // ECCP2DEL Bits 9488 9489 extern __at(0x0F51) __sfr ECCP2DEL; 9490 9491 typedef union 9492 { 9493 struct 9494 { 9495 unsigned P2DC0 : 1; 9496 unsigned P2DC1 : 1; 9497 unsigned P2DC2 : 1; 9498 unsigned P2DC3 : 1; 9499 unsigned P2DC4 : 1; 9500 unsigned P2DC5 : 1; 9501 unsigned P2DC6 : 1; 9502 unsigned P2RSEN : 1; 9503 }; 9504 9505 struct 9506 { 9507 unsigned P2DC : 7; 9508 unsigned : 1; 9509 }; 9510 } __ECCP2DELbits_t; 9511 9512 extern __at(0x0F51) volatile __ECCP2DELbits_t ECCP2DELbits; 9513 9514 #define _P2DC0 0x01 9515 #define _P2DC1 0x02 9516 #define _P2DC2 0x04 9517 #define _P2DC3 0x08 9518 #define _P2DC4 0x10 9519 #define _P2DC5 0x20 9520 #define _P2DC6 0x40 9521 #define _P2RSEN 0x80 9522 9523 //============================================================================== 9524 9525 9526 //============================================================================== 9527 // ECCP2AS Bits 9528 9529 extern __at(0x0F52) __sfr ECCP2AS; 9530 9531 typedef union 9532 { 9533 struct 9534 { 9535 unsigned PSS2BD0 : 1; 9536 unsigned PSS2BD1 : 1; 9537 unsigned PSS2AC0 : 1; 9538 unsigned PSS2AC1 : 1; 9539 unsigned ECCP2AS0 : 1; 9540 unsigned ECCP2AS1 : 1; 9541 unsigned ECCP2AS2 : 1; 9542 unsigned ECCP2ASE : 1; 9543 }; 9544 9545 struct 9546 { 9547 unsigned PSS2BD : 2; 9548 unsigned : 6; 9549 }; 9550 9551 struct 9552 { 9553 unsigned : 2; 9554 unsigned PSS2AC : 2; 9555 unsigned : 4; 9556 }; 9557 9558 struct 9559 { 9560 unsigned : 4; 9561 unsigned ECCP2AS : 3; 9562 unsigned : 1; 9563 }; 9564 } __ECCP2ASbits_t; 9565 9566 extern __at(0x0F52) volatile __ECCP2ASbits_t ECCP2ASbits; 9567 9568 #define _PSS2BD0 0x01 9569 #define _PSS2BD1 0x02 9570 #define _PSS2AC0 0x04 9571 #define _PSS2AC1 0x08 9572 #define _ECCP2AS0 0x10 9573 #define _ECCP2AS1 0x20 9574 #define _ECCP2AS2 0x40 9575 #define _ECCP2ASE 0x80 9576 9577 //============================================================================== 9578 9579 9580 //============================================================================== 9581 // CM1CON Bits 9582 9583 extern __at(0x0F53) __sfr CM1CON; 9584 9585 typedef union 9586 { 9587 struct 9588 { 9589 unsigned CCH0 : 1; 9590 unsigned CCH1 : 1; 9591 unsigned CREF : 1; 9592 unsigned EVPOL0 : 1; 9593 unsigned EVPOL1 : 1; 9594 unsigned CPOL : 1; 9595 unsigned COE : 1; 9596 unsigned CON : 1; 9597 }; 9598 9599 struct 9600 { 9601 unsigned CCH : 2; 9602 unsigned : 6; 9603 }; 9604 9605 struct 9606 { 9607 unsigned : 3; 9608 unsigned EVPOL : 2; 9609 unsigned : 3; 9610 }; 9611 } __CM1CONbits_t; 9612 9613 extern __at(0x0F53) volatile __CM1CONbits_t CM1CONbits; 9614 9615 #define _CCH0 0x01 9616 #define _CCH1 0x02 9617 #define _CREF 0x04 9618 #define _EVPOL0 0x08 9619 #define _EVPOL1 0x10 9620 #define _CPOL 0x20 9621 #define _COE 0x40 9622 #define _CON 0x80 9623 9624 //============================================================================== 9625 9626 9627 //============================================================================== 9628 // PADCFG1 Bits 9629 9630 extern __at(0x0F54) __sfr PADCFG1; 9631 9632 typedef struct 9633 { 9634 unsigned RLPU : 1; 9635 unsigned RKPU : 1; 9636 unsigned RJPU : 1; 9637 unsigned RHPU : 1; 9638 unsigned RGPU : 1; 9639 unsigned RFPU : 1; 9640 unsigned REPU : 1; 9641 unsigned RDPU : 1; 9642 } __PADCFG1bits_t; 9643 9644 extern __at(0x0F54) volatile __PADCFG1bits_t PADCFG1bits; 9645 9646 #define _RLPU 0x01 9647 #define _RKPU 0x02 9648 #define _RJPU 0x04 9649 #define _RHPU 0x08 9650 #define _RGPU 0x10 9651 #define _RFPU 0x20 9652 #define _REPU 0x40 9653 #define _RDPU 0x80 9654 9655 //============================================================================== 9656 9657 9658 //============================================================================== 9659 // IOCN Bits 9660 9661 extern __at(0x0F55) __sfr IOCN; 9662 9663 typedef struct 9664 { 9665 unsigned IOCN0 : 1; 9666 unsigned IOCN1 : 1; 9667 unsigned IOCN2 : 1; 9668 unsigned IOCN3 : 1; 9669 unsigned IOCN4 : 1; 9670 unsigned IOCN5 : 1; 9671 unsigned IOCN6 : 1; 9672 unsigned IOCN7 : 1; 9673 } __IOCNbits_t; 9674 9675 extern __at(0x0F55) volatile __IOCNbits_t IOCNbits; 9676 9677 #define _IOCN0 0x01 9678 #define _IOCN1 0x02 9679 #define _IOCN2 0x04 9680 #define _IOCN3 0x08 9681 #define _IOCN4 0x10 9682 #define _IOCN5 0x20 9683 #define _IOCN6 0x40 9684 #define _IOCN7 0x80 9685 9686 //============================================================================== 9687 9688 9689 //============================================================================== 9690 // IOCP Bits 9691 9692 extern __at(0x0F56) __sfr IOCP; 9693 9694 typedef struct 9695 { 9696 unsigned IOCP0 : 1; 9697 unsigned IOCP1 : 1; 9698 unsigned IOCP2 : 1; 9699 unsigned IOCP3 : 1; 9700 unsigned IOCP4 : 1; 9701 unsigned IOCP5 : 1; 9702 unsigned IOCP6 : 1; 9703 unsigned IOCP7 : 1; 9704 } __IOCPbits_t; 9705 9706 extern __at(0x0F56) volatile __IOCPbits_t IOCPbits; 9707 9708 #define _IOCP0 0x01 9709 #define _IOCP1 0x02 9710 #define _IOCP2 0x04 9711 #define _IOCP3 0x08 9712 #define _IOCP4 0x10 9713 #define _IOCP5 0x20 9714 #define _IOCP6 0x40 9715 #define _IOCP7 0x80 9716 9717 //============================================================================== 9718 9719 9720 //============================================================================== 9721 // RTCCON2 Bits 9722 9723 extern __at(0x0F57) __sfr RTCCON2; 9724 9725 typedef union 9726 { 9727 struct 9728 { 9729 unsigned RTCSECSEL0 : 1; 9730 unsigned RTCSECSEL1 : 1; 9731 unsigned RTCCLKSEL0 : 1; 9732 unsigned RTCCLKSEL1 : 1; 9733 unsigned PWCSPRE : 1; 9734 unsigned PWCCPRE : 1; 9735 unsigned PWCPOL : 1; 9736 unsigned PWCEN : 1; 9737 }; 9738 9739 struct 9740 { 9741 unsigned RTCSECSEL : 2; 9742 unsigned : 6; 9743 }; 9744 9745 struct 9746 { 9747 unsigned : 2; 9748 unsigned RTCCLKSEL : 2; 9749 unsigned : 4; 9750 }; 9751 } __RTCCON2bits_t; 9752 9753 extern __at(0x0F57) volatile __RTCCON2bits_t RTCCON2bits; 9754 9755 #define _RTCSECSEL0 0x01 9756 #define _RTCSECSEL1 0x02 9757 #define _RTCCLKSEL0 0x04 9758 #define _RTCCLKSEL1 0x08 9759 #define _PWCSPRE 0x10 9760 #define _PWCCPRE 0x20 9761 #define _PWCPOL 0x40 9762 #define _PWCEN 0x80 9763 9764 //============================================================================== 9765 9766 extern __at(0x0F58) __sfr ALRMVALL; 9767 extern __at(0x0F59) __sfr ALRMVALH; 9768 9769 //============================================================================== 9770 // ALRMRPT Bits 9771 9772 extern __at(0x0F5A) __sfr ALRMRPT; 9773 9774 typedef struct 9775 { 9776 unsigned ARPT0 : 1; 9777 unsigned ARPT1 : 1; 9778 unsigned ARPT2 : 1; 9779 unsigned ARPT3 : 1; 9780 unsigned ARPT4 : 1; 9781 unsigned ARPT5 : 1; 9782 unsigned ARPT6 : 1; 9783 unsigned ARPT7 : 1; 9784 } __ALRMRPTbits_t; 9785 9786 extern __at(0x0F5A) volatile __ALRMRPTbits_t ALRMRPTbits; 9787 9788 #define _ARPT0 0x01 9789 #define _ARPT1 0x02 9790 #define _ARPT2 0x04 9791 #define _ARPT3 0x08 9792 #define _ARPT4 0x10 9793 #define _ARPT5 0x20 9794 #define _ARPT6 0x40 9795 #define _ARPT7 0x80 9796 9797 //============================================================================== 9798 9799 9800 //============================================================================== 9801 // ALRMCFG Bits 9802 9803 extern __at(0x0F5B) __sfr ALRMCFG; 9804 9805 typedef union 9806 { 9807 struct 9808 { 9809 unsigned ALRMPTR0 : 1; 9810 unsigned ALRMPTR1 : 1; 9811 unsigned AMASK0 : 1; 9812 unsigned AMASK1 : 1; 9813 unsigned AMASK2 : 1; 9814 unsigned AMASK3 : 1; 9815 unsigned CHIME : 1; 9816 unsigned ALRMEN : 1; 9817 }; 9818 9819 struct 9820 { 9821 unsigned ALRMPTR : 2; 9822 unsigned : 6; 9823 }; 9824 9825 struct 9826 { 9827 unsigned : 2; 9828 unsigned AMASK : 4; 9829 unsigned : 2; 9830 }; 9831 } __ALRMCFGbits_t; 9832 9833 extern __at(0x0F5B) volatile __ALRMCFGbits_t ALRMCFGbits; 9834 9835 #define _ALRMPTR0 0x01 9836 #define _ALRMPTR1 0x02 9837 #define _AMASK0 0x04 9838 #define _AMASK1 0x08 9839 #define _AMASK2 0x10 9840 #define _AMASK3 0x20 9841 #define _CHIME 0x40 9842 #define _ALRMEN 0x80 9843 9844 //============================================================================== 9845 9846 extern __at(0x0F5C) __sfr RTCVALL; 9847 extern __at(0x0F5D) __sfr RTCVALH; 9848 9849 //============================================================================== 9850 // RTCCAL Bits 9851 9852 extern __at(0x0F5E) __sfr RTCCAL; 9853 9854 typedef struct 9855 { 9856 unsigned CAL0 : 1; 9857 unsigned CAL1 : 1; 9858 unsigned CAL2 : 1; 9859 unsigned CAL3 : 1; 9860 unsigned CAL4 : 1; 9861 unsigned CAL5 : 1; 9862 unsigned CAL6 : 1; 9863 unsigned CAL7 : 1; 9864 } __RTCCALbits_t; 9865 9866 extern __at(0x0F5E) volatile __RTCCALbits_t RTCCALbits; 9867 9868 #define _CAL0 0x01 9869 #define _CAL1 0x02 9870 #define _CAL2 0x04 9871 #define _CAL3 0x08 9872 #define _CAL4 0x10 9873 #define _CAL5 0x20 9874 #define _CAL6 0x40 9875 #define _CAL7 0x80 9876 9877 //============================================================================== 9878 9879 9880 //============================================================================== 9881 // RTCCON1 Bits 9882 9883 extern __at(0x0F5F) __sfr RTCCON1; 9884 9885 typedef union 9886 { 9887 struct 9888 { 9889 unsigned RTCPTR0 : 1; 9890 unsigned RTCPTR1 : 1; 9891 unsigned RTCOE : 1; 9892 unsigned HALFSEC : 1; 9893 unsigned RTCSYNC : 1; 9894 unsigned RTCWREN : 1; 9895 unsigned : 1; 9896 unsigned RTCEN : 1; 9897 }; 9898 9899 struct 9900 { 9901 unsigned RTCPTR : 2; 9902 unsigned : 6; 9903 }; 9904 } __RTCCON1bits_t; 9905 9906 extern __at(0x0F5F) volatile __RTCCON1bits_t RTCCON1bits; 9907 9908 #define _RTCPTR0 0x01 9909 #define _RTCPTR1 0x02 9910 #define _RTCOE 0x04 9911 #define _HALFSEC 0x08 9912 #define _RTCSYNC 0x10 9913 #define _RTCWREN 0x20 9914 #define _RTCEN 0x80 9915 9916 //============================================================================== 9917 9918 9919 //============================================================================== 9920 // DMACON1 Bits 9921 9922 extern __at(0x0F60) __sfr DMACON1; 9923 9924 typedef union 9925 { 9926 struct 9927 { 9928 unsigned DMAEN : 1; 9929 unsigned DLYINTEN : 1; 9930 unsigned DUPLEX0 : 1; 9931 unsigned DUPLEX1 : 1; 9932 unsigned RXINC : 1; 9933 unsigned TXINC : 1; 9934 unsigned SSCON0 : 1; 9935 unsigned SSCON1 : 1; 9936 }; 9937 9938 struct 9939 { 9940 unsigned : 2; 9941 unsigned DUPLEX : 2; 9942 unsigned : 4; 9943 }; 9944 9945 struct 9946 { 9947 unsigned : 6; 9948 unsigned SSCON : 2; 9949 }; 9950 } __DMACON1bits_t; 9951 9952 extern __at(0x0F60) volatile __DMACON1bits_t DMACON1bits; 9953 9954 #define _DMAEN 0x01 9955 #define _DLYINTEN 0x02 9956 #define _DUPLEX0 0x04 9957 #define _DUPLEX1 0x08 9958 #define _RXINC 0x10 9959 #define _TXINC 0x20 9960 #define _SSCON0 0x40 9961 #define _SSCON1 0x80 9962 9963 //============================================================================== 9964 9965 9966 //============================================================================== 9967 // PIE6 Bits 9968 9969 extern __at(0x0F61) __sfr PIE6; 9970 9971 typedef struct 9972 { 9973 unsigned CMP1IE : 1; 9974 unsigned CMP2IE : 1; 9975 unsigned CMP3IE : 1; 9976 unsigned : 1; 9977 unsigned TX3IE : 1; 9978 unsigned RC3IE : 1; 9979 unsigned TX4IE : 1; 9980 unsigned RC4IE : 1; 9981 } __PIE6bits_t; 9982 9983 extern __at(0x0F61) volatile __PIE6bits_t PIE6bits; 9984 9985 #define _CMP1IE 0x01 9986 #define _CMP2IE 0x02 9987 #define _CMP3IE 0x04 9988 #define _TX3IE 0x10 9989 #define _RC3IE 0x20 9990 #define _TX4IE 0x40 9991 #define _RC4IE 0x80 9992 9993 //============================================================================== 9994 9995 9996 //============================================================================== 9997 // WPUB Bits 9998 9999 extern __at(0x0F62) __sfr WPUB; 10000 10001 typedef struct 10002 { 10003 unsigned WPUB0 : 1; 10004 unsigned WPUB1 : 1; 10005 unsigned WPUB2 : 1; 10006 unsigned WPUB3 : 1; 10007 unsigned WPUB4 : 1; 10008 unsigned WPUB5 : 1; 10009 unsigned WPUB6 : 1; 10010 unsigned WPUB7 : 1; 10011 } __WPUBbits_t; 10012 10013 extern __at(0x0F62) volatile __WPUBbits_t WPUBbits; 10014 10015 #define _WPUB0 0x01 10016 #define _WPUB1 0x02 10017 #define _WPUB2 0x04 10018 #define _WPUB3 0x08 10019 #define _WPUB4 0x10 10020 #define _WPUB5 0x20 10021 #define _WPUB6 0x40 10022 #define _WPUB7 0x80 10023 10024 //============================================================================== 10025 10026 10027 //============================================================================== 10028 // ACTCON Bits 10029 10030 extern __at(0x0F63) __sfr ACTCON; 10031 10032 typedef struct 10033 { 10034 unsigned ACTORSPOL : 1; 10035 unsigned ACTORS : 1; 10036 unsigned ACTLOCKPOL : 1; 10037 unsigned ACTLOCK : 1; 10038 unsigned ACTSRC : 1; 10039 unsigned ACTSIDL : 1; 10040 unsigned : 1; 10041 unsigned ACTEN : 1; 10042 } __ACTCONbits_t; 10043 10044 extern __at(0x0F63) volatile __ACTCONbits_t ACTCONbits; 10045 10046 #define _ACTORSPOL 0x01 10047 #define _ACTORS 0x02 10048 #define _ACTLOCKPOL 0x04 10049 #define _ACTLOCK 0x08 10050 #define _ACTSRC 0x10 10051 #define _ACTSIDL 0x20 10052 #define _ACTEN 0x80 10053 10054 //============================================================================== 10055 10056 10057 //============================================================================== 10058 // OSCCON4 Bits 10059 10060 extern __at(0x0F64) __sfr OSCCON4; 10061 10062 typedef union 10063 { 10064 struct 10065 { 10066 unsigned : 1; 10067 unsigned : 1; 10068 unsigned : 1; 10069 unsigned : 1; 10070 unsigned : 1; 10071 unsigned PLLEN : 1; 10072 unsigned CPDIV0 : 1; 10073 unsigned CPDIV1 : 1; 10074 }; 10075 10076 struct 10077 { 10078 unsigned : 6; 10079 unsigned CPDIV : 2; 10080 }; 10081 } __OSCCON4bits_t; 10082 10083 extern __at(0x0F64) volatile __OSCCON4bits_t OSCCON4bits; 10084 10085 #define _PLLEN 0x20 10086 #define _CPDIV0 0x40 10087 #define _CPDIV1 0x80 10088 10089 //============================================================================== 10090 10091 10092 //============================================================================== 10093 // OSCCON3 Bits 10094 10095 extern __at(0x0F65) __sfr OSCCON3; 10096 10097 typedef union 10098 { 10099 struct 10100 { 10101 unsigned IRCF0 : 1; 10102 unsigned IRCF1 : 1; 10103 unsigned IRCF2 : 1; 10104 unsigned : 1; 10105 unsigned : 1; 10106 unsigned : 1; 10107 unsigned : 1; 10108 unsigned : 1; 10109 }; 10110 10111 struct 10112 { 10113 unsigned IRCF : 3; 10114 unsigned : 5; 10115 }; 10116 } __OSCCON3bits_t; 10117 10118 extern __at(0x0F65) volatile __OSCCON3bits_t OSCCON3bits; 10119 10120 #define _IRCF0 0x01 10121 #define _IRCF1 0x02 10122 #define _IRCF2 0x04 10123 10124 //============================================================================== 10125 10126 10127 //============================================================================== 10128 // OSCCON2 Bits 10129 10130 extern __at(0x0F66) __sfr OSCCON2; 10131 10132 typedef struct 10133 { 10134 unsigned : 1; 10135 unsigned SOSCGO : 1; 10136 unsigned POSCEN : 1; 10137 unsigned CF : 1; 10138 unsigned : 1; 10139 unsigned LOCK : 1; 10140 unsigned IOLOCK : 1; 10141 unsigned CLKLOCK : 1; 10142 } __OSCCON2bits_t; 10143 10144 extern __at(0x0F66) volatile __OSCCON2bits_t OSCCON2bits; 10145 10146 #define _SOSCGO 0x02 10147 #define _POSCEN 0x04 10148 #define _CF 0x08 10149 #define _LOCK 0x20 10150 #define _IOLOCK 0x40 10151 #define _CLKLOCK 0x80 10152 10153 //============================================================================== 10154 10155 10156 //============================================================================== 10157 // BAUDCON Bits 10158 10159 extern __at(0x0F67) __sfr BAUDCON; 10160 10161 typedef union 10162 { 10163 struct 10164 { 10165 unsigned ABDEN : 1; 10166 unsigned WUE : 1; 10167 unsigned IREN : 1; 10168 unsigned BRG16 : 1; 10169 unsigned TXCKP : 1; 10170 unsigned RXDTP : 1; 10171 unsigned RCIDL : 1; 10172 unsigned ABDOVF : 1; 10173 }; 10174 10175 struct 10176 { 10177 unsigned : 1; 10178 unsigned : 1; 10179 unsigned : 1; 10180 unsigned : 1; 10181 unsigned CKTXP : 1; 10182 unsigned DTRXP : 1; 10183 unsigned RCMT : 1; 10184 unsigned : 1; 10185 }; 10186 10187 struct 10188 { 10189 unsigned : 1; 10190 unsigned : 1; 10191 unsigned : 1; 10192 unsigned : 1; 10193 unsigned SCKP : 1; 10194 unsigned : 1; 10195 unsigned : 1; 10196 unsigned : 1; 10197 }; 10198 } __BAUDCONbits_t; 10199 10200 extern __at(0x0F67) volatile __BAUDCONbits_t BAUDCONbits; 10201 10202 #define _ABDEN 0x01 10203 #define _WUE 0x02 10204 #define _IREN 0x04 10205 #define _BRG16 0x08 10206 #define _TXCKP 0x10 10207 #define _CKTXP 0x10 10208 #define _SCKP 0x10 10209 #define _RXDTP 0x20 10210 #define _DTRXP 0x20 10211 #define _RCIDL 0x40 10212 #define _RCMT 0x40 10213 #define _ABDOVF 0x80 10214 10215 //============================================================================== 10216 10217 10218 //============================================================================== 10219 // BAUDCON1 Bits 10220 10221 extern __at(0x0F67) __sfr BAUDCON1; 10222 10223 typedef union 10224 { 10225 struct 10226 { 10227 unsigned ABDEN : 1; 10228 unsigned WUE : 1; 10229 unsigned IREN : 1; 10230 unsigned BRG16 : 1; 10231 unsigned TXCKP : 1; 10232 unsigned RXDTP : 1; 10233 unsigned RCIDL : 1; 10234 unsigned ABDOVF : 1; 10235 }; 10236 10237 struct 10238 { 10239 unsigned : 1; 10240 unsigned : 1; 10241 unsigned : 1; 10242 unsigned : 1; 10243 unsigned CKTXP : 1; 10244 unsigned DTRXP : 1; 10245 unsigned RCMT : 1; 10246 unsigned : 1; 10247 }; 10248 10249 struct 10250 { 10251 unsigned : 1; 10252 unsigned : 1; 10253 unsigned : 1; 10254 unsigned : 1; 10255 unsigned SCKP : 1; 10256 unsigned : 1; 10257 unsigned : 1; 10258 unsigned : 1; 10259 }; 10260 } __BAUDCON1bits_t; 10261 10262 extern __at(0x0F67) volatile __BAUDCON1bits_t BAUDCON1bits; 10263 10264 #define _BAUDCON1_ABDEN 0x01 10265 #define _BAUDCON1_WUE 0x02 10266 #define _BAUDCON1_IREN 0x04 10267 #define _BAUDCON1_BRG16 0x08 10268 #define _BAUDCON1_TXCKP 0x10 10269 #define _BAUDCON1_CKTXP 0x10 10270 #define _BAUDCON1_SCKP 0x10 10271 #define _BAUDCON1_RXDTP 0x20 10272 #define _BAUDCON1_DTRXP 0x20 10273 #define _BAUDCON1_RCIDL 0x40 10274 #define _BAUDCON1_RCMT 0x40 10275 #define _BAUDCON1_ABDOVF 0x80 10276 10277 //============================================================================== 10278 10279 10280 //============================================================================== 10281 // SSP1MSK Bits 10282 10283 extern __at(0x0F68) __sfr SSP1MSK; 10284 10285 typedef struct 10286 { 10287 unsigned MSK0 : 1; 10288 unsigned MSK1 : 1; 10289 unsigned MSK2 : 1; 10290 unsigned MSK3 : 1; 10291 unsigned MSK4 : 1; 10292 unsigned MSK5 : 1; 10293 unsigned MSK6 : 1; 10294 unsigned MSK7 : 1; 10295 } __SSP1MSKbits_t; 10296 10297 extern __at(0x0F68) volatile __SSP1MSKbits_t SSP1MSKbits; 10298 10299 #define _MSK0 0x01 10300 #define _MSK1 0x02 10301 #define _MSK2 0x04 10302 #define _MSK3 0x08 10303 #define _MSK4 0x10 10304 #define _MSK5 0x20 10305 #define _MSK6 0x40 10306 #define _MSK7 0x80 10307 10308 //============================================================================== 10309 10310 10311 //============================================================================== 10312 // SSP1CON3 Bits 10313 10314 extern __at(0x0F69) __sfr SSP1CON3; 10315 10316 typedef struct 10317 { 10318 unsigned DHEN : 1; 10319 unsigned AHEN : 1; 10320 unsigned SBCDE : 1; 10321 unsigned SDAHT : 1; 10322 unsigned BOEN : 1; 10323 unsigned SCIE : 1; 10324 unsigned PCIE : 1; 10325 unsigned ACKTIM : 1; 10326 } __SSP1CON3bits_t; 10327 10328 extern __at(0x0F69) volatile __SSP1CON3bits_t SSP1CON3bits; 10329 10330 #define _DHEN 0x01 10331 #define _AHEN 0x02 10332 #define _SBCDE 0x04 10333 #define _SDAHT 0x08 10334 #define _BOEN 0x10 10335 #define _SCIE 0x20 10336 #define _PCIE 0x40 10337 #define _ACKTIM 0x80 10338 10339 //============================================================================== 10340 10341 10342 //============================================================================== 10343 // TXBUF Bits 10344 10345 extern __at(0x0F6A) __sfr TXBUF; 10346 10347 typedef struct 10348 { 10349 unsigned TXBUF0 : 1; 10350 unsigned TXBUF1 : 1; 10351 unsigned TXBUF2 : 1; 10352 unsigned TXBUF3 : 1; 10353 unsigned TXBUF4 : 1; 10354 unsigned TXBUF5 : 1; 10355 unsigned TXBUF6 : 1; 10356 unsigned TXBUF7 : 1; 10357 } __TXBUFbits_t; 10358 10359 extern __at(0x0F6A) volatile __TXBUFbits_t TXBUFbits; 10360 10361 #define _TXBUF0 0x01 10362 #define _TXBUF1 0x02 10363 #define _TXBUF2 0x04 10364 #define _TXBUF3 0x08 10365 #define _TXBUF4 0x10 10366 #define _TXBUF5 0x20 10367 #define _TXBUF6 0x40 10368 #define _TXBUF7 0x80 10369 10370 //============================================================================== 10371 10372 10373 //============================================================================== 10374 // DMABCH Bits 10375 10376 extern __at(0x0F6B) __sfr DMABCH; 10377 10378 typedef struct 10379 { 10380 unsigned BC8 : 1; 10381 unsigned BC9 : 1; 10382 unsigned : 1; 10383 unsigned : 1; 10384 unsigned : 1; 10385 unsigned : 1; 10386 unsigned : 1; 10387 unsigned : 1; 10388 } __DMABCHbits_t; 10389 10390 extern __at(0x0F6B) volatile __DMABCHbits_t DMABCHbits; 10391 10392 #define _BC8 0x01 10393 #define _BC9 0x02 10394 10395 //============================================================================== 10396 10397 10398 //============================================================================== 10399 // DMABCL Bits 10400 10401 extern __at(0x0F6C) __sfr DMABCL; 10402 10403 typedef struct 10404 { 10405 unsigned BC0 : 1; 10406 unsigned BC1 : 1; 10407 unsigned BC2 : 1; 10408 unsigned BC3 : 1; 10409 unsigned BC4 : 1; 10410 unsigned BC5 : 1; 10411 unsigned BC6 : 1; 10412 unsigned BC7 : 1; 10413 } __DMABCLbits_t; 10414 10415 extern __at(0x0F6C) volatile __DMABCLbits_t DMABCLbits; 10416 10417 #define _BC0 0x01 10418 #define _BC1 0x02 10419 #define _BC2 0x04 10420 #define _BC3 0x08 10421 #define _BC4 0x10 10422 #define _BC5 0x20 10423 #define _BC6 0x40 10424 #define _BC7 0x80 10425 10426 //============================================================================== 10427 10428 10429 //============================================================================== 10430 // RXADDRH Bits 10431 10432 extern __at(0x0F6D) __sfr RXADDRH; 10433 10434 typedef struct 10435 { 10436 unsigned RXADDR8 : 1; 10437 unsigned RXADDR9 : 1; 10438 unsigned RXADDR10 : 1; 10439 unsigned RXADDR11 : 1; 10440 unsigned : 1; 10441 unsigned : 1; 10442 unsigned : 1; 10443 unsigned : 1; 10444 } __RXADDRHbits_t; 10445 10446 extern __at(0x0F6D) volatile __RXADDRHbits_t RXADDRHbits; 10447 10448 #define _RXADDR8 0x01 10449 #define _RXADDR9 0x02 10450 #define _RXADDR10 0x04 10451 #define _RXADDR11 0x08 10452 10453 //============================================================================== 10454 10455 10456 //============================================================================== 10457 // RXADDRL Bits 10458 10459 extern __at(0x0F6E) __sfr RXADDRL; 10460 10461 typedef struct 10462 { 10463 unsigned RXADDR0 : 1; 10464 unsigned RXADDR1 : 1; 10465 unsigned RXADDR2 : 1; 10466 unsigned RXADDR3 : 1; 10467 unsigned RXADDR4 : 1; 10468 unsigned RXADDR5 : 1; 10469 unsigned RXADDR6 : 1; 10470 unsigned RXADDR7 : 1; 10471 } __RXADDRLbits_t; 10472 10473 extern __at(0x0F6E) volatile __RXADDRLbits_t RXADDRLbits; 10474 10475 #define _RXADDR0 0x01 10476 #define _RXADDR1 0x02 10477 #define _RXADDR2 0x04 10478 #define _RXADDR3 0x08 10479 #define _RXADDR4 0x10 10480 #define _RXADDR5 0x20 10481 #define _RXADDR6 0x40 10482 #define _RXADDR7 0x80 10483 10484 //============================================================================== 10485 10486 10487 //============================================================================== 10488 // TXADDRH Bits 10489 10490 extern __at(0x0F6F) __sfr TXADDRH; 10491 10492 typedef struct 10493 { 10494 unsigned TXADDR8 : 1; 10495 unsigned TXADDR9 : 1; 10496 unsigned TXADDR10 : 1; 10497 unsigned TXADDR11 : 1; 10498 unsigned : 1; 10499 unsigned : 1; 10500 unsigned : 1; 10501 unsigned : 1; 10502 } __TXADDRHbits_t; 10503 10504 extern __at(0x0F6F) volatile __TXADDRHbits_t TXADDRHbits; 10505 10506 #define _TXADDR8 0x01 10507 #define _TXADDR9 0x02 10508 #define _TXADDR10 0x04 10509 #define _TXADDR11 0x08 10510 10511 //============================================================================== 10512 10513 10514 //============================================================================== 10515 // TXADDRL Bits 10516 10517 extern __at(0x0F70) __sfr TXADDRL; 10518 10519 typedef struct 10520 { 10521 unsigned TXADDR0 : 1; 10522 unsigned TXADDR1 : 1; 10523 unsigned TXADDR2 : 1; 10524 unsigned TXADDR3 : 1; 10525 unsigned TXADDR4 : 1; 10526 unsigned TXADDR5 : 1; 10527 unsigned TXADDR6 : 1; 10528 unsigned TXADDR7 : 1; 10529 } __TXADDRLbits_t; 10530 10531 extern __at(0x0F70) volatile __TXADDRLbits_t TXADDRLbits; 10532 10533 #define _TXADDR0 0x01 10534 #define _TXADDR1 0x02 10535 #define _TXADDR2 0x04 10536 #define _TXADDR3 0x08 10537 #define _TXADDR4 0x10 10538 #define _TXADDR5 0x20 10539 #define _TXADDR6 0x40 10540 #define _TXADDR7 0x80 10541 10542 //============================================================================== 10543 10544 10545 //============================================================================== 10546 // PORTVP Bits 10547 10548 extern __at(0x0F71) __sfr PORTVP; 10549 10550 typedef struct 10551 { 10552 unsigned RVP0 : 1; 10553 unsigned RVP1 : 1; 10554 unsigned RVP2 : 1; 10555 unsigned RVP3 : 1; 10556 unsigned RVP4 : 1; 10557 unsigned RVP5 : 1; 10558 unsigned RVP6 : 1; 10559 unsigned RVP7 : 1; 10560 } __PORTVPbits_t; 10561 10562 extern __at(0x0F71) volatile __PORTVPbits_t PORTVPbits; 10563 10564 #define _RVP0 0x01 10565 #define _RVP1 0x02 10566 #define _RVP2 0x04 10567 #define _RVP3 0x08 10568 #define _RVP4 0x10 10569 #define _RVP5 0x20 10570 #define _RVP6 0x40 10571 #define _RVP7 0x80 10572 10573 //============================================================================== 10574 10575 10576 //============================================================================== 10577 // LATVP Bits 10578 10579 extern __at(0x0F72) __sfr LATVP; 10580 10581 typedef struct 10582 { 10583 unsigned LATVP0 : 1; 10584 unsigned LATVP1 : 1; 10585 unsigned LATVP2 : 1; 10586 unsigned LATVP3 : 1; 10587 unsigned LATVP4 : 1; 10588 unsigned LATVP5 : 1; 10589 unsigned LATVP6 : 1; 10590 unsigned LATVP7 : 1; 10591 } __LATVPbits_t; 10592 10593 extern __at(0x0F72) volatile __LATVPbits_t LATVPbits; 10594 10595 #define _LATVP0 0x01 10596 #define _LATVP1 0x02 10597 #define _LATVP2 0x04 10598 #define _LATVP3 0x08 10599 #define _LATVP4 0x10 10600 #define _LATVP5 0x20 10601 #define _LATVP6 0x40 10602 #define _LATVP7 0x80 10603 10604 //============================================================================== 10605 10606 10607 //============================================================================== 10608 // TRISVP Bits 10609 10610 extern __at(0x0F73) __sfr TRISVP; 10611 10612 typedef struct 10613 { 10614 unsigned TRISVP0 : 1; 10615 unsigned TRISVP1 : 1; 10616 unsigned TRISVP2 : 1; 10617 unsigned TRISVP3 : 1; 10618 unsigned TRISVP4 : 1; 10619 unsigned TRISVP5 : 1; 10620 unsigned TRISVP6 : 1; 10621 unsigned TRISVP7 : 1; 10622 } __TRISVPbits_t; 10623 10624 extern __at(0x0F73) volatile __TRISVPbits_t TRISVPbits; 10625 10626 #define _TRISVP0 0x01 10627 #define _TRISVP1 0x02 10628 #define _TRISVP2 0x04 10629 #define _TRISVP3 0x08 10630 #define _TRISVP4 0x10 10631 #define _TRISVP5 0x20 10632 #define _TRISVP6 0x40 10633 #define _TRISVP7 0x80 10634 10635 //============================================================================== 10636 10637 10638 //============================================================================== 10639 // UADDR Bits 10640 10641 extern __at(0x0F74) __sfr UADDR; 10642 10643 typedef union 10644 { 10645 struct 10646 { 10647 unsigned ADDR0 : 1; 10648 unsigned ADDR1 : 1; 10649 unsigned ADDR2 : 1; 10650 unsigned ADDR3 : 1; 10651 unsigned ADDR4 : 1; 10652 unsigned ADDR5 : 1; 10653 unsigned ADDR6 : 1; 10654 unsigned : 1; 10655 }; 10656 10657 struct 10658 { 10659 unsigned ADDR : 7; 10660 unsigned : 1; 10661 }; 10662 } __UADDRbits_t; 10663 10664 extern __at(0x0F74) volatile __UADDRbits_t UADDRbits; 10665 10666 #define _ADDR0 0x01 10667 #define _ADDR1 0x02 10668 #define _ADDR2 0x04 10669 #define _ADDR3 0x08 10670 #define _ADDR4 0x10 10671 #define _ADDR5 0x20 10672 #define _ADDR6 0x40 10673 10674 //============================================================================== 10675 10676 10677 //============================================================================== 10678 // UCON Bits 10679 10680 extern __at(0x0F75) __sfr UCON; 10681 10682 typedef struct 10683 { 10684 unsigned : 1; 10685 unsigned SUSPND : 1; 10686 unsigned RESUME : 1; 10687 unsigned USBEN : 1; 10688 unsigned PKTDIS : 1; 10689 unsigned SE0 : 1; 10690 unsigned PPBRST : 1; 10691 unsigned : 1; 10692 } __UCONbits_t; 10693 10694 extern __at(0x0F75) volatile __UCONbits_t UCONbits; 10695 10696 #define _SUSPND 0x02 10697 #define _RESUME 0x04 10698 #define _USBEN 0x08 10699 #define _PKTDIS 0x10 10700 #define _SE0 0x20 10701 #define _PPBRST 0x40 10702 10703 //============================================================================== 10704 10705 10706 //============================================================================== 10707 // USTAT Bits 10708 10709 extern __at(0x0F76) __sfr USTAT; 10710 10711 typedef union 10712 { 10713 struct 10714 { 10715 unsigned : 1; 10716 unsigned PPBI : 1; 10717 unsigned DIR : 1; 10718 unsigned ENDP0 : 1; 10719 unsigned ENDP1 : 1; 10720 unsigned ENDP2 : 1; 10721 unsigned ENDP3 : 1; 10722 unsigned : 1; 10723 }; 10724 10725 struct 10726 { 10727 unsigned : 3; 10728 unsigned ENDP : 4; 10729 unsigned : 1; 10730 }; 10731 } __USTATbits_t; 10732 10733 extern __at(0x0F76) volatile __USTATbits_t USTATbits; 10734 10735 #define _PPBI 0x02 10736 #define _DIR 0x04 10737 #define _ENDP0 0x08 10738 #define _ENDP1 0x10 10739 #define _ENDP2 0x20 10740 #define _ENDP3 0x40 10741 10742 //============================================================================== 10743 10744 10745 //============================================================================== 10746 // UEIR Bits 10747 10748 extern __at(0x0F77) __sfr UEIR; 10749 10750 typedef struct 10751 { 10752 unsigned PIDEF : 1; 10753 unsigned CRC5EF : 1; 10754 unsigned CRC16EF : 1; 10755 unsigned DFN8EF : 1; 10756 unsigned BTOEF : 1; 10757 unsigned : 1; 10758 unsigned : 1; 10759 unsigned BTSEF : 1; 10760 } __UEIRbits_t; 10761 10762 extern __at(0x0F77) volatile __UEIRbits_t UEIRbits; 10763 10764 #define _PIDEF 0x01 10765 #define _CRC5EF 0x02 10766 #define _CRC16EF 0x04 10767 #define _DFN8EF 0x08 10768 #define _BTOEF 0x10 10769 #define _BTSEF 0x80 10770 10771 //============================================================================== 10772 10773 10774 //============================================================================== 10775 // UIR Bits 10776 10777 extern __at(0x0F78) __sfr UIR; 10778 10779 typedef struct 10780 { 10781 unsigned URSTIF : 1; 10782 unsigned UERRIF : 1; 10783 unsigned ACTVIF : 1; 10784 unsigned TRNIF : 1; 10785 unsigned IDLEIF : 1; 10786 unsigned STALLIF : 1; 10787 unsigned SOFIF : 1; 10788 unsigned : 1; 10789 } __UIRbits_t; 10790 10791 extern __at(0x0F78) volatile __UIRbits_t UIRbits; 10792 10793 #define _URSTIF 0x01 10794 #define _UERRIF 0x02 10795 #define _ACTVIF 0x04 10796 #define _TRNIF 0x08 10797 #define _IDLEIF 0x10 10798 #define _STALLIF 0x20 10799 #define _SOFIF 0x40 10800 10801 //============================================================================== 10802 10803 extern __at(0x0F79) __sfr UFRM; 10804 10805 //============================================================================== 10806 // UFRMH Bits 10807 10808 extern __at(0x0F79) __sfr UFRMH; 10809 10810 typedef struct 10811 { 10812 unsigned FRM8 : 1; 10813 unsigned FRM9 : 1; 10814 unsigned FRM10 : 1; 10815 unsigned : 1; 10816 unsigned : 1; 10817 unsigned : 1; 10818 unsigned : 1; 10819 unsigned : 1; 10820 } __UFRMHbits_t; 10821 10822 extern __at(0x0F79) volatile __UFRMHbits_t UFRMHbits; 10823 10824 #define _FRM8 0x01 10825 #define _FRM9 0x02 10826 #define _FRM10 0x04 10827 10828 //============================================================================== 10829 10830 10831 //============================================================================== 10832 // UFRML Bits 10833 10834 extern __at(0x0F7A) __sfr UFRML; 10835 10836 typedef struct 10837 { 10838 unsigned FRM0 : 1; 10839 unsigned FRM1 : 1; 10840 unsigned FRM2 : 1; 10841 unsigned FRM3 : 1; 10842 unsigned FRM4 : 1; 10843 unsigned FRM5 : 1; 10844 unsigned FRM6 : 1; 10845 unsigned FRM7 : 1; 10846 } __UFRMLbits_t; 10847 10848 extern __at(0x0F7A) volatile __UFRMLbits_t UFRMLbits; 10849 10850 #define _FRM0 0x01 10851 #define _FRM1 0x02 10852 #define _FRM2 0x04 10853 #define _FRM3 0x08 10854 #define _FRM4 0x10 10855 #define _FRM5 0x20 10856 #define _FRM6 0x40 10857 #define _FRM7 0x80 10858 10859 //============================================================================== 10860 10861 10862 //============================================================================== 10863 // RCON4 Bits 10864 10865 extern __at(0x0F7B) __sfr RCON4; 10866 10867 typedef struct 10868 { 10869 unsigned PMSLP : 1; 10870 unsigned : 1; 10871 unsigned DPSLP : 1; 10872 unsigned : 1; 10873 unsigned SRETEN : 1; 10874 unsigned : 1; 10875 unsigned : 1; 10876 unsigned : 1; 10877 } __RCON4bits_t; 10878 10879 extern __at(0x0F7B) volatile __RCON4bits_t RCON4bits; 10880 10881 #define _PMSLP 0x01 10882 #define _DPSLP 0x04 10883 #define _SRETEN 0x10 10884 10885 //============================================================================== 10886 10887 10888 //============================================================================== 10889 // RCON3 Bits 10890 10891 extern __at(0x0F7C) __sfr RCON3; 10892 10893 typedef struct 10894 { 10895 unsigned VBAT : 1; 10896 unsigned VBPOR : 1; 10897 unsigned VDDPOR : 1; 10898 unsigned VDDBOR : 1; 10899 unsigned : 1; 10900 unsigned : 1; 10901 unsigned : 1; 10902 unsigned STKERR : 1; 10903 } __RCON3bits_t; 10904 10905 extern __at(0x0F7C) volatile __RCON3bits_t RCON3bits; 10906 10907 #define _VBAT 0x01 10908 #define _VBPOR 0x02 10909 #define _VDDPOR 0x04 10910 #define _VDDBOR 0x08 10911 #define _STKERR 0x80 10912 10913 //============================================================================== 10914 10915 10916 //============================================================================== 10917 // RCON2 Bits 10918 10919 extern __at(0x0F7D) __sfr RCON2; 10920 10921 typedef struct 10922 { 10923 unsigned : 1; 10924 unsigned : 1; 10925 unsigned : 1; 10926 unsigned : 1; 10927 unsigned : 1; 10928 unsigned SWDTEN : 1; 10929 unsigned : 1; 10930 unsigned EXTR : 1; 10931 } __RCON2bits_t; 10932 10933 extern __at(0x0F7D) volatile __RCON2bits_t RCON2bits; 10934 10935 #define _SWDTEN 0x20 10936 #define _EXTR 0x80 10937 10938 //============================================================================== 10939 10940 extern __at(0x0F7E) __sfr EECON2; 10941 10942 //============================================================================== 10943 // EECON1 Bits 10944 10945 extern __at(0x0F7F) __sfr EECON1; 10946 10947 typedef struct 10948 { 10949 unsigned : 1; 10950 unsigned WR : 1; 10951 unsigned WREN : 1; 10952 unsigned WRERR : 1; 10953 unsigned FREE : 1; 10954 unsigned WWPROG : 1; 10955 unsigned : 1; 10956 unsigned : 1; 10957 } __EECON1bits_t; 10958 10959 extern __at(0x0F7F) volatile __EECON1bits_t EECON1bits; 10960 10961 #define _WR 0x02 10962 #define _WREN 0x04 10963 #define _WRERR 0x08 10964 #define _FREE 0x10 10965 #define _WWPROG 0x20 10966 10967 //============================================================================== 10968 10969 10970 //============================================================================== 10971 // PORTA Bits 10972 10973 extern __at(0x0F80) __sfr PORTA; 10974 10975 typedef struct 10976 { 10977 unsigned RA0 : 1; 10978 unsigned RA1 : 1; 10979 unsigned RA2 : 1; 10980 unsigned RA3 : 1; 10981 unsigned RA4 : 1; 10982 unsigned RA5 : 1; 10983 unsigned RA6 : 1; 10984 unsigned RA7 : 1; 10985 } __PORTAbits_t; 10986 10987 extern __at(0x0F80) volatile __PORTAbits_t PORTAbits; 10988 10989 #define _RA0 0x01 10990 #define _RA1 0x02 10991 #define _RA2 0x04 10992 #define _RA3 0x08 10993 #define _RA4 0x10 10994 #define _RA5 0x20 10995 #define _RA6 0x40 10996 #define _RA7 0x80 10997 10998 //============================================================================== 10999 11000 11001 //============================================================================== 11002 // PORTB Bits 11003 11004 extern __at(0x0F81) __sfr PORTB; 11005 11006 typedef struct 11007 { 11008 unsigned RB0 : 1; 11009 unsigned RB1 : 1; 11010 unsigned RB2 : 1; 11011 unsigned RB3 : 1; 11012 unsigned RB4 : 1; 11013 unsigned RB5 : 1; 11014 unsigned RB6 : 1; 11015 unsigned RB7 : 1; 11016 } __PORTBbits_t; 11017 11018 extern __at(0x0F81) volatile __PORTBbits_t PORTBbits; 11019 11020 #define _RB0 0x01 11021 #define _RB1 0x02 11022 #define _RB2 0x04 11023 #define _RB3 0x08 11024 #define _RB4 0x10 11025 #define _RB5 0x20 11026 #define _RB6 0x40 11027 #define _RB7 0x80 11028 11029 //============================================================================== 11030 11031 11032 //============================================================================== 11033 // PORTC Bits 11034 11035 extern __at(0x0F82) __sfr PORTC; 11036 11037 typedef struct 11038 { 11039 unsigned RC0 : 1; 11040 unsigned RC1 : 1; 11041 unsigned RC2 : 1; 11042 unsigned RC3 : 1; 11043 unsigned RC4 : 1; 11044 unsigned RC5 : 1; 11045 unsigned RC6 : 1; 11046 unsigned RC7 : 1; 11047 } __PORTCbits_t; 11048 11049 extern __at(0x0F82) volatile __PORTCbits_t PORTCbits; 11050 11051 #define _RC0 0x01 11052 #define _RC1 0x02 11053 #define _RC2 0x04 11054 #define _RC3 0x08 11055 #define _RC4 0x10 11056 #define _RC5 0x20 11057 #define _RC6 0x40 11058 #define _RC7 0x80 11059 11060 //============================================================================== 11061 11062 11063 //============================================================================== 11064 // PORTD Bits 11065 11066 extern __at(0x0F83) __sfr PORTD; 11067 11068 typedef struct 11069 { 11070 unsigned RD0 : 1; 11071 unsigned RD1 : 1; 11072 unsigned RD2 : 1; 11073 unsigned RD3 : 1; 11074 unsigned RD4 : 1; 11075 unsigned RD5 : 1; 11076 unsigned RD6 : 1; 11077 unsigned RD7 : 1; 11078 } __PORTDbits_t; 11079 11080 extern __at(0x0F83) volatile __PORTDbits_t PORTDbits; 11081 11082 #define _RD0 0x01 11083 #define _RD1 0x02 11084 #define _RD2 0x04 11085 #define _RD3 0x08 11086 #define _RD4 0x10 11087 #define _RD5 0x20 11088 #define _RD6 0x40 11089 #define _RD7 0x80 11090 11091 //============================================================================== 11092 11093 11094 //============================================================================== 11095 // PORTE Bits 11096 11097 extern __at(0x0F84) __sfr PORTE; 11098 11099 typedef struct 11100 { 11101 unsigned RE0 : 1; 11102 unsigned RE1 : 1; 11103 unsigned RE2 : 1; 11104 unsigned RE3 : 1; 11105 unsigned RE4 : 1; 11106 unsigned RE5 : 1; 11107 unsigned RE6 : 1; 11108 unsigned RE7 : 1; 11109 } __PORTEbits_t; 11110 11111 extern __at(0x0F84) volatile __PORTEbits_t PORTEbits; 11112 11113 #define _RE0 0x01 11114 #define _RE1 0x02 11115 #define _RE2 0x04 11116 #define _RE3 0x08 11117 #define _RE4 0x10 11118 #define _RE5 0x20 11119 #define _RE6 0x40 11120 #define _RE7 0x80 11121 11122 //============================================================================== 11123 11124 11125 //============================================================================== 11126 // PORTF Bits 11127 11128 extern __at(0x0F85) __sfr PORTF; 11129 11130 typedef struct 11131 { 11132 unsigned : 1; 11133 unsigned : 1; 11134 unsigned RF2 : 1; 11135 unsigned RF3 : 1; 11136 unsigned RF4 : 1; 11137 unsigned RF5 : 1; 11138 unsigned RF6 : 1; 11139 unsigned RF7 : 1; 11140 } __PORTFbits_t; 11141 11142 extern __at(0x0F85) volatile __PORTFbits_t PORTFbits; 11143 11144 #define _RF2 0x04 11145 #define _RF3 0x08 11146 #define _RF4 0x10 11147 #define _RF5 0x20 11148 #define _RF6 0x40 11149 #define _RF7 0x80 11150 11151 //============================================================================== 11152 11153 11154 //============================================================================== 11155 // PORTG Bits 11156 11157 extern __at(0x0F86) __sfr PORTG; 11158 11159 typedef struct 11160 { 11161 unsigned RG0 : 1; 11162 unsigned RG1 : 1; 11163 unsigned RG2 : 1; 11164 unsigned RG3 : 1; 11165 unsigned RG4 : 1; 11166 unsigned : 1; 11167 unsigned RG6 : 1; 11168 unsigned RG7 : 1; 11169 } __PORTGbits_t; 11170 11171 extern __at(0x0F86) volatile __PORTGbits_t PORTGbits; 11172 11173 #define _RG0 0x01 11174 #define _RG1 0x02 11175 #define _RG2 0x04 11176 #define _RG3 0x08 11177 #define _RG4 0x10 11178 #define _RG6 0x40 11179 #define _RG7 0x80 11180 11181 //============================================================================== 11182 11183 11184 //============================================================================== 11185 // PORTH Bits 11186 11187 extern __at(0x0F87) __sfr PORTH; 11188 11189 typedef struct 11190 { 11191 unsigned RH0 : 1; 11192 unsigned RH1 : 1; 11193 unsigned RH2 : 1; 11194 unsigned RH3 : 1; 11195 unsigned RH4 : 1; 11196 unsigned RH5 : 1; 11197 unsigned RH6 : 1; 11198 unsigned RH7 : 1; 11199 } __PORTHbits_t; 11200 11201 extern __at(0x0F87) volatile __PORTHbits_t PORTHbits; 11202 11203 #define _RH0 0x01 11204 #define _RH1 0x02 11205 #define _RH2 0x04 11206 #define _RH3 0x08 11207 #define _RH4 0x10 11208 #define _RH5 0x20 11209 #define _RH6 0x40 11210 #define _RH7 0x80 11211 11212 //============================================================================== 11213 11214 11215 //============================================================================== 11216 // PORTJ Bits 11217 11218 extern __at(0x0F88) __sfr PORTJ; 11219 11220 typedef struct 11221 { 11222 unsigned RJ0 : 1; 11223 unsigned RJ1 : 1; 11224 unsigned RJ2 : 1; 11225 unsigned RJ3 : 1; 11226 unsigned RJ4 : 1; 11227 unsigned RJ5 : 1; 11228 unsigned RJ6 : 1; 11229 unsigned RJ7 : 1; 11230 } __PORTJbits_t; 11231 11232 extern __at(0x0F88) volatile __PORTJbits_t PORTJbits; 11233 11234 #define _RJ0 0x01 11235 #define _RJ1 0x02 11236 #define _RJ2 0x04 11237 #define _RJ3 0x08 11238 #define _RJ4 0x10 11239 #define _RJ5 0x20 11240 #define _RJ6 0x40 11241 #define _RJ7 0x80 11242 11243 //============================================================================== 11244 11245 11246 //============================================================================== 11247 // LATA Bits 11248 11249 extern __at(0x0F89) __sfr LATA; 11250 11251 typedef struct 11252 { 11253 unsigned LATA0 : 1; 11254 unsigned LATA1 : 1; 11255 unsigned LATA2 : 1; 11256 unsigned LATA3 : 1; 11257 unsigned LATA4 : 1; 11258 unsigned LATA5 : 1; 11259 unsigned LATA6 : 1; 11260 unsigned LATA7 : 1; 11261 } __LATAbits_t; 11262 11263 extern __at(0x0F89) volatile __LATAbits_t LATAbits; 11264 11265 #define _LATA0 0x01 11266 #define _LATA1 0x02 11267 #define _LATA2 0x04 11268 #define _LATA3 0x08 11269 #define _LATA4 0x10 11270 #define _LATA5 0x20 11271 #define _LATA6 0x40 11272 #define _LATA7 0x80 11273 11274 //============================================================================== 11275 11276 11277 //============================================================================== 11278 // LATB Bits 11279 11280 extern __at(0x0F8A) __sfr LATB; 11281 11282 typedef struct 11283 { 11284 unsigned LATB0 : 1; 11285 unsigned LATB1 : 1; 11286 unsigned LATB2 : 1; 11287 unsigned LATB3 : 1; 11288 unsigned LATB4 : 1; 11289 unsigned LATB5 : 1; 11290 unsigned LATB6 : 1; 11291 unsigned LATB7 : 1; 11292 } __LATBbits_t; 11293 11294 extern __at(0x0F8A) volatile __LATBbits_t LATBbits; 11295 11296 #define _LATB0 0x01 11297 #define _LATB1 0x02 11298 #define _LATB2 0x04 11299 #define _LATB3 0x08 11300 #define _LATB4 0x10 11301 #define _LATB5 0x20 11302 #define _LATB6 0x40 11303 #define _LATB7 0x80 11304 11305 //============================================================================== 11306 11307 11308 //============================================================================== 11309 // LATC Bits 11310 11311 extern __at(0x0F8B) __sfr LATC; 11312 11313 typedef struct 11314 { 11315 unsigned LATC0 : 1; 11316 unsigned LATC1 : 1; 11317 unsigned LATC2 : 1; 11318 unsigned LATC3 : 1; 11319 unsigned LATC4 : 1; 11320 unsigned LATC5 : 1; 11321 unsigned LATC6 : 1; 11322 unsigned LATC7 : 1; 11323 } __LATCbits_t; 11324 11325 extern __at(0x0F8B) volatile __LATCbits_t LATCbits; 11326 11327 #define _LATC0 0x01 11328 #define _LATC1 0x02 11329 #define _LATC2 0x04 11330 #define _LATC3 0x08 11331 #define _LATC4 0x10 11332 #define _LATC5 0x20 11333 #define _LATC6 0x40 11334 #define _LATC7 0x80 11335 11336 //============================================================================== 11337 11338 11339 //============================================================================== 11340 // LATD Bits 11341 11342 extern __at(0x0F8C) __sfr LATD; 11343 11344 typedef struct 11345 { 11346 unsigned LATD0 : 1; 11347 unsigned LATD1 : 1; 11348 unsigned LATD2 : 1; 11349 unsigned LATD3 : 1; 11350 unsigned LATD4 : 1; 11351 unsigned LATD5 : 1; 11352 unsigned LATD6 : 1; 11353 unsigned LATD7 : 1; 11354 } __LATDbits_t; 11355 11356 extern __at(0x0F8C) volatile __LATDbits_t LATDbits; 11357 11358 #define _LATD0 0x01 11359 #define _LATD1 0x02 11360 #define _LATD2 0x04 11361 #define _LATD3 0x08 11362 #define _LATD4 0x10 11363 #define _LATD5 0x20 11364 #define _LATD6 0x40 11365 #define _LATD7 0x80 11366 11367 //============================================================================== 11368 11369 11370 //============================================================================== 11371 // LATE Bits 11372 11373 extern __at(0x0F8D) __sfr LATE; 11374 11375 typedef struct 11376 { 11377 unsigned LATE0 : 1; 11378 unsigned LATE1 : 1; 11379 unsigned LATE2 : 1; 11380 unsigned LATE3 : 1; 11381 unsigned LATE4 : 1; 11382 unsigned LATE5 : 1; 11383 unsigned LATE6 : 1; 11384 unsigned LATE7 : 1; 11385 } __LATEbits_t; 11386 11387 extern __at(0x0F8D) volatile __LATEbits_t LATEbits; 11388 11389 #define _LATE0 0x01 11390 #define _LATE1 0x02 11391 #define _LATE2 0x04 11392 #define _LATE3 0x08 11393 #define _LATE4 0x10 11394 #define _LATE5 0x20 11395 #define _LATE6 0x40 11396 #define _LATE7 0x80 11397 11398 //============================================================================== 11399 11400 11401 //============================================================================== 11402 // LATF Bits 11403 11404 extern __at(0x0F8E) __sfr LATF; 11405 11406 typedef struct 11407 { 11408 unsigned : 1; 11409 unsigned : 1; 11410 unsigned LATF2 : 1; 11411 unsigned LATF3 : 1; 11412 unsigned LATF4 : 1; 11413 unsigned LATF5 : 1; 11414 unsigned LATF6 : 1; 11415 unsigned LATF7 : 1; 11416 } __LATFbits_t; 11417 11418 extern __at(0x0F8E) volatile __LATFbits_t LATFbits; 11419 11420 #define _LATF2 0x04 11421 #define _LATF3 0x08 11422 #define _LATF4 0x10 11423 #define _LATF5 0x20 11424 #define _LATF6 0x40 11425 #define _LATF7 0x80 11426 11427 //============================================================================== 11428 11429 11430 //============================================================================== 11431 // LATG Bits 11432 11433 extern __at(0x0F8F) __sfr LATG; 11434 11435 typedef struct 11436 { 11437 unsigned LATG0 : 1; 11438 unsigned LATG1 : 1; 11439 unsigned LATG2 : 1; 11440 unsigned LATG3 : 1; 11441 unsigned LATG4 : 1; 11442 unsigned : 1; 11443 unsigned LATG6 : 1; 11444 unsigned LATG7 : 1; 11445 } __LATGbits_t; 11446 11447 extern __at(0x0F8F) volatile __LATGbits_t LATGbits; 11448 11449 #define _LATG0 0x01 11450 #define _LATG1 0x02 11451 #define _LATG2 0x04 11452 #define _LATG3 0x08 11453 #define _LATG4 0x10 11454 #define _LATG6 0x40 11455 #define _LATG7 0x80 11456 11457 //============================================================================== 11458 11459 11460 //============================================================================== 11461 // LATH Bits 11462 11463 extern __at(0x0F90) __sfr LATH; 11464 11465 typedef struct 11466 { 11467 unsigned LATH0 : 1; 11468 unsigned LATH1 : 1; 11469 unsigned LATH2 : 1; 11470 unsigned LATH3 : 1; 11471 unsigned LATH4 : 1; 11472 unsigned LATH5 : 1; 11473 unsigned LATH6 : 1; 11474 unsigned LATH7 : 1; 11475 } __LATHbits_t; 11476 11477 extern __at(0x0F90) volatile __LATHbits_t LATHbits; 11478 11479 #define _LATH0 0x01 11480 #define _LATH1 0x02 11481 #define _LATH2 0x04 11482 #define _LATH3 0x08 11483 #define _LATH4 0x10 11484 #define _LATH5 0x20 11485 #define _LATH6 0x40 11486 #define _LATH7 0x80 11487 11488 //============================================================================== 11489 11490 11491 //============================================================================== 11492 // LATJ Bits 11493 11494 extern __at(0x0F91) __sfr LATJ; 11495 11496 typedef struct 11497 { 11498 unsigned LATJ0 : 1; 11499 unsigned LATJ1 : 1; 11500 unsigned LATJ2 : 1; 11501 unsigned LATJ3 : 1; 11502 unsigned LATJ4 : 1; 11503 unsigned LATJ5 : 1; 11504 unsigned LATJ6 : 1; 11505 unsigned LATJ7 : 1; 11506 } __LATJbits_t; 11507 11508 extern __at(0x0F91) volatile __LATJbits_t LATJbits; 11509 11510 #define _LATJ0 0x01 11511 #define _LATJ1 0x02 11512 #define _LATJ2 0x04 11513 #define _LATJ3 0x08 11514 #define _LATJ4 0x10 11515 #define _LATJ5 0x20 11516 #define _LATJ6 0x40 11517 #define _LATJ7 0x80 11518 11519 //============================================================================== 11520 11521 11522 //============================================================================== 11523 // TRISA Bits 11524 11525 extern __at(0x0F92) __sfr TRISA; 11526 11527 typedef struct 11528 { 11529 unsigned TRISA0 : 1; 11530 unsigned TRISA1 : 1; 11531 unsigned TRISA2 : 1; 11532 unsigned TRISA3 : 1; 11533 unsigned TRISA4 : 1; 11534 unsigned TRISA5 : 1; 11535 unsigned TRISA6 : 1; 11536 unsigned TRISA7 : 1; 11537 } __TRISAbits_t; 11538 11539 extern __at(0x0F92) volatile __TRISAbits_t TRISAbits; 11540 11541 #define _TRISA0 0x01 11542 #define _TRISA1 0x02 11543 #define _TRISA2 0x04 11544 #define _TRISA3 0x08 11545 #define _TRISA4 0x10 11546 #define _TRISA5 0x20 11547 #define _TRISA6 0x40 11548 #define _TRISA7 0x80 11549 11550 //============================================================================== 11551 11552 11553 //============================================================================== 11554 // TRISB Bits 11555 11556 extern __at(0x0F93) __sfr TRISB; 11557 11558 typedef struct 11559 { 11560 unsigned TRISB0 : 1; 11561 unsigned TRISB1 : 1; 11562 unsigned TRISB2 : 1; 11563 unsigned TRISB3 : 1; 11564 unsigned TRISB4 : 1; 11565 unsigned TRISB5 : 1; 11566 unsigned TRISB6 : 1; 11567 unsigned TRISB7 : 1; 11568 } __TRISBbits_t; 11569 11570 extern __at(0x0F93) volatile __TRISBbits_t TRISBbits; 11571 11572 #define _TRISB0 0x01 11573 #define _TRISB1 0x02 11574 #define _TRISB2 0x04 11575 #define _TRISB3 0x08 11576 #define _TRISB4 0x10 11577 #define _TRISB5 0x20 11578 #define _TRISB6 0x40 11579 #define _TRISB7 0x80 11580 11581 //============================================================================== 11582 11583 11584 //============================================================================== 11585 // TRISC Bits 11586 11587 extern __at(0x0F94) __sfr TRISC; 11588 11589 typedef struct 11590 { 11591 unsigned TRISC0 : 1; 11592 unsigned TRISC1 : 1; 11593 unsigned TRISC2 : 1; 11594 unsigned TRISC3 : 1; 11595 unsigned TRISC4 : 1; 11596 unsigned TRISC5 : 1; 11597 unsigned TRISC6 : 1; 11598 unsigned TRISC7 : 1; 11599 } __TRISCbits_t; 11600 11601 extern __at(0x0F94) volatile __TRISCbits_t TRISCbits; 11602 11603 #define _TRISC0 0x01 11604 #define _TRISC1 0x02 11605 #define _TRISC2 0x04 11606 #define _TRISC3 0x08 11607 #define _TRISC4 0x10 11608 #define _TRISC5 0x20 11609 #define _TRISC6 0x40 11610 #define _TRISC7 0x80 11611 11612 //============================================================================== 11613 11614 11615 //============================================================================== 11616 // TRISD Bits 11617 11618 extern __at(0x0F95) __sfr TRISD; 11619 11620 typedef struct 11621 { 11622 unsigned TRISD0 : 1; 11623 unsigned TRISD1 : 1; 11624 unsigned TRISD2 : 1; 11625 unsigned TRISD3 : 1; 11626 unsigned TRISD4 : 1; 11627 unsigned TRISD5 : 1; 11628 unsigned TRISD6 : 1; 11629 unsigned TRISD7 : 1; 11630 } __TRISDbits_t; 11631 11632 extern __at(0x0F95) volatile __TRISDbits_t TRISDbits; 11633 11634 #define _TRISD0 0x01 11635 #define _TRISD1 0x02 11636 #define _TRISD2 0x04 11637 #define _TRISD3 0x08 11638 #define _TRISD4 0x10 11639 #define _TRISD5 0x20 11640 #define _TRISD6 0x40 11641 #define _TRISD7 0x80 11642 11643 //============================================================================== 11644 11645 11646 //============================================================================== 11647 // TRISE Bits 11648 11649 extern __at(0x0F96) __sfr TRISE; 11650 11651 typedef struct 11652 { 11653 unsigned TRISE0 : 1; 11654 unsigned TRISE1 : 1; 11655 unsigned TRISE2 : 1; 11656 unsigned TRISE3 : 1; 11657 unsigned TRISE4 : 1; 11658 unsigned TRISE5 : 1; 11659 unsigned TRISE6 : 1; 11660 unsigned TRISE7 : 1; 11661 } __TRISEbits_t; 11662 11663 extern __at(0x0F96) volatile __TRISEbits_t TRISEbits; 11664 11665 #define _TRISE0 0x01 11666 #define _TRISE1 0x02 11667 #define _TRISE2 0x04 11668 #define _TRISE3 0x08 11669 #define _TRISE4 0x10 11670 #define _TRISE5 0x20 11671 #define _TRISE6 0x40 11672 #define _TRISE7 0x80 11673 11674 //============================================================================== 11675 11676 11677 //============================================================================== 11678 // TRISF Bits 11679 11680 extern __at(0x0F97) __sfr TRISF; 11681 11682 typedef struct 11683 { 11684 unsigned : 1; 11685 unsigned : 1; 11686 unsigned TRISF2 : 1; 11687 unsigned TRISF3 : 1; 11688 unsigned TRISF4 : 1; 11689 unsigned TRISF5 : 1; 11690 unsigned TRISF6 : 1; 11691 unsigned TRISF7 : 1; 11692 } __TRISFbits_t; 11693 11694 extern __at(0x0F97) volatile __TRISFbits_t TRISFbits; 11695 11696 #define _TRISF2 0x04 11697 #define _TRISF3 0x08 11698 #define _TRISF4 0x10 11699 #define _TRISF5 0x20 11700 #define _TRISF6 0x40 11701 #define _TRISF7 0x80 11702 11703 //============================================================================== 11704 11705 11706 //============================================================================== 11707 // TRISG Bits 11708 11709 extern __at(0x0F98) __sfr TRISG; 11710 11711 typedef struct 11712 { 11713 unsigned TRISG0 : 1; 11714 unsigned TRISG1 : 1; 11715 unsigned TRISG2 : 1; 11716 unsigned TRISG3 : 1; 11717 unsigned TRISG4 : 1; 11718 unsigned : 1; 11719 unsigned TRISG6 : 1; 11720 unsigned TRISG7 : 1; 11721 } __TRISGbits_t; 11722 11723 extern __at(0x0F98) volatile __TRISGbits_t TRISGbits; 11724 11725 #define _TRISG0 0x01 11726 #define _TRISG1 0x02 11727 #define _TRISG2 0x04 11728 #define _TRISG3 0x08 11729 #define _TRISG4 0x10 11730 #define _TRISG6 0x40 11731 #define _TRISG7 0x80 11732 11733 //============================================================================== 11734 11735 11736 //============================================================================== 11737 // TRISH Bits 11738 11739 extern __at(0x0F99) __sfr TRISH; 11740 11741 typedef struct 11742 { 11743 unsigned TRISH0 : 1; 11744 unsigned TRISH1 : 1; 11745 unsigned TRISH2 : 1; 11746 unsigned TRISH3 : 1; 11747 unsigned TRISH4 : 1; 11748 unsigned TRISH5 : 1; 11749 unsigned TRISH6 : 1; 11750 unsigned TRISH7 : 1; 11751 } __TRISHbits_t; 11752 11753 extern __at(0x0F99) volatile __TRISHbits_t TRISHbits; 11754 11755 #define _TRISH0 0x01 11756 #define _TRISH1 0x02 11757 #define _TRISH2 0x04 11758 #define _TRISH3 0x08 11759 #define _TRISH4 0x10 11760 #define _TRISH5 0x20 11761 #define _TRISH6 0x40 11762 #define _TRISH7 0x80 11763 11764 //============================================================================== 11765 11766 11767 //============================================================================== 11768 // TRISJ Bits 11769 11770 extern __at(0x0F9A) __sfr TRISJ; 11771 11772 typedef struct 11773 { 11774 unsigned TRISJ0 : 1; 11775 unsigned TRISJ1 : 1; 11776 unsigned TRISJ2 : 1; 11777 unsigned TRISJ3 : 1; 11778 unsigned TRISJ4 : 1; 11779 unsigned TRISJ5 : 1; 11780 unsigned TRISJ6 : 1; 11781 unsigned TRISJ7 : 1; 11782 } __TRISJbits_t; 11783 11784 extern __at(0x0F9A) volatile __TRISJbits_t TRISJbits; 11785 11786 #define _TRISJ0 0x01 11787 #define _TRISJ1 0x02 11788 #define _TRISJ2 0x04 11789 #define _TRISJ3 0x08 11790 #define _TRISJ4 0x10 11791 #define _TRISJ5 0x20 11792 #define _TRISJ6 0x40 11793 #define _TRISJ7 0x80 11794 11795 //============================================================================== 11796 11797 11798 //============================================================================== 11799 // OSCTUNE Bits 11800 11801 extern __at(0x0F9B) __sfr OSCTUNE; 11802 11803 typedef union 11804 { 11805 struct 11806 { 11807 unsigned TUN0 : 1; 11808 unsigned TUN1 : 1; 11809 unsigned TUN2 : 1; 11810 unsigned TUN3 : 1; 11811 unsigned TUN4 : 1; 11812 unsigned TUN5 : 1; 11813 unsigned : 1; 11814 unsigned : 1; 11815 }; 11816 11817 struct 11818 { 11819 unsigned TUN : 6; 11820 unsigned : 2; 11821 }; 11822 } __OSCTUNEbits_t; 11823 11824 extern __at(0x0F9B) volatile __OSCTUNEbits_t OSCTUNEbits; 11825 11826 #define _TUN0 0x01 11827 #define _TUN1 0x02 11828 #define _TUN2 0x04 11829 #define _TUN3 0x08 11830 #define _TUN4 0x10 11831 #define _TUN5 0x20 11832 11833 //============================================================================== 11834 11835 11836 //============================================================================== 11837 // PSTR1CON Bits 11838 11839 extern __at(0x0F9C) __sfr PSTR1CON; 11840 11841 typedef union 11842 { 11843 struct 11844 { 11845 unsigned STRA : 1; 11846 unsigned STRB : 1; 11847 unsigned STRC : 1; 11848 unsigned STRD : 1; 11849 unsigned STRSYNC : 1; 11850 unsigned : 1; 11851 unsigned CMPL0 : 1; 11852 unsigned CMPL1 : 1; 11853 }; 11854 11855 struct 11856 { 11857 unsigned : 6; 11858 unsigned CMPL : 2; 11859 }; 11860 } __PSTR1CONbits_t; 11861 11862 extern __at(0x0F9C) volatile __PSTR1CONbits_t PSTR1CONbits; 11863 11864 #define _STRA 0x01 11865 #define _STRB 0x02 11866 #define _STRC 0x04 11867 #define _STRD 0x08 11868 #define _STRSYNC 0x10 11869 #define _CMPL0 0x40 11870 #define _CMPL1 0x80 11871 11872 //============================================================================== 11873 11874 11875 //============================================================================== 11876 // PIE1 Bits 11877 11878 extern __at(0x0F9D) __sfr PIE1; 11879 11880 typedef struct 11881 { 11882 unsigned TMR1IE : 1; 11883 unsigned TMR2IE : 1; 11884 unsigned TMR1GIE : 1; 11885 unsigned SSP1IE : 1; 11886 unsigned TX1IE : 1; 11887 unsigned RC1IE : 1; 11888 unsigned ADIE : 1; 11889 unsigned PSPIE : 1; 11890 } __PIE1bits_t; 11891 11892 extern __at(0x0F9D) volatile __PIE1bits_t PIE1bits; 11893 11894 #define _TMR1IE 0x01 11895 #define _TMR2IE 0x02 11896 #define _TMR1GIE 0x04 11897 #define _SSP1IE 0x08 11898 #define _TX1IE 0x10 11899 #define _RC1IE 0x20 11900 #define _ADIE 0x40 11901 #define _PSPIE 0x80 11902 11903 //============================================================================== 11904 11905 11906 //============================================================================== 11907 // PIR1 Bits 11908 11909 extern __at(0x0F9E) __sfr PIR1; 11910 11911 typedef struct 11912 { 11913 unsigned TMR1IF : 1; 11914 unsigned TMR2IF : 1; 11915 unsigned TMR1GIF : 1; 11916 unsigned SSP1IF : 1; 11917 unsigned TX1IF : 1; 11918 unsigned RC1IF : 1; 11919 unsigned ADIF : 1; 11920 unsigned PSPIF : 1; 11921 } __PIR1bits_t; 11922 11923 extern __at(0x0F9E) volatile __PIR1bits_t PIR1bits; 11924 11925 #define _TMR1IF 0x01 11926 #define _TMR2IF 0x02 11927 #define _TMR1GIF 0x04 11928 #define _SSP1IF 0x08 11929 #define _TX1IF 0x10 11930 #define _RC1IF 0x20 11931 #define _ADIF 0x40 11932 #define _PSPIF 0x80 11933 11934 //============================================================================== 11935 11936 11937 //============================================================================== 11938 // IPR1 Bits 11939 11940 extern __at(0x0F9F) __sfr IPR1; 11941 11942 typedef struct 11943 { 11944 unsigned TMR1IP : 1; 11945 unsigned TMR2IP : 1; 11946 unsigned TMR1GIP : 1; 11947 unsigned SSP1IP : 1; 11948 unsigned TX1IP : 1; 11949 unsigned RC1IP : 1; 11950 unsigned ADIP : 1; 11951 unsigned PSPIP : 1; 11952 } __IPR1bits_t; 11953 11954 extern __at(0x0F9F) volatile __IPR1bits_t IPR1bits; 11955 11956 #define _TMR1IP 0x01 11957 #define _TMR2IP 0x02 11958 #define _TMR1GIP 0x04 11959 #define _SSP1IP 0x08 11960 #define _TX1IP 0x10 11961 #define _RC1IP 0x20 11962 #define _ADIP 0x40 11963 #define _PSPIP 0x80 11964 11965 //============================================================================== 11966 11967 11968 //============================================================================== 11969 // PIE2 Bits 11970 11971 extern __at(0x0FA0) __sfr PIE2; 11972 11973 typedef struct 11974 { 11975 unsigned TMR3GIE : 1; 11976 unsigned TMR3IE : 1; 11977 unsigned HLVDIE : 1; 11978 unsigned BCL1IE : 1; 11979 unsigned USBIE : 1; 11980 unsigned BCL2IE : 1; 11981 unsigned SSP2IE : 1; 11982 unsigned OSCFIE : 1; 11983 } __PIE2bits_t; 11984 11985 extern __at(0x0FA0) volatile __PIE2bits_t PIE2bits; 11986 11987 #define _TMR3GIE 0x01 11988 #define _TMR3IE 0x02 11989 #define _HLVDIE 0x04 11990 #define _BCL1IE 0x08 11991 #define _USBIE 0x10 11992 #define _BCL2IE 0x20 11993 #define _SSP2IE 0x40 11994 #define _OSCFIE 0x80 11995 11996 //============================================================================== 11997 11998 11999 //============================================================================== 12000 // PIR2 Bits 12001 12002 extern __at(0x0FA1) __sfr PIR2; 12003 12004 typedef union 12005 { 12006 struct 12007 { 12008 unsigned TMR3GIF : 1; 12009 unsigned TMR3IF : 1; 12010 unsigned HLVDIF : 1; 12011 unsigned BCL1IF : 1; 12012 unsigned USBIF : 1; 12013 unsigned BCL2IF : 1; 12014 unsigned SSP2IF : 1; 12015 unsigned OSCFIF : 1; 12016 }; 12017 12018 struct 12019 { 12020 unsigned : 1; 12021 unsigned : 1; 12022 unsigned LVDIF : 1; 12023 unsigned : 1; 12024 unsigned : 1; 12025 unsigned : 1; 12026 unsigned : 1; 12027 unsigned : 1; 12028 }; 12029 } __PIR2bits_t; 12030 12031 extern __at(0x0FA1) volatile __PIR2bits_t PIR2bits; 12032 12033 #define _TMR3GIF 0x01 12034 #define _TMR3IF 0x02 12035 #define _HLVDIF 0x04 12036 #define _LVDIF 0x04 12037 #define _BCL1IF 0x08 12038 #define _USBIF 0x10 12039 #define _BCL2IF 0x20 12040 #define _SSP2IF 0x40 12041 #define _OSCFIF 0x80 12042 12043 //============================================================================== 12044 12045 12046 //============================================================================== 12047 // IPR2 Bits 12048 12049 extern __at(0x0FA2) __sfr IPR2; 12050 12051 typedef struct 12052 { 12053 unsigned TMR3GIP : 1; 12054 unsigned TMR3IP : 1; 12055 unsigned HLVDIP : 1; 12056 unsigned BCL1IP : 1; 12057 unsigned USBIP : 1; 12058 unsigned BCL2IP : 1; 12059 unsigned SSP2IP : 1; 12060 unsigned OSCFIP : 1; 12061 } __IPR2bits_t; 12062 12063 extern __at(0x0FA2) volatile __IPR2bits_t IPR2bits; 12064 12065 #define _TMR3GIP 0x01 12066 #define _TMR3IP 0x02 12067 #define _HLVDIP 0x04 12068 #define _BCL1IP 0x08 12069 #define _USBIP 0x10 12070 #define _BCL2IP 0x20 12071 #define _SSP2IP 0x40 12072 #define _OSCFIP 0x80 12073 12074 //============================================================================== 12075 12076 12077 //============================================================================== 12078 // PIE3 Bits 12079 12080 extern __at(0x0FA3) __sfr PIE3; 12081 12082 typedef struct 12083 { 12084 unsigned RTCCIE : 1; 12085 unsigned CCP1IE : 1; 12086 unsigned CCP2IE : 1; 12087 unsigned CTMUIE : 1; 12088 unsigned TX2IE : 1; 12089 unsigned RC2IE : 1; 12090 unsigned LCDIE : 1; 12091 unsigned TMR5GIE : 1; 12092 } __PIE3bits_t; 12093 12094 extern __at(0x0FA3) volatile __PIE3bits_t PIE3bits; 12095 12096 #define _RTCCIE 0x01 12097 #define _CCP1IE 0x02 12098 #define _CCP2IE 0x04 12099 #define _CTMUIE 0x08 12100 #define _TX2IE 0x10 12101 #define _RC2IE 0x20 12102 #define _LCDIE 0x40 12103 #define _TMR5GIE 0x80 12104 12105 //============================================================================== 12106 12107 12108 //============================================================================== 12109 // PIR3 Bits 12110 12111 extern __at(0x0FA4) __sfr PIR3; 12112 12113 typedef struct 12114 { 12115 unsigned RTCCIF : 1; 12116 unsigned CCP1IF : 1; 12117 unsigned CCP2IF : 1; 12118 unsigned CTMUIF : 1; 12119 unsigned TX2IF : 1; 12120 unsigned RC2IF : 1; 12121 unsigned LCDIF : 1; 12122 unsigned TMR5GIF : 1; 12123 } __PIR3bits_t; 12124 12125 extern __at(0x0FA4) volatile __PIR3bits_t PIR3bits; 12126 12127 #define _RTCCIF 0x01 12128 #define _CCP1IF 0x02 12129 #define _CCP2IF 0x04 12130 #define _CTMUIF 0x08 12131 #define _TX2IF 0x10 12132 #define _RC2IF 0x20 12133 #define _LCDIF 0x40 12134 #define _TMR5GIF 0x80 12135 12136 //============================================================================== 12137 12138 12139 //============================================================================== 12140 // IPR3 Bits 12141 12142 extern __at(0x0FA5) __sfr IPR3; 12143 12144 typedef struct 12145 { 12146 unsigned RTCCIP : 1; 12147 unsigned CCP1IP : 1; 12148 unsigned CCP2IP : 1; 12149 unsigned CTMUIP : 1; 12150 unsigned TX2IP : 1; 12151 unsigned RC2IP : 1; 12152 unsigned LCDIP : 1; 12153 unsigned TMR5GIP : 1; 12154 } __IPR3bits_t; 12155 12156 extern __at(0x0FA5) volatile __IPR3bits_t IPR3bits; 12157 12158 #define _RTCCIP 0x01 12159 #define _CCP1IP 0x02 12160 #define _CCP2IP 0x04 12161 #define _CTMUIP 0x08 12162 #define _TX2IP 0x10 12163 #define _RC2IP 0x20 12164 #define _LCDIP 0x40 12165 #define _TMR5GIP 0x80 12166 12167 //============================================================================== 12168 12169 12170 //============================================================================== 12171 // PIR6 Bits 12172 12173 extern __at(0x0FA6) __sfr PIR6; 12174 12175 typedef struct 12176 { 12177 unsigned CMP1IF : 1; 12178 unsigned CMP2IF : 1; 12179 unsigned CMP3IF : 1; 12180 unsigned : 1; 12181 unsigned TX3IF : 1; 12182 unsigned RC3IF : 1; 12183 unsigned TX4IF : 1; 12184 unsigned RC4IF : 1; 12185 } __PIR6bits_t; 12186 12187 extern __at(0x0FA6) volatile __PIR6bits_t PIR6bits; 12188 12189 #define _CMP1IF 0x01 12190 #define _CMP2IF 0x02 12191 #define _CMP3IF 0x04 12192 #define _TX3IF 0x10 12193 #define _RC3IF 0x20 12194 #define _TX4IF 0x40 12195 #define _RC4IF 0x80 12196 12197 //============================================================================== 12198 12199 12200 //============================================================================== 12201 // PSPCON Bits 12202 12203 extern __at(0x0FA7) __sfr PSPCON; 12204 12205 typedef struct 12206 { 12207 unsigned : 1; 12208 unsigned : 1; 12209 unsigned : 1; 12210 unsigned : 1; 12211 unsigned PSPMODE : 1; 12212 unsigned IBOV : 1; 12213 unsigned OBF : 1; 12214 unsigned IBF : 1; 12215 } __PSPCONbits_t; 12216 12217 extern __at(0x0FA7) volatile __PSPCONbits_t PSPCONbits; 12218 12219 #define _PSPMODE 0x10 12220 #define _IBOV 0x20 12221 #define _OBF 0x40 12222 #define _IBF 0x80 12223 12224 //============================================================================== 12225 12226 12227 //============================================================================== 12228 // HLVDCON Bits 12229 12230 extern __at(0x0FA8) __sfr HLVDCON; 12231 12232 typedef union 12233 { 12234 struct 12235 { 12236 unsigned HLVDL0 : 1; 12237 unsigned HLVDL1 : 1; 12238 unsigned HLVDL2 : 1; 12239 unsigned HLVDL3 : 1; 12240 unsigned HLVDEN : 1; 12241 unsigned IRVST : 1; 12242 unsigned BGVST : 1; 12243 unsigned VDIRMAG : 1; 12244 }; 12245 12246 struct 12247 { 12248 unsigned HLVDL : 4; 12249 unsigned : 4; 12250 }; 12251 } __HLVDCONbits_t; 12252 12253 extern __at(0x0FA8) volatile __HLVDCONbits_t HLVDCONbits; 12254 12255 #define _HLVDL0 0x01 12256 #define _HLVDL1 0x02 12257 #define _HLVDL2 0x04 12258 #define _HLVDL3 0x08 12259 #define _HLVDEN 0x10 12260 #define _IRVST 0x20 12261 #define _BGVST 0x40 12262 #define _VDIRMAG 0x80 12263 12264 //============================================================================== 12265 12266 12267 //============================================================================== 12268 // IPR6 Bits 12269 12270 extern __at(0x0FA9) __sfr IPR6; 12271 12272 typedef struct 12273 { 12274 unsigned CMP1IP : 1; 12275 unsigned CMP2IP : 1; 12276 unsigned CMP3IP : 1; 12277 unsigned : 1; 12278 unsigned TX3IP : 1; 12279 unsigned RC3IP : 1; 12280 unsigned TX4IP : 1; 12281 unsigned RC4IP : 1; 12282 } __IPR6bits_t; 12283 12284 extern __at(0x0FA9) volatile __IPR6bits_t IPR6bits; 12285 12286 #define _CMP1IP 0x01 12287 #define _CMP2IP 0x02 12288 #define _CMP3IP 0x04 12289 #define _TX3IP 0x10 12290 #define _RC3IP 0x20 12291 #define _TX4IP 0x40 12292 #define _RC4IP 0x80 12293 12294 //============================================================================== 12295 12296 12297 //============================================================================== 12298 // T1GCON Bits 12299 12300 extern __at(0x0FAA) __sfr T1GCON; 12301 12302 typedef union 12303 { 12304 struct 12305 { 12306 unsigned T1GSS0 : 1; 12307 unsigned T1GSS1 : 1; 12308 unsigned T1GVAL : 1; 12309 unsigned T1GGO_NOT_T1DONE : 1; 12310 unsigned T1GSPM : 1; 12311 unsigned T1GTM : 1; 12312 unsigned T1GPOL : 1; 12313 unsigned TMR1GE : 1; 12314 }; 12315 12316 struct 12317 { 12318 unsigned : 1; 12319 unsigned : 1; 12320 unsigned : 1; 12321 unsigned T1GGO : 1; 12322 unsigned : 1; 12323 unsigned : 1; 12324 unsigned : 1; 12325 unsigned : 1; 12326 }; 12327 12328 struct 12329 { 12330 unsigned : 1; 12331 unsigned : 1; 12332 unsigned : 1; 12333 unsigned NOT_T1DONE : 1; 12334 unsigned : 1; 12335 unsigned : 1; 12336 unsigned : 1; 12337 unsigned : 1; 12338 }; 12339 12340 struct 12341 { 12342 unsigned T1GSS : 2; 12343 unsigned : 6; 12344 }; 12345 } __T1GCONbits_t; 12346 12347 extern __at(0x0FAA) volatile __T1GCONbits_t T1GCONbits; 12348 12349 #define _T1GSS0 0x01 12350 #define _T1GSS1 0x02 12351 #define _T1GVAL 0x04 12352 #define _T1GGO_NOT_T1DONE 0x08 12353 #define _T1GGO 0x08 12354 #define _NOT_T1DONE 0x08 12355 #define _T1GSPM 0x10 12356 #define _T1GTM 0x20 12357 #define _T1GPOL 0x40 12358 #define _TMR1GE 0x80 12359 12360 //============================================================================== 12361 12362 12363 //============================================================================== 12364 // RCSTA Bits 12365 12366 extern __at(0x0FAB) __sfr RCSTA; 12367 12368 typedef union 12369 { 12370 struct 12371 { 12372 unsigned RX9D : 1; 12373 unsigned OERR : 1; 12374 unsigned FERR : 1; 12375 unsigned ADDEN : 1; 12376 unsigned CREN : 1; 12377 unsigned SREN : 1; 12378 unsigned RX9 : 1; 12379 unsigned SPEN : 1; 12380 }; 12381 12382 struct 12383 { 12384 unsigned : 1; 12385 unsigned : 1; 12386 unsigned : 1; 12387 unsigned ADEN : 1; 12388 unsigned : 1; 12389 unsigned : 1; 12390 unsigned : 1; 12391 unsigned : 1; 12392 }; 12393 } __RCSTAbits_t; 12394 12395 extern __at(0x0FAB) volatile __RCSTAbits_t RCSTAbits; 12396 12397 #define _RX9D 0x01 12398 #define _OERR 0x02 12399 #define _FERR 0x04 12400 #define _ADDEN 0x08 12401 #define _ADEN 0x08 12402 #define _CREN 0x10 12403 #define _SREN 0x20 12404 #define _RX9 0x40 12405 #define _SPEN 0x80 12406 12407 //============================================================================== 12408 12409 12410 //============================================================================== 12411 // RCSTA1 Bits 12412 12413 extern __at(0x0FAB) __sfr RCSTA1; 12414 12415 typedef union 12416 { 12417 struct 12418 { 12419 unsigned RX9D : 1; 12420 unsigned OERR : 1; 12421 unsigned FERR : 1; 12422 unsigned ADDEN : 1; 12423 unsigned CREN : 1; 12424 unsigned SREN : 1; 12425 unsigned RX9 : 1; 12426 unsigned SPEN : 1; 12427 }; 12428 12429 struct 12430 { 12431 unsigned : 1; 12432 unsigned : 1; 12433 unsigned : 1; 12434 unsigned ADEN : 1; 12435 unsigned : 1; 12436 unsigned : 1; 12437 unsigned : 1; 12438 unsigned : 1; 12439 }; 12440 } __RCSTA1bits_t; 12441 12442 extern __at(0x0FAB) volatile __RCSTA1bits_t RCSTA1bits; 12443 12444 #define _RCSTA1_RX9D 0x01 12445 #define _RCSTA1_OERR 0x02 12446 #define _RCSTA1_FERR 0x04 12447 #define _RCSTA1_ADDEN 0x08 12448 #define _RCSTA1_ADEN 0x08 12449 #define _RCSTA1_CREN 0x10 12450 #define _RCSTA1_SREN 0x20 12451 #define _RCSTA1_RX9 0x40 12452 #define _RCSTA1_SPEN 0x80 12453 12454 //============================================================================== 12455 12456 12457 //============================================================================== 12458 // TXSTA Bits 12459 12460 extern __at(0x0FAC) __sfr TXSTA; 12461 12462 typedef struct 12463 { 12464 unsigned TX9D : 1; 12465 unsigned TRMT : 1; 12466 unsigned BRGH : 1; 12467 unsigned SENDB : 1; 12468 unsigned SYNC : 1; 12469 unsigned TXEN : 1; 12470 unsigned TX9 : 1; 12471 unsigned CSRC : 1; 12472 } __TXSTAbits_t; 12473 12474 extern __at(0x0FAC) volatile __TXSTAbits_t TXSTAbits; 12475 12476 #define _TX9D 0x01 12477 #define _TRMT 0x02 12478 #define _BRGH 0x04 12479 #define _SENDB 0x08 12480 #define _SYNC 0x10 12481 #define _TXEN 0x20 12482 #define _TX9 0x40 12483 #define _CSRC 0x80 12484 12485 //============================================================================== 12486 12487 12488 //============================================================================== 12489 // TXSTA1 Bits 12490 12491 extern __at(0x0FAC) __sfr TXSTA1; 12492 12493 typedef struct 12494 { 12495 unsigned TX9D : 1; 12496 unsigned TRMT : 1; 12497 unsigned BRGH : 1; 12498 unsigned SENDB : 1; 12499 unsigned SYNC : 1; 12500 unsigned TXEN : 1; 12501 unsigned TX9 : 1; 12502 unsigned CSRC : 1; 12503 } __TXSTA1bits_t; 12504 12505 extern __at(0x0FAC) volatile __TXSTA1bits_t TXSTA1bits; 12506 12507 #define _TXSTA1_TX9D 0x01 12508 #define _TXSTA1_TRMT 0x02 12509 #define _TXSTA1_BRGH 0x04 12510 #define _TXSTA1_SENDB 0x08 12511 #define _TXSTA1_SYNC 0x10 12512 #define _TXSTA1_TXEN 0x20 12513 #define _TXSTA1_TX9 0x40 12514 #define _TXSTA1_CSRC 0x80 12515 12516 //============================================================================== 12517 12518 extern __at(0x0FAD) __sfr TXREG; 12519 extern __at(0x0FAD) __sfr TXREG1; 12520 extern __at(0x0FAE) __sfr RCREG; 12521 extern __at(0x0FAE) __sfr RCREG1; 12522 12523 //============================================================================== 12524 // SPBRG Bits 12525 12526 extern __at(0x0FAF) __sfr SPBRG; 12527 12528 typedef struct 12529 { 12530 unsigned BRG0 : 1; 12531 unsigned BRG1 : 1; 12532 unsigned BRG2 : 1; 12533 unsigned BRG3 : 1; 12534 unsigned BRG4 : 1; 12535 unsigned BRG5 : 1; 12536 unsigned BRG6 : 1; 12537 unsigned BRG7 : 1; 12538 } __SPBRGbits_t; 12539 12540 extern __at(0x0FAF) volatile __SPBRGbits_t SPBRGbits; 12541 12542 #define _BRG0 0x01 12543 #define _BRG1 0x02 12544 #define _BRG2 0x04 12545 #define _BRG3 0x08 12546 #define _BRG4 0x10 12547 #define _BRG5 0x20 12548 #define _BRG6 0x40 12549 #define _BRG7 0x80 12550 12551 //============================================================================== 12552 12553 12554 //============================================================================== 12555 // SPBRG1 Bits 12556 12557 extern __at(0x0FAF) __sfr SPBRG1; 12558 12559 typedef struct 12560 { 12561 unsigned BRG0 : 1; 12562 unsigned BRG1 : 1; 12563 unsigned BRG2 : 1; 12564 unsigned BRG3 : 1; 12565 unsigned BRG4 : 1; 12566 unsigned BRG5 : 1; 12567 unsigned BRG6 : 1; 12568 unsigned BRG7 : 1; 12569 } __SPBRG1bits_t; 12570 12571 extern __at(0x0FAF) volatile __SPBRG1bits_t SPBRG1bits; 12572 12573 #define _SPBRG1_BRG0 0x01 12574 #define _SPBRG1_BRG1 0x02 12575 #define _SPBRG1_BRG2 0x04 12576 #define _SPBRG1_BRG3 0x08 12577 #define _SPBRG1_BRG4 0x10 12578 #define _SPBRG1_BRG5 0x20 12579 #define _SPBRG1_BRG6 0x40 12580 #define _SPBRG1_BRG7 0x80 12581 12582 //============================================================================== 12583 12584 12585 //============================================================================== 12586 // T3GCON Bits 12587 12588 extern __at(0x0FB0) __sfr T3GCON; 12589 12590 typedef union 12591 { 12592 struct 12593 { 12594 unsigned T3GSS0 : 1; 12595 unsigned T3GSS1 : 1; 12596 unsigned T3GVAL : 1; 12597 unsigned T3GGO_NOT_T3DONE : 1; 12598 unsigned T3GSPM : 1; 12599 unsigned T3GTM : 1; 12600 unsigned T3GPOL : 1; 12601 unsigned TMR3GE : 1; 12602 }; 12603 12604 struct 12605 { 12606 unsigned : 1; 12607 unsigned : 1; 12608 unsigned : 1; 12609 unsigned T3GGO : 1; 12610 unsigned : 1; 12611 unsigned : 1; 12612 unsigned : 1; 12613 unsigned : 1; 12614 }; 12615 12616 struct 12617 { 12618 unsigned : 1; 12619 unsigned : 1; 12620 unsigned : 1; 12621 unsigned NOT_T3DONE : 1; 12622 unsigned : 1; 12623 unsigned : 1; 12624 unsigned : 1; 12625 unsigned : 1; 12626 }; 12627 12628 struct 12629 { 12630 unsigned T3GSS : 2; 12631 unsigned : 6; 12632 }; 12633 } __T3GCONbits_t; 12634 12635 extern __at(0x0FB0) volatile __T3GCONbits_t T3GCONbits; 12636 12637 #define _T3GSS0 0x01 12638 #define _T3GSS1 0x02 12639 #define _T3GVAL 0x04 12640 #define _T3GGO_NOT_T3DONE 0x08 12641 #define _T3GGO 0x08 12642 #define _NOT_T3DONE 0x08 12643 #define _T3GSPM 0x10 12644 #define _T3GTM 0x20 12645 #define _T3GPOL 0x40 12646 #define _TMR3GE 0x80 12647 12648 //============================================================================== 12649 12650 12651 //============================================================================== 12652 // T3CON Bits 12653 12654 extern __at(0x0FB1) __sfr T3CON; 12655 12656 typedef union 12657 { 12658 struct 12659 { 12660 unsigned TMR3ON : 1; 12661 unsigned RD16 : 1; 12662 unsigned NOT_T3SYNC : 1; 12663 unsigned SOSCEN : 1; 12664 unsigned T3CKPS0 : 1; 12665 unsigned T3CKPS1 : 1; 12666 unsigned TMR3CS0 : 1; 12667 unsigned TMR3CS1 : 1; 12668 }; 12669 12670 struct 12671 { 12672 unsigned : 4; 12673 unsigned T3CKPS : 2; 12674 unsigned : 2; 12675 }; 12676 12677 struct 12678 { 12679 unsigned : 6; 12680 unsigned TMR3CS : 2; 12681 }; 12682 } __T3CONbits_t; 12683 12684 extern __at(0x0FB1) volatile __T3CONbits_t T3CONbits; 12685 12686 #define _T3CON_TMR3ON 0x01 12687 #define _T3CON_RD16 0x02 12688 #define _T3CON_NOT_T3SYNC 0x04 12689 #define _T3CON_SOSCEN 0x08 12690 #define _T3CON_T3CKPS0 0x10 12691 #define _T3CON_T3CKPS1 0x20 12692 #define _T3CON_TMR3CS0 0x40 12693 #define _T3CON_TMR3CS1 0x80 12694 12695 //============================================================================== 12696 12697 extern __at(0x0FB2) __sfr TMR3; 12698 extern __at(0x0FB2) __sfr TMR3L; 12699 extern __at(0x0FB3) __sfr TMR3H; 12700 12701 //============================================================================== 12702 // PIE4 Bits 12703 12704 extern __at(0x0FB4) __sfr PIE4; 12705 12706 typedef struct 12707 { 12708 unsigned ECCP3IE : 1; 12709 unsigned CCP4IE : 1; 12710 unsigned CCP5IE : 1; 12711 unsigned CCP6IE : 1; 12712 unsigned CCP7IE : 1; 12713 unsigned CCP8IE : 1; 12714 unsigned CCP9IE : 1; 12715 unsigned CCP10IE : 1; 12716 } __PIE4bits_t; 12717 12718 extern __at(0x0FB4) volatile __PIE4bits_t PIE4bits; 12719 12720 #define _ECCP3IE 0x01 12721 #define _CCP4IE 0x02 12722 #define _CCP5IE 0x04 12723 #define _CCP6IE 0x08 12724 #define _CCP7IE 0x10 12725 #define _CCP8IE 0x20 12726 #define _CCP9IE 0x40 12727 #define _CCP10IE 0x80 12728 12729 //============================================================================== 12730 12731 12732 //============================================================================== 12733 // PIR4 Bits 12734 12735 extern __at(0x0FB5) __sfr PIR4; 12736 12737 typedef struct 12738 { 12739 unsigned ECCP3IF : 1; 12740 unsigned CCP4IF : 1; 12741 unsigned CCP5IF : 1; 12742 unsigned CCP6IF : 1; 12743 unsigned CCP7IF : 1; 12744 unsigned CCP8IF : 1; 12745 unsigned CCP9IF : 1; 12746 unsigned CCP10IF : 1; 12747 } __PIR4bits_t; 12748 12749 extern __at(0x0FB5) volatile __PIR4bits_t PIR4bits; 12750 12751 #define _ECCP3IF 0x01 12752 #define _CCP4IF 0x02 12753 #define _CCP5IF 0x04 12754 #define _CCP6IF 0x08 12755 #define _CCP7IF 0x10 12756 #define _CCP8IF 0x20 12757 #define _CCP9IF 0x40 12758 #define _CCP10IF 0x80 12759 12760 //============================================================================== 12761 12762 12763 //============================================================================== 12764 // IPR4 Bits 12765 12766 extern __at(0x0FB6) __sfr IPR4; 12767 12768 typedef struct 12769 { 12770 unsigned ECCP3IP : 1; 12771 unsigned CCP4IP : 1; 12772 unsigned CCP5IP : 1; 12773 unsigned CCP6IP : 1; 12774 unsigned CCP7IP : 1; 12775 unsigned CCP8IP : 1; 12776 unsigned CCP9IP : 1; 12777 unsigned CCP10IP : 1; 12778 } __IPR4bits_t; 12779 12780 extern __at(0x0FB6) volatile __IPR4bits_t IPR4bits; 12781 12782 #define _ECCP3IP 0x01 12783 #define _CCP4IP 0x02 12784 #define _CCP5IP 0x04 12785 #define _CCP6IP 0x08 12786 #define _CCP7IP 0x10 12787 #define _CCP8IP 0x20 12788 #define _CCP9IP 0x40 12789 #define _CCP10IP 0x80 12790 12791 //============================================================================== 12792 12793 12794 //============================================================================== 12795 // PIE5 Bits 12796 12797 extern __at(0x0FB7) __sfr PIE5; 12798 12799 typedef struct 12800 { 12801 unsigned TMR4IE : 1; 12802 unsigned TMR5IE : 1; 12803 unsigned TMR6IE : 1; 12804 unsigned : 1; 12805 unsigned TMR8IE : 1; 12806 unsigned ACTLOCKIE : 1; 12807 unsigned ACTORSIE : 1; 12808 unsigned : 1; 12809 } __PIE5bits_t; 12810 12811 extern __at(0x0FB7) volatile __PIE5bits_t PIE5bits; 12812 12813 #define _TMR4IE 0x01 12814 #define _TMR5IE 0x02 12815 #define _TMR6IE 0x04 12816 #define _TMR8IE 0x10 12817 #define _ACTLOCKIE 0x20 12818 #define _ACTORSIE 0x40 12819 12820 //============================================================================== 12821 12822 12823 //============================================================================== 12824 // PIR5 Bits 12825 12826 extern __at(0x0FB8) __sfr PIR5; 12827 12828 typedef struct 12829 { 12830 unsigned TMR4IF : 1; 12831 unsigned TMR5IF : 1; 12832 unsigned TMR6IF : 1; 12833 unsigned : 1; 12834 unsigned TMR8IF : 1; 12835 unsigned ACTLOCKIF : 1; 12836 unsigned ACTORSIF : 1; 12837 unsigned : 1; 12838 } __PIR5bits_t; 12839 12840 extern __at(0x0FB8) volatile __PIR5bits_t PIR5bits; 12841 12842 #define _TMR4IF 0x01 12843 #define _TMR5IF 0x02 12844 #define _TMR6IF 0x04 12845 #define _TMR8IF 0x10 12846 #define _ACTLOCKIF 0x20 12847 #define _ACTORSIF 0x40 12848 12849 //============================================================================== 12850 12851 12852 //============================================================================== 12853 // CCP1CON Bits 12854 12855 extern __at(0x0FB9) __sfr CCP1CON; 12856 12857 typedef union 12858 { 12859 struct 12860 { 12861 unsigned CCP1M0 : 1; 12862 unsigned CCP1M1 : 1; 12863 unsigned CCP1M2 : 1; 12864 unsigned CCP1M3 : 1; 12865 unsigned DC1B0 : 1; 12866 unsigned DC1B1 : 1; 12867 unsigned P1M0 : 1; 12868 unsigned P1M1 : 1; 12869 }; 12870 12871 struct 12872 { 12873 unsigned : 1; 12874 unsigned : 1; 12875 unsigned : 1; 12876 unsigned : 1; 12877 unsigned CCP1Y : 1; 12878 unsigned CCP1X : 1; 12879 unsigned : 1; 12880 unsigned : 1; 12881 }; 12882 12883 struct 12884 { 12885 unsigned CCP1M : 4; 12886 unsigned : 4; 12887 }; 12888 12889 struct 12890 { 12891 unsigned : 4; 12892 unsigned DC1B : 2; 12893 unsigned : 2; 12894 }; 12895 12896 struct 12897 { 12898 unsigned : 6; 12899 unsigned P1M : 2; 12900 }; 12901 } __CCP1CONbits_t; 12902 12903 extern __at(0x0FB9) volatile __CCP1CONbits_t CCP1CONbits; 12904 12905 #define _CCP1M0 0x01 12906 #define _CCP1M1 0x02 12907 #define _CCP1M2 0x04 12908 #define _CCP1M3 0x08 12909 #define _DC1B0 0x10 12910 #define _CCP1Y 0x10 12911 #define _DC1B1 0x20 12912 #define _CCP1X 0x20 12913 #define _P1M0 0x40 12914 #define _P1M1 0x80 12915 12916 //============================================================================== 12917 12918 extern __at(0x0FBA) __sfr CCPR1; 12919 extern __at(0x0FBA) __sfr CCPR1L; 12920 extern __at(0x0FBB) __sfr CCPR1H; 12921 12922 //============================================================================== 12923 // ECCP1DEL Bits 12924 12925 extern __at(0x0FBC) __sfr ECCP1DEL; 12926 12927 typedef union 12928 { 12929 struct 12930 { 12931 unsigned P1DC0 : 1; 12932 unsigned P1DC1 : 1; 12933 unsigned P1DC2 : 1; 12934 unsigned P1DC3 : 1; 12935 unsigned P1DC4 : 1; 12936 unsigned P1DC5 : 1; 12937 unsigned P1DC6 : 1; 12938 unsigned P1RSEN : 1; 12939 }; 12940 12941 struct 12942 { 12943 unsigned P1DC : 7; 12944 unsigned : 1; 12945 }; 12946 } __ECCP1DELbits_t; 12947 12948 extern __at(0x0FBC) volatile __ECCP1DELbits_t ECCP1DELbits; 12949 12950 #define _P1DC0 0x01 12951 #define _P1DC1 0x02 12952 #define _P1DC2 0x04 12953 #define _P1DC3 0x08 12954 #define _P1DC4 0x10 12955 #define _P1DC5 0x20 12956 #define _P1DC6 0x40 12957 #define _P1RSEN 0x80 12958 12959 //============================================================================== 12960 12961 12962 //============================================================================== 12963 // ECCP1AS Bits 12964 12965 extern __at(0x0FBD) __sfr ECCP1AS; 12966 12967 typedef union 12968 { 12969 struct 12970 { 12971 unsigned PSS1BD0 : 1; 12972 unsigned PSS1BD1 : 1; 12973 unsigned PSS1AC0 : 1; 12974 unsigned PSS1AC1 : 1; 12975 unsigned ECCP1AS0 : 1; 12976 unsigned ECCP1AS1 : 1; 12977 unsigned ECCP1AS2 : 1; 12978 unsigned ECCP1ASE : 1; 12979 }; 12980 12981 struct 12982 { 12983 unsigned PSS1BD : 2; 12984 unsigned : 6; 12985 }; 12986 12987 struct 12988 { 12989 unsigned : 2; 12990 unsigned PSS1AC : 2; 12991 unsigned : 4; 12992 }; 12993 12994 struct 12995 { 12996 unsigned : 4; 12997 unsigned ECCP1AS : 3; 12998 unsigned : 1; 12999 }; 13000 } __ECCP1ASbits_t; 13001 13002 extern __at(0x0FBD) volatile __ECCP1ASbits_t ECCP1ASbits; 13003 13004 #define _PSS1BD0 0x01 13005 #define _PSS1BD1 0x02 13006 #define _PSS1AC0 0x04 13007 #define _PSS1AC1 0x08 13008 #define _ECCP1AS0 0x10 13009 #define _ECCP1AS1 0x20 13010 #define _ECCP1AS2 0x40 13011 #define _ECCP1ASE 0x80 13012 13013 //============================================================================== 13014 13015 13016 //============================================================================== 13017 // CVRCONL Bits 13018 13019 extern __at(0x0FBE) __sfr CVRCONL; 13020 13021 typedef union 13022 { 13023 struct 13024 { 13025 unsigned CVRNSS : 1; 13026 unsigned : 1; 13027 unsigned : 1; 13028 unsigned : 1; 13029 unsigned CVRPSS0 : 1; 13030 unsigned CVRPSS1 : 1; 13031 unsigned CVROE : 1; 13032 unsigned CVREN : 1; 13033 }; 13034 13035 struct 13036 { 13037 unsigned : 4; 13038 unsigned CVRPSS : 2; 13039 unsigned : 2; 13040 }; 13041 } __CVRCONLbits_t; 13042 13043 extern __at(0x0FBE) volatile __CVRCONLbits_t CVRCONLbits; 13044 13045 #define _CVRNSS 0x01 13046 #define _CVRPSS0 0x10 13047 #define _CVRPSS1 0x20 13048 #define _CVROE 0x40 13049 #define _CVREN 0x80 13050 13051 //============================================================================== 13052 13053 13054 //============================================================================== 13055 // CVRCONH Bits 13056 13057 extern __at(0x0FBF) __sfr CVRCONH; 13058 13059 typedef union 13060 { 13061 struct 13062 { 13063 unsigned CVR0 : 1; 13064 unsigned CVR1 : 1; 13065 unsigned CVR2 : 1; 13066 unsigned CVR3 : 1; 13067 unsigned CVR4 : 1; 13068 unsigned : 1; 13069 unsigned : 1; 13070 unsigned : 1; 13071 }; 13072 13073 struct 13074 { 13075 unsigned CVR : 5; 13076 unsigned : 3; 13077 }; 13078 } __CVRCONHbits_t; 13079 13080 extern __at(0x0FBF) volatile __CVRCONHbits_t CVRCONHbits; 13081 13082 #define _CVR0 0x01 13083 #define _CVR1 0x02 13084 #define _CVR2 0x04 13085 #define _CVR3 0x08 13086 #define _CVR4 0x10 13087 13088 //============================================================================== 13089 13090 13091 //============================================================================== 13092 // ADCON1L Bits 13093 13094 extern __at(0x0FC0) __sfr ADCON1L; 13095 13096 typedef union 13097 { 13098 struct 13099 { 13100 unsigned DONE : 1; 13101 unsigned SAMP : 1; 13102 unsigned ASAM : 1; 13103 unsigned : 1; 13104 unsigned SSRC0 : 1; 13105 unsigned SSRC1 : 1; 13106 unsigned SSRC2 : 1; 13107 unsigned SSRC3 : 1; 13108 }; 13109 13110 struct 13111 { 13112 unsigned : 4; 13113 unsigned SSRC : 4; 13114 }; 13115 } __ADCON1Lbits_t; 13116 13117 extern __at(0x0FC0) volatile __ADCON1Lbits_t ADCON1Lbits; 13118 13119 #define _DONE 0x01 13120 #define _SAMP 0x02 13121 #define _ASAM 0x04 13122 #define _SSRC0 0x10 13123 #define _SSRC1 0x20 13124 #define _SSRC2 0x40 13125 #define _SSRC3 0x80 13126 13127 //============================================================================== 13128 13129 13130 //============================================================================== 13131 // ADCON1H Bits 13132 13133 extern __at(0x0FC1) __sfr ADCON1H; 13134 13135 typedef union 13136 { 13137 struct 13138 { 13139 unsigned FORM0 : 1; 13140 unsigned FORM1 : 1; 13141 unsigned MODE12 : 1; 13142 unsigned : 1; 13143 unsigned : 1; 13144 unsigned : 1; 13145 unsigned : 1; 13146 unsigned ADON : 1; 13147 }; 13148 13149 struct 13150 { 13151 unsigned FORM : 2; 13152 unsigned : 6; 13153 }; 13154 } __ADCON1Hbits_t; 13155 13156 extern __at(0x0FC1) volatile __ADCON1Hbits_t ADCON1Hbits; 13157 13158 #define _FORM0 0x01 13159 #define _FORM1 0x02 13160 #define _MODE12 0x04 13161 #define _ADON 0x80 13162 13163 //============================================================================== 13164 13165 extern __at(0x0FC2) __sfr ADCBUF0; 13166 extern __at(0x0FC2) __sfr ADCBUF0L; 13167 extern __at(0x0FC3) __sfr ADCBUF0H; 13168 13169 //============================================================================== 13170 // CMSTAT Bits 13171 13172 extern __at(0x0FC4) __sfr CMSTAT; 13173 13174 typedef struct 13175 { 13176 unsigned C1OUT : 1; 13177 unsigned C2OUT : 1; 13178 unsigned C3OUT : 1; 13179 unsigned : 1; 13180 unsigned : 1; 13181 unsigned : 1; 13182 unsigned : 1; 13183 unsigned : 1; 13184 } __CMSTATbits_t; 13185 13186 extern __at(0x0FC4) volatile __CMSTATbits_t CMSTATbits; 13187 13188 #define _C1OUT 0x01 13189 #define _C2OUT 0x02 13190 #define _C3OUT 0x04 13191 13192 //============================================================================== 13193 13194 13195 //============================================================================== 13196 // SSP1CON2 Bits 13197 13198 extern __at(0x0FC5) __sfr SSP1CON2; 13199 13200 typedef union 13201 { 13202 struct 13203 { 13204 unsigned SEN : 1; 13205 unsigned RSEN : 1; 13206 unsigned PEN : 1; 13207 unsigned RCEN : 1; 13208 unsigned ACKEN : 1; 13209 unsigned ACKDT : 1; 13210 unsigned ACKSTAT : 1; 13211 unsigned GCEN : 1; 13212 }; 13213 13214 struct 13215 { 13216 unsigned : 1; 13217 unsigned ADMSK1 : 1; 13218 unsigned ADMSK2 : 1; 13219 unsigned ADMSK3 : 1; 13220 unsigned ADMSK4 : 1; 13221 unsigned ADMSK5 : 1; 13222 unsigned : 1; 13223 unsigned : 1; 13224 }; 13225 } __SSP1CON2bits_t; 13226 13227 extern __at(0x0FC5) volatile __SSP1CON2bits_t SSP1CON2bits; 13228 13229 #define _SEN 0x01 13230 #define _RSEN 0x02 13231 #define _ADMSK1 0x02 13232 #define _PEN 0x04 13233 #define _ADMSK2 0x04 13234 #define _RCEN 0x08 13235 #define _ADMSK3 0x08 13236 #define _ACKEN 0x10 13237 #define _ADMSK4 0x10 13238 #define _ACKDT 0x20 13239 #define _ADMSK5 0x20 13240 #define _ACKSTAT 0x40 13241 #define _GCEN 0x80 13242 13243 //============================================================================== 13244 13245 13246 //============================================================================== 13247 // SSP1CON1 Bits 13248 13249 extern __at(0x0FC6) __sfr SSP1CON1; 13250 13251 typedef union 13252 { 13253 struct 13254 { 13255 unsigned SSPM0 : 1; 13256 unsigned SSPM1 : 1; 13257 unsigned SSPM2 : 1; 13258 unsigned SSPM3 : 1; 13259 unsigned CKP : 1; 13260 unsigned SSPEN : 1; 13261 unsigned SSPOV : 1; 13262 unsigned WCOL : 1; 13263 }; 13264 13265 struct 13266 { 13267 unsigned SSPM : 4; 13268 unsigned : 4; 13269 }; 13270 } __SSP1CON1bits_t; 13271 13272 extern __at(0x0FC6) volatile __SSP1CON1bits_t SSP1CON1bits; 13273 13274 #define _SSPM0 0x01 13275 #define _SSPM1 0x02 13276 #define _SSPM2 0x04 13277 #define _SSPM3 0x08 13278 #define _CKP 0x10 13279 #define _SSPEN 0x20 13280 #define _SSPOV 0x40 13281 #define _WCOL 0x80 13282 13283 //============================================================================== 13284 13285 13286 //============================================================================== 13287 // SSP1STAT Bits 13288 13289 extern __at(0x0FC7) __sfr SSP1STAT; 13290 13291 typedef union 13292 { 13293 struct 13294 { 13295 unsigned BF : 1; 13296 unsigned UA : 1; 13297 unsigned R_NOT_W : 1; 13298 unsigned S : 1; 13299 unsigned P : 1; 13300 unsigned D_NOT_A : 1; 13301 unsigned CKE : 1; 13302 unsigned SMP : 1; 13303 }; 13304 13305 struct 13306 { 13307 unsigned : 1; 13308 unsigned : 1; 13309 unsigned R_W : 1; 13310 unsigned I2C_START : 1; 13311 unsigned I2C_STOP : 1; 13312 unsigned D_A : 1; 13313 unsigned : 1; 13314 unsigned : 1; 13315 }; 13316 13317 struct 13318 { 13319 unsigned : 1; 13320 unsigned : 1; 13321 unsigned NOT_W : 1; 13322 unsigned : 1; 13323 unsigned : 1; 13324 unsigned NOT_A : 1; 13325 unsigned : 1; 13326 unsigned : 1; 13327 }; 13328 13329 struct 13330 { 13331 unsigned : 1; 13332 unsigned : 1; 13333 unsigned NOT_WRITE : 1; 13334 unsigned : 1; 13335 unsigned : 1; 13336 unsigned NOT_ADDRESS : 1; 13337 unsigned : 1; 13338 unsigned : 1; 13339 }; 13340 13341 struct 13342 { 13343 unsigned : 1; 13344 unsigned : 1; 13345 unsigned READ_WRITE : 1; 13346 unsigned : 1; 13347 unsigned : 1; 13348 unsigned DATA_ADDRESS : 1; 13349 unsigned : 1; 13350 unsigned : 1; 13351 }; 13352 13353 struct 13354 { 13355 unsigned : 1; 13356 unsigned : 1; 13357 unsigned I2C_READ : 1; 13358 unsigned : 1; 13359 unsigned : 1; 13360 unsigned I2C_DAT : 1; 13361 unsigned : 1; 13362 unsigned : 1; 13363 }; 13364 } __SSP1STATbits_t; 13365 13366 extern __at(0x0FC7) volatile __SSP1STATbits_t SSP1STATbits; 13367 13368 #define _BF 0x01 13369 #define _UA 0x02 13370 #define _R_NOT_W 0x04 13371 #define _R_W 0x04 13372 #define _NOT_W 0x04 13373 #define _NOT_WRITE 0x04 13374 #define _READ_WRITE 0x04 13375 #define _I2C_READ 0x04 13376 #define _S 0x08 13377 #define _I2C_START 0x08 13378 #define _P 0x10 13379 #define _I2C_STOP 0x10 13380 #define _D_NOT_A 0x20 13381 #define _D_A 0x20 13382 #define _NOT_A 0x20 13383 #define _NOT_ADDRESS 0x20 13384 #define _DATA_ADDRESS 0x20 13385 #define _I2C_DAT 0x20 13386 #define _CKE 0x40 13387 #define _SMP 0x80 13388 13389 //============================================================================== 13390 13391 extern __at(0x0FC8) __sfr SSP1ADD; 13392 extern __at(0x0FC9) __sfr SSP1BUF; 13393 13394 //============================================================================== 13395 // T2CON Bits 13396 13397 extern __at(0x0FCA) __sfr T2CON; 13398 13399 typedef union 13400 { 13401 struct 13402 { 13403 unsigned T2CKPS0 : 1; 13404 unsigned T2CKPS1 : 1; 13405 unsigned TMR2ON : 1; 13406 unsigned T2OUTPS0 : 1; 13407 unsigned T2OUTPS1 : 1; 13408 unsigned T2OUTPS2 : 1; 13409 unsigned T2OUTPS3 : 1; 13410 unsigned : 1; 13411 }; 13412 13413 struct 13414 { 13415 unsigned T2CKPS : 2; 13416 unsigned : 6; 13417 }; 13418 13419 struct 13420 { 13421 unsigned : 3; 13422 unsigned T2OUTPS : 4; 13423 unsigned : 1; 13424 }; 13425 } __T2CONbits_t; 13426 13427 extern __at(0x0FCA) volatile __T2CONbits_t T2CONbits; 13428 13429 #define _T2CKPS0 0x01 13430 #define _T2CKPS1 0x02 13431 #define _TMR2ON 0x04 13432 #define _T2OUTPS0 0x08 13433 #define _T2OUTPS1 0x10 13434 #define _T2OUTPS2 0x20 13435 #define _T2OUTPS3 0x40 13436 13437 //============================================================================== 13438 13439 extern __at(0x0FCB) __sfr PR2; 13440 extern __at(0x0FCC) __sfr TMR2; 13441 13442 //============================================================================== 13443 // T1CON Bits 13444 13445 extern __at(0x0FCD) __sfr T1CON; 13446 13447 typedef union 13448 { 13449 struct 13450 { 13451 unsigned TMR1ON : 1; 13452 unsigned RD16 : 1; 13453 unsigned NOT_T1SYNC : 1; 13454 unsigned SOSCEN : 1; 13455 unsigned T1CKPS0 : 1; 13456 unsigned T1CKPS1 : 1; 13457 unsigned TMR1CS0 : 1; 13458 unsigned TMR1CS1 : 1; 13459 }; 13460 13461 struct 13462 { 13463 unsigned : 4; 13464 unsigned T1CKPS : 2; 13465 unsigned : 2; 13466 }; 13467 13468 struct 13469 { 13470 unsigned : 6; 13471 unsigned TMR1CS : 2; 13472 }; 13473 } __T1CONbits_t; 13474 13475 extern __at(0x0FCD) volatile __T1CONbits_t T1CONbits; 13476 13477 #define _TMR1ON 0x01 13478 #define _RD16 0x02 13479 #define _NOT_T1SYNC 0x04 13480 #define _SOSCEN 0x08 13481 #define _T1CKPS0 0x10 13482 #define _T1CKPS1 0x20 13483 #define _TMR1CS0 0x40 13484 #define _TMR1CS1 0x80 13485 13486 //============================================================================== 13487 13488 extern __at(0x0FCE) __sfr TMR1; 13489 extern __at(0x0FCE) __sfr TMR1L; 13490 extern __at(0x0FCF) __sfr TMR1H; 13491 13492 //============================================================================== 13493 // RCON Bits 13494 13495 extern __at(0x0FD0) __sfr RCON; 13496 13497 typedef union 13498 { 13499 struct 13500 { 13501 unsigned NOT_BOR : 1; 13502 unsigned NOT_POR : 1; 13503 unsigned NOT_PD : 1; 13504 unsigned NOT_TO : 1; 13505 unsigned NOT_RI : 1; 13506 unsigned NOT_CM : 1; 13507 unsigned : 1; 13508 unsigned IPEN : 1; 13509 }; 13510 13511 struct 13512 { 13513 unsigned BOR : 1; 13514 unsigned POR : 1; 13515 unsigned PD : 1; 13516 unsigned TO : 1; 13517 unsigned RI : 1; 13518 unsigned CM : 1; 13519 unsigned : 1; 13520 unsigned : 1; 13521 }; 13522 } __RCONbits_t; 13523 13524 extern __at(0x0FD0) volatile __RCONbits_t RCONbits; 13525 13526 #define _RCON_NOT_BOR 0x01 13527 #define _RCON_BOR 0x01 13528 #define _RCON_NOT_POR 0x02 13529 #define _RCON_POR 0x02 13530 #define _RCON_NOT_PD 0x04 13531 #define _RCON_PD 0x04 13532 #define _RCON_NOT_TO 0x08 13533 #define _RCON_TO 0x08 13534 #define _RCON_NOT_RI 0x10 13535 #define _RCON_RI 0x10 13536 #define _RCON_NOT_CM 0x20 13537 #define _RCON_CM 0x20 13538 #define _RCON_IPEN 0x80 13539 13540 //============================================================================== 13541 13542 13543 //============================================================================== 13544 // IOCF Bits 13545 13546 extern __at(0x0FD1) __sfr IOCF; 13547 13548 typedef struct 13549 { 13550 unsigned IOCF0 : 1; 13551 unsigned IOCF1 : 1; 13552 unsigned IOCF2 : 1; 13553 unsigned IOCF3 : 1; 13554 unsigned IOCF4 : 1; 13555 unsigned IOCF5 : 1; 13556 unsigned IOCF6 : 1; 13557 unsigned IOCF7 : 1; 13558 } __IOCFbits_t; 13559 13560 extern __at(0x0FD1) volatile __IOCFbits_t IOCFbits; 13561 13562 #define _IOCF0 0x01 13563 #define _IOCF1 0x02 13564 #define _IOCF2 0x04 13565 #define _IOCF3 0x08 13566 #define _IOCF4 0x10 13567 #define _IOCF5 0x20 13568 #define _IOCF6 0x40 13569 #define _IOCF7 0x80 13570 13571 //============================================================================== 13572 13573 13574 //============================================================================== 13575 // IPR5 Bits 13576 13577 extern __at(0x0FD2) __sfr IPR5; 13578 13579 typedef struct 13580 { 13581 unsigned TMR4IP : 1; 13582 unsigned TMR5IP : 1; 13583 unsigned TMR6IP : 1; 13584 unsigned : 1; 13585 unsigned TMR8IP : 1; 13586 unsigned ACTLOCKIP : 1; 13587 unsigned ACTORSIP : 1; 13588 unsigned : 1; 13589 } __IPR5bits_t; 13590 13591 extern __at(0x0FD2) volatile __IPR5bits_t IPR5bits; 13592 13593 #define _TMR4IP 0x01 13594 #define _TMR5IP 0x02 13595 #define _TMR6IP 0x04 13596 #define _TMR8IP 0x10 13597 #define _ACTLOCKIP 0x20 13598 #define _ACTORSIP 0x40 13599 13600 //============================================================================== 13601 13602 13603 //============================================================================== 13604 // OSCCON Bits 13605 13606 extern __at(0x0FD3) __sfr OSCCON; 13607 13608 typedef union 13609 { 13610 struct 13611 { 13612 unsigned NOSC0 : 1; 13613 unsigned NOSC1 : 1; 13614 unsigned NOSC2 : 1; 13615 unsigned : 1; 13616 unsigned COSC0 : 1; 13617 unsigned COSC1 : 1; 13618 unsigned COSC2 : 1; 13619 unsigned IDLEN : 1; 13620 }; 13621 13622 struct 13623 { 13624 unsigned NOSC : 3; 13625 unsigned : 5; 13626 }; 13627 13628 struct 13629 { 13630 unsigned : 4; 13631 unsigned COSC : 3; 13632 unsigned : 1; 13633 }; 13634 } __OSCCONbits_t; 13635 13636 extern __at(0x0FD3) volatile __OSCCONbits_t OSCCONbits; 13637 13638 #define _NOSC0 0x01 13639 #define _NOSC1 0x02 13640 #define _NOSC2 0x04 13641 #define _COSC0 0x10 13642 #define _COSC1 0x20 13643 #define _COSC2 0x40 13644 #define _IDLEN 0x80 13645 13646 //============================================================================== 13647 13648 13649 //============================================================================== 13650 // T0CON Bits 13651 13652 extern __at(0x0FD5) __sfr T0CON; 13653 13654 typedef union 13655 { 13656 struct 13657 { 13658 unsigned T0PS0 : 1; 13659 unsigned T0PS1 : 1; 13660 unsigned T0PS2 : 1; 13661 unsigned PSA : 1; 13662 unsigned T0CS0 : 1; 13663 unsigned T0CS1 : 1; 13664 unsigned T08BIT : 1; 13665 unsigned TMR0ON : 1; 13666 }; 13667 13668 struct 13669 { 13670 unsigned T0PS : 3; 13671 unsigned : 5; 13672 }; 13673 13674 struct 13675 { 13676 unsigned : 4; 13677 unsigned T0CS : 2; 13678 unsigned : 2; 13679 }; 13680 } __T0CONbits_t; 13681 13682 extern __at(0x0FD5) volatile __T0CONbits_t T0CONbits; 13683 13684 #define _T0PS0 0x01 13685 #define _T0PS1 0x02 13686 #define _T0PS2 0x04 13687 #define _PSA 0x08 13688 #define _T0CS0 0x10 13689 #define _T0CS1 0x20 13690 #define _T08BIT 0x40 13691 #define _TMR0ON 0x80 13692 13693 //============================================================================== 13694 13695 extern __at(0x0FD6) __sfr TMR0; 13696 extern __at(0x0FD6) __sfr TMR0L; 13697 extern __at(0x0FD7) __sfr TMR0H; 13698 13699 //============================================================================== 13700 // STATUS Bits 13701 13702 extern __at(0x0FD8) __sfr STATUS; 13703 13704 typedef struct 13705 { 13706 unsigned C : 1; 13707 unsigned DC : 1; 13708 unsigned Z : 1; 13709 unsigned OV : 1; 13710 unsigned N : 1; 13711 unsigned : 1; 13712 unsigned : 1; 13713 unsigned : 1; 13714 } __STATUSbits_t; 13715 13716 extern __at(0x0FD8) volatile __STATUSbits_t STATUSbits; 13717 13718 #define _C 0x01 13719 #define _DC 0x02 13720 #define _Z 0x04 13721 #define _OV 0x08 13722 #define _N 0x10 13723 13724 //============================================================================== 13725 13726 extern __at(0x0FD9) __sfr FSR2L; 13727 extern __at(0x0FDA) __sfr FSR2H; 13728 extern __at(0x0FDB) __sfr PLUSW2; 13729 extern __at(0x0FDC) __sfr PREINC2; 13730 extern __at(0x0FDD) __sfr POSTDEC2; 13731 extern __at(0x0FDE) __sfr POSTINC2; 13732 extern __at(0x0FDF) __sfr INDF2; 13733 extern __at(0x0FE0) __sfr BSR; 13734 extern __at(0x0FE1) __sfr FSR1L; 13735 extern __at(0x0FE2) __sfr FSR1H; 13736 extern __at(0x0FE3) __sfr PLUSW1; 13737 extern __at(0x0FE4) __sfr PREINC1; 13738 extern __at(0x0FE5) __sfr POSTDEC1; 13739 extern __at(0x0FE6) __sfr POSTINC1; 13740 extern __at(0x0FE7) __sfr INDF1; 13741 extern __at(0x0FE8) __sfr WREG; 13742 extern __at(0x0FE9) __sfr FSR0L; 13743 extern __at(0x0FEA) __sfr FSR0H; 13744 extern __at(0x0FEB) __sfr PLUSW0; 13745 extern __at(0x0FEC) __sfr PREINC0; 13746 extern __at(0x0FED) __sfr POSTDEC0; 13747 extern __at(0x0FEE) __sfr POSTINC0; 13748 extern __at(0x0FEF) __sfr INDF0; 13749 13750 //============================================================================== 13751 // INTCON3 Bits 13752 13753 extern __at(0x0FF0) __sfr INTCON3; 13754 13755 typedef union 13756 { 13757 struct 13758 { 13759 unsigned INT1IF : 1; 13760 unsigned INT2IF : 1; 13761 unsigned INT3IF : 1; 13762 unsigned INT1IE : 1; 13763 unsigned INT2IE : 1; 13764 unsigned INT3IE : 1; 13765 unsigned INT1IP : 1; 13766 unsigned INT2IP : 1; 13767 }; 13768 13769 struct 13770 { 13771 unsigned INT1F : 1; 13772 unsigned INT2F : 1; 13773 unsigned INT3F : 1; 13774 unsigned INT1E : 1; 13775 unsigned INT2E : 1; 13776 unsigned INT3E : 1; 13777 unsigned INT1P : 1; 13778 unsigned INT2P : 1; 13779 }; 13780 } __INTCON3bits_t; 13781 13782 extern __at(0x0FF0) volatile __INTCON3bits_t INTCON3bits; 13783 13784 #define _INT1IF 0x01 13785 #define _INT1F 0x01 13786 #define _INT2IF 0x02 13787 #define _INT2F 0x02 13788 #define _INT3IF 0x04 13789 #define _INT3F 0x04 13790 #define _INT1IE 0x08 13791 #define _INT1E 0x08 13792 #define _INT2IE 0x10 13793 #define _INT2E 0x10 13794 #define _INT3IE 0x20 13795 #define _INT3E 0x20 13796 #define _INT1IP 0x40 13797 #define _INT1P 0x40 13798 #define _INT2IP 0x80 13799 #define _INT2P 0x80 13800 13801 //============================================================================== 13802 13803 13804 //============================================================================== 13805 // INTCON2 Bits 13806 13807 extern __at(0x0FF1) __sfr INTCON2; 13808 13809 typedef union 13810 { 13811 struct 13812 { 13813 unsigned IOCIP : 1; 13814 unsigned INT3IP : 1; 13815 unsigned TMR0IP : 1; 13816 unsigned INTEDG3 : 1; 13817 unsigned INTEDG2 : 1; 13818 unsigned INTEDG1 : 1; 13819 unsigned INTEDG0 : 1; 13820 unsigned NOT_RBPU : 1; 13821 }; 13822 13823 struct 13824 { 13825 unsigned : 1; 13826 unsigned INT3P : 1; 13827 unsigned T0IP : 1; 13828 unsigned : 1; 13829 unsigned : 1; 13830 unsigned : 1; 13831 unsigned : 1; 13832 unsigned RBPU : 1; 13833 }; 13834 } __INTCON2bits_t; 13835 13836 extern __at(0x0FF1) volatile __INTCON2bits_t INTCON2bits; 13837 13838 #define _IOCIP 0x01 13839 #define _INT3IP 0x02 13840 #define _INT3P 0x02 13841 #define _TMR0IP 0x04 13842 #define _T0IP 0x04 13843 #define _INTEDG3 0x08 13844 #define _INTEDG2 0x10 13845 #define _INTEDG1 0x20 13846 #define _INTEDG0 0x40 13847 #define _NOT_RBPU 0x80 13848 #define _RBPU 0x80 13849 13850 //============================================================================== 13851 13852 13853 //============================================================================== 13854 // INTCON Bits 13855 13856 extern __at(0x0FF2) __sfr INTCON; 13857 13858 typedef union 13859 { 13860 struct 13861 { 13862 unsigned IOCIF : 1; 13863 unsigned INT0IF : 1; 13864 unsigned TMR0IF : 1; 13865 unsigned IOCIE : 1; 13866 unsigned INT0IE : 1; 13867 unsigned TMR0IE : 1; 13868 unsigned PEIE_GIEL : 1; 13869 unsigned GIE_GIEH : 1; 13870 }; 13871 13872 struct 13873 { 13874 unsigned : 1; 13875 unsigned INT0F : 1; 13876 unsigned T0IF : 1; 13877 unsigned : 1; 13878 unsigned INT0E : 1; 13879 unsigned T0IE : 1; 13880 unsigned PEIE : 1; 13881 unsigned GIE : 1; 13882 }; 13883 13884 struct 13885 { 13886 unsigned : 1; 13887 unsigned : 1; 13888 unsigned : 1; 13889 unsigned : 1; 13890 unsigned : 1; 13891 unsigned : 1; 13892 unsigned GIEL : 1; 13893 unsigned GIEH : 1; 13894 }; 13895 } __INTCONbits_t; 13896 13897 extern __at(0x0FF2) volatile __INTCONbits_t INTCONbits; 13898 13899 #define _IOCIF 0x01 13900 #define _INT0IF 0x02 13901 #define _INT0F 0x02 13902 #define _TMR0IF 0x04 13903 #define _T0IF 0x04 13904 #define _IOCIE 0x08 13905 #define _INT0IE 0x10 13906 #define _INT0E 0x10 13907 #define _TMR0IE 0x20 13908 #define _T0IE 0x20 13909 #define _PEIE_GIEL 0x40 13910 #define _PEIE 0x40 13911 #define _GIEL 0x40 13912 #define _GIE_GIEH 0x80 13913 #define _GIE 0x80 13914 #define _GIEH 0x80 13915 13916 //============================================================================== 13917 13918 extern __at(0x0FF3) __sfr PROD; 13919 extern __at(0x0FF3) __sfr PRODL; 13920 extern __at(0x0FF4) __sfr PRODH; 13921 extern __at(0x0FF5) __sfr TABLAT; 13922 extern __at(0x0FF6) __sfr TBLPTR; 13923 extern __at(0x0FF6) __sfr TBLPTRL; 13924 extern __at(0x0FF7) __sfr TBLPTRH; 13925 extern __at(0x0FF8) __sfr TBLPTRU; 13926 extern __at(0x0FF9) __sfr PC; 13927 extern __at(0x0FF9) __sfr PCL; 13928 extern __at(0x0FFA) __sfr PCLATH; 13929 extern __at(0x0FFB) __sfr PCLATU; 13930 13931 //============================================================================== 13932 // STKPTR Bits 13933 13934 extern __at(0x0FFC) __sfr STKPTR; 13935 13936 typedef union 13937 { 13938 struct 13939 { 13940 unsigned SP0 : 1; 13941 unsigned SP1 : 1; 13942 unsigned SP2 : 1; 13943 unsigned SP3 : 1; 13944 unsigned SP4 : 1; 13945 unsigned : 1; 13946 unsigned STKUNF : 1; 13947 unsigned STKFUL : 1; 13948 }; 13949 13950 struct 13951 { 13952 unsigned : 1; 13953 unsigned : 1; 13954 unsigned : 1; 13955 unsigned : 1; 13956 unsigned : 1; 13957 unsigned : 1; 13958 unsigned : 1; 13959 unsigned STKOVF : 1; 13960 }; 13961 13962 struct 13963 { 13964 unsigned SP : 5; 13965 unsigned : 3; 13966 }; 13967 } __STKPTRbits_t; 13968 13969 extern __at(0x0FFC) volatile __STKPTRbits_t STKPTRbits; 13970 13971 #define _SP0 0x01 13972 #define _SP1 0x02 13973 #define _SP2 0x04 13974 #define _SP3 0x08 13975 #define _SP4 0x10 13976 #define _STKUNF 0x40 13977 #define _STKFUL 0x80 13978 #define _STKOVF 0x80 13979 13980 //============================================================================== 13981 13982 extern __at(0x0FFD) __sfr TOS; 13983 extern __at(0x0FFD) __sfr TOSL; 13984 extern __at(0x0FFE) __sfr TOSH; 13985 extern __at(0x0FFF) __sfr TOSU; 13986 13987 //============================================================================== 13988 // 13989 // Configuration Addresses 13990 // 13991 //============================================================================== 13992 13993 #define __CONFIG1L 0x017FF0 13994 #define __CONFIG1H 0x017FF1 13995 #define __CONFIG2L 0x017FF2 13996 #define __CONFIG2H 0x017FF3 13997 #define __CONFIG3L 0x017FF4 13998 #define __CONFIG3H 0x017FF5 13999 #define __CONFIG4L 0x017FF6 14000 #define __CONFIG4H 0x017FF7 14001 #define __CONFIG5L 0x017FF8 14002 #define __CONFIG5H 0x017FF9 14003 #define __CONFIG6L 0x017FFA 14004 #define __CONFIG6H 0x017FFB 14005 #define __CONFIG7L 0x017FFC 14006 #define __CONFIG7H 0x017FFD 14007 #define __CONFIG8L 0x017FFE 14008 #define __CONFIG8H 0x017FFF 14009 14010 //============================================================================== 14011 14012 #endif // #ifndef __PIC18F96J99_H__ 14013