struct / union in initializer, RFE #901.
[sdcc.git] / sdcc / device / non-free / include / pic16 / pic18f66j99.h
blob212247d74ef3f4de5f3fde380889cd98ffb190fe
1 /*
2 * This declarations of the PIC18F66J99 MCU.
4 * This file is part of the GNU PIC library for SDCC, originally
5 * created by Molnar Karoly <molnarkaroly@users.sf.net> 2016.
7 * This file is generated automatically by the cinc2h.pl, 2016-04-13 17:23:34 UTC.
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.
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.
22 * See http://sdcc.sourceforge.net/ for the latest information on sdcc.
25 #ifndef __PIC18F66J99_H__
26 #define __PIC18F66J99_H__
28 //==============================================================================
30 //==============================================================================
32 // Register Definitions
34 //==============================================================================
37 //==============================================================================
38 // UEP0 Bits
40 extern __at(0x0DFF) __sfr UEP0;
42 typedef struct
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;
54 extern __at(0x0DFF) volatile __UEP0bits_t UEP0bits;
56 #define _EPSTALL 0x01
57 #define _EPINEN 0x02
58 #define _EPOUTEN 0x04
59 #define _EPCONDIS 0x08
60 #define _EPHSHK 0x10
62 //==============================================================================
65 //==============================================================================
66 // UEP1 Bits
68 extern __at(0x0E00) __sfr UEP1;
70 typedef struct
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;
82 extern __at(0x0E00) volatile __UEP1bits_t UEP1bits;
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
90 //==============================================================================
93 //==============================================================================
94 // UEP2 Bits
96 extern __at(0x0E01) __sfr UEP2;
98 typedef struct
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;
110 extern __at(0x0E01) volatile __UEP2bits_t UEP2bits;
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
118 //==============================================================================
121 //==============================================================================
122 // UEP3 Bits
124 extern __at(0x0E02) __sfr UEP3;
126 typedef struct
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;
138 extern __at(0x0E02) volatile __UEP3bits_t UEP3bits;
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
146 //==============================================================================
149 //==============================================================================
150 // UEP4 Bits
152 extern __at(0x0E03) __sfr UEP4;
154 typedef struct
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;
166 extern __at(0x0E03) volatile __UEP4bits_t UEP4bits;
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
174 //==============================================================================
177 //==============================================================================
178 // UEP5 Bits
180 extern __at(0x0E04) __sfr UEP5;
182 typedef struct
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;
194 extern __at(0x0E04) volatile __UEP5bits_t UEP5bits;
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
202 //==============================================================================
205 //==============================================================================
206 // UEP6 Bits
208 extern __at(0x0E05) __sfr UEP6;
210 typedef struct
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;
222 extern __at(0x0E05) volatile __UEP6bits_t UEP6bits;
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
230 //==============================================================================
233 //==============================================================================
234 // UEP7 Bits
236 extern __at(0x0E06) __sfr UEP7;
238 typedef struct
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;
250 extern __at(0x0E06) volatile __UEP7bits_t UEP7bits;
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
258 //==============================================================================
261 //==============================================================================
262 // UEP8 Bits
264 extern __at(0x0E07) __sfr UEP8;
266 typedef struct
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;
278 extern __at(0x0E07) volatile __UEP8bits_t UEP8bits;
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
286 //==============================================================================
289 //==============================================================================
290 // UEP9 Bits
292 extern __at(0x0E08) __sfr UEP9;
294 typedef struct
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;
306 extern __at(0x0E08) volatile __UEP9bits_t UEP9bits;
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
314 //==============================================================================
317 //==============================================================================
318 // UEP10 Bits
320 extern __at(0x0E09) __sfr UEP10;
322 typedef struct
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;
334 extern __at(0x0E09) volatile __UEP10bits_t UEP10bits;
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
342 //==============================================================================
345 //==============================================================================
346 // UEP11 Bits
348 extern __at(0x0E0A) __sfr UEP11;
350 typedef struct
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;
362 extern __at(0x0E0A) volatile __UEP11bits_t UEP11bits;
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
370 //==============================================================================
373 //==============================================================================
374 // UEP12 Bits
376 extern __at(0x0E0B) __sfr UEP12;
378 typedef struct
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;
390 extern __at(0x0E0B) volatile __UEP12bits_t UEP12bits;
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
398 //==============================================================================
401 //==============================================================================
402 // UEP13 Bits
404 extern __at(0x0E0C) __sfr UEP13;
406 typedef struct
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;
418 extern __at(0x0E0C) volatile __UEP13bits_t UEP13bits;
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
426 //==============================================================================
429 //==============================================================================
430 // UEP14 Bits
432 extern __at(0x0E0D) __sfr UEP14;
434 typedef struct
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;
446 extern __at(0x0E0D) volatile __UEP14bits_t UEP14bits;
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
454 //==============================================================================
457 //==============================================================================
458 // UEP15 Bits
460 extern __at(0x0E0E) __sfr UEP15;
462 typedef struct
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;
474 extern __at(0x0E0E) volatile __UEP15bits_t UEP15bits;
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
482 //==============================================================================
485 //==============================================================================
486 // UEIE Bits
488 extern __at(0x0E0F) __sfr UEIE;
490 typedef struct
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;
502 extern __at(0x0E0F) volatile __UEIEbits_t UEIEbits;
504 #define _PIDEE 0x01
505 #define _CRC5EE 0x02
506 #define _CRC16EE 0x04
507 #define _DFN8EE 0x08
508 #define _BTOEE 0x10
509 #define _BTSEE 0x80
511 //==============================================================================
514 //==============================================================================
515 // UIE Bits
517 extern __at(0x0E10) __sfr UIE;
519 typedef struct
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;
531 extern __at(0x0E10) volatile __UIEbits_t UIEbits;
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
541 //==============================================================================
544 //==============================================================================
545 // UCFG Bits
547 extern __at(0x0E11) __sfr UCFG;
549 typedef union
551 struct
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;
563 struct
565 unsigned PPB : 2;
566 unsigned : 6;
568 } __UCFGbits_t;
570 extern __at(0x0E11) volatile __UCFGbits_t UCFGbits;
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
580 //==============================================================================
583 //==============================================================================
584 // RPOR0_1 Bits
586 extern __at(0x0E12) __sfr RPOR0_1;
588 typedef union
590 struct
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;
602 struct
604 unsigned RPO0R : 4;
605 unsigned : 4;
608 struct
610 unsigned : 4;
611 unsigned RPO1R : 4;
613 } __RPOR0_1bits_t;
615 extern __at(0x0E12) volatile __RPOR0_1bits_t RPOR0_1bits;
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
626 //==============================================================================
629 //==============================================================================
630 // RPOR2_3 Bits
632 extern __at(0x0E13) __sfr RPOR2_3;
634 typedef union
636 struct
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;
648 struct
650 unsigned RPO2R : 4;
651 unsigned : 4;
654 struct
656 unsigned : 4;
657 unsigned RPO3R : 4;
659 } __RPOR2_3bits_t;
661 extern __at(0x0E13) volatile __RPOR2_3bits_t RPOR2_3bits;
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
672 //==============================================================================
675 //==============================================================================
676 // RPOR4_5 Bits
678 extern __at(0x0E14) __sfr RPOR4_5;
680 typedef union
682 struct
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;
694 struct
696 unsigned RPO4R : 4;
697 unsigned : 4;
700 struct
702 unsigned : 4;
703 unsigned RPO5R : 4;
705 } __RPOR4_5bits_t;
707 extern __at(0x0E14) volatile __RPOR4_5bits_t RPOR4_5bits;
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
718 //==============================================================================
721 //==============================================================================
722 // RPOR6_7 Bits
724 extern __at(0x0E15) __sfr RPOR6_7;
726 typedef union
728 struct
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;
740 struct
742 unsigned RPO6R : 4;
743 unsigned : 4;
746 struct
748 unsigned : 4;
749 unsigned RPO7R : 4;
751 } __RPOR6_7bits_t;
753 extern __at(0x0E15) volatile __RPOR6_7bits_t RPOR6_7bits;
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
764 //==============================================================================
767 //==============================================================================
768 // RPOR8_9 Bits
770 extern __at(0x0E16) __sfr RPOR8_9;
772 typedef union
774 struct
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;
786 struct
788 unsigned RPO8R : 4;
789 unsigned : 4;
792 struct
794 unsigned : 4;
795 unsigned RPO9R : 4;
797 } __RPOR8_9bits_t;
799 extern __at(0x0E16) volatile __RPOR8_9bits_t RPOR8_9bits;
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
810 //==============================================================================
813 //==============================================================================
814 // RPOR10_11 Bits
816 extern __at(0x0E17) __sfr RPOR10_11;
818 typedef union
820 struct
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;
832 struct
834 unsigned RPO10R : 4;
835 unsigned : 4;
838 struct
840 unsigned : 4;
841 unsigned RPO11R : 4;
843 } __RPOR10_11bits_t;
845 extern __at(0x0E17) volatile __RPOR10_11bits_t RPOR10_11bits;
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
856 //==============================================================================
859 //==============================================================================
860 // RPOR12_13 Bits
862 extern __at(0x0E18) __sfr RPOR12_13;
864 typedef union
866 struct
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;
878 struct
880 unsigned RPO12R : 4;
881 unsigned : 4;
884 struct
886 unsigned : 4;
887 unsigned RPO13R : 4;
889 } __RPOR12_13bits_t;
891 extern __at(0x0E18) volatile __RPOR12_13bits_t RPOR12_13bits;
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
902 //==============================================================================
905 //==============================================================================
906 // RPOR14_15 Bits
908 extern __at(0x0E19) __sfr RPOR14_15;
910 typedef union
912 struct
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;
924 struct
926 unsigned RPO14R : 4;
927 unsigned : 4;
930 struct
932 unsigned : 4;
933 unsigned RPO15R : 4;
935 } __RPOR14_15bits_t;
937 extern __at(0x0E19) volatile __RPOR14_15bits_t RPOR14_15bits;
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
948 //==============================================================================
951 //==============================================================================
952 // RPOR16_17 Bits
954 extern __at(0x0E1A) __sfr RPOR16_17;
956 typedef union
958 struct
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;
970 struct
972 unsigned RPO16R : 4;
973 unsigned : 4;
976 struct
978 unsigned : 4;
979 unsigned RPO17R : 4;
981 } __RPOR16_17bits_t;
983 extern __at(0x0E1A) volatile __RPOR16_17bits_t RPOR16_17bits;
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
994 //==============================================================================
997 //==============================================================================
998 // RPOR18_19 Bits
1000 extern __at(0x0E1B) __sfr RPOR18_19;
1002 typedef union
1004 struct
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;
1016 struct
1018 unsigned RPO18R : 4;
1019 unsigned : 4;
1022 struct
1024 unsigned : 4;
1025 unsigned RPO19R : 4;
1027 } __RPOR18_19bits_t;
1029 extern __at(0x0E1B) volatile __RPOR18_19bits_t RPOR18_19bits;
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
1040 //==============================================================================
1043 //==============================================================================
1044 // RPOR20_21 Bits
1046 extern __at(0x0E1C) __sfr RPOR20_21;
1048 typedef union
1050 struct
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;
1062 struct
1064 unsigned RPO20R : 4;
1065 unsigned : 4;
1068 struct
1070 unsigned : 4;
1071 unsigned RPO21R : 4;
1073 } __RPOR20_21bits_t;
1075 extern __at(0x0E1C) volatile __RPOR20_21bits_t RPOR20_21bits;
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
1086 //==============================================================================
1089 //==============================================================================
1090 // RPOR22_23 Bits
1092 extern __at(0x0E1D) __sfr RPOR22_23;
1094 typedef union
1096 struct
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;
1108 struct
1110 unsigned RPO22R : 4;
1111 unsigned : 4;
1114 struct
1116 unsigned : 4;
1117 unsigned RPO23R : 4;
1119 } __RPOR22_23bits_t;
1121 extern __at(0x0E1D) volatile __RPOR22_23bits_t RPOR22_23bits;
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
1132 //==============================================================================
1135 //==============================================================================
1136 // RPOR24_25 Bits
1138 extern __at(0x0E1E) __sfr RPOR24_25;
1140 typedef union
1142 struct
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;
1154 struct
1156 unsigned RPO24R : 4;
1157 unsigned : 4;
1160 struct
1162 unsigned : 4;
1163 unsigned RPO25R : 4;
1165 } __RPOR24_25bits_t;
1167 extern __at(0x0E1E) volatile __RPOR24_25bits_t RPOR24_25bits;
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
1178 //==============================================================================
1181 //==============================================================================
1182 // RPOR26_27 Bits
1184 extern __at(0x0E1F) __sfr RPOR26_27;
1186 typedef union
1188 struct
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;
1200 struct
1202 unsigned RPO26R : 4;
1203 unsigned : 4;
1206 struct
1208 unsigned : 4;
1209 unsigned RPO27R : 4;
1211 } __RPOR26_27bits_t;
1213 extern __at(0x0E1F) volatile __RPOR26_27bits_t RPOR26_27bits;
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
1224 //==============================================================================
1227 //==============================================================================
1228 // RPOR28_29 Bits
1230 extern __at(0x0E20) __sfr RPOR28_29;
1232 typedef union
1234 struct
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;
1246 struct
1248 unsigned RPO28R : 4;
1249 unsigned : 4;
1252 struct
1254 unsigned : 4;
1255 unsigned RPO29R : 4;
1257 } __RPOR28_29bits_t;
1259 extern __at(0x0E20) volatile __RPOR28_29bits_t RPOR28_29bits;
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
1270 //==============================================================================
1273 //==============================================================================
1274 // RPOR30_31 Bits
1276 extern __at(0x0E21) __sfr RPOR30_31;
1278 typedef union
1280 struct
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;
1292 struct
1294 unsigned RPO30R : 4;
1295 unsigned : 4;
1298 struct
1300 unsigned : 4;
1301 unsigned RPO31R : 4;
1303 } __RPOR30_31bits_t;
1305 extern __at(0x0E21) volatile __RPOR30_31bits_t RPOR30_31bits;
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
1316 //==============================================================================
1319 //==============================================================================
1320 // RPOR32_33 Bits
1322 extern __at(0x0E22) __sfr RPOR32_33;
1324 typedef union
1326 struct
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;
1338 struct
1340 unsigned RPO32R : 4;
1341 unsigned : 4;
1344 struct
1346 unsigned : 4;
1347 unsigned RPO33R : 4;
1349 } __RPOR32_33bits_t;
1351 extern __at(0x0E22) volatile __RPOR32_33bits_t RPOR32_33bits;
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
1362 //==============================================================================
1365 //==============================================================================
1366 // RPOR34_35 Bits
1368 extern __at(0x0E23) __sfr RPOR34_35;
1370 typedef union
1372 struct
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;
1384 struct
1386 unsigned RPO34R : 4;
1387 unsigned : 4;
1390 struct
1392 unsigned : 4;
1393 unsigned RPO35R : 4;
1395 } __RPOR34_35bits_t;
1397 extern __at(0x0E23) volatile __RPOR34_35bits_t RPOR34_35bits;
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
1408 //==============================================================================
1411 //==============================================================================
1412 // RPOR36_37 Bits
1414 extern __at(0x0E24) __sfr RPOR36_37;
1416 typedef union
1418 struct
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;
1430 struct
1432 unsigned RPO36R : 4;
1433 unsigned : 4;
1436 struct
1438 unsigned : 4;
1439 unsigned RPO37R : 4;
1441 } __RPOR36_37bits_t;
1443 extern __at(0x0E24) volatile __RPOR36_37bits_t RPOR36_37bits;
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
1454 //==============================================================================
1457 //==============================================================================
1458 // RPOR38_39 Bits
1460 extern __at(0x0E25) __sfr RPOR38_39;
1462 typedef union
1464 struct
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;
1476 struct
1478 unsigned RPO38R : 4;
1479 unsigned : 4;
1482 struct
1484 unsigned : 4;
1485 unsigned RPO39R : 4;
1487 } __RPOR38_39bits_t;
1489 extern __at(0x0E25) volatile __RPOR38_39bits_t RPOR38_39bits;
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
1500 //==============================================================================
1503 //==============================================================================
1504 // RPOR40_41 Bits
1506 extern __at(0x0E26) __sfr RPOR40_41;
1508 typedef union
1510 struct
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;
1522 struct
1524 unsigned RPO40R : 4;
1525 unsigned : 4;
1528 struct
1530 unsigned : 4;
1531 unsigned RPO41R : 4;
1533 } __RPOR40_41bits_t;
1535 extern __at(0x0E26) volatile __RPOR40_41bits_t RPOR40_41bits;
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
1546 //==============================================================================
1549 //==============================================================================
1550 // RPOR42_43 Bits
1552 extern __at(0x0E27) __sfr RPOR42_43;
1554 typedef union
1556 struct
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;
1568 struct
1570 unsigned RPO42R : 4;
1571 unsigned : 4;
1574 struct
1576 unsigned : 4;
1577 unsigned RPO43R : 4;
1579 } __RPOR42_43bits_t;
1581 extern __at(0x0E27) volatile __RPOR42_43bits_t RPOR42_43bits;
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
1592 //==============================================================================
1595 //==============================================================================
1596 // RPOR44_45 Bits
1598 extern __at(0x0E28) __sfr RPOR44_45;
1600 typedef union
1602 struct
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;
1614 struct
1616 unsigned RPO44R : 4;
1617 unsigned : 4;
1620 struct
1622 unsigned : 4;
1623 unsigned RPO45R : 4;
1625 } __RPOR44_45bits_t;
1627 extern __at(0x0E28) volatile __RPOR44_45bits_t RPOR44_45bits;
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
1638 //==============================================================================
1641 //==============================================================================
1642 // RPOR46 Bits
1644 extern __at(0x0E29) __sfr RPOR46;
1646 typedef union
1648 struct
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;
1660 struct
1662 unsigned RPO46R : 4;
1663 unsigned : 4;
1665 } __RPOR46bits_t;
1667 extern __at(0x0E29) volatile __RPOR46bits_t RPOR46bits;
1669 #define _RPO46R0 0x01
1670 #define _RPO46R1 0x02
1671 #define _RPO46R2 0x04
1672 #define _RPO46R3 0x08
1674 //==============================================================================
1677 //==============================================================================
1678 // RPINR0_1 Bits
1680 extern __at(0x0E2A) __sfr RPINR0_1;
1682 typedef union
1684 struct
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;
1696 struct
1698 unsigned U1RXR : 4;
1699 unsigned : 4;
1702 struct
1704 unsigned : 4;
1705 unsigned U1TXR : 4;
1707 } __RPINR0_1bits_t;
1709 extern __at(0x0E2A) volatile __RPINR0_1bits_t RPINR0_1bits;
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
1720 //==============================================================================
1723 //==============================================================================
1724 // RPINR2_3 Bits
1726 extern __at(0x0E2B) __sfr RPINR2_3;
1728 typedef union
1730 struct
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;
1742 struct
1744 unsigned U2RXR : 4;
1745 unsigned : 4;
1748 struct
1750 unsigned : 4;
1751 unsigned U2TXR : 4;
1753 } __RPINR2_3bits_t;
1755 extern __at(0x0E2B) volatile __RPINR2_3bits_t RPINR2_3bits;
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
1766 //==============================================================================
1769 //==============================================================================
1770 // RPINR4_5 Bits
1772 extern __at(0x0E2C) __sfr RPINR4_5;
1774 typedef union
1776 struct
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;
1788 struct
1790 unsigned U3RXR : 4;
1791 unsigned : 4;
1794 struct
1796 unsigned : 4;
1797 unsigned U3TXR : 4;
1799 } __RPINR4_5bits_t;
1801 extern __at(0x0E2C) volatile __RPINR4_5bits_t RPINR4_5bits;
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
1812 //==============================================================================
1815 //==============================================================================
1816 // RPINR6_7 Bits
1818 extern __at(0x0E2D) __sfr RPINR6_7;
1820 typedef union
1822 struct
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;
1834 struct
1836 unsigned U4RXR : 4;
1837 unsigned : 4;
1840 struct
1842 unsigned : 4;
1843 unsigned U4TXR : 4;
1845 } __RPINR6_7bits_t;
1847 extern __at(0x0E2D) volatile __RPINR6_7bits_t RPINR6_7bits;
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
1858 //==============================================================================
1861 //==============================================================================
1862 // RPINR8_9 Bits
1864 extern __at(0x0E2E) __sfr RPINR8_9;
1866 typedef union
1868 struct
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;
1880 struct
1882 unsigned SCK1R : 4;
1883 unsigned : 4;
1886 struct
1888 unsigned : 4;
1889 unsigned SDI1R : 4;
1891 } __RPINR8_9bits_t;
1893 extern __at(0x0E2E) volatile __RPINR8_9bits_t RPINR8_9bits;
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
1904 //==============================================================================
1907 //==============================================================================
1908 // RPINR10_11 Bits
1910 extern __at(0x0E2F) __sfr RPINR10_11;
1912 typedef union
1914 struct
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;
1926 struct
1928 unsigned SS1R : 4;
1929 unsigned : 4;
1932 struct
1934 unsigned : 4;
1935 unsigned SCK2R : 4;
1937 } __RPINR10_11bits_t;
1939 extern __at(0x0E2F) volatile __RPINR10_11bits_t RPINR10_11bits;
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
1950 //==============================================================================
1953 //==============================================================================
1954 // RPINR12_13 Bits
1956 extern __at(0x0E30) __sfr RPINR12_13;
1958 typedef union
1960 struct
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;
1972 struct
1974 unsigned SDI2R : 4;
1975 unsigned : 4;
1978 struct
1980 unsigned : 4;
1981 unsigned SS2R : 4;
1983 } __RPINR12_13bits_t;
1985 extern __at(0x0E30) volatile __RPINR12_13bits_t RPINR12_13bits;
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
1996 //==============================================================================
1999 //==============================================================================
2000 // RPINR14_15 Bits
2002 extern __at(0x0E31) __sfr RPINR14_15;
2004 typedef union
2006 struct
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;
2018 struct
2020 unsigned FLT0R : 4;
2021 unsigned : 4;
2024 struct
2026 unsigned : 4;
2027 unsigned ECCP1R : 4;
2029 } __RPINR14_15bits_t;
2031 extern __at(0x0E31) volatile __RPINR14_15bits_t RPINR14_15bits;
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
2042 //==============================================================================
2045 //==============================================================================
2046 // RPINR16_17 Bits
2048 extern __at(0x0E32) __sfr RPINR16_17;
2050 typedef union
2052 struct
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;
2064 struct
2066 unsigned ECCP2R : 4;
2067 unsigned : 4;
2070 struct
2072 unsigned : 4;
2073 unsigned ECCP3R : 4;
2075 } __RPINR16_17bits_t;
2077 extern __at(0x0E32) volatile __RPINR16_17bits_t RPINR16_17bits;
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
2088 //==============================================================================
2091 //==============================================================================
2092 // RPINR18_19 Bits
2094 extern __at(0x0E33) __sfr RPINR18_19;
2096 typedef union
2098 struct
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;
2110 struct
2112 unsigned IOC0R : 4;
2113 unsigned : 4;
2116 struct
2118 unsigned : 4;
2119 unsigned IOC1R : 4;
2121 } __RPINR18_19bits_t;
2123 extern __at(0x0E33) volatile __RPINR18_19bits_t RPINR18_19bits;
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
2134 //==============================================================================
2137 //==============================================================================
2138 // RPINR20_21 Bits
2140 extern __at(0x0E34) __sfr RPINR20_21;
2142 typedef union
2144 struct
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;
2156 struct
2158 unsigned IOC2R : 4;
2159 unsigned : 4;
2162 struct
2164 unsigned : 4;
2165 unsigned IOC3R : 4;
2167 } __RPINR20_21bits_t;
2169 extern __at(0x0E34) volatile __RPINR20_21bits_t RPINR20_21bits;
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
2180 //==============================================================================
2183 //==============================================================================
2184 // RPINR22_23 Bits
2186 extern __at(0x0E35) __sfr RPINR22_23;
2188 typedef union
2190 struct
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;
2202 struct
2204 unsigned IOC4R : 4;
2205 unsigned : 4;
2208 struct
2210 unsigned : 4;
2211 unsigned IOC5R : 4;
2213 } __RPINR22_23bits_t;
2215 extern __at(0x0E35) volatile __RPINR22_23bits_t RPINR22_23bits;
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
2226 //==============================================================================
2229 //==============================================================================
2230 // RPINR24_25 Bits
2232 extern __at(0x0E36) __sfr RPINR24_25;
2234 typedef union
2236 struct
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;
2248 struct
2250 unsigned IOC6R : 4;
2251 unsigned : 4;
2254 struct
2256 unsigned : 4;
2257 unsigned IOC7R : 4;
2259 } __RPINR24_25bits_t;
2261 extern __at(0x0E36) volatile __RPINR24_25bits_t RPINR24_25bits;
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
2272 //==============================================================================
2275 //==============================================================================
2276 // RPINR26_27 Bits
2278 extern __at(0x0E37) __sfr RPINR26_27;
2280 typedef union
2282 struct
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;
2294 struct
2296 unsigned INT1R : 4;
2297 unsigned : 4;
2300 struct
2302 unsigned : 4;
2303 unsigned INT2R : 4;
2305 } __RPINR26_27bits_t;
2307 extern __at(0x0E37) volatile __RPINR26_27bits_t RPINR26_27bits;
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
2318 //==============================================================================
2321 //==============================================================================
2322 // RPINR28_29 Bits
2324 extern __at(0x0E38) __sfr RPINR28_29;
2326 typedef union
2328 struct
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;
2340 struct
2342 unsigned INT3R : 4;
2343 unsigned : 4;
2346 struct
2348 unsigned : 4;
2349 unsigned MDMINR : 4;
2351 } __RPINR28_29bits_t;
2353 extern __at(0x0E38) volatile __RPINR28_29bits_t RPINR28_29bits;
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
2364 //==============================================================================
2367 //==============================================================================
2368 // RPINR30_31 Bits
2370 extern __at(0x0E39) __sfr RPINR30_31;
2372 typedef union
2374 struct
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;
2386 struct
2388 unsigned MDCIN1R : 4;
2389 unsigned : 4;
2392 struct
2394 unsigned : 4;
2395 unsigned MDCIN2R : 4;
2397 } __RPINR30_31bits_t;
2399 extern __at(0x0E39) volatile __RPINR30_31bits_t RPINR30_31bits;
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
2410 //==============================================================================
2413 //==============================================================================
2414 // RPINR32_33 Bits
2416 extern __at(0x0E3A) __sfr RPINR32_33;
2418 typedef union
2420 struct
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;
2432 struct
2434 unsigned CCP4R : 4;
2435 unsigned : 4;
2438 struct
2440 unsigned : 4;
2441 unsigned CCP5R : 4;
2443 } __RPINR32_33bits_t;
2445 extern __at(0x0E3A) volatile __RPINR32_33bits_t RPINR32_33bits;
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
2456 //==============================================================================
2459 //==============================================================================
2460 // RPINR34_35 Bits
2462 extern __at(0x0E3B) __sfr RPINR34_35;
2464 typedef union
2466 struct
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;
2478 struct
2480 unsigned CCP6R : 4;
2481 unsigned : 4;
2484 struct
2486 unsigned : 4;
2487 unsigned CCP7R : 4;
2489 } __RPINR34_35bits_t;
2491 extern __at(0x0E3B) volatile __RPINR34_35bits_t RPINR34_35bits;
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
2502 //==============================================================================
2505 //==============================================================================
2506 // RPINR36_37 Bits
2508 extern __at(0x0E3C) __sfr RPINR36_37;
2510 typedef union
2512 struct
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;
2524 struct
2526 unsigned CCP8R : 4;
2527 unsigned : 4;
2530 struct
2532 unsigned : 4;
2533 unsigned CCP9R : 4;
2535 } __RPINR36_37bits_t;
2537 extern __at(0x0E3C) volatile __RPINR36_37bits_t RPINR36_37bits;
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
2548 //==============================================================================
2551 //==============================================================================
2552 // RPINR38_39 Bits
2554 extern __at(0x0E3D) __sfr RPINR38_39;
2556 typedef union
2558 struct
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;
2570 struct
2572 unsigned CCP10R : 4;
2573 unsigned : 4;
2576 struct
2578 unsigned : 4;
2579 unsigned T0CKIR : 4;
2581 } __RPINR38_39bits_t;
2583 extern __at(0x0E3D) volatile __RPINR38_39bits_t RPINR38_39bits;
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
2594 //==============================================================================
2597 //==============================================================================
2598 // RPINR40_41 Bits
2600 extern __at(0x0E3E) __sfr RPINR40_41;
2602 typedef union
2604 struct
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;
2616 struct
2618 unsigned T1GR : 4;
2619 unsigned : 4;
2622 struct
2624 unsigned : 4;
2625 unsigned T1CKIR : 4;
2627 } __RPINR40_41bits_t;
2629 extern __at(0x0E3E) volatile __RPINR40_41bits_t RPINR40_41bits;
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
2640 //==============================================================================
2643 //==============================================================================
2644 // RPINR42_43 Bits
2646 extern __at(0x0E3F) __sfr RPINR42_43;
2648 typedef union
2650 struct
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;
2662 struct
2664 unsigned T3GR : 4;
2665 unsigned : 4;
2668 struct
2670 unsigned : 4;
2671 unsigned T3CKIR : 4;
2673 } __RPINR42_43bits_t;
2675 extern __at(0x0E3F) volatile __RPINR42_43bits_t RPINR42_43bits;
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
2686 //==============================================================================
2689 //==============================================================================
2690 // RPINR44_45 Bits
2692 extern __at(0x0E40) __sfr RPINR44_45;
2694 typedef union
2696 struct
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;
2708 struct
2710 unsigned T5GR : 4;
2711 unsigned : 4;
2714 struct
2716 unsigned : 4;
2717 unsigned T5CKIR : 4;
2719 } __RPINR44_45bits_t;
2721 extern __at(0x0E40) volatile __RPINR44_45bits_t RPINR44_45bits;
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
2732 //==============================================================================
2735 //==============================================================================
2736 // RPINR46_47 Bits
2738 extern __at(0x0E41) __sfr RPINR46_47;
2740 typedef union
2742 struct
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;
2754 struct
2756 unsigned PBIO0R : 4;
2757 unsigned : 4;
2760 struct
2762 unsigned : 4;
2763 unsigned PBIO1R : 4;
2765 } __RPINR46_47bits_t;
2767 extern __at(0x0E41) volatile __RPINR46_47bits_t RPINR46_47bits;
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
2778 //==============================================================================
2781 //==============================================================================
2782 // RPINR48_49 Bits
2784 extern __at(0x0E42) __sfr RPINR48_49;
2786 typedef union
2788 struct
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;
2800 struct
2802 unsigned PBIO2R : 4;
2803 unsigned : 4;
2806 struct
2808 unsigned : 4;
2809 unsigned PBIO3R : 4;
2811 } __RPINR48_49bits_t;
2813 extern __at(0x0E42) volatile __RPINR48_49bits_t RPINR48_49bits;
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
2824 //==============================================================================
2827 //==============================================================================
2828 // RPINR50_51 Bits
2830 extern __at(0x0E43) __sfr RPINR50_51;
2832 typedef union
2834 struct
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;
2846 struct
2848 unsigned PBIO4R : 4;
2849 unsigned : 4;
2852 struct
2854 unsigned : 4;
2855 unsigned PBIO5R : 4;
2857 } __RPINR50_51bits_t;
2859 extern __at(0x0E43) volatile __RPINR50_51bits_t RPINR50_51bits;
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
2870 //==============================================================================
2873 //==============================================================================
2874 // RPINR52_53 Bits
2876 extern __at(0x0E44) __sfr RPINR52_53;
2878 typedef union
2880 struct
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;
2892 struct
2894 unsigned PBIO6R : 4;
2895 unsigned : 4;
2898 struct
2900 unsigned : 4;
2901 unsigned PBIO7R : 4;
2903 } __RPINR52_53bits_t;
2905 extern __at(0x0E44) volatile __RPINR52_53bits_t RPINR52_53bits;
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
2916 //==============================================================================
2919 //==============================================================================
2920 // ANCON3 Bits
2922 extern __at(0x0E45) __sfr ANCON3;
2924 typedef struct
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;
2936 extern __at(0x0E45) volatile __ANCON3bits_t ANCON3bits;
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
2947 //==============================================================================
2950 //==============================================================================
2951 // ANCON2 Bits
2953 extern __at(0x0E46) __sfr ANCON2;
2955 typedef struct
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;
2967 extern __at(0x0E46) volatile __ANCON2bits_t ANCON2bits;
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
2978 //==============================================================================
2981 //==============================================================================
2982 // ANCON1 Bits
2984 extern __at(0x0E47) __sfr ANCON1;
2986 typedef struct
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;
2998 extern __at(0x0E47) volatile __ANCON1bits_t ANCON1bits;
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
3009 //==============================================================================
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;
3087 //==============================================================================
3088 // ADCTMUEN0L Bits
3090 extern __at(0x0E7A) __sfr ADCTMUEN0L;
3092 typedef struct
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;
3104 extern __at(0x0E7A) volatile __ADCTMUEN0Lbits_t ADCTMUEN0Lbits;
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
3115 //==============================================================================
3118 //==============================================================================
3119 // ADCTMUEN0H Bits
3121 extern __at(0x0E7B) __sfr ADCTMUEN0H;
3123 typedef struct
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;
3135 extern __at(0x0E7B) volatile __ADCTMUEN0Hbits_t ADCTMUEN0Hbits;
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
3146 //==============================================================================
3149 //==============================================================================
3150 // ADCTMUEN1L Bits
3152 extern __at(0x0E7C) __sfr ADCTMUEN1L;
3154 typedef struct
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;
3166 extern __at(0x0E7C) volatile __ADCTMUEN1Lbits_t ADCTMUEN1Lbits;
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
3177 //==============================================================================
3180 //==============================================================================
3181 // ADCTMUEN1H Bits
3183 extern __at(0x0E7D) __sfr ADCTMUEN1H;
3185 typedef struct
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;
3197 extern __at(0x0E7D) volatile __ADCTMUEN1Hbits_t ADCTMUEN1Hbits;
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
3207 //==============================================================================
3210 //==============================================================================
3211 // ADCHIT0L Bits
3213 extern __at(0x0E7E) __sfr ADCHIT0L;
3215 typedef struct
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;
3227 extern __at(0x0E7E) volatile __ADCHIT0Lbits_t ADCHIT0Lbits;
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
3238 //==============================================================================
3241 //==============================================================================
3242 // ADCHIT0H Bits
3244 extern __at(0x0E7F) __sfr ADCHIT0H;
3246 typedef struct
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;
3258 extern __at(0x0E7F) volatile __ADCHIT0Hbits_t ADCHIT0Hbits;
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
3269 //==============================================================================
3272 //==============================================================================
3273 // ADCHIT1L Bits
3275 extern __at(0x0E80) __sfr ADCHIT1L;
3277 typedef struct
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;
3289 extern __at(0x0E80) volatile __ADCHIT1Lbits_t ADCHIT1Lbits;
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
3300 //==============================================================================
3303 //==============================================================================
3304 // ADCHIT1H Bits
3306 extern __at(0x0E81) __sfr ADCHIT1H;
3308 typedef struct
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;
3320 extern __at(0x0E81) volatile __ADCHIT1Hbits_t ADCHIT1Hbits;
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
3330 //==============================================================================
3333 //==============================================================================
3334 // ADCSS0L Bits
3336 extern __at(0x0E82) __sfr ADCSS0L;
3338 typedef struct
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;
3350 extern __at(0x0E82) volatile __ADCSS0Lbits_t ADCSS0Lbits;
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
3361 //==============================================================================
3364 //==============================================================================
3365 // ADCSS0H Bits
3367 extern __at(0x0E83) __sfr ADCSS0H;
3369 typedef struct
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;
3381 extern __at(0x0E83) volatile __ADCSS0Hbits_t ADCSS0Hbits;
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
3392 //==============================================================================
3395 //==============================================================================
3396 // ADCSS1L Bits
3398 extern __at(0x0E84) __sfr ADCSS1L;
3400 typedef struct
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;
3412 extern __at(0x0E84) volatile __ADCSS1Lbits_t ADCSS1Lbits;
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
3423 //==============================================================================
3426 //==============================================================================
3427 // ADCSS1H Bits
3429 extern __at(0x0E85) __sfr ADCSS1H;
3431 typedef struct
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;
3443 extern __at(0x0E85) volatile __ADCSS1Hbits_t ADCSS1Hbits;
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
3453 //==============================================================================
3456 //==============================================================================
3457 // ADCHS0L Bits
3459 extern __at(0x0E86) __sfr ADCHS0L;
3461 typedef union
3463 struct
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;
3475 struct
3477 unsigned CH0SA : 5;
3478 unsigned : 3;
3481 struct
3483 unsigned : 5;
3484 unsigned CH0NA : 3;
3486 } __ADCHS0Lbits_t;
3488 extern __at(0x0E86) volatile __ADCHS0Lbits_t ADCHS0Lbits;
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
3499 //==============================================================================
3502 //==============================================================================
3503 // ADCHS0H Bits
3505 extern __at(0x0E87) __sfr ADCHS0H;
3507 typedef union
3509 struct
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;
3521 struct
3523 unsigned CH0SB : 5;
3524 unsigned : 3;
3527 struct
3529 unsigned : 5;
3530 unsigned CH0NB : 3;
3532 } __ADCHS0Hbits_t;
3534 extern __at(0x0E87) volatile __ADCHS0Hbits_t ADCHS0Hbits;
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
3545 //==============================================================================
3548 //==============================================================================
3549 // ADCON5L Bits
3551 extern __at(0x0E88) __sfr ADCON5L;
3553 typedef union
3555 struct
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;
3567 struct
3569 unsigned CM : 2;
3570 unsigned : 6;
3573 struct
3575 unsigned : 2;
3576 unsigned WM : 2;
3577 unsigned : 4;
3579 } __ADCON5Lbits_t;
3581 extern __at(0x0E88) volatile __ADCON5Lbits_t ADCON5Lbits;
3583 #define _CM0 0x01
3584 #define _CM1 0x02
3585 #define _WM0 0x04
3586 #define _WM1 0x08
3588 //==============================================================================
3591 //==============================================================================
3592 // ADCON5H Bits
3594 extern __at(0x0E89) __sfr ADCON5H;
3596 typedef union
3598 struct
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;
3610 struct
3612 unsigned ASINTMD : 2;
3613 unsigned : 6;
3615 } __ADCON5Hbits_t;
3617 extern __at(0x0E89) volatile __ADCON5Hbits_t ADCON5Hbits;
3619 #define _ASINTMD0 0x01
3620 #define _ASINTMD1 0x02
3621 #define _CTMUREQ 0x20
3622 #define _LPENA 0x40
3623 #define _ASENA 0x80
3625 //==============================================================================
3628 //==============================================================================
3629 // ADCON3L Bits
3631 extern __at(0x0E8A) __sfr ADCON3L;
3633 typedef struct
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;
3645 extern __at(0x0E8A) volatile __ADCON3Lbits_t ADCON3Lbits;
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
3656 //==============================================================================
3659 //==============================================================================
3660 // ADCON3H Bits
3662 extern __at(0x0E8B) __sfr ADCON3H;
3664 typedef union
3666 struct
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;
3678 struct
3680 unsigned SAMC : 5;
3681 unsigned : 3;
3683 } __ADCON3Hbits_t;
3685 extern __at(0x0E8B) volatile __ADCON3Hbits_t ADCON3Hbits;
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
3696 //==============================================================================
3699 //==============================================================================
3700 // ADCON2L Bits
3702 extern __at(0x0E8C) __sfr ADCON2L;
3704 typedef union
3706 struct
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;
3718 struct
3720 unsigned : 2;
3721 unsigned SMPI : 5;
3722 unsigned : 1;
3724 } __ADCON2Lbits_t;
3726 extern __at(0x0E8C) volatile __ADCON2Lbits_t ADCON2Lbits;
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
3737 //==============================================================================
3740 //==============================================================================
3741 // ADCON2H Bits
3743 extern __at(0x0E8D) __sfr ADCON2H;
3745 typedef union
3747 struct
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;
3759 struct
3761 unsigned : 6;
3762 unsigned PVCFG : 2;
3764 } __ADCON2Hbits_t;
3766 extern __at(0x0E8D) volatile __ADCON2Hbits_t ADCON2Hbits;
3768 #define _CSCNA 0x04
3769 #define _BUFREGEN 0x08
3770 #define _OFFCAL 0x10
3771 #define _NVCFG0 0x20
3772 #define _PVCFG0 0x40
3773 #define _PVCFG1 0x80
3775 //==============================================================================
3778 //==============================================================================
3779 // LCDDATA0 Bits
3781 extern __at(0x0E8E) __sfr LCDDATA0;
3783 typedef struct
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;
3795 extern __at(0x0E8E) volatile __LCDDATA0bits_t LCDDATA0bits;
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
3806 //==============================================================================
3809 //==============================================================================
3810 // LCDDATA1 Bits
3812 extern __at(0x0E8F) __sfr LCDDATA1;
3814 typedef struct
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;
3826 extern __at(0x0E8F) volatile __LCDDATA1bits_t LCDDATA1bits;
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
3837 //==============================================================================
3840 //==============================================================================
3841 // LCDDATA2 Bits
3843 extern __at(0x0E90) __sfr LCDDATA2;
3845 typedef struct
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;
3857 extern __at(0x0E90) volatile __LCDDATA2bits_t LCDDATA2bits;
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
3868 //==============================================================================
3871 //==============================================================================
3872 // LCDDATA3 Bits
3874 extern __at(0x0E91) __sfr LCDDATA3;
3876 typedef struct
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;
3888 extern __at(0x0E91) volatile __LCDDATA3bits_t LCDDATA3bits;
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
3899 //==============================================================================
3902 //==============================================================================
3903 // LCDDATA4 Bits
3905 extern __at(0x0E92) __sfr LCDDATA4;
3907 typedef struct
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;
3919 extern __at(0x0E92) volatile __LCDDATA4bits_t LCDDATA4bits;
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
3930 //==============================================================================
3933 //==============================================================================
3934 // LCDDATA5 Bits
3936 extern __at(0x0E93) __sfr LCDDATA5;
3938 typedef struct
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;
3950 extern __at(0x0E93) volatile __LCDDATA5bits_t LCDDATA5bits;
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
3961 //==============================================================================
3964 //==============================================================================
3965 // LCDDATA6 Bits
3967 extern __at(0x0E94) __sfr LCDDATA6;
3969 typedef struct
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;
3981 extern __at(0x0E94) volatile __LCDDATA6bits_t LCDDATA6bits;
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
3992 //==============================================================================
3995 //==============================================================================
3996 // LCDDATA7 Bits
3998 extern __at(0x0E95) __sfr LCDDATA7;
4000 typedef struct
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;
4012 extern __at(0x0E95) volatile __LCDDATA7bits_t LCDDATA7bits;
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
4023 //==============================================================================
4026 //==============================================================================
4027 // LCDDATA8 Bits
4029 extern __at(0x0E96) __sfr LCDDATA8;
4031 typedef struct
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;
4043 extern __at(0x0E96) volatile __LCDDATA8bits_t LCDDATA8bits;
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
4054 //==============================================================================
4057 //==============================================================================
4058 // LCDDATA9 Bits
4060 extern __at(0x0E97) __sfr LCDDATA9;
4062 typedef struct
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;
4074 extern __at(0x0E97) volatile __LCDDATA9bits_t LCDDATA9bits;
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
4085 //==============================================================================
4088 //==============================================================================
4089 // LCDDATA10 Bits
4091 extern __at(0x0E98) __sfr LCDDATA10;
4093 typedef struct
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;
4105 extern __at(0x0E98) volatile __LCDDATA10bits_t LCDDATA10bits;
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
4116 //==============================================================================
4119 //==============================================================================
4120 // LCDDATA11 Bits
4122 extern __at(0x0E99) __sfr LCDDATA11;
4124 typedef struct
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;
4136 extern __at(0x0E99) volatile __LCDDATA11bits_t LCDDATA11bits;
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
4147 //==============================================================================
4150 //==============================================================================
4151 // LCDDATA12 Bits
4153 extern __at(0x0E9A) __sfr LCDDATA12;
4155 typedef struct
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;
4167 extern __at(0x0E9A) volatile __LCDDATA12bits_t LCDDATA12bits;
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
4178 //==============================================================================
4181 //==============================================================================
4182 // LCDDATA13 Bits
4184 extern __at(0x0E9B) __sfr LCDDATA13;
4186 typedef struct
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;
4198 extern __at(0x0E9B) volatile __LCDDATA13bits_t LCDDATA13bits;
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
4209 //==============================================================================
4212 //==============================================================================
4213 // LCDDATA14 Bits
4215 extern __at(0x0E9C) __sfr LCDDATA14;
4217 typedef struct
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;
4229 extern __at(0x0E9C) volatile __LCDDATA14bits_t LCDDATA14bits;
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
4240 //==============================================================================
4243 //==============================================================================
4244 // LCDDATA15 Bits
4246 extern __at(0x0E9D) __sfr LCDDATA15;
4248 typedef struct
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;
4260 extern __at(0x0E9D) volatile __LCDDATA15bits_t LCDDATA15bits;
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
4271 //==============================================================================
4274 //==============================================================================
4275 // LCDDATA16 Bits
4277 extern __at(0x0E9E) __sfr LCDDATA16;
4279 typedef struct
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;
4291 extern __at(0x0E9E) volatile __LCDDATA16bits_t LCDDATA16bits;
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
4302 //==============================================================================
4305 //==============================================================================
4306 // LCDDATA17 Bits
4308 extern __at(0x0E9F) __sfr LCDDATA17;
4310 typedef struct
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;
4322 extern __at(0x0E9F) volatile __LCDDATA17bits_t LCDDATA17bits;
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
4333 //==============================================================================
4336 //==============================================================================
4337 // LCDDATA18 Bits
4339 extern __at(0x0EA0) __sfr LCDDATA18;
4341 typedef struct
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;
4353 extern __at(0x0EA0) volatile __LCDDATA18bits_t LCDDATA18bits;
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
4364 //==============================================================================
4367 //==============================================================================
4368 // LCDDATA19 Bits
4370 extern __at(0x0EA1) __sfr LCDDATA19;
4372 typedef struct
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;
4384 extern __at(0x0EA1) volatile __LCDDATA19bits_t LCDDATA19bits;
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
4395 //==============================================================================
4398 //==============================================================================
4399 // LCDDATA20 Bits
4401 extern __at(0x0EA2) __sfr LCDDATA20;
4403 typedef struct
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;
4415 extern __at(0x0EA2) volatile __LCDDATA20bits_t LCDDATA20bits;
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
4426 //==============================================================================
4429 //==============================================================================
4430 // LCDDATA21 Bits
4432 extern __at(0x0EA3) __sfr LCDDATA21;
4434 typedef struct
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;
4446 extern __at(0x0EA3) volatile __LCDDATA21bits_t LCDDATA21bits;
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
4457 //==============================================================================
4460 //==============================================================================
4461 // LCDDATA22 Bits
4463 extern __at(0x0EA4) __sfr LCDDATA22;
4465 typedef struct
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;
4477 extern __at(0x0EA4) volatile __LCDDATA22bits_t LCDDATA22bits;
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
4488 //==============================================================================
4491 //==============================================================================
4492 // LCDDATA23 Bits
4494 extern __at(0x0EA5) __sfr LCDDATA23;
4496 typedef struct
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;
4508 extern __at(0x0EA5) volatile __LCDDATA23bits_t LCDDATA23bits;
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
4519 //==============================================================================
4522 //==============================================================================
4523 // LCDDATA24 Bits
4525 extern __at(0x0EA6) __sfr LCDDATA24;
4527 typedef struct
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;
4539 extern __at(0x0EA6) volatile __LCDDATA24bits_t LCDDATA24bits;
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
4550 //==============================================================================
4553 //==============================================================================
4554 // LCDDATA25 Bits
4556 extern __at(0x0EA7) __sfr LCDDATA25;
4558 typedef struct
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;
4570 extern __at(0x0EA7) volatile __LCDDATA25bits_t LCDDATA25bits;
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
4581 //==============================================================================
4584 //==============================================================================
4585 // LCDDATA26 Bits
4587 extern __at(0x0EA8) __sfr LCDDATA26;
4589 typedef struct
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;
4601 extern __at(0x0EA8) volatile __LCDDATA26bits_t LCDDATA26bits;
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
4612 //==============================================================================
4615 //==============================================================================
4616 // LCDDATA27 Bits
4618 extern __at(0x0EA9) __sfr LCDDATA27;
4620 typedef struct
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;
4632 extern __at(0x0EA9) volatile __LCDDATA27bits_t LCDDATA27bits;
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
4643 //==============================================================================
4646 //==============================================================================
4647 // LCDDATA28 Bits
4649 extern __at(0x0EAA) __sfr LCDDATA28;
4651 typedef struct
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;
4663 extern __at(0x0EAA) volatile __LCDDATA28bits_t LCDDATA28bits;
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
4674 //==============================================================================
4677 //==============================================================================
4678 // LCDDATA29 Bits
4680 extern __at(0x0EAB) __sfr LCDDATA29;
4682 typedef struct
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;
4694 extern __at(0x0EAB) volatile __LCDDATA29bits_t LCDDATA29bits;
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
4705 //==============================================================================
4708 //==============================================================================
4709 // LCDDATA30 Bits
4711 extern __at(0x0EAC) __sfr LCDDATA30;
4713 typedef struct
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;
4725 extern __at(0x0EAC) volatile __LCDDATA30bits_t LCDDATA30bits;
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
4736 //==============================================================================
4739 //==============================================================================
4740 // LCDDATA31 Bits
4742 extern __at(0x0EAD) __sfr LCDDATA31;
4744 typedef struct
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;
4756 extern __at(0x0EAD) volatile __LCDDATA31bits_t LCDDATA31bits;
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
4767 //==============================================================================
4770 //==============================================================================
4771 // LCDDATA32 Bits
4773 extern __at(0x0EAE) __sfr LCDDATA32;
4775 typedef struct
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;
4787 extern __at(0x0EAE) volatile __LCDDATA32bits_t LCDDATA32bits;
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
4798 //==============================================================================
4801 //==============================================================================
4802 // LCDDATA33 Bits
4804 extern __at(0x0EAF) __sfr LCDDATA33;
4806 typedef struct
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;
4818 extern __at(0x0EAF) volatile __LCDDATA33bits_t LCDDATA33bits;
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
4829 //==============================================================================
4832 //==============================================================================
4833 // LCDDATA34 Bits
4835 extern __at(0x0EB0) __sfr LCDDATA34;
4837 typedef struct
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;
4849 extern __at(0x0EB0) volatile __LCDDATA34bits_t LCDDATA34bits;
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
4860 //==============================================================================
4863 //==============================================================================
4864 // LCDDATA35 Bits
4866 extern __at(0x0EB1) __sfr LCDDATA35;
4868 typedef struct
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;
4880 extern __at(0x0EB1) volatile __LCDDATA35bits_t LCDDATA35bits;
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
4891 //==============================================================================
4894 //==============================================================================
4895 // LCDDATA36 Bits
4897 extern __at(0x0EB2) __sfr LCDDATA36;
4899 typedef struct
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;
4911 extern __at(0x0EB2) volatile __LCDDATA36bits_t LCDDATA36bits;
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
4922 //==============================================================================
4925 //==============================================================================
4926 // LCDDATA37 Bits
4928 extern __at(0x0EB3) __sfr LCDDATA37;
4930 typedef struct
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;
4942 extern __at(0x0EB3) volatile __LCDDATA37bits_t LCDDATA37bits;
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
4953 //==============================================================================
4956 //==============================================================================
4957 // LCDDATA38 Bits
4959 extern __at(0x0EB4) __sfr LCDDATA38;
4961 typedef struct
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;
4973 extern __at(0x0EB4) volatile __LCDDATA38bits_t LCDDATA38bits;
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
4984 //==============================================================================
4987 //==============================================================================
4988 // LCDDATA39 Bits
4990 extern __at(0x0EB5) __sfr LCDDATA39;
4992 typedef struct
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;
5004 extern __at(0x0EB5) volatile __LCDDATA39bits_t LCDDATA39bits;
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
5015 //==============================================================================
5018 //==============================================================================
5019 // LCDDATA40 Bits
5021 extern __at(0x0EB6) __sfr LCDDATA40;
5023 typedef struct
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;
5035 extern __at(0x0EB6) volatile __LCDDATA40bits_t LCDDATA40bits;
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
5046 //==============================================================================
5049 //==============================================================================
5050 // LCDDATA41 Bits
5052 extern __at(0x0EB7) __sfr LCDDATA41;
5054 typedef struct
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;
5066 extern __at(0x0EB7) volatile __LCDDATA41bits_t LCDDATA41bits;
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
5077 //==============================================================================
5080 //==============================================================================
5081 // LCDDATA42 Bits
5083 extern __at(0x0EB8) __sfr LCDDATA42;
5085 typedef struct
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;
5097 extern __at(0x0EB8) volatile __LCDDATA42bits_t LCDDATA42bits;
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
5108 //==============================================================================
5111 //==============================================================================
5112 // LCDDATA43 Bits
5114 extern __at(0x0EB9) __sfr LCDDATA43;
5116 typedef struct
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;
5128 extern __at(0x0EB9) volatile __LCDDATA43bits_t LCDDATA43bits;
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
5139 //==============================================================================
5142 //==============================================================================
5143 // LCDDATA44 Bits
5145 extern __at(0x0EBA) __sfr LCDDATA44;
5147 typedef struct
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;
5159 extern __at(0x0EBA) volatile __LCDDATA44bits_t LCDDATA44bits;
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
5170 //==============================================================================
5173 //==============================================================================
5174 // LCDDATA45 Bits
5176 extern __at(0x0EBB) __sfr LCDDATA45;
5178 typedef struct
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;
5190 extern __at(0x0EBB) volatile __LCDDATA45bits_t LCDDATA45bits;
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
5201 //==============================================================================
5204 //==============================================================================
5205 // LCDDATA46 Bits
5207 extern __at(0x0EBC) __sfr LCDDATA46;
5209 typedef struct
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;
5221 extern __at(0x0EBC) volatile __LCDDATA46bits_t LCDDATA46bits;
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
5232 //==============================================================================
5235 //==============================================================================
5236 // LCDDATA47 Bits
5238 extern __at(0x0EBD) __sfr LCDDATA47;
5240 typedef struct
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;
5252 extern __at(0x0EBD) volatile __LCDDATA47bits_t LCDDATA47bits;
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
5263 //==============================================================================
5266 //==============================================================================
5267 // LCDDATA48 Bits
5269 extern __at(0x0EBE) __sfr LCDDATA48;
5271 typedef struct
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;
5283 extern __at(0x0EBE) volatile __LCDDATA48bits_t LCDDATA48bits;
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
5294 //==============================================================================
5297 //==============================================================================
5298 // LCDDATA49 Bits
5300 extern __at(0x0EBF) __sfr LCDDATA49;
5302 typedef struct
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;
5314 extern __at(0x0EBF) volatile __LCDDATA49bits_t LCDDATA49bits;
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
5325 //==============================================================================
5328 //==============================================================================
5329 // LCDDATA50 Bits
5331 extern __at(0x0EC0) __sfr LCDDATA50;
5333 typedef struct
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;
5345 extern __at(0x0EC0) volatile __LCDDATA50bits_t LCDDATA50bits;
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
5356 //==============================================================================
5359 //==============================================================================
5360 // LCDDATA51 Bits
5362 extern __at(0x0EC1) __sfr LCDDATA51;
5364 typedef struct
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;
5376 extern __at(0x0EC1) volatile __LCDDATA51bits_t LCDDATA51bits;
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
5387 //==============================================================================
5390 //==============================================================================
5391 // LCDDATA52 Bits
5393 extern __at(0x0EC2) __sfr LCDDATA52;
5395 typedef struct
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;
5407 extern __at(0x0EC2) volatile __LCDDATA52bits_t LCDDATA52bits;
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
5418 //==============================================================================
5421 //==============================================================================
5422 // LCDDATA53 Bits
5424 extern __at(0x0EC3) __sfr LCDDATA53;
5426 typedef struct
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;
5438 extern __at(0x0EC3) volatile __LCDDATA53bits_t LCDDATA53bits;
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
5449 //==============================================================================
5452 //==============================================================================
5453 // LCDDATA54 Bits
5455 extern __at(0x0EC4) __sfr LCDDATA54;
5457 typedef struct
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;
5469 extern __at(0x0EC4) volatile __LCDDATA54bits_t LCDDATA54bits;
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
5480 //==============================================================================
5483 //==============================================================================
5484 // LCDDATA55 Bits
5486 extern __at(0x0EC5) __sfr LCDDATA55;
5488 typedef struct
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;
5500 extern __at(0x0EC5) volatile __LCDDATA55bits_t LCDDATA55bits;
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
5511 //==============================================================================
5514 //==============================================================================
5515 // LCDDATA56 Bits
5517 extern __at(0x0EC6) __sfr LCDDATA56;
5519 typedef struct
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;
5531 extern __at(0x0EC6) volatile __LCDDATA56bits_t LCDDATA56bits;
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
5542 //==============================================================================
5545 //==============================================================================
5546 // LCDDATA57 Bits
5548 extern __at(0x0EC7) __sfr LCDDATA57;
5550 typedef struct
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;
5562 extern __at(0x0EC7) volatile __LCDDATA57bits_t LCDDATA57bits;
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
5573 //==============================================================================
5576 //==============================================================================
5577 // LCDDATA58 Bits
5579 extern __at(0x0EC8) __sfr LCDDATA58;
5581 typedef struct
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;
5593 extern __at(0x0EC8) volatile __LCDDATA58bits_t LCDDATA58bits;
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
5604 //==============================================================================
5607 //==============================================================================
5608 // LCDDATA59 Bits
5610 extern __at(0x0EC9) __sfr LCDDATA59;
5612 typedef struct
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;
5624 extern __at(0x0EC9) volatile __LCDDATA59bits_t LCDDATA59bits;
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
5635 //==============================================================================
5638 //==============================================================================
5639 // LCDDATA60 Bits
5641 extern __at(0x0ECA) __sfr LCDDATA60;
5643 typedef struct
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;
5655 extern __at(0x0ECA) volatile __LCDDATA60bits_t LCDDATA60bits;
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
5666 //==============================================================================
5669 //==============================================================================
5670 // LCDDATA61 Bits
5672 extern __at(0x0ECB) __sfr LCDDATA61;
5674 typedef struct
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;
5686 extern __at(0x0ECB) volatile __LCDDATA61bits_t LCDDATA61bits;
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
5697 //==============================================================================
5700 //==============================================================================
5701 // LCDDATA62 Bits
5703 extern __at(0x0ECC) __sfr LCDDATA62;
5705 typedef struct
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;
5717 extern __at(0x0ECC) volatile __LCDDATA62bits_t LCDDATA62bits;
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
5728 //==============================================================================
5731 //==============================================================================
5732 // LCDDATA63 Bits
5734 extern __at(0x0ECD) __sfr LCDDATA63;
5736 typedef struct
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;
5748 extern __at(0x0ECD) volatile __LCDDATA63bits_t LCDDATA63bits;
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
5759 //==============================================================================
5762 //==============================================================================
5763 // LCDSE0 Bits
5765 extern __at(0x0ECE) __sfr LCDSE0;
5767 typedef struct
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;
5779 extern __at(0x0ECE) volatile __LCDSE0bits_t LCDSE0bits;
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
5790 //==============================================================================
5793 //==============================================================================
5794 // LCDSE1 Bits
5796 extern __at(0x0ECF) __sfr LCDSE1;
5798 typedef struct
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;
5810 extern __at(0x0ECF) volatile __LCDSE1bits_t LCDSE1bits;
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
5821 //==============================================================================
5824 //==============================================================================
5825 // LCDSE2 Bits
5827 extern __at(0x0ED0) __sfr LCDSE2;
5829 typedef struct
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;
5841 extern __at(0x0ED0) volatile __LCDSE2bits_t LCDSE2bits;
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
5852 //==============================================================================
5855 //==============================================================================
5856 // LCDSE3 Bits
5858 extern __at(0x0ED1) __sfr LCDSE3;
5860 typedef struct
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;
5872 extern __at(0x0ED1) volatile __LCDSE3bits_t LCDSE3bits;
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
5883 //==============================================================================
5886 //==============================================================================
5887 // LCDSE4 Bits
5889 extern __at(0x0ED2) __sfr LCDSE4;
5891 typedef struct
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;
5903 extern __at(0x0ED2) volatile __LCDSE4bits_t LCDSE4bits;
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
5914 //==============================================================================
5917 //==============================================================================
5918 // LCDSE5 Bits
5920 extern __at(0x0ED3) __sfr LCDSE5;
5922 typedef struct
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;
5934 extern __at(0x0ED3) volatile __LCDSE5bits_t LCDSE5bits;
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
5945 //==============================================================================
5948 //==============================================================================
5949 // LCDSE6 Bits
5951 extern __at(0x0ED4) __sfr LCDSE6;
5953 typedef struct
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;
5965 extern __at(0x0ED4) volatile __LCDSE6bits_t LCDSE6bits;
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
5976 //==============================================================================
5979 //==============================================================================
5980 // LCDSE7 Bits
5982 extern __at(0x0ED5) __sfr LCDSE7;
5984 typedef struct
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;
5996 extern __at(0x0ED5) volatile __LCDSE7bits_t LCDSE7bits;
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
6007 //==============================================================================
6010 //==============================================================================
6011 // LCDRL Bits
6013 extern __at(0x0ED6) __sfr LCDRL;
6015 typedef union
6017 struct
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;
6029 struct
6031 unsigned LRLAT : 3;
6032 unsigned : 5;
6035 struct
6037 unsigned : 4;
6038 unsigned LRLBP : 2;
6039 unsigned : 2;
6042 struct
6044 unsigned : 6;
6045 unsigned LRLAP : 2;
6047 } __LCDRLbits_t;
6049 extern __at(0x0ED6) volatile __LCDRLbits_t LCDRLbits;
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
6059 //==============================================================================
6062 //==============================================================================
6063 // LCDREF Bits
6065 extern __at(0x0ED7) __sfr LCDREF;
6067 typedef union
6069 struct
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;
6081 struct
6083 unsigned : 3;
6084 unsigned LCDCST : 3;
6085 unsigned : 2;
6087 } __LCDREFbits_t;
6089 extern __at(0x0ED7) volatile __LCDREFbits_t LCDREFbits;
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
6099 //==============================================================================
6102 //==============================================================================
6103 // LCDREG Bits
6105 extern __at(0x0ED8) __sfr LCDREG;
6107 typedef union
6109 struct
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;
6121 struct
6123 unsigned CLKSEL : 2;
6124 unsigned : 6;
6127 struct
6129 unsigned : 3;
6130 unsigned BIAS : 3;
6131 unsigned : 2;
6133 } __LCDREGbits_t;
6135 extern __at(0x0ED8) volatile __LCDREGbits_t LCDREGbits;
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
6145 //==============================================================================
6148 //==============================================================================
6149 // LCDCON Bits
6151 extern __at(0x0ED9) __sfr LCDCON;
6153 typedef union
6155 struct
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;
6167 struct
6169 unsigned LMUX : 3;
6170 unsigned : 5;
6173 struct
6175 unsigned : 3;
6176 unsigned CS : 2;
6177 unsigned : 3;
6179 } __LCDCONbits_t;
6181 extern __at(0x0ED9) volatile __LCDCONbits_t LCDCONbits;
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
6192 //==============================================================================
6195 //==============================================================================
6196 // LCDPS Bits
6198 extern __at(0x0EDA) __sfr LCDPS;
6200 typedef union
6202 struct
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;
6214 struct
6216 unsigned LP : 4;
6217 unsigned : 4;
6219 } __LCDPSbits_t;
6221 extern __at(0x0EDA) volatile __LCDPSbits_t LCDPSbits;
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
6232 //==============================================================================
6235 //==============================================================================
6236 // REFO2CON3 Bits
6238 extern __at(0x0EDB) __sfr REFO2CON3;
6240 typedef struct
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;
6252 extern __at(0x0EDB) volatile __REFO2CON3bits_t REFO2CON3bits;
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
6262 //==============================================================================
6265 //==============================================================================
6266 // REFO2CON2 Bits
6268 extern __at(0x0EDC) __sfr REFO2CON2;
6270 typedef struct
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;
6282 extern __at(0x0EDC) volatile __REFO2CON2bits_t REFO2CON2bits;
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
6293 //==============================================================================
6296 //==============================================================================
6297 // REFO2CON1 Bits
6299 extern __at(0x0EDD) __sfr REFO2CON1;
6301 typedef union
6303 struct
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;
6315 struct
6317 unsigned ROSEL : 4;
6318 unsigned : 4;
6320 } __REFO2CON1bits_t;
6322 extern __at(0x0EDD) volatile __REFO2CON1bits_t REFO2CON1bits;
6324 #define _REFO2CON1_ROSEL0 0x01
6325 #define _REFO2CON1_ROSEL1 0x02
6326 #define _REFO2CON1_ROSEL2 0x04
6327 #define _REFO2CON1_ROSEL3 0x08
6329 //==============================================================================
6332 //==============================================================================
6333 // REFO2CON Bits
6335 extern __at(0x0EDE) __sfr REFO2CON;
6337 typedef struct
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;
6349 extern __at(0x0EDE) volatile __REFO2CONbits_t REFO2CONbits;
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
6358 //==============================================================================
6361 //==============================================================================
6362 // REFO1CON3 Bits
6364 extern __at(0x0EDF) __sfr REFO1CON3;
6366 typedef struct
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;
6378 extern __at(0x0EDF) volatile __REFO1CON3bits_t REFO1CON3bits;
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
6388 //==============================================================================
6391 //==============================================================================
6392 // REFO1CON2 Bits
6394 extern __at(0x0EE0) __sfr REFO1CON2;
6396 typedef struct
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;
6408 extern __at(0x0EE0) volatile __REFO1CON2bits_t REFO1CON2bits;
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
6419 //==============================================================================
6422 //==============================================================================
6423 // REFO1CON1 Bits
6425 extern __at(0x0EE1) __sfr REFO1CON1;
6427 typedef union
6429 struct
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;
6441 struct
6443 unsigned ROSEL : 4;
6444 unsigned : 4;
6446 } __REFO1CON1bits_t;
6448 extern __at(0x0EE1) volatile __REFO1CON1bits_t REFO1CON1bits;
6450 #define _ROSEL0 0x01
6451 #define _ROSEL1 0x02
6452 #define _ROSEL2 0x04
6453 #define _ROSEL3 0x08
6455 //==============================================================================
6458 //==============================================================================
6459 // REFO1CON Bits
6461 extern __at(0x0EE2) __sfr REFO1CON;
6463 typedef struct
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;
6475 extern __at(0x0EE2) volatile __REFO1CONbits_t REFO1CONbits;
6477 #define _ACTIVE 0x01
6478 #define _DIVSWEN 0x02
6479 #define _ROSSLP 0x08
6480 #define _ROOE 0x10
6481 #define _ROSIDL 0x20
6482 #define _ROON 0x80
6484 //==============================================================================
6487 //==============================================================================
6488 // ODCON2 Bits
6490 extern __at(0x0EEA) __sfr ODCON2;
6492 typedef struct
6494 unsigned ECCP3OD : 1;
6495 unsigned CCP4OD : 1;
6496 unsigned CCP5OD : 1;
6497 unsigned CCP6OD : 1;
6498 unsigned CCP7OD : 1;
6499 unsigned CCP8OD : 1;
6500 unsigned CCP9OD : 1;
6501 unsigned CCP10OD : 1;
6502 } __ODCON2bits_t;
6504 extern __at(0x0EEA) volatile __ODCON2bits_t ODCON2bits;
6506 #define _ECCP3OD 0x01
6507 #define _CCP4OD 0x02
6508 #define _CCP5OD 0x04
6509 #define _CCP6OD 0x08
6510 #define _CCP7OD 0x10
6511 #define _CCP8OD 0x20
6512 #define _CCP9OD 0x40
6513 #define _CCP10OD 0x80
6515 //==============================================================================
6518 //==============================================================================
6519 // ODCON1 Bits
6521 extern __at(0x0EEB) __sfr ODCON1;
6523 typedef struct
6525 unsigned SSP1OD : 1;
6526 unsigned SSP2OD : 1;
6527 unsigned USART1OD : 1;
6528 unsigned USART2OD : 1;
6529 unsigned USART3OD : 1;
6530 unsigned USART4OD : 1;
6531 unsigned ECCP1OD : 1;
6532 unsigned ECCP2OD : 1;
6533 } __ODCON1bits_t;
6535 extern __at(0x0EEB) volatile __ODCON1bits_t ODCON1bits;
6537 #define _SSP1OD 0x01
6538 #define _SSP2OD 0x02
6539 #define _USART1OD 0x04
6540 #define _USART2OD 0x08
6541 #define _USART3OD 0x10
6542 #define _USART4OD 0x20
6543 #define _ECCP1OD 0x40
6544 #define _ECCP2OD 0x80
6546 //==============================================================================
6549 //==============================================================================
6550 // MDCARL Bits
6552 extern __at(0x0EEC) __sfr MDCARL;
6554 typedef union
6556 struct
6558 unsigned MDCL0 : 1;
6559 unsigned MDCL1 : 1;
6560 unsigned MDCL2 : 1;
6561 unsigned MDCL3 : 1;
6562 unsigned : 1;
6563 unsigned MDCLSYNC : 1;
6564 unsigned MDCLPOL : 1;
6565 unsigned MDCLODIS : 1;
6568 struct
6570 unsigned MDCL : 4;
6571 unsigned : 4;
6573 } __MDCARLbits_t;
6575 extern __at(0x0EEC) volatile __MDCARLbits_t MDCARLbits;
6577 #define _MDCL0 0x01
6578 #define _MDCL1 0x02
6579 #define _MDCL2 0x04
6580 #define _MDCL3 0x08
6581 #define _MDCLSYNC 0x20
6582 #define _MDCLPOL 0x40
6583 #define _MDCLODIS 0x80
6585 //==============================================================================
6588 //==============================================================================
6589 // MDCARH Bits
6591 extern __at(0x0EED) __sfr MDCARH;
6593 typedef union
6595 struct
6597 unsigned MDCH0 : 1;
6598 unsigned MDCH1 : 1;
6599 unsigned MDCH2 : 1;
6600 unsigned MDCH3 : 1;
6601 unsigned : 1;
6602 unsigned MDCHSYNC : 1;
6603 unsigned MDCHPOL : 1;
6604 unsigned MDCHODIS : 1;
6607 struct
6609 unsigned MDCH : 4;
6610 unsigned : 4;
6612 } __MDCARHbits_t;
6614 extern __at(0x0EED) volatile __MDCARHbits_t MDCARHbits;
6616 #define _MDCH0 0x01
6617 #define _MDCH1 0x02
6618 #define _MDCH2 0x04
6619 #define _MDCH3 0x08
6620 #define _MDCHSYNC 0x20
6621 #define _MDCHPOL 0x40
6622 #define _MDCHODIS 0x80
6624 //==============================================================================
6627 //==============================================================================
6628 // MDSRC Bits
6630 extern __at(0x0EEE) __sfr MDSRC;
6632 typedef union
6634 struct
6636 unsigned MDSRC0 : 1;
6637 unsigned MDSRC1 : 1;
6638 unsigned MDSRC2 : 1;
6639 unsigned MDSRC3 : 1;
6640 unsigned : 1;
6641 unsigned : 1;
6642 unsigned : 1;
6643 unsigned MDSODIS : 1;
6646 struct
6648 unsigned MDSRC : 4;
6649 unsigned : 4;
6651 } __MDSRCbits_t;
6653 extern __at(0x0EEE) volatile __MDSRCbits_t MDSRCbits;
6655 #define _MDSRC0 0x01
6656 #define _MDSRC1 0x02
6657 #define _MDSRC2 0x04
6658 #define _MDSRC3 0x08
6659 #define _MDSODIS 0x80
6661 //==============================================================================
6664 //==============================================================================
6665 // MDCON Bits
6667 extern __at(0x0EEF) __sfr MDCON;
6669 typedef struct
6671 unsigned MDBIT : 1;
6672 unsigned : 1;
6673 unsigned : 1;
6674 unsigned MDO : 1;
6675 unsigned MDOPOL : 1;
6676 unsigned MDSLR : 1;
6677 unsigned MDOE : 1;
6678 unsigned MDEN : 1;
6679 } __MDCONbits_t;
6681 extern __at(0x0EEF) volatile __MDCONbits_t MDCONbits;
6683 #define _MDBIT 0x01
6684 #define _MDO 0x08
6685 #define _MDOPOL 0x10
6686 #define _MDSLR 0x20
6687 #define _MDOE 0x40
6688 #define _MDEN 0x80
6690 //==============================================================================
6693 //==============================================================================
6694 // PMD4 Bits
6696 extern __at(0x0EF0) __sfr PMD4;
6698 typedef struct
6700 unsigned EMBMD : 1;
6701 unsigned : 1;
6702 unsigned LVDMD : 1;
6703 unsigned IOCMD : 1;
6704 unsigned USBMD : 1;
6705 unsigned CMP3MD : 1;
6706 unsigned CMP2MD : 1;
6707 unsigned CMP1MD : 1;
6708 } __PMD4bits_t;
6710 extern __at(0x0EF0) volatile __PMD4bits_t PMD4bits;
6712 #define _EMBMD 0x01
6713 #define _LVDMD 0x04
6714 #define _IOCMD 0x08
6715 #define _USBMD 0x10
6716 #define _CMP3MD 0x20
6717 #define _CMP2MD 0x40
6718 #define _CMP1MD 0x80
6720 //==============================================================================
6723 //==============================================================================
6724 // PMD3 Bits
6726 extern __at(0x0EF1) __sfr PMD3;
6728 typedef union
6730 struct
6732 unsigned REFO2MD : 1;
6733 unsigned REFO1MD : 1;
6734 unsigned PSPMD : 1;
6735 unsigned LCDMD : 1;
6736 unsigned RTCCMD : 1;
6737 unsigned ADCMD : 1;
6738 unsigned CTMUMD : 1;
6739 unsigned MODMD : 1;
6742 struct
6744 unsigned : 1;
6745 unsigned : 1;
6746 unsigned : 1;
6747 unsigned : 1;
6748 unsigned : 1;
6749 unsigned : 1;
6750 unsigned : 1;
6751 unsigned TXMMD : 1;
6753 } __PMD3bits_t;
6755 extern __at(0x0EF1) volatile __PMD3bits_t PMD3bits;
6757 #define _REFO2MD 0x01
6758 #define _REFO1MD 0x02
6759 #define _PSPMD 0x04
6760 #define _LCDMD 0x08
6761 #define _RTCCMD 0x10
6762 #define _ADCMD 0x20
6763 #define _CTMUMD 0x40
6764 #define _MODMD 0x80
6765 #define _TXMMD 0x80
6767 //==============================================================================
6770 //==============================================================================
6771 // PMD2 Bits
6773 extern __at(0x0EF2) __sfr PMD2;
6775 typedef struct
6777 unsigned TMR0MD : 1;
6778 unsigned TMR1MD : 1;
6779 unsigned TMR2MD : 1;
6780 unsigned TMR3MD : 1;
6781 unsigned TMR4MD : 1;
6782 unsigned TMR5MD : 1;
6783 unsigned TMR6MD : 1;
6784 unsigned TMR8MD : 1;
6785 } __PMD2bits_t;
6787 extern __at(0x0EF2) volatile __PMD2bits_t PMD2bits;
6789 #define _TMR0MD 0x01
6790 #define _TMR1MD 0x02
6791 #define _TMR2MD 0x04
6792 #define _TMR3MD 0x08
6793 #define _TMR4MD 0x10
6794 #define _TMR5MD 0x20
6795 #define _TMR6MD 0x40
6796 #define _TMR8MD 0x80
6798 //==============================================================================
6801 //==============================================================================
6802 // PMD1 Bits
6804 extern __at(0x0EF3) __sfr PMD1;
6806 typedef struct
6808 unsigned SSP1MD : 1;
6809 unsigned SSP2MD : 1;
6810 unsigned UART1MD : 1;
6811 unsigned UART2MD : 1;
6812 unsigned UART3MD : 1;
6813 unsigned UART4MD : 1;
6814 unsigned ECCP1MD : 1;
6815 unsigned ECCP2MD : 1;
6816 } __PMD1bits_t;
6818 extern __at(0x0EF3) volatile __PMD1bits_t PMD1bits;
6820 #define _SSP1MD 0x01
6821 #define _SSP2MD 0x02
6822 #define _UART1MD 0x04
6823 #define _UART2MD 0x08
6824 #define _UART3MD 0x10
6825 #define _UART4MD 0x20
6826 #define _ECCP1MD 0x40
6827 #define _ECCP2MD 0x80
6829 //==============================================================================
6832 //==============================================================================
6833 // PMD0 Bits
6835 extern __at(0x0EF4) __sfr PMD0;
6837 typedef struct
6839 unsigned ECCP3MD : 1;
6840 unsigned CCP4MD : 1;
6841 unsigned CCP5MD : 1;
6842 unsigned CCP6MD : 1;
6843 unsigned CCP7MD : 1;
6844 unsigned CCP8MD : 1;
6845 unsigned CCP9MD : 1;
6846 unsigned CCP10MD : 1;
6847 } __PMD0bits_t;
6849 extern __at(0x0EF4) volatile __PMD0bits_t PMD0bits;
6851 #define _ECCP3MD 0x01
6852 #define _CCP4MD 0x02
6853 #define _CCP5MD 0x04
6854 #define _CCP6MD 0x08
6855 #define _CCP7MD 0x10
6856 #define _CCP8MD 0x20
6857 #define _CCP9MD 0x40
6858 #define _CCP10MD 0x80
6860 //==============================================================================
6863 //==============================================================================
6864 // CTMUCON4 Bits
6866 extern __at(0x0EF5) __sfr CTMUCON4;
6868 typedef union
6870 struct
6872 unsigned EDG1STAT : 1;
6873 unsigned EDG2STAT : 1;
6874 unsigned EDG1SEL0 : 1;
6875 unsigned EDG1SEL1 : 1;
6876 unsigned EDG1SEL2 : 1;
6877 unsigned EDG1SEL3 : 1;
6878 unsigned EDG1POL : 1;
6879 unsigned EDG1EN : 1;
6882 struct
6884 unsigned : 2;
6885 unsigned EDG1SEL : 4;
6886 unsigned : 2;
6888 } __CTMUCON4bits_t;
6890 extern __at(0x0EF5) volatile __CTMUCON4bits_t CTMUCON4bits;
6892 #define _EDG1STAT 0x01
6893 #define _EDG2STAT 0x02
6894 #define _EDG1SEL0 0x04
6895 #define _EDG1SEL1 0x08
6896 #define _EDG1SEL2 0x10
6897 #define _EDG1SEL3 0x20
6898 #define _EDG1POL 0x40
6899 #define _EDG1EN 0x80
6901 //==============================================================================
6904 //==============================================================================
6905 // CTMUCON3 Bits
6907 extern __at(0x0EF6) __sfr CTMUCON3;
6909 typedef union
6911 struct
6913 unsigned : 1;
6914 unsigned : 1;
6915 unsigned EDG2SEL0 : 1;
6916 unsigned EDG2SEL1 : 1;
6917 unsigned EDG2SEL2 : 1;
6918 unsigned EDG2SEL3 : 1;
6919 unsigned EDG2POL : 1;
6920 unsigned EDG2EN : 1;
6923 struct
6925 unsigned : 2;
6926 unsigned EDG2SEL : 4;
6927 unsigned : 2;
6929 } __CTMUCON3bits_t;
6931 extern __at(0x0EF6) volatile __CTMUCON3bits_t CTMUCON3bits;
6933 #define _EDG2SEL0 0x04
6934 #define _EDG2SEL1 0x08
6935 #define _EDG2SEL2 0x10
6936 #define _EDG2SEL3 0x20
6937 #define _EDG2POL 0x40
6938 #define _EDG2EN 0x80
6940 //==============================================================================
6943 //==============================================================================
6944 // CTMUCON2 Bits
6946 extern __at(0x0EF7) __sfr CTMUCON2;
6948 typedef union
6950 struct
6952 unsigned IRNG0 : 1;
6953 unsigned IRNG1 : 1;
6954 unsigned ITRIM0 : 1;
6955 unsigned ITRIM1 : 1;
6956 unsigned ITRIM2 : 1;
6957 unsigned ITRIM3 : 1;
6958 unsigned ITRIM4 : 1;
6959 unsigned ITRIM5 : 1;
6962 struct
6964 unsigned IRNG : 2;
6965 unsigned : 6;
6968 struct
6970 unsigned : 2;
6971 unsigned ITRIM : 6;
6973 } __CTMUCON2bits_t;
6975 extern __at(0x0EF7) volatile __CTMUCON2bits_t CTMUCON2bits;
6977 #define _IRNG0 0x01
6978 #define _IRNG1 0x02
6979 #define _ITRIM0 0x04
6980 #define _ITRIM1 0x08
6981 #define _ITRIM2 0x10
6982 #define _ITRIM3 0x20
6983 #define _ITRIM4 0x40
6984 #define _ITRIM5 0x80
6986 //==============================================================================
6989 //==============================================================================
6990 // CTMUCON1 Bits
6992 extern __at(0x0EF8) __sfr CTMUCON1;
6994 typedef struct
6996 unsigned CTTRIG : 1;
6997 unsigned IDISSEN : 1;
6998 unsigned EDGSEQEN : 1;
6999 unsigned EDGEN : 1;
7000 unsigned TGEN : 1;
7001 unsigned CTMUSIDL : 1;
7002 unsigned : 1;
7003 unsigned CTMUEN : 1;
7004 } __CTMUCON1bits_t;
7006 extern __at(0x0EF8) volatile __CTMUCON1bits_t CTMUCON1bits;
7008 #define _CTTRIG 0x01
7009 #define _IDISSEN 0x02
7010 #define _EDGSEQEN 0x04
7011 #define _EDGEN 0x08
7012 #define _TGEN 0x10
7013 #define _CTMUSIDL 0x20
7014 #define _CTMUEN 0x80
7016 //==============================================================================
7018 extern __at(0x0EF9) __sfr TXREG4;
7019 extern __at(0x0EFA) __sfr RCREG4;
7021 //==============================================================================
7022 // SPBRG4 Bits
7024 extern __at(0x0EFB) __sfr SPBRG4;
7026 typedef struct
7028 unsigned BRG0 : 1;
7029 unsigned BRG1 : 1;
7030 unsigned BRG2 : 1;
7031 unsigned BRG3 : 1;
7032 unsigned BRG4 : 1;
7033 unsigned BRG5 : 1;
7034 unsigned BRG6 : 1;
7035 unsigned BRG7 : 1;
7036 } __SPBRG4bits_t;
7038 extern __at(0x0EFB) volatile __SPBRG4bits_t SPBRG4bits;
7040 #define _SPBRG4_BRG0 0x01
7041 #define _SPBRG4_BRG1 0x02
7042 #define _SPBRG4_BRG2 0x04
7043 #define _SPBRG4_BRG3 0x08
7044 #define _SPBRG4_BRG4 0x10
7045 #define _SPBRG4_BRG5 0x20
7046 #define _SPBRG4_BRG6 0x40
7047 #define _SPBRG4_BRG7 0x80
7049 //==============================================================================
7052 //==============================================================================
7053 // SPBRGH4 Bits
7055 extern __at(0x0EFC) __sfr SPBRGH4;
7057 typedef struct
7059 unsigned BRG8 : 1;
7060 unsigned BRG9 : 1;
7061 unsigned BRG10 : 1;
7062 unsigned BRG11 : 1;
7063 unsigned BRG12 : 1;
7064 unsigned BRG13 : 1;
7065 unsigned BRG14 : 1;
7066 unsigned BRG15 : 1;
7067 } __SPBRGH4bits_t;
7069 extern __at(0x0EFC) volatile __SPBRGH4bits_t SPBRGH4bits;
7071 #define _SPBRGH4_BRG8 0x01
7072 #define _SPBRGH4_BRG9 0x02
7073 #define _SPBRGH4_BRG10 0x04
7074 #define _SPBRGH4_BRG11 0x08
7075 #define _SPBRGH4_BRG12 0x10
7076 #define _SPBRGH4_BRG13 0x20
7077 #define _SPBRGH4_BRG14 0x40
7078 #define _SPBRGH4_BRG15 0x80
7080 //==============================================================================
7083 //==============================================================================
7084 // BAUDCON4 Bits
7086 extern __at(0x0EFD) __sfr BAUDCON4;
7088 typedef struct
7090 unsigned ABDEN : 1;
7091 unsigned WUE : 1;
7092 unsigned IREN : 1;
7093 unsigned BRG16 : 1;
7094 unsigned TXCKP : 1;
7095 unsigned RXDTP : 1;
7096 unsigned RCIDL : 1;
7097 unsigned ABDOVF : 1;
7098 } __BAUDCON4bits_t;
7100 extern __at(0x0EFD) volatile __BAUDCON4bits_t BAUDCON4bits;
7102 #define _BAUDCON4_ABDEN 0x01
7103 #define _BAUDCON4_WUE 0x02
7104 #define _BAUDCON4_IREN 0x04
7105 #define _BAUDCON4_BRG16 0x08
7106 #define _BAUDCON4_TXCKP 0x10
7107 #define _BAUDCON4_RXDTP 0x20
7108 #define _BAUDCON4_RCIDL 0x40
7109 #define _BAUDCON4_ABDOVF 0x80
7111 //==============================================================================
7114 //==============================================================================
7115 // TXSTA4 Bits
7117 extern __at(0x0EFE) __sfr TXSTA4;
7119 typedef struct
7121 unsigned TX9D : 1;
7122 unsigned TRMT : 1;
7123 unsigned BRGH : 1;
7124 unsigned SENDB : 1;
7125 unsigned SYNC : 1;
7126 unsigned TXEN : 1;
7127 unsigned TX9 : 1;
7128 unsigned CSRC : 1;
7129 } __TXSTA4bits_t;
7131 extern __at(0x0EFE) volatile __TXSTA4bits_t TXSTA4bits;
7133 #define _TXSTA4_TX9D 0x01
7134 #define _TXSTA4_TRMT 0x02
7135 #define _TXSTA4_BRGH 0x04
7136 #define _TXSTA4_SENDB 0x08
7137 #define _TXSTA4_SYNC 0x10
7138 #define _TXSTA4_TXEN 0x20
7139 #define _TXSTA4_TX9 0x40
7140 #define _TXSTA4_CSRC 0x80
7142 //==============================================================================
7145 //==============================================================================
7146 // RCSTA4 Bits
7148 extern __at(0x0EFF) __sfr RCSTA4;
7150 typedef struct
7152 unsigned RX9D : 1;
7153 unsigned OERR : 1;
7154 unsigned FERR : 1;
7155 unsigned ADDEN : 1;
7156 unsigned CREN : 1;
7157 unsigned SREN : 1;
7158 unsigned RX9 : 1;
7159 unsigned SPEN : 1;
7160 } __RCSTA4bits_t;
7162 extern __at(0x0EFF) volatile __RCSTA4bits_t RCSTA4bits;
7164 #define _RCSTA4_RX9D 0x01
7165 #define _RCSTA4_OERR 0x02
7166 #define _RCSTA4_FERR 0x04
7167 #define _RCSTA4_ADDEN 0x08
7168 #define _RCSTA4_CREN 0x10
7169 #define _RCSTA4_SREN 0x20
7170 #define _RCSTA4_RX9 0x40
7171 #define _RCSTA4_SPEN 0x80
7173 //==============================================================================
7176 //==============================================================================
7177 // DMACON2 Bits
7179 extern __at(0x0F00) __sfr DMACON2;
7181 typedef union
7183 struct
7185 unsigned INTLVL0 : 1;
7186 unsigned INTLVL1 : 1;
7187 unsigned INTLVL2 : 1;
7188 unsigned INTLVL3 : 1;
7189 unsigned DLYCYC0 : 1;
7190 unsigned DLYCYC1 : 1;
7191 unsigned DLYCYC2 : 1;
7192 unsigned DLYCYC3 : 1;
7195 struct
7197 unsigned INTLVL : 4;
7198 unsigned : 4;
7201 struct
7203 unsigned : 4;
7204 unsigned DLYCYC : 4;
7206 } __DMACON2bits_t;
7208 extern __at(0x0F00) volatile __DMACON2bits_t DMACON2bits;
7210 #define _INTLVL0 0x01
7211 #define _INTLVL1 0x02
7212 #define _INTLVL2 0x04
7213 #define _INTLVL3 0x08
7214 #define _DLYCYC0 0x10
7215 #define _DLYCYC1 0x20
7216 #define _DLYCYC2 0x40
7217 #define _DLYCYC3 0x80
7219 //==============================================================================
7222 //==============================================================================
7223 // ANCFG Bits
7225 extern __at(0x0F01) __sfr ANCFG;
7227 typedef struct
7229 unsigned VBGEN : 1;
7230 unsigned VBG2EN : 1;
7231 unsigned VBG6EN : 1;
7232 unsigned : 1;
7233 unsigned : 1;
7234 unsigned : 1;
7235 unsigned : 1;
7236 unsigned : 1;
7237 } __ANCFGbits_t;
7239 extern __at(0x0F01) volatile __ANCFGbits_t ANCFGbits;
7241 #define _VBGEN 0x01
7242 #define _VBG2EN 0x02
7243 #define _VBG6EN 0x04
7245 //==============================================================================
7247 extern __at(0x0F02) __sfr SSP2ADD;
7248 extern __at(0x0F03) __sfr SSP2BUF;
7250 //==============================================================================
7251 // T4CON Bits
7253 extern __at(0x0F04) __sfr T4CON;
7255 typedef union
7257 struct
7259 unsigned T4CKPS0 : 1;
7260 unsigned T4CKPS1 : 1;
7261 unsigned TMR4ON : 1;
7262 unsigned T4OUTPS0 : 1;
7263 unsigned T4OUTPS1 : 1;
7264 unsigned T4OUTPS2 : 1;
7265 unsigned T4OUTPS3 : 1;
7266 unsigned : 1;
7269 struct
7271 unsigned T4CKPS : 2;
7272 unsigned : 6;
7275 struct
7277 unsigned : 3;
7278 unsigned T4OUTPS : 4;
7279 unsigned : 1;
7281 } __T4CONbits_t;
7283 extern __at(0x0F04) volatile __T4CONbits_t T4CONbits;
7285 #define _T4CKPS0 0x01
7286 #define _T4CKPS1 0x02
7287 #define _TMR4ON 0x04
7288 #define _T4OUTPS0 0x08
7289 #define _T4OUTPS1 0x10
7290 #define _T4OUTPS2 0x20
7291 #define _T4OUTPS3 0x40
7293 //==============================================================================
7295 extern __at(0x0F05) __sfr PR4;
7296 extern __at(0x0F06) __sfr TMR4;
7298 //==============================================================================
7299 // CCP7CON Bits
7301 extern __at(0x0F07) __sfr CCP7CON;
7303 typedef union
7305 struct
7307 unsigned CCP7M0 : 1;
7308 unsigned CCP7M1 : 1;
7309 unsigned CCP7M2 : 1;
7310 unsigned CCP7M3 : 1;
7311 unsigned DC7B0 : 1;
7312 unsigned DC7B1 : 1;
7313 unsigned : 1;
7314 unsigned : 1;
7317 struct
7319 unsigned : 1;
7320 unsigned : 1;
7321 unsigned : 1;
7322 unsigned : 1;
7323 unsigned CCP7Y : 1;
7324 unsigned CCP7X : 1;
7325 unsigned : 1;
7326 unsigned : 1;
7329 struct
7331 unsigned CCP7M : 4;
7332 unsigned : 4;
7335 struct
7337 unsigned : 4;
7338 unsigned DC7B : 2;
7339 unsigned : 2;
7341 } __CCP7CONbits_t;
7343 extern __at(0x0F07) volatile __CCP7CONbits_t CCP7CONbits;
7345 #define _CCP7M0 0x01
7346 #define _CCP7M1 0x02
7347 #define _CCP7M2 0x04
7348 #define _CCP7M3 0x08
7349 #define _DC7B0 0x10
7350 #define _CCP7Y 0x10
7351 #define _DC7B1 0x20
7352 #define _CCP7X 0x20
7354 //==============================================================================
7356 extern __at(0x0F08) __sfr CCPR7;
7357 extern __at(0x0F08) __sfr CCPR7L;
7358 extern __at(0x0F09) __sfr CCPR7H;
7360 //==============================================================================
7361 // CCP6CON Bits
7363 extern __at(0x0F0A) __sfr CCP6CON;
7365 typedef union
7367 struct
7369 unsigned CCP6M0 : 1;
7370 unsigned CCP6M1 : 1;
7371 unsigned CCP6M2 : 1;
7372 unsigned CCP6M3 : 1;
7373 unsigned DC6B0 : 1;
7374 unsigned DC6B1 : 1;
7375 unsigned : 1;
7376 unsigned : 1;
7379 struct
7381 unsigned : 1;
7382 unsigned : 1;
7383 unsigned : 1;
7384 unsigned : 1;
7385 unsigned CCP6Y : 1;
7386 unsigned CCP6X : 1;
7387 unsigned : 1;
7388 unsigned : 1;
7391 struct
7393 unsigned CCP6M : 4;
7394 unsigned : 4;
7397 struct
7399 unsigned : 4;
7400 unsigned DC6B : 2;
7401 unsigned : 2;
7403 } __CCP6CONbits_t;
7405 extern __at(0x0F0A) volatile __CCP6CONbits_t CCP6CONbits;
7407 #define _CCP6M0 0x01
7408 #define _CCP6M1 0x02
7409 #define _CCP6M2 0x04
7410 #define _CCP6M3 0x08
7411 #define _DC6B0 0x10
7412 #define _CCP6Y 0x10
7413 #define _DC6B1 0x20
7414 #define _CCP6X 0x20
7416 //==============================================================================
7418 extern __at(0x0F0B) __sfr CCPR6;
7419 extern __at(0x0F0B) __sfr CCPR6L;
7420 extern __at(0x0F0C) __sfr CCPR6H;
7422 //==============================================================================
7423 // CCP5CON Bits
7425 extern __at(0x0F0D) __sfr CCP5CON;
7427 typedef union
7429 struct
7431 unsigned CCP5M0 : 1;
7432 unsigned CCP5M1 : 1;
7433 unsigned CCP5M2 : 1;
7434 unsigned CCP5M3 : 1;
7435 unsigned DC5B0 : 1;
7436 unsigned DC5B1 : 1;
7437 unsigned : 1;
7438 unsigned : 1;
7441 struct
7443 unsigned : 1;
7444 unsigned : 1;
7445 unsigned : 1;
7446 unsigned : 1;
7447 unsigned CCP5Y : 1;
7448 unsigned CCP5X : 1;
7449 unsigned : 1;
7450 unsigned : 1;
7453 struct
7455 unsigned CCP5M : 4;
7456 unsigned : 4;
7459 struct
7461 unsigned : 4;
7462 unsigned DC5B : 2;
7463 unsigned : 2;
7465 } __CCP5CONbits_t;
7467 extern __at(0x0F0D) volatile __CCP5CONbits_t CCP5CONbits;
7469 #define _CCP5M0 0x01
7470 #define _CCP5M1 0x02
7471 #define _CCP5M2 0x04
7472 #define _CCP5M3 0x08
7473 #define _DC5B0 0x10
7474 #define _CCP5Y 0x10
7475 #define _DC5B1 0x20
7476 #define _CCP5X 0x20
7478 //==============================================================================
7480 extern __at(0x0F0E) __sfr CCPR5;
7481 extern __at(0x0F0E) __sfr CCPR5L;
7482 extern __at(0x0F0F) __sfr CCPR5H;
7484 //==============================================================================
7485 // CCP4CON Bits
7487 extern __at(0x0F10) __sfr CCP4CON;
7489 typedef union
7491 struct
7493 unsigned CCP4M0 : 1;
7494 unsigned CCP4M1 : 1;
7495 unsigned CCP4M2 : 1;
7496 unsigned CCP4M3 : 1;
7497 unsigned DC4B0 : 1;
7498 unsigned DC4B1 : 1;
7499 unsigned : 1;
7500 unsigned : 1;
7503 struct
7505 unsigned : 1;
7506 unsigned : 1;
7507 unsigned : 1;
7508 unsigned : 1;
7509 unsigned CCP4Y : 1;
7510 unsigned CCP4X : 1;
7511 unsigned : 1;
7512 unsigned : 1;
7515 struct
7517 unsigned CCP4M : 4;
7518 unsigned : 4;
7521 struct
7523 unsigned : 4;
7524 unsigned DC4B : 2;
7525 unsigned : 2;
7527 } __CCP4CONbits_t;
7529 extern __at(0x0F10) volatile __CCP4CONbits_t CCP4CONbits;
7531 #define _CCP4M0 0x01
7532 #define _CCP4M1 0x02
7533 #define _CCP4M2 0x04
7534 #define _CCP4M3 0x08
7535 #define _DC4B0 0x10
7536 #define _CCP4Y 0x10
7537 #define _DC4B1 0x20
7538 #define _CCP4X 0x20
7540 //==============================================================================
7542 extern __at(0x0F11) __sfr CCPR4;
7543 extern __at(0x0F11) __sfr CCPR4L;
7544 extern __at(0x0F12) __sfr CCPR4H;
7546 //==============================================================================
7547 // T5GCON Bits
7549 extern __at(0x0F13) __sfr T5GCON;
7551 typedef union
7553 struct
7555 unsigned T5GSS0 : 1;
7556 unsigned T5GSS1 : 1;
7557 unsigned T5GVAL : 1;
7558 unsigned T5GGO_NOT_T5DONE : 1;
7559 unsigned T5GSPM : 1;
7560 unsigned T5GTM : 1;
7561 unsigned T5GPOL : 1;
7562 unsigned TMR5GE : 1;
7565 struct
7567 unsigned : 1;
7568 unsigned : 1;
7569 unsigned : 1;
7570 unsigned T5GGO : 1;
7571 unsigned : 1;
7572 unsigned : 1;
7573 unsigned : 1;
7574 unsigned : 1;
7577 struct
7579 unsigned : 1;
7580 unsigned : 1;
7581 unsigned : 1;
7582 unsigned NOT_T5DONE : 1;
7583 unsigned : 1;
7584 unsigned : 1;
7585 unsigned : 1;
7586 unsigned : 1;
7589 struct
7591 unsigned T5GSS : 2;
7592 unsigned : 6;
7594 } __T5GCONbits_t;
7596 extern __at(0x0F13) volatile __T5GCONbits_t T5GCONbits;
7598 #define _T5GSS0 0x01
7599 #define _T5GSS1 0x02
7600 #define _T5GVAL 0x04
7601 #define _T5GGO_NOT_T5DONE 0x08
7602 #define _T5GGO 0x08
7603 #define _NOT_T5DONE 0x08
7604 #define _T5GSPM 0x10
7605 #define _T5GTM 0x20
7606 #define _T5GPOL 0x40
7607 #define _TMR5GE 0x80
7609 //==============================================================================
7612 //==============================================================================
7613 // T5CON Bits
7615 extern __at(0x0F14) __sfr T5CON;
7617 typedef union
7619 struct
7621 unsigned TMR5ON : 1;
7622 unsigned RD16 : 1;
7623 unsigned NOT_T5SYNC : 1;
7624 unsigned SOSCEN : 1;
7625 unsigned T5CKPS0 : 1;
7626 unsigned T5CKPS1 : 1;
7627 unsigned TMR5CS0 : 1;
7628 unsigned TMR5CS1 : 1;
7631 struct
7633 unsigned : 4;
7634 unsigned T5CKPS : 2;
7635 unsigned : 2;
7638 struct
7640 unsigned : 6;
7641 unsigned TMR5CS : 2;
7643 } __T5CONbits_t;
7645 extern __at(0x0F14) volatile __T5CONbits_t T5CONbits;
7647 #define _T5CON_TMR5ON 0x01
7648 #define _T5CON_RD16 0x02
7649 #define _T5CON_NOT_T5SYNC 0x04
7650 #define _T5CON_SOSCEN 0x08
7651 #define _T5CON_T5CKPS0 0x10
7652 #define _T5CON_T5CKPS1 0x20
7653 #define _T5CON_TMR5CS0 0x40
7654 #define _T5CON_TMR5CS1 0x80
7656 //==============================================================================
7658 extern __at(0x0F15) __sfr TMR5;
7659 extern __at(0x0F15) __sfr TMR5L;
7660 extern __at(0x0F16) __sfr TMR5H;
7662 //==============================================================================
7663 // SSP2MSK Bits
7665 extern __at(0x0F17) __sfr SSP2MSK;
7667 typedef struct
7669 unsigned MSK0 : 1;
7670 unsigned MSK1 : 1;
7671 unsigned MSK2 : 1;
7672 unsigned MSK3 : 1;
7673 unsigned MSK4 : 1;
7674 unsigned MSK5 : 1;
7675 unsigned MSK6 : 1;
7676 unsigned MSK7 : 1;
7677 } __SSP2MSKbits_t;
7679 extern __at(0x0F17) volatile __SSP2MSKbits_t SSP2MSKbits;
7681 #define _SSP2MSK_MSK0 0x01
7682 #define _SSP2MSK_MSK1 0x02
7683 #define _SSP2MSK_MSK2 0x04
7684 #define _SSP2MSK_MSK3 0x08
7685 #define _SSP2MSK_MSK4 0x10
7686 #define _SSP2MSK_MSK5 0x20
7687 #define _SSP2MSK_MSK6 0x40
7688 #define _SSP2MSK_MSK7 0x80
7690 //==============================================================================
7693 //==============================================================================
7694 // SSP2CON2 Bits
7696 extern __at(0x0F18) __sfr SSP2CON2;
7698 typedef union
7700 struct
7702 unsigned SEN : 1;
7703 unsigned RSEN : 1;
7704 unsigned PEN : 1;
7705 unsigned RCEN : 1;
7706 unsigned ACKEN : 1;
7707 unsigned ACKDT : 1;
7708 unsigned ACKSTAT : 1;
7709 unsigned GCEN : 1;
7712 struct
7714 unsigned : 1;
7715 unsigned ADMSK1 : 1;
7716 unsigned ADMSK2 : 1;
7717 unsigned ADMSK3 : 1;
7718 unsigned ADMSK4 : 1;
7719 unsigned ADMSK5 : 1;
7720 unsigned : 1;
7721 unsigned : 1;
7723 } __SSP2CON2bits_t;
7725 extern __at(0x0F18) volatile __SSP2CON2bits_t SSP2CON2bits;
7727 #define _SSP2CON2_SEN 0x01
7728 #define _SSP2CON2_RSEN 0x02
7729 #define _SSP2CON2_ADMSK1 0x02
7730 #define _SSP2CON2_PEN 0x04
7731 #define _SSP2CON2_ADMSK2 0x04
7732 #define _SSP2CON2_RCEN 0x08
7733 #define _SSP2CON2_ADMSK3 0x08
7734 #define _SSP2CON2_ACKEN 0x10
7735 #define _SSP2CON2_ADMSK4 0x10
7736 #define _SSP2CON2_ACKDT 0x20
7737 #define _SSP2CON2_ADMSK5 0x20
7738 #define _SSP2CON2_ACKSTAT 0x40
7739 #define _SSP2CON2_GCEN 0x80
7741 //==============================================================================
7744 //==============================================================================
7745 // SSP2CON1 Bits
7747 extern __at(0x0F19) __sfr SSP2CON1;
7749 typedef union
7751 struct
7753 unsigned SSPM0 : 1;
7754 unsigned SSPM1 : 1;
7755 unsigned SSPM2 : 1;
7756 unsigned SSPM3 : 1;
7757 unsigned CKP : 1;
7758 unsigned SSPEN : 1;
7759 unsigned SSPOV : 1;
7760 unsigned WCOL : 1;
7763 struct
7765 unsigned SSPM : 4;
7766 unsigned : 4;
7768 } __SSP2CON1bits_t;
7770 extern __at(0x0F19) volatile __SSP2CON1bits_t SSP2CON1bits;
7772 #define _SSP2CON1_SSPM0 0x01
7773 #define _SSP2CON1_SSPM1 0x02
7774 #define _SSP2CON1_SSPM2 0x04
7775 #define _SSP2CON1_SSPM3 0x08
7776 #define _SSP2CON1_CKP 0x10
7777 #define _SSP2CON1_SSPEN 0x20
7778 #define _SSP2CON1_SSPOV 0x40
7779 #define _SSP2CON1_WCOL 0x80
7781 //==============================================================================
7784 //==============================================================================
7785 // SSP2STAT Bits
7787 extern __at(0x0F1A) __sfr SSP2STAT;
7789 typedef union
7791 struct
7793 unsigned BF : 1;
7794 unsigned UA : 1;
7795 unsigned R_NOT_W : 1;
7796 unsigned S : 1;
7797 unsigned P : 1;
7798 unsigned D_NOT_A : 1;
7799 unsigned CKE : 1;
7800 unsigned SMP : 1;
7803 struct
7805 unsigned : 1;
7806 unsigned : 1;
7807 unsigned R_W : 1;
7808 unsigned I2C_START : 1;
7809 unsigned I2C_STOP : 1;
7810 unsigned D_A : 1;
7811 unsigned : 1;
7812 unsigned : 1;
7815 struct
7817 unsigned : 1;
7818 unsigned : 1;
7819 unsigned NOT_W : 1;
7820 unsigned : 1;
7821 unsigned : 1;
7822 unsigned NOT_A : 1;
7823 unsigned : 1;
7824 unsigned : 1;
7827 struct
7829 unsigned : 1;
7830 unsigned : 1;
7831 unsigned NOT_WRITE : 1;
7832 unsigned : 1;
7833 unsigned : 1;
7834 unsigned NOT_ADDRESS : 1;
7835 unsigned : 1;
7836 unsigned : 1;
7839 struct
7841 unsigned : 1;
7842 unsigned : 1;
7843 unsigned READ_WRITE : 1;
7844 unsigned : 1;
7845 unsigned : 1;
7846 unsigned DATA_ADDRESS : 1;
7847 unsigned : 1;
7848 unsigned : 1;
7851 struct
7853 unsigned : 1;
7854 unsigned : 1;
7855 unsigned I2C_READ : 1;
7856 unsigned : 1;
7857 unsigned : 1;
7858 unsigned I2C_DAT : 1;
7859 unsigned : 1;
7860 unsigned : 1;
7862 } __SSP2STATbits_t;
7864 extern __at(0x0F1A) volatile __SSP2STATbits_t SSP2STATbits;
7866 #define _SSP2STAT_BF 0x01
7867 #define _SSP2STAT_UA 0x02
7868 #define _SSP2STAT_R_NOT_W 0x04
7869 #define _SSP2STAT_R_W 0x04
7870 #define _SSP2STAT_NOT_W 0x04
7871 #define _SSP2STAT_NOT_WRITE 0x04
7872 #define _SSP2STAT_READ_WRITE 0x04
7873 #define _SSP2STAT_I2C_READ 0x04
7874 #define _SSP2STAT_S 0x08
7875 #define _SSP2STAT_I2C_START 0x08
7876 #define _SSP2STAT_P 0x10
7877 #define _SSP2STAT_I2C_STOP 0x10
7878 #define _SSP2STAT_D_NOT_A 0x20
7879 #define _SSP2STAT_D_A 0x20
7880 #define _SSP2STAT_NOT_A 0x20
7881 #define _SSP2STAT_NOT_ADDRESS 0x20
7882 #define _SSP2STAT_DATA_ADDRESS 0x20
7883 #define _SSP2STAT_I2C_DAT 0x20
7884 #define _SSP2STAT_CKE 0x40
7885 #define _SSP2STAT_SMP 0x80
7887 //==============================================================================
7890 //==============================================================================
7891 // PSTR3CON Bits
7893 extern __at(0x0F1B) __sfr PSTR3CON;
7895 typedef union
7897 struct
7899 unsigned STRA : 1;
7900 unsigned STRB : 1;
7901 unsigned STRC : 1;
7902 unsigned STRD : 1;
7903 unsigned STRSYNC : 1;
7904 unsigned : 1;
7905 unsigned CMPL0 : 1;
7906 unsigned CMPL1 : 1;
7909 struct
7911 unsigned : 6;
7912 unsigned CMPL : 2;
7914 } __PSTR3CONbits_t;
7916 extern __at(0x0F1B) volatile __PSTR3CONbits_t PSTR3CONbits;
7918 #define _PSTR3CON_STRA 0x01
7919 #define _PSTR3CON_STRB 0x02
7920 #define _PSTR3CON_STRC 0x04
7921 #define _PSTR3CON_STRD 0x08
7922 #define _PSTR3CON_STRSYNC 0x10
7923 #define _PSTR3CON_CMPL0 0x40
7924 #define _PSTR3CON_CMPL1 0x80
7926 //==============================================================================
7929 //==============================================================================
7930 // PSTR2CON Bits
7932 extern __at(0x0F1C) __sfr PSTR2CON;
7934 typedef union
7936 struct
7938 unsigned STRA : 1;
7939 unsigned STRB : 1;
7940 unsigned STRC : 1;
7941 unsigned STRD : 1;
7942 unsigned STRSYNC : 1;
7943 unsigned : 1;
7944 unsigned CMPL0 : 1;
7945 unsigned CMPL1 : 1;
7948 struct
7950 unsigned : 6;
7951 unsigned CMPL : 2;
7953 } __PSTR2CONbits_t;
7955 extern __at(0x0F1C) volatile __PSTR2CONbits_t PSTR2CONbits;
7957 #define _PSTR2CON_STRA 0x01
7958 #define _PSTR2CON_STRB 0x02
7959 #define _PSTR2CON_STRC 0x04
7960 #define _PSTR2CON_STRD 0x08
7961 #define _PSTR2CON_STRSYNC 0x10
7962 #define _PSTR2CON_CMPL0 0x40
7963 #define _PSTR2CON_CMPL1 0x80
7965 //==============================================================================
7967 extern __at(0x0F1D) __sfr TXREG2;
7968 extern __at(0x0F1E) __sfr RCREG2;
7970 //==============================================================================
7971 // SPBRG2 Bits
7973 extern __at(0x0F1F) __sfr SPBRG2;
7975 typedef struct
7977 unsigned BRG0 : 1;
7978 unsigned BRG1 : 1;
7979 unsigned BRG2 : 1;
7980 unsigned BRG3 : 1;
7981 unsigned BRG4 : 1;
7982 unsigned BRG5 : 1;
7983 unsigned BRG6 : 1;
7984 unsigned BRG7 : 1;
7985 } __SPBRG2bits_t;
7987 extern __at(0x0F1F) volatile __SPBRG2bits_t SPBRG2bits;
7989 #define _SPBRG2_BRG0 0x01
7990 #define _SPBRG2_BRG1 0x02
7991 #define _SPBRG2_BRG2 0x04
7992 #define _SPBRG2_BRG3 0x08
7993 #define _SPBRG2_BRG4 0x10
7994 #define _SPBRG2_BRG5 0x20
7995 #define _SPBRG2_BRG6 0x40
7996 #define _SPBRG2_BRG7 0x80
7998 //==============================================================================
8001 //==============================================================================
8002 // SPBRGH2 Bits
8004 extern __at(0x0F20) __sfr SPBRGH2;
8006 typedef struct
8008 unsigned BRG8 : 1;
8009 unsigned BRG9 : 1;
8010 unsigned BRG10 : 1;
8011 unsigned BRG11 : 1;
8012 unsigned BRG12 : 1;
8013 unsigned BRG13 : 1;
8014 unsigned BRG14 : 1;
8015 unsigned BRG15 : 1;
8016 } __SPBRGH2bits_t;
8018 extern __at(0x0F20) volatile __SPBRGH2bits_t SPBRGH2bits;
8020 #define _SPBRGH2_BRG8 0x01
8021 #define _SPBRGH2_BRG9 0x02
8022 #define _SPBRGH2_BRG10 0x04
8023 #define _SPBRGH2_BRG11 0x08
8024 #define _SPBRGH2_BRG12 0x10
8025 #define _SPBRGH2_BRG13 0x20
8026 #define _SPBRGH2_BRG14 0x40
8027 #define _SPBRGH2_BRG15 0x80
8029 //==============================================================================
8031 extern __at(0x0F21) __sfr DSGPR3;
8032 extern __at(0x0F22) __sfr DSGPR2;
8033 extern __at(0x0F23) __sfr DSGPR1;
8034 extern __at(0x0F24) __sfr DSGPR0;
8036 //==============================================================================
8037 // DSWAKEH Bits
8039 extern __at(0x0F25) __sfr DSWAKEH;
8041 typedef struct
8043 unsigned DSINT0 : 1;
8044 unsigned : 1;
8045 unsigned : 1;
8046 unsigned : 1;
8047 unsigned : 1;
8048 unsigned : 1;
8049 unsigned : 1;
8050 unsigned : 1;
8051 } __DSWAKEHbits_t;
8053 extern __at(0x0F25) volatile __DSWAKEHbits_t DSWAKEHbits;
8055 #define _DSINT0 0x01
8057 //==============================================================================
8060 //==============================================================================
8061 // DSWAKEL Bits
8063 extern __at(0x0F26) __sfr DSWAKEL;
8065 typedef struct
8067 unsigned DSPOR : 1;
8068 unsigned DSICD : 1;
8069 unsigned DSMCLR : 1;
8070 unsigned DSRTC : 1;
8071 unsigned DSWDT : 1;
8072 unsigned DSULP : 1;
8073 unsigned BOR : 1;
8074 unsigned DSFLT : 1;
8075 } __DSWAKELbits_t;
8077 extern __at(0x0F26) volatile __DSWAKELbits_t DSWAKELbits;
8079 #define _DSPOR 0x01
8080 #define _DSICD 0x02
8081 #define _DSMCLR 0x04
8082 #define _DSRTC 0x08
8083 #define _DSWDT 0x10
8084 #define _DSULP 0x20
8085 #define _BOR 0x40
8086 #define _DSFLT 0x80
8088 //==============================================================================
8091 //==============================================================================
8092 // DSCONH Bits
8094 extern __at(0x0F27) __sfr DSCONH;
8096 typedef struct
8098 unsigned RTCWDIS : 1;
8099 unsigned : 1;
8100 unsigned : 1;
8101 unsigned : 1;
8102 unsigned : 1;
8103 unsigned : 1;
8104 unsigned : 1;
8105 unsigned DSEN : 1;
8106 } __DSCONHbits_t;
8108 extern __at(0x0F27) volatile __DSCONHbits_t DSCONHbits;
8110 #define _RTCWDIS 0x01
8111 #define _DSEN 0x80
8113 //==============================================================================
8116 //==============================================================================
8117 // DSCONL Bits
8119 extern __at(0x0F28) __sfr DSCONL;
8121 typedef struct
8123 unsigned RELEASE : 1;
8124 unsigned DSBOR : 1;
8125 unsigned ULPWDIS : 1;
8126 unsigned : 1;
8127 unsigned : 1;
8128 unsigned : 1;
8129 unsigned : 1;
8130 unsigned : 1;
8131 } __DSCONLbits_t;
8133 extern __at(0x0F28) volatile __DSCONLbits_t DSCONLbits;
8135 #define _RELEASE 0x01
8136 #define _DSBOR 0x02
8137 #define _ULPWDIS 0x04
8139 //==============================================================================
8141 extern __at(0x0F29) __sfr TXREG3;
8142 extern __at(0x0F2A) __sfr RCREG3;
8144 //==============================================================================
8145 // SPBRG3 Bits
8147 extern __at(0x0F2B) __sfr SPBRG3;
8149 typedef struct
8151 unsigned BRG0 : 1;
8152 unsigned BRG1 : 1;
8153 unsigned BRG2 : 1;
8154 unsigned BRG3 : 1;
8155 unsigned BRG4 : 1;
8156 unsigned BRG5 : 1;
8157 unsigned BRG6 : 1;
8158 unsigned BRG7 : 1;
8159 } __SPBRG3bits_t;
8161 extern __at(0x0F2B) volatile __SPBRG3bits_t SPBRG3bits;
8163 #define _SPBRG3_BRG0 0x01
8164 #define _SPBRG3_BRG1 0x02
8165 #define _SPBRG3_BRG2 0x04
8166 #define _SPBRG3_BRG3 0x08
8167 #define _SPBRG3_BRG4 0x10
8168 #define _SPBRG3_BRG5 0x20
8169 #define _SPBRG3_BRG6 0x40
8170 #define _SPBRG3_BRG7 0x80
8172 //==============================================================================
8175 //==============================================================================
8176 // SPBRGH3 Bits
8178 extern __at(0x0F2C) __sfr SPBRGH3;
8180 typedef struct
8182 unsigned BRG8 : 1;
8183 unsigned BRG9 : 1;
8184 unsigned BRG10 : 1;
8185 unsigned BRG11 : 1;
8186 unsigned BRG12 : 1;
8187 unsigned BRG13 : 1;
8188 unsigned BRG14 : 1;
8189 unsigned BRG15 : 1;
8190 } __SPBRGH3bits_t;
8192 extern __at(0x0F2C) volatile __SPBRGH3bits_t SPBRGH3bits;
8194 #define _SPBRGH3_BRG8 0x01
8195 #define _SPBRGH3_BRG9 0x02
8196 #define _SPBRGH3_BRG10 0x04
8197 #define _SPBRGH3_BRG11 0x08
8198 #define _SPBRGH3_BRG12 0x10
8199 #define _SPBRGH3_BRG13 0x20
8200 #define _SPBRGH3_BRG14 0x40
8201 #define _SPBRGH3_BRG15 0x80
8203 //==============================================================================
8206 //==============================================================================
8207 // BAUDCON3 Bits
8209 extern __at(0x0F2D) __sfr BAUDCON3;
8211 typedef struct
8213 unsigned ABDEN : 1;
8214 unsigned WUE : 1;
8215 unsigned IREN : 1;
8216 unsigned BRG16 : 1;
8217 unsigned TXCKP : 1;
8218 unsigned RXDTP : 1;
8219 unsigned RCIDL : 1;
8220 unsigned ABDOVF : 1;
8221 } __BAUDCON3bits_t;
8223 extern __at(0x0F2D) volatile __BAUDCON3bits_t BAUDCON3bits;
8225 #define _BAUDCON3_ABDEN 0x01
8226 #define _BAUDCON3_WUE 0x02
8227 #define _BAUDCON3_IREN 0x04
8228 #define _BAUDCON3_BRG16 0x08
8229 #define _BAUDCON3_TXCKP 0x10
8230 #define _BAUDCON3_RXDTP 0x20
8231 #define _BAUDCON3_RCIDL 0x40
8232 #define _BAUDCON3_ABDOVF 0x80
8234 //==============================================================================
8237 //==============================================================================
8238 // TXSTA3 Bits
8240 extern __at(0x0F2E) __sfr TXSTA3;
8242 typedef struct
8244 unsigned TX9D : 1;
8245 unsigned TRMT : 1;
8246 unsigned BRGH : 1;
8247 unsigned SENDB : 1;
8248 unsigned SYNC : 1;
8249 unsigned TXEN : 1;
8250 unsigned TX9 : 1;
8251 unsigned CSRC : 1;
8252 } __TXSTA3bits_t;
8254 extern __at(0x0F2E) volatile __TXSTA3bits_t TXSTA3bits;
8256 #define _TXSTA3_TX9D 0x01
8257 #define _TXSTA3_TRMT 0x02
8258 #define _TXSTA3_BRGH 0x04
8259 #define _TXSTA3_SENDB 0x08
8260 #define _TXSTA3_SYNC 0x10
8261 #define _TXSTA3_TXEN 0x20
8262 #define _TXSTA3_TX9 0x40
8263 #define _TXSTA3_CSRC 0x80
8265 //==============================================================================
8268 //==============================================================================
8269 // RCSTA3 Bits
8271 extern __at(0x0F2F) __sfr RCSTA3;
8273 typedef struct
8275 unsigned RX9D : 1;
8276 unsigned OERR : 1;
8277 unsigned FERR : 1;
8278 unsigned ADDEN : 1;
8279 unsigned CREN : 1;
8280 unsigned SREN : 1;
8281 unsigned RX9 : 1;
8282 unsigned SPEN : 1;
8283 } __RCSTA3bits_t;
8285 extern __at(0x0F2F) volatile __RCSTA3bits_t RCSTA3bits;
8287 #define _RCSTA3_RX9D 0x01
8288 #define _RCSTA3_OERR 0x02
8289 #define _RCSTA3_FERR 0x04
8290 #define _RCSTA3_ADDEN 0x08
8291 #define _RCSTA3_CREN 0x10
8292 #define _RCSTA3_SREN 0x20
8293 #define _RCSTA3_RX9 0x40
8294 #define _RCSTA3_SPEN 0x80
8296 //==============================================================================
8299 //==============================================================================
8300 // SPBRGH Bits
8302 extern __at(0x0F30) __sfr SPBRGH;
8304 typedef struct
8306 unsigned BRG8 : 1;
8307 unsigned BRG9 : 1;
8308 unsigned BRG10 : 1;
8309 unsigned BRG11 : 1;
8310 unsigned BRG12 : 1;
8311 unsigned BRG13 : 1;
8312 unsigned BRG14 : 1;
8313 unsigned BRG15 : 1;
8314 } __SPBRGHbits_t;
8316 extern __at(0x0F30) volatile __SPBRGHbits_t SPBRGHbits;
8318 #define _BRG8 0x01
8319 #define _BRG9 0x02
8320 #define _BRG10 0x04
8321 #define _BRG11 0x08
8322 #define _BRG12 0x10
8323 #define _BRG13 0x20
8324 #define _BRG14 0x40
8325 #define _BRG15 0x80
8327 //==============================================================================
8330 //==============================================================================
8331 // SPBRGH1 Bits
8333 extern __at(0x0F30) __sfr SPBRGH1;
8335 typedef struct
8337 unsigned BRG8 : 1;
8338 unsigned BRG9 : 1;
8339 unsigned BRG10 : 1;
8340 unsigned BRG11 : 1;
8341 unsigned BRG12 : 1;
8342 unsigned BRG13 : 1;
8343 unsigned BRG14 : 1;
8344 unsigned BRG15 : 1;
8345 } __SPBRGH1bits_t;
8347 extern __at(0x0F30) volatile __SPBRGH1bits_t SPBRGH1bits;
8349 #define _SPBRGH1_BRG8 0x01
8350 #define _SPBRGH1_BRG9 0x02
8351 #define _SPBRGH1_BRG10 0x04
8352 #define _SPBRGH1_BRG11 0x08
8353 #define _SPBRGH1_BRG12 0x10
8354 #define _SPBRGH1_BRG13 0x20
8355 #define _SPBRGH1_BRG14 0x40
8356 #define _SPBRGH1_BRG15 0x80
8358 //==============================================================================
8361 //==============================================================================
8362 // BAUDCON2 Bits
8364 extern __at(0x0F31) __sfr BAUDCON2;
8366 typedef struct
8368 unsigned ABDEN : 1;
8369 unsigned WUE : 1;
8370 unsigned IREN : 1;
8371 unsigned BRG16 : 1;
8372 unsigned TXCKP : 1;
8373 unsigned RXDTP : 1;
8374 unsigned RCIDL : 1;
8375 unsigned ABDOVF : 1;
8376 } __BAUDCON2bits_t;
8378 extern __at(0x0F31) volatile __BAUDCON2bits_t BAUDCON2bits;
8380 #define _BAUDCON2_ABDEN 0x01
8381 #define _BAUDCON2_WUE 0x02
8382 #define _BAUDCON2_IREN 0x04
8383 #define _BAUDCON2_BRG16 0x08
8384 #define _BAUDCON2_TXCKP 0x10
8385 #define _BAUDCON2_RXDTP 0x20
8386 #define _BAUDCON2_RCIDL 0x40
8387 #define _BAUDCON2_ABDOVF 0x80
8389 //==============================================================================
8392 //==============================================================================
8393 // TXSTA2 Bits
8395 extern __at(0x0F32) __sfr TXSTA2;
8397 typedef struct
8399 unsigned TX9D : 1;
8400 unsigned TRMT : 1;
8401 unsigned BRGH : 1;
8402 unsigned SENDB : 1;
8403 unsigned SYNC : 1;
8404 unsigned TXEN : 1;
8405 unsigned TX9 : 1;
8406 unsigned CSRC : 1;
8407 } __TXSTA2bits_t;
8409 extern __at(0x0F32) volatile __TXSTA2bits_t TXSTA2bits;
8411 #define _TXSTA2_TX9D 0x01
8412 #define _TXSTA2_TRMT 0x02
8413 #define _TXSTA2_BRGH 0x04
8414 #define _TXSTA2_SENDB 0x08
8415 #define _TXSTA2_SYNC 0x10
8416 #define _TXSTA2_TXEN 0x20
8417 #define _TXSTA2_TX9 0x40
8418 #define _TXSTA2_CSRC 0x80
8420 //==============================================================================
8423 //==============================================================================
8424 // RCSTA2 Bits
8426 extern __at(0x0F33) __sfr RCSTA2;
8428 typedef struct
8430 unsigned RX9D : 1;
8431 unsigned OERR : 1;
8432 unsigned FERR : 1;
8433 unsigned ADDEN : 1;
8434 unsigned CREN : 1;
8435 unsigned SREN : 1;
8436 unsigned RX9 : 1;
8437 unsigned SPEN : 1;
8438 } __RCSTA2bits_t;
8440 extern __at(0x0F33) volatile __RCSTA2bits_t RCSTA2bits;
8442 #define _RCSTA2_RX9D 0x01
8443 #define _RCSTA2_OERR 0x02
8444 #define _RCSTA2_FERR 0x04
8445 #define _RCSTA2_ADDEN 0x08
8446 #define _RCSTA2_CREN 0x10
8447 #define _RCSTA2_SREN 0x20
8448 #define _RCSTA2_RX9 0x40
8449 #define _RCSTA2_SPEN 0x80
8451 //==============================================================================
8454 //==============================================================================
8455 // CCPTMRS2 Bits
8457 extern __at(0x0F34) __sfr CCPTMRS2;
8459 typedef union
8461 struct
8463 unsigned C8TSEL0 : 1;
8464 unsigned C8TSEL1 : 1;
8465 unsigned C9TSEL : 1;
8466 unsigned : 1;
8467 unsigned C10TSEL : 1;
8468 unsigned : 1;
8469 unsigned : 1;
8470 unsigned : 1;
8473 struct
8475 unsigned : 1;
8476 unsigned : 1;
8477 unsigned C9TSEL0 : 1;
8478 unsigned : 1;
8479 unsigned C10TSEL0 : 1;
8480 unsigned : 1;
8481 unsigned : 1;
8482 unsigned : 1;
8485 struct
8487 unsigned C8TSEL : 2;
8488 unsigned : 6;
8490 } __CCPTMRS2bits_t;
8492 extern __at(0x0F34) volatile __CCPTMRS2bits_t CCPTMRS2bits;
8494 #define _C8TSEL0 0x01
8495 #define _C8TSEL1 0x02
8496 #define _C9TSEL 0x04
8497 #define _C9TSEL0 0x04
8498 #define _C10TSEL 0x10
8499 #define _C10TSEL0 0x10
8501 //==============================================================================
8504 //==============================================================================
8505 // CCPTMRS1 Bits
8507 extern __at(0x0F35) __sfr CCPTMRS1;
8509 typedef union
8511 struct
8513 unsigned C4TSEL0 : 1;
8514 unsigned C4TSEL1 : 1;
8515 unsigned C5TSEL : 1;
8516 unsigned : 1;
8517 unsigned C6TSEL : 1;
8518 unsigned : 1;
8519 unsigned C7TSEL0 : 1;
8520 unsigned C7TSEL1 : 1;
8523 struct
8525 unsigned : 1;
8526 unsigned : 1;
8527 unsigned C5TSEL0 : 1;
8528 unsigned : 1;
8529 unsigned C6TSEL0 : 1;
8530 unsigned : 1;
8531 unsigned : 1;
8532 unsigned : 1;
8535 struct
8537 unsigned C4TSEL : 2;
8538 unsigned : 6;
8541 struct
8543 unsigned : 6;
8544 unsigned C7TSEL : 2;
8546 } __CCPTMRS1bits_t;
8548 extern __at(0x0F35) volatile __CCPTMRS1bits_t CCPTMRS1bits;
8550 #define _C4TSEL0 0x01
8551 #define _C4TSEL1 0x02
8552 #define _C5TSEL 0x04
8553 #define _C5TSEL0 0x04
8554 #define _C6TSEL 0x10
8555 #define _C6TSEL0 0x10
8556 #define _C7TSEL0 0x40
8557 #define _C7TSEL1 0x80
8559 //==============================================================================
8562 //==============================================================================
8563 // CCPTMRS0 Bits
8565 extern __at(0x0F36) __sfr CCPTMRS0;
8567 typedef union
8569 struct
8571 unsigned C1TSEL0 : 1;
8572 unsigned C1TSEL1 : 1;
8573 unsigned C1TSEL2 : 1;
8574 unsigned C2TSEL0 : 1;
8575 unsigned C2TSEL1 : 1;
8576 unsigned C2TSEL2 : 1;
8577 unsigned C3TSEL0 : 1;
8578 unsigned C3TSEL1 : 1;
8581 struct
8583 unsigned C1TSEL : 3;
8584 unsigned : 5;
8587 struct
8589 unsigned : 3;
8590 unsigned C2TSEL : 3;
8591 unsigned : 2;
8594 struct
8596 unsigned : 6;
8597 unsigned C3TSEL : 2;
8599 } __CCPTMRS0bits_t;
8601 extern __at(0x0F36) volatile __CCPTMRS0bits_t CCPTMRS0bits;
8603 #define _C1TSEL0 0x01
8604 #define _C1TSEL1 0x02
8605 #define _C1TSEL2 0x04
8606 #define _C2TSEL0 0x08
8607 #define _C2TSEL1 0x10
8608 #define _C2TSEL2 0x20
8609 #define _C3TSEL0 0x40
8610 #define _C3TSEL1 0x80
8612 //==============================================================================
8615 //==============================================================================
8616 // CM3CON Bits
8618 extern __at(0x0F37) __sfr CM3CON;
8620 typedef union
8622 struct
8624 unsigned CCH0 : 1;
8625 unsigned CCH1 : 1;
8626 unsigned CREF : 1;
8627 unsigned EVPOL0 : 1;
8628 unsigned EVPOL1 : 1;
8629 unsigned CPOL : 1;
8630 unsigned COE : 1;
8631 unsigned CON : 1;
8634 struct
8636 unsigned CCH : 2;
8637 unsigned : 6;
8640 struct
8642 unsigned : 3;
8643 unsigned EVPOL : 2;
8644 unsigned : 3;
8646 } __CM3CONbits_t;
8648 extern __at(0x0F37) volatile __CM3CONbits_t CM3CONbits;
8650 #define _CM3CON_CCH0 0x01
8651 #define _CM3CON_CCH1 0x02
8652 #define _CM3CON_CREF 0x04
8653 #define _CM3CON_EVPOL0 0x08
8654 #define _CM3CON_EVPOL1 0x10
8655 #define _CM3CON_CPOL 0x20
8656 #define _CM3CON_COE 0x40
8657 #define _CM3CON_CON 0x80
8659 //==============================================================================
8662 //==============================================================================
8663 // CM2CON Bits
8665 extern __at(0x0F38) __sfr CM2CON;
8667 typedef union
8669 struct
8671 unsigned CCH0 : 1;
8672 unsigned CCH1 : 1;
8673 unsigned CREF : 1;
8674 unsigned EVPOL0 : 1;
8675 unsigned EVPOL1 : 1;
8676 unsigned CPOL : 1;
8677 unsigned COE : 1;
8678 unsigned CON : 1;
8681 struct
8683 unsigned CCH : 2;
8684 unsigned : 6;
8687 struct
8689 unsigned : 3;
8690 unsigned EVPOL : 2;
8691 unsigned : 3;
8693 } __CM2CONbits_t;
8695 extern __at(0x0F38) volatile __CM2CONbits_t CM2CONbits;
8697 #define _CM2CON_CCH0 0x01
8698 #define _CM2CON_CCH1 0x02
8699 #define _CM2CON_CREF 0x04
8700 #define _CM2CON_EVPOL0 0x08
8701 #define _CM2CON_EVPOL1 0x10
8702 #define _CM2CON_CPOL 0x20
8703 #define _CM2CON_COE 0x40
8704 #define _CM2CON_CON 0x80
8706 //==============================================================================
8709 //==============================================================================
8710 // SSP2CON3 Bits
8712 extern __at(0x0F39) __sfr SSP2CON3;
8714 typedef struct
8716 unsigned DHEN : 1;
8717 unsigned AHEN : 1;
8718 unsigned SBCDE : 1;
8719 unsigned SDAHT : 1;
8720 unsigned BOEN : 1;
8721 unsigned SCIE : 1;
8722 unsigned PCIE : 1;
8723 unsigned ACKTIM : 1;
8724 } __SSP2CON3bits_t;
8726 extern __at(0x0F39) volatile __SSP2CON3bits_t SSP2CON3bits;
8728 #define _SSP2CON3_DHEN 0x01
8729 #define _SSP2CON3_AHEN 0x02
8730 #define _SSP2CON3_SBCDE 0x04
8731 #define _SSP2CON3_SDAHT 0x08
8732 #define _SSP2CON3_BOEN 0x10
8733 #define _SSP2CON3_SCIE 0x20
8734 #define _SSP2CON3_PCIE 0x40
8735 #define _SSP2CON3_ACKTIM 0x80
8737 //==============================================================================
8740 //==============================================================================
8741 // T8CON Bits
8743 extern __at(0x0F3A) __sfr T8CON;
8745 typedef union
8747 struct
8749 unsigned T8CKPS0 : 1;
8750 unsigned T8CKPS1 : 1;
8751 unsigned TMR8ON : 1;
8752 unsigned T8OUTPS0 : 1;
8753 unsigned T8OUTPS1 : 1;
8754 unsigned T8OUTPS2 : 1;
8755 unsigned T8OUTPS3 : 1;
8756 unsigned : 1;
8759 struct
8761 unsigned T8CKPS : 2;
8762 unsigned : 6;
8765 struct
8767 unsigned : 3;
8768 unsigned T8OUTPS : 4;
8769 unsigned : 1;
8771 } __T8CONbits_t;
8773 extern __at(0x0F3A) volatile __T8CONbits_t T8CONbits;
8775 #define _T8CKPS0 0x01
8776 #define _T8CKPS1 0x02
8777 #define _TMR8ON 0x04
8778 #define _T8OUTPS0 0x08
8779 #define _T8OUTPS1 0x10
8780 #define _T8OUTPS2 0x20
8781 #define _T8OUTPS3 0x40
8783 //==============================================================================
8785 extern __at(0x0F3B) __sfr PR8;
8786 extern __at(0x0F3C) __sfr TMR8;
8788 //==============================================================================
8789 // T6CON Bits
8791 extern __at(0x0F3D) __sfr T6CON;
8793 typedef union
8795 struct
8797 unsigned T6CKPS0 : 1;
8798 unsigned T6CKPS1 : 1;
8799 unsigned TMR6ON : 1;
8800 unsigned T6OUTPS0 : 1;
8801 unsigned T6OUTPS1 : 1;
8802 unsigned T6OUTPS2 : 1;
8803 unsigned T6OUTPS3 : 1;
8804 unsigned : 1;
8807 struct
8809 unsigned T6CKPS : 2;
8810 unsigned : 6;
8813 struct
8815 unsigned : 3;
8816 unsigned T6OUTPS : 4;
8817 unsigned : 1;
8819 } __T6CONbits_t;
8821 extern __at(0x0F3D) volatile __T6CONbits_t T6CONbits;
8823 #define _T6CKPS0 0x01
8824 #define _T6CKPS1 0x02
8825 #define _TMR6ON 0x04
8826 #define _T6OUTPS0 0x08
8827 #define _T6OUTPS1 0x10
8828 #define _T6OUTPS2 0x20
8829 #define _T6OUTPS3 0x40
8831 //==============================================================================
8833 extern __at(0x0F3E) __sfr PR6;
8834 extern __at(0x0F3F) __sfr TMR6;
8836 //==============================================================================
8837 // CCP10CON Bits
8839 extern __at(0x0F40) __sfr CCP10CON;
8841 typedef union
8843 struct
8845 unsigned CCP10M0 : 1;
8846 unsigned CCP10M1 : 1;
8847 unsigned CCP10M2 : 1;
8848 unsigned CCP10M3 : 1;
8849 unsigned DC10B0 : 1;
8850 unsigned DC10B1 : 1;
8851 unsigned : 1;
8852 unsigned : 1;
8855 struct
8857 unsigned : 1;
8858 unsigned : 1;
8859 unsigned : 1;
8860 unsigned : 1;
8861 unsigned CCP10Y : 1;
8862 unsigned CCP10X : 1;
8863 unsigned : 1;
8864 unsigned : 1;
8867 struct
8869 unsigned CCP10M : 4;
8870 unsigned : 4;
8873 struct
8875 unsigned : 4;
8876 unsigned DC10B : 2;
8877 unsigned : 2;
8879 } __CCP10CONbits_t;
8881 extern __at(0x0F40) volatile __CCP10CONbits_t CCP10CONbits;
8883 #define _CCP10M0 0x01
8884 #define _CCP10M1 0x02
8885 #define _CCP10M2 0x04
8886 #define _CCP10M3 0x08
8887 #define _DC10B0 0x10
8888 #define _CCP10Y 0x10
8889 #define _DC10B1 0x20
8890 #define _CCP10X 0x20
8892 //==============================================================================
8894 extern __at(0x0F41) __sfr CCPR10;
8895 extern __at(0x0F41) __sfr CCPR10L;
8896 extern __at(0x0F42) __sfr CCPR10H;
8898 //==============================================================================
8899 // CCP9CON Bits
8901 extern __at(0x0F43) __sfr CCP9CON;
8903 typedef union
8905 struct
8907 unsigned CCP9M0 : 1;
8908 unsigned CCP9M1 : 1;
8909 unsigned CCP9M2 : 1;
8910 unsigned CCP9M3 : 1;
8911 unsigned DC9B0 : 1;
8912 unsigned DC9B1 : 1;
8913 unsigned : 1;
8914 unsigned : 1;
8917 struct
8919 unsigned : 1;
8920 unsigned : 1;
8921 unsigned : 1;
8922 unsigned : 1;
8923 unsigned CCP9Y : 1;
8924 unsigned CCP9X : 1;
8925 unsigned : 1;
8926 unsigned : 1;
8929 struct
8931 unsigned CCP9M : 4;
8932 unsigned : 4;
8935 struct
8937 unsigned : 4;
8938 unsigned DC9B : 2;
8939 unsigned : 2;
8941 } __CCP9CONbits_t;
8943 extern __at(0x0F43) volatile __CCP9CONbits_t CCP9CONbits;
8945 #define _CCP9M0 0x01
8946 #define _CCP9M1 0x02
8947 #define _CCP9M2 0x04
8948 #define _CCP9M3 0x08
8949 #define _DC9B0 0x10
8950 #define _CCP9Y 0x10
8951 #define _DC9B1 0x20
8952 #define _CCP9X 0x20
8954 //==============================================================================
8956 extern __at(0x0F44) __sfr CCPR9;
8957 extern __at(0x0F44) __sfr CCPR9L;
8958 extern __at(0x0F45) __sfr CCPR9H;
8960 //==============================================================================
8961 // CCP8CON Bits
8963 extern __at(0x0F46) __sfr CCP8CON;
8965 typedef union
8967 struct
8969 unsigned CCP8M0 : 1;
8970 unsigned CCP8M1 : 1;
8971 unsigned CCP8M2 : 1;
8972 unsigned CCP8M3 : 1;
8973 unsigned DC8B0 : 1;
8974 unsigned DC8B1 : 1;
8975 unsigned : 1;
8976 unsigned : 1;
8979 struct
8981 unsigned : 1;
8982 unsigned : 1;
8983 unsigned : 1;
8984 unsigned : 1;
8985 unsigned CCP8Y : 1;
8986 unsigned CCP8X : 1;
8987 unsigned : 1;
8988 unsigned : 1;
8991 struct
8993 unsigned CCP8M : 4;
8994 unsigned : 4;
8997 struct
8999 unsigned : 4;
9000 unsigned DC8B : 2;
9001 unsigned : 2;
9003 } __CCP8CONbits_t;
9005 extern __at(0x0F46) volatile __CCP8CONbits_t CCP8CONbits;
9007 #define _CCP8M0 0x01
9008 #define _CCP8M1 0x02
9009 #define _CCP8M2 0x04
9010 #define _CCP8M3 0x08
9011 #define _DC8B0 0x10
9012 #define _CCP8Y 0x10
9013 #define _DC8B1 0x20
9014 #define _CCP8X 0x20
9016 //==============================================================================
9018 extern __at(0x0F47) __sfr CCPR8;
9019 extern __at(0x0F47) __sfr CCPR8L;
9020 extern __at(0x0F48) __sfr CCPR8H;
9022 //==============================================================================
9023 // CCP3CON Bits
9025 extern __at(0x0F49) __sfr CCP3CON;
9027 typedef union
9029 struct
9031 unsigned CCP3M0 : 1;
9032 unsigned CCP3M1 : 1;
9033 unsigned CCP3M2 : 1;
9034 unsigned CCP3M3 : 1;
9035 unsigned DC3B0 : 1;
9036 unsigned DC3B1 : 1;
9037 unsigned P3M0 : 1;
9038 unsigned P3M1 : 1;
9041 struct
9043 unsigned : 1;
9044 unsigned : 1;
9045 unsigned : 1;
9046 unsigned : 1;
9047 unsigned CCP3Y : 1;
9048 unsigned CCP3X : 1;
9049 unsigned : 1;
9050 unsigned : 1;
9053 struct
9055 unsigned CCP3M : 4;
9056 unsigned : 4;
9059 struct
9061 unsigned : 4;
9062 unsigned DC3B : 2;
9063 unsigned : 2;
9066 struct
9068 unsigned : 6;
9069 unsigned P3M : 2;
9071 } __CCP3CONbits_t;
9073 extern __at(0x0F49) volatile __CCP3CONbits_t CCP3CONbits;
9075 #define _CCP3M0 0x01
9076 #define _CCP3M1 0x02
9077 #define _CCP3M2 0x04
9078 #define _CCP3M3 0x08
9079 #define _DC3B0 0x10
9080 #define _CCP3Y 0x10
9081 #define _DC3B1 0x20
9082 #define _CCP3X 0x20
9083 #define _P3M0 0x40
9084 #define _P3M1 0x80
9086 //==============================================================================
9088 extern __at(0x0F4A) __sfr CCPR3;
9089 extern __at(0x0F4A) __sfr CCPR3L;
9090 extern __at(0x0F4B) __sfr CCPR3H;
9092 //==============================================================================
9093 // ECCP3DEL Bits
9095 extern __at(0x0F4C) __sfr ECCP3DEL;
9097 typedef union
9099 struct
9101 unsigned P3DC0 : 1;
9102 unsigned P3DC1 : 1;
9103 unsigned P3DC2 : 1;
9104 unsigned P3DC3 : 1;
9105 unsigned P3DC4 : 1;
9106 unsigned P3DC5 : 1;
9107 unsigned P3DC6 : 1;
9108 unsigned P3RSEN : 1;
9111 struct
9113 unsigned P3DC : 7;
9114 unsigned : 1;
9116 } __ECCP3DELbits_t;
9118 extern __at(0x0F4C) volatile __ECCP3DELbits_t ECCP3DELbits;
9120 #define _P3DC0 0x01
9121 #define _P3DC1 0x02
9122 #define _P3DC2 0x04
9123 #define _P3DC3 0x08
9124 #define _P3DC4 0x10
9125 #define _P3DC5 0x20
9126 #define _P3DC6 0x40
9127 #define _P3RSEN 0x80
9129 //==============================================================================
9132 //==============================================================================
9133 // ECCP3AS Bits
9135 extern __at(0x0F4D) __sfr ECCP3AS;
9137 typedef union
9139 struct
9141 unsigned PSS3BD0 : 1;
9142 unsigned PSS3BD1 : 1;
9143 unsigned PSS3AC0 : 1;
9144 unsigned PSS3AC1 : 1;
9145 unsigned ECCP3AS0 : 1;
9146 unsigned ECCP3AS1 : 1;
9147 unsigned ECCP3AS2 : 1;
9148 unsigned ECCP3ASE : 1;
9151 struct
9153 unsigned PSS3BD : 2;
9154 unsigned : 6;
9157 struct
9159 unsigned : 2;
9160 unsigned PSS3AC : 2;
9161 unsigned : 4;
9164 struct
9166 unsigned : 4;
9167 unsigned ECCP3AS : 3;
9168 unsigned : 1;
9170 } __ECCP3ASbits_t;
9172 extern __at(0x0F4D) volatile __ECCP3ASbits_t ECCP3ASbits;
9174 #define _PSS3BD0 0x01
9175 #define _PSS3BD1 0x02
9176 #define _PSS3AC0 0x04
9177 #define _PSS3AC1 0x08
9178 #define _ECCP3AS0 0x10
9179 #define _ECCP3AS1 0x20
9180 #define _ECCP3AS2 0x40
9181 #define _ECCP3ASE 0x80
9183 //==============================================================================
9186 //==============================================================================
9187 // CCP2CON Bits
9189 extern __at(0x0F4E) __sfr CCP2CON;
9191 typedef union
9193 struct
9195 unsigned CCP2M0 : 1;
9196 unsigned CCP2M1 : 1;
9197 unsigned CCP2M2 : 1;
9198 unsigned CCP2M3 : 1;
9199 unsigned DC2B0 : 1;
9200 unsigned DC2B1 : 1;
9201 unsigned P2M0 : 1;
9202 unsigned P2M1 : 1;
9205 struct
9207 unsigned : 1;
9208 unsigned : 1;
9209 unsigned : 1;
9210 unsigned : 1;
9211 unsigned CCP2Y : 1;
9212 unsigned CCP2X : 1;
9213 unsigned : 1;
9214 unsigned : 1;
9217 struct
9219 unsigned CCP2M : 4;
9220 unsigned : 4;
9223 struct
9225 unsigned : 4;
9226 unsigned DC2B : 2;
9227 unsigned : 2;
9230 struct
9232 unsigned : 6;
9233 unsigned P2M : 2;
9235 } __CCP2CONbits_t;
9237 extern __at(0x0F4E) volatile __CCP2CONbits_t CCP2CONbits;
9239 #define _CCP2M0 0x01
9240 #define _CCP2M1 0x02
9241 #define _CCP2M2 0x04
9242 #define _CCP2M3 0x08
9243 #define _DC2B0 0x10
9244 #define _CCP2Y 0x10
9245 #define _DC2B1 0x20
9246 #define _CCP2X 0x20
9247 #define _P2M0 0x40
9248 #define _P2M1 0x80
9250 //==============================================================================
9252 extern __at(0x0F4F) __sfr CCPR2;
9253 extern __at(0x0F4F) __sfr CCPR2L;
9254 extern __at(0x0F50) __sfr CCPR2H;
9256 //==============================================================================
9257 // ECCP2DEL Bits
9259 extern __at(0x0F51) __sfr ECCP2DEL;
9261 typedef union
9263 struct
9265 unsigned P2DC0 : 1;
9266 unsigned P2DC1 : 1;
9267 unsigned P2DC2 : 1;
9268 unsigned P2DC3 : 1;
9269 unsigned P2DC4 : 1;
9270 unsigned P2DC5 : 1;
9271 unsigned P2DC6 : 1;
9272 unsigned P2RSEN : 1;
9275 struct
9277 unsigned P2DC : 7;
9278 unsigned : 1;
9280 } __ECCP2DELbits_t;
9282 extern __at(0x0F51) volatile __ECCP2DELbits_t ECCP2DELbits;
9284 #define _P2DC0 0x01
9285 #define _P2DC1 0x02
9286 #define _P2DC2 0x04
9287 #define _P2DC3 0x08
9288 #define _P2DC4 0x10
9289 #define _P2DC5 0x20
9290 #define _P2DC6 0x40
9291 #define _P2RSEN 0x80
9293 //==============================================================================
9296 //==============================================================================
9297 // ECCP2AS Bits
9299 extern __at(0x0F52) __sfr ECCP2AS;
9301 typedef union
9303 struct
9305 unsigned PSS2BD0 : 1;
9306 unsigned PSS2BD1 : 1;
9307 unsigned PSS2AC0 : 1;
9308 unsigned PSS2AC1 : 1;
9309 unsigned ECCP2AS0 : 1;
9310 unsigned ECCP2AS1 : 1;
9311 unsigned ECCP2AS2 : 1;
9312 unsigned ECCP2ASE : 1;
9315 struct
9317 unsigned PSS2BD : 2;
9318 unsigned : 6;
9321 struct
9323 unsigned : 2;
9324 unsigned PSS2AC : 2;
9325 unsigned : 4;
9328 struct
9330 unsigned : 4;
9331 unsigned ECCP2AS : 3;
9332 unsigned : 1;
9334 } __ECCP2ASbits_t;
9336 extern __at(0x0F52) volatile __ECCP2ASbits_t ECCP2ASbits;
9338 #define _PSS2BD0 0x01
9339 #define _PSS2BD1 0x02
9340 #define _PSS2AC0 0x04
9341 #define _PSS2AC1 0x08
9342 #define _ECCP2AS0 0x10
9343 #define _ECCP2AS1 0x20
9344 #define _ECCP2AS2 0x40
9345 #define _ECCP2ASE 0x80
9347 //==============================================================================
9350 //==============================================================================
9351 // CM1CON Bits
9353 extern __at(0x0F53) __sfr CM1CON;
9355 typedef union
9357 struct
9359 unsigned CCH0 : 1;
9360 unsigned CCH1 : 1;
9361 unsigned CREF : 1;
9362 unsigned EVPOL0 : 1;
9363 unsigned EVPOL1 : 1;
9364 unsigned CPOL : 1;
9365 unsigned COE : 1;
9366 unsigned CON : 1;
9369 struct
9371 unsigned CCH : 2;
9372 unsigned : 6;
9375 struct
9377 unsigned : 3;
9378 unsigned EVPOL : 2;
9379 unsigned : 3;
9381 } __CM1CONbits_t;
9383 extern __at(0x0F53) volatile __CM1CONbits_t CM1CONbits;
9385 #define _CCH0 0x01
9386 #define _CCH1 0x02
9387 #define _CREF 0x04
9388 #define _EVPOL0 0x08
9389 #define _EVPOL1 0x10
9390 #define _CPOL 0x20
9391 #define _COE 0x40
9392 #define _CON 0x80
9394 //==============================================================================
9397 //==============================================================================
9398 // PADCFG1 Bits
9400 extern __at(0x0F54) __sfr PADCFG1;
9402 typedef struct
9404 unsigned RLPU : 1;
9405 unsigned RKPU : 1;
9406 unsigned RJPU : 1;
9407 unsigned RHPU : 1;
9408 unsigned RGPU : 1;
9409 unsigned RFPU : 1;
9410 unsigned REPU : 1;
9411 unsigned RDPU : 1;
9412 } __PADCFG1bits_t;
9414 extern __at(0x0F54) volatile __PADCFG1bits_t PADCFG1bits;
9416 #define _RLPU 0x01
9417 #define _RKPU 0x02
9418 #define _RJPU 0x04
9419 #define _RHPU 0x08
9420 #define _RGPU 0x10
9421 #define _RFPU 0x20
9422 #define _REPU 0x40
9423 #define _RDPU 0x80
9425 //==============================================================================
9428 //==============================================================================
9429 // IOCN Bits
9431 extern __at(0x0F55) __sfr IOCN;
9433 typedef struct
9435 unsigned IOCN0 : 1;
9436 unsigned IOCN1 : 1;
9437 unsigned IOCN2 : 1;
9438 unsigned IOCN3 : 1;
9439 unsigned IOCN4 : 1;
9440 unsigned IOCN5 : 1;
9441 unsigned IOCN6 : 1;
9442 unsigned IOCN7 : 1;
9443 } __IOCNbits_t;
9445 extern __at(0x0F55) volatile __IOCNbits_t IOCNbits;
9447 #define _IOCN0 0x01
9448 #define _IOCN1 0x02
9449 #define _IOCN2 0x04
9450 #define _IOCN3 0x08
9451 #define _IOCN4 0x10
9452 #define _IOCN5 0x20
9453 #define _IOCN6 0x40
9454 #define _IOCN7 0x80
9456 //==============================================================================
9459 //==============================================================================
9460 // IOCP Bits
9462 extern __at(0x0F56) __sfr IOCP;
9464 typedef struct
9466 unsigned IOCP0 : 1;
9467 unsigned IOCP1 : 1;
9468 unsigned IOCP2 : 1;
9469 unsigned IOCP3 : 1;
9470 unsigned IOCP4 : 1;
9471 unsigned IOCP5 : 1;
9472 unsigned IOCP6 : 1;
9473 unsigned IOCP7 : 1;
9474 } __IOCPbits_t;
9476 extern __at(0x0F56) volatile __IOCPbits_t IOCPbits;
9478 #define _IOCP0 0x01
9479 #define _IOCP1 0x02
9480 #define _IOCP2 0x04
9481 #define _IOCP3 0x08
9482 #define _IOCP4 0x10
9483 #define _IOCP5 0x20
9484 #define _IOCP6 0x40
9485 #define _IOCP7 0x80
9487 //==============================================================================
9490 //==============================================================================
9491 // RTCCON2 Bits
9493 extern __at(0x0F57) __sfr RTCCON2;
9495 typedef union
9497 struct
9499 unsigned RTCSECSEL0 : 1;
9500 unsigned RTCSECSEL1 : 1;
9501 unsigned RTCCLKSEL0 : 1;
9502 unsigned RTCCLKSEL1 : 1;
9503 unsigned PWCSPRE : 1;
9504 unsigned PWCCPRE : 1;
9505 unsigned PWCPOL : 1;
9506 unsigned PWCEN : 1;
9509 struct
9511 unsigned RTCSECSEL : 2;
9512 unsigned : 6;
9515 struct
9517 unsigned : 2;
9518 unsigned RTCCLKSEL : 2;
9519 unsigned : 4;
9521 } __RTCCON2bits_t;
9523 extern __at(0x0F57) volatile __RTCCON2bits_t RTCCON2bits;
9525 #define _RTCSECSEL0 0x01
9526 #define _RTCSECSEL1 0x02
9527 #define _RTCCLKSEL0 0x04
9528 #define _RTCCLKSEL1 0x08
9529 #define _PWCSPRE 0x10
9530 #define _PWCCPRE 0x20
9531 #define _PWCPOL 0x40
9532 #define _PWCEN 0x80
9534 //==============================================================================
9536 extern __at(0x0F58) __sfr ALRMVALL;
9537 extern __at(0x0F59) __sfr ALRMVALH;
9539 //==============================================================================
9540 // ALRMRPT Bits
9542 extern __at(0x0F5A) __sfr ALRMRPT;
9544 typedef struct
9546 unsigned ARPT0 : 1;
9547 unsigned ARPT1 : 1;
9548 unsigned ARPT2 : 1;
9549 unsigned ARPT3 : 1;
9550 unsigned ARPT4 : 1;
9551 unsigned ARPT5 : 1;
9552 unsigned ARPT6 : 1;
9553 unsigned ARPT7 : 1;
9554 } __ALRMRPTbits_t;
9556 extern __at(0x0F5A) volatile __ALRMRPTbits_t ALRMRPTbits;
9558 #define _ARPT0 0x01
9559 #define _ARPT1 0x02
9560 #define _ARPT2 0x04
9561 #define _ARPT3 0x08
9562 #define _ARPT4 0x10
9563 #define _ARPT5 0x20
9564 #define _ARPT6 0x40
9565 #define _ARPT7 0x80
9567 //==============================================================================
9570 //==============================================================================
9571 // ALRMCFG Bits
9573 extern __at(0x0F5B) __sfr ALRMCFG;
9575 typedef union
9577 struct
9579 unsigned ALRMPTR0 : 1;
9580 unsigned ALRMPTR1 : 1;
9581 unsigned AMASK0 : 1;
9582 unsigned AMASK1 : 1;
9583 unsigned AMASK2 : 1;
9584 unsigned AMASK3 : 1;
9585 unsigned CHIME : 1;
9586 unsigned ALRMEN : 1;
9589 struct
9591 unsigned ALRMPTR : 2;
9592 unsigned : 6;
9595 struct
9597 unsigned : 2;
9598 unsigned AMASK : 4;
9599 unsigned : 2;
9601 } __ALRMCFGbits_t;
9603 extern __at(0x0F5B) volatile __ALRMCFGbits_t ALRMCFGbits;
9605 #define _ALRMPTR0 0x01
9606 #define _ALRMPTR1 0x02
9607 #define _AMASK0 0x04
9608 #define _AMASK1 0x08
9609 #define _AMASK2 0x10
9610 #define _AMASK3 0x20
9611 #define _CHIME 0x40
9612 #define _ALRMEN 0x80
9614 //==============================================================================
9616 extern __at(0x0F5C) __sfr RTCVALL;
9617 extern __at(0x0F5D) __sfr RTCVALH;
9619 //==============================================================================
9620 // RTCCAL Bits
9622 extern __at(0x0F5E) __sfr RTCCAL;
9624 typedef struct
9626 unsigned CAL0 : 1;
9627 unsigned CAL1 : 1;
9628 unsigned CAL2 : 1;
9629 unsigned CAL3 : 1;
9630 unsigned CAL4 : 1;
9631 unsigned CAL5 : 1;
9632 unsigned CAL6 : 1;
9633 unsigned CAL7 : 1;
9634 } __RTCCALbits_t;
9636 extern __at(0x0F5E) volatile __RTCCALbits_t RTCCALbits;
9638 #define _CAL0 0x01
9639 #define _CAL1 0x02
9640 #define _CAL2 0x04
9641 #define _CAL3 0x08
9642 #define _CAL4 0x10
9643 #define _CAL5 0x20
9644 #define _CAL6 0x40
9645 #define _CAL7 0x80
9647 //==============================================================================
9650 //==============================================================================
9651 // RTCCON1 Bits
9653 extern __at(0x0F5F) __sfr RTCCON1;
9655 typedef union
9657 struct
9659 unsigned RTCPTR0 : 1;
9660 unsigned RTCPTR1 : 1;
9661 unsigned RTCOE : 1;
9662 unsigned HALFSEC : 1;
9663 unsigned RTCSYNC : 1;
9664 unsigned RTCWREN : 1;
9665 unsigned : 1;
9666 unsigned RTCEN : 1;
9669 struct
9671 unsigned RTCPTR : 2;
9672 unsigned : 6;
9674 } __RTCCON1bits_t;
9676 extern __at(0x0F5F) volatile __RTCCON1bits_t RTCCON1bits;
9678 #define _RTCPTR0 0x01
9679 #define _RTCPTR1 0x02
9680 #define _RTCOE 0x04
9681 #define _HALFSEC 0x08
9682 #define _RTCSYNC 0x10
9683 #define _RTCWREN 0x20
9684 #define _RTCEN 0x80
9686 //==============================================================================
9689 //==============================================================================
9690 // DMACON1 Bits
9692 extern __at(0x0F60) __sfr DMACON1;
9694 typedef union
9696 struct
9698 unsigned DMAEN : 1;
9699 unsigned DLYINTEN : 1;
9700 unsigned DUPLEX0 : 1;
9701 unsigned DUPLEX1 : 1;
9702 unsigned RXINC : 1;
9703 unsigned TXINC : 1;
9704 unsigned SSCON0 : 1;
9705 unsigned SSCON1 : 1;
9708 struct
9710 unsigned : 2;
9711 unsigned DUPLEX : 2;
9712 unsigned : 4;
9715 struct
9717 unsigned : 6;
9718 unsigned SSCON : 2;
9720 } __DMACON1bits_t;
9722 extern __at(0x0F60) volatile __DMACON1bits_t DMACON1bits;
9724 #define _DMAEN 0x01
9725 #define _DLYINTEN 0x02
9726 #define _DUPLEX0 0x04
9727 #define _DUPLEX1 0x08
9728 #define _RXINC 0x10
9729 #define _TXINC 0x20
9730 #define _SSCON0 0x40
9731 #define _SSCON1 0x80
9733 //==============================================================================
9736 //==============================================================================
9737 // PIE6 Bits
9739 extern __at(0x0F61) __sfr PIE6;
9741 typedef struct
9743 unsigned CMP1IE : 1;
9744 unsigned CMP2IE : 1;
9745 unsigned CMP3IE : 1;
9746 unsigned : 1;
9747 unsigned TX3IE : 1;
9748 unsigned RC3IE : 1;
9749 unsigned TX4IE : 1;
9750 unsigned RC4IE : 1;
9751 } __PIE6bits_t;
9753 extern __at(0x0F61) volatile __PIE6bits_t PIE6bits;
9755 #define _CMP1IE 0x01
9756 #define _CMP2IE 0x02
9757 #define _CMP3IE 0x04
9758 #define _TX3IE 0x10
9759 #define _RC3IE 0x20
9760 #define _TX4IE 0x40
9761 #define _RC4IE 0x80
9763 //==============================================================================
9766 //==============================================================================
9767 // WPUB Bits
9769 extern __at(0x0F62) __sfr WPUB;
9771 typedef struct
9773 unsigned WPUB0 : 1;
9774 unsigned WPUB1 : 1;
9775 unsigned WPUB2 : 1;
9776 unsigned WPUB3 : 1;
9777 unsigned WPUB4 : 1;
9778 unsigned WPUB5 : 1;
9779 unsigned WPUB6 : 1;
9780 unsigned WPUB7 : 1;
9781 } __WPUBbits_t;
9783 extern __at(0x0F62) volatile __WPUBbits_t WPUBbits;
9785 #define _WPUB0 0x01
9786 #define _WPUB1 0x02
9787 #define _WPUB2 0x04
9788 #define _WPUB3 0x08
9789 #define _WPUB4 0x10
9790 #define _WPUB5 0x20
9791 #define _WPUB6 0x40
9792 #define _WPUB7 0x80
9794 //==============================================================================
9797 //==============================================================================
9798 // ACTCON Bits
9800 extern __at(0x0F63) __sfr ACTCON;
9802 typedef struct
9804 unsigned ACTORSPOL : 1;
9805 unsigned ACTORS : 1;
9806 unsigned ACTLOCKPOL : 1;
9807 unsigned ACTLOCK : 1;
9808 unsigned ACTSRC : 1;
9809 unsigned ACTSIDL : 1;
9810 unsigned : 1;
9811 unsigned ACTEN : 1;
9812 } __ACTCONbits_t;
9814 extern __at(0x0F63) volatile __ACTCONbits_t ACTCONbits;
9816 #define _ACTORSPOL 0x01
9817 #define _ACTORS 0x02
9818 #define _ACTLOCKPOL 0x04
9819 #define _ACTLOCK 0x08
9820 #define _ACTSRC 0x10
9821 #define _ACTSIDL 0x20
9822 #define _ACTEN 0x80
9824 //==============================================================================
9827 //==============================================================================
9828 // OSCCON4 Bits
9830 extern __at(0x0F64) __sfr OSCCON4;
9832 typedef union
9834 struct
9836 unsigned : 1;
9837 unsigned : 1;
9838 unsigned : 1;
9839 unsigned : 1;
9840 unsigned : 1;
9841 unsigned PLLEN : 1;
9842 unsigned CPDIV0 : 1;
9843 unsigned CPDIV1 : 1;
9846 struct
9848 unsigned : 6;
9849 unsigned CPDIV : 2;
9851 } __OSCCON4bits_t;
9853 extern __at(0x0F64) volatile __OSCCON4bits_t OSCCON4bits;
9855 #define _PLLEN 0x20
9856 #define _CPDIV0 0x40
9857 #define _CPDIV1 0x80
9859 //==============================================================================
9862 //==============================================================================
9863 // OSCCON3 Bits
9865 extern __at(0x0F65) __sfr OSCCON3;
9867 typedef union
9869 struct
9871 unsigned IRCF0 : 1;
9872 unsigned IRCF1 : 1;
9873 unsigned IRCF2 : 1;
9874 unsigned : 1;
9875 unsigned : 1;
9876 unsigned : 1;
9877 unsigned : 1;
9878 unsigned : 1;
9881 struct
9883 unsigned IRCF : 3;
9884 unsigned : 5;
9886 } __OSCCON3bits_t;
9888 extern __at(0x0F65) volatile __OSCCON3bits_t OSCCON3bits;
9890 #define _IRCF0 0x01
9891 #define _IRCF1 0x02
9892 #define _IRCF2 0x04
9894 //==============================================================================
9897 //==============================================================================
9898 // OSCCON2 Bits
9900 extern __at(0x0F66) __sfr OSCCON2;
9902 typedef struct
9904 unsigned : 1;
9905 unsigned SOSCGO : 1;
9906 unsigned POSCEN : 1;
9907 unsigned CF : 1;
9908 unsigned : 1;
9909 unsigned LOCK : 1;
9910 unsigned IOLOCK : 1;
9911 unsigned CLKLOCK : 1;
9912 } __OSCCON2bits_t;
9914 extern __at(0x0F66) volatile __OSCCON2bits_t OSCCON2bits;
9916 #define _SOSCGO 0x02
9917 #define _POSCEN 0x04
9918 #define _CF 0x08
9919 #define _LOCK 0x20
9920 #define _IOLOCK 0x40
9921 #define _CLKLOCK 0x80
9923 //==============================================================================
9926 //==============================================================================
9927 // BAUDCON Bits
9929 extern __at(0x0F67) __sfr BAUDCON;
9931 typedef union
9933 struct
9935 unsigned ABDEN : 1;
9936 unsigned WUE : 1;
9937 unsigned IREN : 1;
9938 unsigned BRG16 : 1;
9939 unsigned TXCKP : 1;
9940 unsigned RXDTP : 1;
9941 unsigned RCIDL : 1;
9942 unsigned ABDOVF : 1;
9945 struct
9947 unsigned : 1;
9948 unsigned : 1;
9949 unsigned : 1;
9950 unsigned : 1;
9951 unsigned CKTXP : 1;
9952 unsigned DTRXP : 1;
9953 unsigned RCMT : 1;
9954 unsigned : 1;
9957 struct
9959 unsigned : 1;
9960 unsigned : 1;
9961 unsigned : 1;
9962 unsigned : 1;
9963 unsigned SCKP : 1;
9964 unsigned : 1;
9965 unsigned : 1;
9966 unsigned : 1;
9968 } __BAUDCONbits_t;
9970 extern __at(0x0F67) volatile __BAUDCONbits_t BAUDCONbits;
9972 #define _ABDEN 0x01
9973 #define _WUE 0x02
9974 #define _IREN 0x04
9975 #define _BRG16 0x08
9976 #define _TXCKP 0x10
9977 #define _CKTXP 0x10
9978 #define _SCKP 0x10
9979 #define _RXDTP 0x20
9980 #define _DTRXP 0x20
9981 #define _RCIDL 0x40
9982 #define _RCMT 0x40
9983 #define _ABDOVF 0x80
9985 //==============================================================================
9988 //==============================================================================
9989 // BAUDCON1 Bits
9991 extern __at(0x0F67) __sfr BAUDCON1;
9993 typedef union
9995 struct
9997 unsigned ABDEN : 1;
9998 unsigned WUE : 1;
9999 unsigned IREN : 1;
10000 unsigned BRG16 : 1;
10001 unsigned TXCKP : 1;
10002 unsigned RXDTP : 1;
10003 unsigned RCIDL : 1;
10004 unsigned ABDOVF : 1;
10007 struct
10009 unsigned : 1;
10010 unsigned : 1;
10011 unsigned : 1;
10012 unsigned : 1;
10013 unsigned CKTXP : 1;
10014 unsigned DTRXP : 1;
10015 unsigned RCMT : 1;
10016 unsigned : 1;
10019 struct
10021 unsigned : 1;
10022 unsigned : 1;
10023 unsigned : 1;
10024 unsigned : 1;
10025 unsigned SCKP : 1;
10026 unsigned : 1;
10027 unsigned : 1;
10028 unsigned : 1;
10030 } __BAUDCON1bits_t;
10032 extern __at(0x0F67) volatile __BAUDCON1bits_t BAUDCON1bits;
10034 #define _BAUDCON1_ABDEN 0x01
10035 #define _BAUDCON1_WUE 0x02
10036 #define _BAUDCON1_IREN 0x04
10037 #define _BAUDCON1_BRG16 0x08
10038 #define _BAUDCON1_TXCKP 0x10
10039 #define _BAUDCON1_CKTXP 0x10
10040 #define _BAUDCON1_SCKP 0x10
10041 #define _BAUDCON1_RXDTP 0x20
10042 #define _BAUDCON1_DTRXP 0x20
10043 #define _BAUDCON1_RCIDL 0x40
10044 #define _BAUDCON1_RCMT 0x40
10045 #define _BAUDCON1_ABDOVF 0x80
10047 //==============================================================================
10050 //==============================================================================
10051 // SSP1MSK Bits
10053 extern __at(0x0F68) __sfr SSP1MSK;
10055 typedef struct
10057 unsigned MSK0 : 1;
10058 unsigned MSK1 : 1;
10059 unsigned MSK2 : 1;
10060 unsigned MSK3 : 1;
10061 unsigned MSK4 : 1;
10062 unsigned MSK5 : 1;
10063 unsigned MSK6 : 1;
10064 unsigned MSK7 : 1;
10065 } __SSP1MSKbits_t;
10067 extern __at(0x0F68) volatile __SSP1MSKbits_t SSP1MSKbits;
10069 #define _MSK0 0x01
10070 #define _MSK1 0x02
10071 #define _MSK2 0x04
10072 #define _MSK3 0x08
10073 #define _MSK4 0x10
10074 #define _MSK5 0x20
10075 #define _MSK6 0x40
10076 #define _MSK7 0x80
10078 //==============================================================================
10081 //==============================================================================
10082 // SSP1CON3 Bits
10084 extern __at(0x0F69) __sfr SSP1CON3;
10086 typedef struct
10088 unsigned DHEN : 1;
10089 unsigned AHEN : 1;
10090 unsigned SBCDE : 1;
10091 unsigned SDAHT : 1;
10092 unsigned BOEN : 1;
10093 unsigned SCIE : 1;
10094 unsigned PCIE : 1;
10095 unsigned ACKTIM : 1;
10096 } __SSP1CON3bits_t;
10098 extern __at(0x0F69) volatile __SSP1CON3bits_t SSP1CON3bits;
10100 #define _DHEN 0x01
10101 #define _AHEN 0x02
10102 #define _SBCDE 0x04
10103 #define _SDAHT 0x08
10104 #define _BOEN 0x10
10105 #define _SCIE 0x20
10106 #define _PCIE 0x40
10107 #define _ACKTIM 0x80
10109 //==============================================================================
10112 //==============================================================================
10113 // TXBUF Bits
10115 extern __at(0x0F6A) __sfr TXBUF;
10117 typedef struct
10119 unsigned TXBUF0 : 1;
10120 unsigned TXBUF1 : 1;
10121 unsigned TXBUF2 : 1;
10122 unsigned TXBUF3 : 1;
10123 unsigned TXBUF4 : 1;
10124 unsigned TXBUF5 : 1;
10125 unsigned TXBUF6 : 1;
10126 unsigned TXBUF7 : 1;
10127 } __TXBUFbits_t;
10129 extern __at(0x0F6A) volatile __TXBUFbits_t TXBUFbits;
10131 #define _TXBUF0 0x01
10132 #define _TXBUF1 0x02
10133 #define _TXBUF2 0x04
10134 #define _TXBUF3 0x08
10135 #define _TXBUF4 0x10
10136 #define _TXBUF5 0x20
10137 #define _TXBUF6 0x40
10138 #define _TXBUF7 0x80
10140 //==============================================================================
10143 //==============================================================================
10144 // DMABCH Bits
10146 extern __at(0x0F6B) __sfr DMABCH;
10148 typedef struct
10150 unsigned BC8 : 1;
10151 unsigned BC9 : 1;
10152 unsigned : 1;
10153 unsigned : 1;
10154 unsigned : 1;
10155 unsigned : 1;
10156 unsigned : 1;
10157 unsigned : 1;
10158 } __DMABCHbits_t;
10160 extern __at(0x0F6B) volatile __DMABCHbits_t DMABCHbits;
10162 #define _BC8 0x01
10163 #define _BC9 0x02
10165 //==============================================================================
10168 //==============================================================================
10169 // DMABCL Bits
10171 extern __at(0x0F6C) __sfr DMABCL;
10173 typedef struct
10175 unsigned BC0 : 1;
10176 unsigned BC1 : 1;
10177 unsigned BC2 : 1;
10178 unsigned BC3 : 1;
10179 unsigned BC4 : 1;
10180 unsigned BC5 : 1;
10181 unsigned BC6 : 1;
10182 unsigned BC7 : 1;
10183 } __DMABCLbits_t;
10185 extern __at(0x0F6C) volatile __DMABCLbits_t DMABCLbits;
10187 #define _BC0 0x01
10188 #define _BC1 0x02
10189 #define _BC2 0x04
10190 #define _BC3 0x08
10191 #define _BC4 0x10
10192 #define _BC5 0x20
10193 #define _BC6 0x40
10194 #define _BC7 0x80
10196 //==============================================================================
10199 //==============================================================================
10200 // RXADDRH Bits
10202 extern __at(0x0F6D) __sfr RXADDRH;
10204 typedef struct
10206 unsigned RXADDR8 : 1;
10207 unsigned RXADDR9 : 1;
10208 unsigned RXADDR10 : 1;
10209 unsigned RXADDR11 : 1;
10210 unsigned : 1;
10211 unsigned : 1;
10212 unsigned : 1;
10213 unsigned : 1;
10214 } __RXADDRHbits_t;
10216 extern __at(0x0F6D) volatile __RXADDRHbits_t RXADDRHbits;
10218 #define _RXADDR8 0x01
10219 #define _RXADDR9 0x02
10220 #define _RXADDR10 0x04
10221 #define _RXADDR11 0x08
10223 //==============================================================================
10226 //==============================================================================
10227 // RXADDRL Bits
10229 extern __at(0x0F6E) __sfr RXADDRL;
10231 typedef struct
10233 unsigned RXADDR0 : 1;
10234 unsigned RXADDR1 : 1;
10235 unsigned RXADDR2 : 1;
10236 unsigned RXADDR3 : 1;
10237 unsigned RXADDR4 : 1;
10238 unsigned RXADDR5 : 1;
10239 unsigned RXADDR6 : 1;
10240 unsigned RXADDR7 : 1;
10241 } __RXADDRLbits_t;
10243 extern __at(0x0F6E) volatile __RXADDRLbits_t RXADDRLbits;
10245 #define _RXADDR0 0x01
10246 #define _RXADDR1 0x02
10247 #define _RXADDR2 0x04
10248 #define _RXADDR3 0x08
10249 #define _RXADDR4 0x10
10250 #define _RXADDR5 0x20
10251 #define _RXADDR6 0x40
10252 #define _RXADDR7 0x80
10254 //==============================================================================
10257 //==============================================================================
10258 // TXADDRH Bits
10260 extern __at(0x0F6F) __sfr TXADDRH;
10262 typedef struct
10264 unsigned TXADDR8 : 1;
10265 unsigned TXADDR9 : 1;
10266 unsigned TXADDR10 : 1;
10267 unsigned TXADDR11 : 1;
10268 unsigned : 1;
10269 unsigned : 1;
10270 unsigned : 1;
10271 unsigned : 1;
10272 } __TXADDRHbits_t;
10274 extern __at(0x0F6F) volatile __TXADDRHbits_t TXADDRHbits;
10276 #define _TXADDR8 0x01
10277 #define _TXADDR9 0x02
10278 #define _TXADDR10 0x04
10279 #define _TXADDR11 0x08
10281 //==============================================================================
10284 //==============================================================================
10285 // TXADDRL Bits
10287 extern __at(0x0F70) __sfr TXADDRL;
10289 typedef struct
10291 unsigned TXADDR0 : 1;
10292 unsigned TXADDR1 : 1;
10293 unsigned TXADDR2 : 1;
10294 unsigned TXADDR3 : 1;
10295 unsigned TXADDR4 : 1;
10296 unsigned TXADDR5 : 1;
10297 unsigned TXADDR6 : 1;
10298 unsigned TXADDR7 : 1;
10299 } __TXADDRLbits_t;
10301 extern __at(0x0F70) volatile __TXADDRLbits_t TXADDRLbits;
10303 #define _TXADDR0 0x01
10304 #define _TXADDR1 0x02
10305 #define _TXADDR2 0x04
10306 #define _TXADDR3 0x08
10307 #define _TXADDR4 0x10
10308 #define _TXADDR5 0x20
10309 #define _TXADDR6 0x40
10310 #define _TXADDR7 0x80
10312 //==============================================================================
10315 //==============================================================================
10316 // PORTVP Bits
10318 extern __at(0x0F71) __sfr PORTVP;
10320 typedef struct
10322 unsigned RVP0 : 1;
10323 unsigned RVP1 : 1;
10324 unsigned RVP2 : 1;
10325 unsigned RVP3 : 1;
10326 unsigned RVP4 : 1;
10327 unsigned RVP5 : 1;
10328 unsigned RVP6 : 1;
10329 unsigned RVP7 : 1;
10330 } __PORTVPbits_t;
10332 extern __at(0x0F71) volatile __PORTVPbits_t PORTVPbits;
10334 #define _RVP0 0x01
10335 #define _RVP1 0x02
10336 #define _RVP2 0x04
10337 #define _RVP3 0x08
10338 #define _RVP4 0x10
10339 #define _RVP5 0x20
10340 #define _RVP6 0x40
10341 #define _RVP7 0x80
10343 //==============================================================================
10346 //==============================================================================
10347 // LATVP Bits
10349 extern __at(0x0F72) __sfr LATVP;
10351 typedef struct
10353 unsigned LATVP0 : 1;
10354 unsigned LATVP1 : 1;
10355 unsigned LATVP2 : 1;
10356 unsigned LATVP3 : 1;
10357 unsigned LATVP4 : 1;
10358 unsigned LATVP5 : 1;
10359 unsigned LATVP6 : 1;
10360 unsigned LATVP7 : 1;
10361 } __LATVPbits_t;
10363 extern __at(0x0F72) volatile __LATVPbits_t LATVPbits;
10365 #define _LATVP0 0x01
10366 #define _LATVP1 0x02
10367 #define _LATVP2 0x04
10368 #define _LATVP3 0x08
10369 #define _LATVP4 0x10
10370 #define _LATVP5 0x20
10371 #define _LATVP6 0x40
10372 #define _LATVP7 0x80
10374 //==============================================================================
10377 //==============================================================================
10378 // TRISVP Bits
10380 extern __at(0x0F73) __sfr TRISVP;
10382 typedef struct
10384 unsigned TRISVP0 : 1;
10385 unsigned TRISVP1 : 1;
10386 unsigned TRISVP2 : 1;
10387 unsigned TRISVP3 : 1;
10388 unsigned TRISVP4 : 1;
10389 unsigned TRISVP5 : 1;
10390 unsigned TRISVP6 : 1;
10391 unsigned TRISVP7 : 1;
10392 } __TRISVPbits_t;
10394 extern __at(0x0F73) volatile __TRISVPbits_t TRISVPbits;
10396 #define _TRISVP0 0x01
10397 #define _TRISVP1 0x02
10398 #define _TRISVP2 0x04
10399 #define _TRISVP3 0x08
10400 #define _TRISVP4 0x10
10401 #define _TRISVP5 0x20
10402 #define _TRISVP6 0x40
10403 #define _TRISVP7 0x80
10405 //==============================================================================
10408 //==============================================================================
10409 // UADDR Bits
10411 extern __at(0x0F74) __sfr UADDR;
10413 typedef union
10415 struct
10417 unsigned ADDR0 : 1;
10418 unsigned ADDR1 : 1;
10419 unsigned ADDR2 : 1;
10420 unsigned ADDR3 : 1;
10421 unsigned ADDR4 : 1;
10422 unsigned ADDR5 : 1;
10423 unsigned ADDR6 : 1;
10424 unsigned : 1;
10427 struct
10429 unsigned ADDR : 7;
10430 unsigned : 1;
10432 } __UADDRbits_t;
10434 extern __at(0x0F74) volatile __UADDRbits_t UADDRbits;
10436 #define _ADDR0 0x01
10437 #define _ADDR1 0x02
10438 #define _ADDR2 0x04
10439 #define _ADDR3 0x08
10440 #define _ADDR4 0x10
10441 #define _ADDR5 0x20
10442 #define _ADDR6 0x40
10444 //==============================================================================
10447 //==============================================================================
10448 // UCON Bits
10450 extern __at(0x0F75) __sfr UCON;
10452 typedef struct
10454 unsigned : 1;
10455 unsigned SUSPND : 1;
10456 unsigned RESUME : 1;
10457 unsigned USBEN : 1;
10458 unsigned PKTDIS : 1;
10459 unsigned SE0 : 1;
10460 unsigned PPBRST : 1;
10461 unsigned : 1;
10462 } __UCONbits_t;
10464 extern __at(0x0F75) volatile __UCONbits_t UCONbits;
10466 #define _SUSPND 0x02
10467 #define _RESUME 0x04
10468 #define _USBEN 0x08
10469 #define _PKTDIS 0x10
10470 #define _SE0 0x20
10471 #define _PPBRST 0x40
10473 //==============================================================================
10476 //==============================================================================
10477 // USTAT Bits
10479 extern __at(0x0F76) __sfr USTAT;
10481 typedef union
10483 struct
10485 unsigned : 1;
10486 unsigned PPBI : 1;
10487 unsigned DIR : 1;
10488 unsigned ENDP0 : 1;
10489 unsigned ENDP1 : 1;
10490 unsigned ENDP2 : 1;
10491 unsigned ENDP3 : 1;
10492 unsigned : 1;
10495 struct
10497 unsigned : 3;
10498 unsigned ENDP : 4;
10499 unsigned : 1;
10501 } __USTATbits_t;
10503 extern __at(0x0F76) volatile __USTATbits_t USTATbits;
10505 #define _PPBI 0x02
10506 #define _DIR 0x04
10507 #define _ENDP0 0x08
10508 #define _ENDP1 0x10
10509 #define _ENDP2 0x20
10510 #define _ENDP3 0x40
10512 //==============================================================================
10515 //==============================================================================
10516 // UEIR Bits
10518 extern __at(0x0F77) __sfr UEIR;
10520 typedef struct
10522 unsigned PIDEF : 1;
10523 unsigned CRC5EF : 1;
10524 unsigned CRC16EF : 1;
10525 unsigned DFN8EF : 1;
10526 unsigned BTOEF : 1;
10527 unsigned : 1;
10528 unsigned : 1;
10529 unsigned BTSEF : 1;
10530 } __UEIRbits_t;
10532 extern __at(0x0F77) volatile __UEIRbits_t UEIRbits;
10534 #define _PIDEF 0x01
10535 #define _CRC5EF 0x02
10536 #define _CRC16EF 0x04
10537 #define _DFN8EF 0x08
10538 #define _BTOEF 0x10
10539 #define _BTSEF 0x80
10541 //==============================================================================
10544 //==============================================================================
10545 // UIR Bits
10547 extern __at(0x0F78) __sfr UIR;
10549 typedef struct
10551 unsigned URSTIF : 1;
10552 unsigned UERRIF : 1;
10553 unsigned ACTVIF : 1;
10554 unsigned TRNIF : 1;
10555 unsigned IDLEIF : 1;
10556 unsigned STALLIF : 1;
10557 unsigned SOFIF : 1;
10558 unsigned : 1;
10559 } __UIRbits_t;
10561 extern __at(0x0F78) volatile __UIRbits_t UIRbits;
10563 #define _URSTIF 0x01
10564 #define _UERRIF 0x02
10565 #define _ACTVIF 0x04
10566 #define _TRNIF 0x08
10567 #define _IDLEIF 0x10
10568 #define _STALLIF 0x20
10569 #define _SOFIF 0x40
10571 //==============================================================================
10573 extern __at(0x0F79) __sfr UFRM;
10575 //==============================================================================
10576 // UFRMH Bits
10578 extern __at(0x0F79) __sfr UFRMH;
10580 typedef struct
10582 unsigned FRM8 : 1;
10583 unsigned FRM9 : 1;
10584 unsigned FRM10 : 1;
10585 unsigned : 1;
10586 unsigned : 1;
10587 unsigned : 1;
10588 unsigned : 1;
10589 unsigned : 1;
10590 } __UFRMHbits_t;
10592 extern __at(0x0F79) volatile __UFRMHbits_t UFRMHbits;
10594 #define _FRM8 0x01
10595 #define _FRM9 0x02
10596 #define _FRM10 0x04
10598 //==============================================================================
10601 //==============================================================================
10602 // UFRML Bits
10604 extern __at(0x0F7A) __sfr UFRML;
10606 typedef struct
10608 unsigned FRM0 : 1;
10609 unsigned FRM1 : 1;
10610 unsigned FRM2 : 1;
10611 unsigned FRM3 : 1;
10612 unsigned FRM4 : 1;
10613 unsigned FRM5 : 1;
10614 unsigned FRM6 : 1;
10615 unsigned FRM7 : 1;
10616 } __UFRMLbits_t;
10618 extern __at(0x0F7A) volatile __UFRMLbits_t UFRMLbits;
10620 #define _FRM0 0x01
10621 #define _FRM1 0x02
10622 #define _FRM2 0x04
10623 #define _FRM3 0x08
10624 #define _FRM4 0x10
10625 #define _FRM5 0x20
10626 #define _FRM6 0x40
10627 #define _FRM7 0x80
10629 //==============================================================================
10632 //==============================================================================
10633 // RCON4 Bits
10635 extern __at(0x0F7B) __sfr RCON4;
10637 typedef struct
10639 unsigned PMSLP : 1;
10640 unsigned : 1;
10641 unsigned DPSLP : 1;
10642 unsigned : 1;
10643 unsigned SRETEN : 1;
10644 unsigned : 1;
10645 unsigned : 1;
10646 unsigned : 1;
10647 } __RCON4bits_t;
10649 extern __at(0x0F7B) volatile __RCON4bits_t RCON4bits;
10651 #define _PMSLP 0x01
10652 #define _DPSLP 0x04
10653 #define _SRETEN 0x10
10655 //==============================================================================
10658 //==============================================================================
10659 // RCON3 Bits
10661 extern __at(0x0F7C) __sfr RCON3;
10663 typedef struct
10665 unsigned VBAT : 1;
10666 unsigned VBPOR : 1;
10667 unsigned VDDPOR : 1;
10668 unsigned VDDBOR : 1;
10669 unsigned : 1;
10670 unsigned : 1;
10671 unsigned : 1;
10672 unsigned STKERR : 1;
10673 } __RCON3bits_t;
10675 extern __at(0x0F7C) volatile __RCON3bits_t RCON3bits;
10677 #define _VBAT 0x01
10678 #define _VBPOR 0x02
10679 #define _VDDPOR 0x04
10680 #define _VDDBOR 0x08
10681 #define _STKERR 0x80
10683 //==============================================================================
10686 //==============================================================================
10687 // RCON2 Bits
10689 extern __at(0x0F7D) __sfr RCON2;
10691 typedef struct
10693 unsigned : 1;
10694 unsigned : 1;
10695 unsigned : 1;
10696 unsigned : 1;
10697 unsigned : 1;
10698 unsigned SWDTEN : 1;
10699 unsigned : 1;
10700 unsigned EXTR : 1;
10701 } __RCON2bits_t;
10703 extern __at(0x0F7D) volatile __RCON2bits_t RCON2bits;
10705 #define _SWDTEN 0x20
10706 #define _EXTR 0x80
10708 //==============================================================================
10710 extern __at(0x0F7E) __sfr EECON2;
10712 //==============================================================================
10713 // EECON1 Bits
10715 extern __at(0x0F7F) __sfr EECON1;
10717 typedef struct
10719 unsigned : 1;
10720 unsigned WR : 1;
10721 unsigned WREN : 1;
10722 unsigned WRERR : 1;
10723 unsigned FREE : 1;
10724 unsigned WWPROG : 1;
10725 unsigned : 1;
10726 unsigned : 1;
10727 } __EECON1bits_t;
10729 extern __at(0x0F7F) volatile __EECON1bits_t EECON1bits;
10731 #define _WR 0x02
10732 #define _WREN 0x04
10733 #define _WRERR 0x08
10734 #define _FREE 0x10
10735 #define _WWPROG 0x20
10737 //==============================================================================
10740 //==============================================================================
10741 // PORTA Bits
10743 extern __at(0x0F80) __sfr PORTA;
10745 typedef struct
10747 unsigned RA0 : 1;
10748 unsigned RA1 : 1;
10749 unsigned RA2 : 1;
10750 unsigned RA3 : 1;
10751 unsigned RA4 : 1;
10752 unsigned RA5 : 1;
10753 unsigned RA6 : 1;
10754 unsigned RA7 : 1;
10755 } __PORTAbits_t;
10757 extern __at(0x0F80) volatile __PORTAbits_t PORTAbits;
10759 #define _RA0 0x01
10760 #define _RA1 0x02
10761 #define _RA2 0x04
10762 #define _RA3 0x08
10763 #define _RA4 0x10
10764 #define _RA5 0x20
10765 #define _RA6 0x40
10766 #define _RA7 0x80
10768 //==============================================================================
10771 //==============================================================================
10772 // PORTB Bits
10774 extern __at(0x0F81) __sfr PORTB;
10776 typedef struct
10778 unsigned RB0 : 1;
10779 unsigned RB1 : 1;
10780 unsigned RB2 : 1;
10781 unsigned RB3 : 1;
10782 unsigned RB4 : 1;
10783 unsigned RB5 : 1;
10784 unsigned RB6 : 1;
10785 unsigned RB7 : 1;
10786 } __PORTBbits_t;
10788 extern __at(0x0F81) volatile __PORTBbits_t PORTBbits;
10790 #define _RB0 0x01
10791 #define _RB1 0x02
10792 #define _RB2 0x04
10793 #define _RB3 0x08
10794 #define _RB4 0x10
10795 #define _RB5 0x20
10796 #define _RB6 0x40
10797 #define _RB7 0x80
10799 //==============================================================================
10802 //==============================================================================
10803 // PORTC Bits
10805 extern __at(0x0F82) __sfr PORTC;
10807 typedef struct
10809 unsigned RC0 : 1;
10810 unsigned RC1 : 1;
10811 unsigned RC2 : 1;
10812 unsigned RC3 : 1;
10813 unsigned RC4 : 1;
10814 unsigned RC5 : 1;
10815 unsigned RC6 : 1;
10816 unsigned RC7 : 1;
10817 } __PORTCbits_t;
10819 extern __at(0x0F82) volatile __PORTCbits_t PORTCbits;
10821 #define _RC0 0x01
10822 #define _RC1 0x02
10823 #define _RC2 0x04
10824 #define _RC3 0x08
10825 #define _RC4 0x10
10826 #define _RC5 0x20
10827 #define _RC6 0x40
10828 #define _RC7 0x80
10830 //==============================================================================
10833 //==============================================================================
10834 // PORTD Bits
10836 extern __at(0x0F83) __sfr PORTD;
10838 typedef struct
10840 unsigned RD0 : 1;
10841 unsigned RD1 : 1;
10842 unsigned RD2 : 1;
10843 unsigned RD3 : 1;
10844 unsigned RD4 : 1;
10845 unsigned RD5 : 1;
10846 unsigned RD6 : 1;
10847 unsigned RD7 : 1;
10848 } __PORTDbits_t;
10850 extern __at(0x0F83) volatile __PORTDbits_t PORTDbits;
10852 #define _RD0 0x01
10853 #define _RD1 0x02
10854 #define _RD2 0x04
10855 #define _RD3 0x08
10856 #define _RD4 0x10
10857 #define _RD5 0x20
10858 #define _RD6 0x40
10859 #define _RD7 0x80
10861 //==============================================================================
10864 //==============================================================================
10865 // PORTE Bits
10867 extern __at(0x0F84) __sfr PORTE;
10869 typedef struct
10871 unsigned RE0 : 1;
10872 unsigned RE1 : 1;
10873 unsigned RE2 : 1;
10874 unsigned RE3 : 1;
10875 unsigned RE4 : 1;
10876 unsigned RE5 : 1;
10877 unsigned RE6 : 1;
10878 unsigned RE7 : 1;
10879 } __PORTEbits_t;
10881 extern __at(0x0F84) volatile __PORTEbits_t PORTEbits;
10883 #define _RE0 0x01
10884 #define _RE1 0x02
10885 #define _RE2 0x04
10886 #define _RE3 0x08
10887 #define _RE4 0x10
10888 #define _RE5 0x20
10889 #define _RE6 0x40
10890 #define _RE7 0x80
10892 //==============================================================================
10895 //==============================================================================
10896 // PORTF Bits
10898 extern __at(0x0F85) __sfr PORTF;
10900 typedef struct
10902 unsigned : 1;
10903 unsigned : 1;
10904 unsigned RF2 : 1;
10905 unsigned RF3 : 1;
10906 unsigned RF4 : 1;
10907 unsigned RF5 : 1;
10908 unsigned RF6 : 1;
10909 unsigned RF7 : 1;
10910 } __PORTFbits_t;
10912 extern __at(0x0F85) volatile __PORTFbits_t PORTFbits;
10914 #define _RF2 0x04
10915 #define _RF3 0x08
10916 #define _RF4 0x10
10917 #define _RF5 0x20
10918 #define _RF6 0x40
10919 #define _RF7 0x80
10921 //==============================================================================
10924 //==============================================================================
10925 // PORTG Bits
10927 extern __at(0x0F86) __sfr PORTG;
10929 typedef union
10931 struct
10933 unsigned RG0 : 1;
10934 unsigned RG1 : 1;
10935 unsigned RG2 : 1;
10936 unsigned RG3 : 1;
10937 unsigned RG4 : 1;
10938 unsigned : 1;
10939 unsigned : 1;
10940 unsigned : 1;
10943 struct
10945 unsigned RG : 5;
10946 unsigned : 3;
10948 } __PORTGbits_t;
10950 extern __at(0x0F86) volatile __PORTGbits_t PORTGbits;
10952 #define _RG0 0x01
10953 #define _RG1 0x02
10954 #define _RG2 0x04
10955 #define _RG3 0x08
10956 #define _RG4 0x10
10958 //==============================================================================
10961 //==============================================================================
10962 // LATA Bits
10964 extern __at(0x0F89) __sfr LATA;
10966 typedef struct
10968 unsigned LATA0 : 1;
10969 unsigned LATA1 : 1;
10970 unsigned LATA2 : 1;
10971 unsigned LATA3 : 1;
10972 unsigned LATA4 : 1;
10973 unsigned LATA5 : 1;
10974 unsigned LATA6 : 1;
10975 unsigned LATA7 : 1;
10976 } __LATAbits_t;
10978 extern __at(0x0F89) volatile __LATAbits_t LATAbits;
10980 #define _LATA0 0x01
10981 #define _LATA1 0x02
10982 #define _LATA2 0x04
10983 #define _LATA3 0x08
10984 #define _LATA4 0x10
10985 #define _LATA5 0x20
10986 #define _LATA6 0x40
10987 #define _LATA7 0x80
10989 //==============================================================================
10992 //==============================================================================
10993 // LATB Bits
10995 extern __at(0x0F8A) __sfr LATB;
10997 typedef struct
10999 unsigned LATB0 : 1;
11000 unsigned LATB1 : 1;
11001 unsigned LATB2 : 1;
11002 unsigned LATB3 : 1;
11003 unsigned LATB4 : 1;
11004 unsigned LATB5 : 1;
11005 unsigned LATB6 : 1;
11006 unsigned LATB7 : 1;
11007 } __LATBbits_t;
11009 extern __at(0x0F8A) volatile __LATBbits_t LATBbits;
11011 #define _LATB0 0x01
11012 #define _LATB1 0x02
11013 #define _LATB2 0x04
11014 #define _LATB3 0x08
11015 #define _LATB4 0x10
11016 #define _LATB5 0x20
11017 #define _LATB6 0x40
11018 #define _LATB7 0x80
11020 //==============================================================================
11023 //==============================================================================
11024 // LATC Bits
11026 extern __at(0x0F8B) __sfr LATC;
11028 typedef struct
11030 unsigned LATC0 : 1;
11031 unsigned LATC1 : 1;
11032 unsigned LATC2 : 1;
11033 unsigned LATC3 : 1;
11034 unsigned LATC4 : 1;
11035 unsigned LATC5 : 1;
11036 unsigned LATC6 : 1;
11037 unsigned LATC7 : 1;
11038 } __LATCbits_t;
11040 extern __at(0x0F8B) volatile __LATCbits_t LATCbits;
11042 #define _LATC0 0x01
11043 #define _LATC1 0x02
11044 #define _LATC2 0x04
11045 #define _LATC3 0x08
11046 #define _LATC4 0x10
11047 #define _LATC5 0x20
11048 #define _LATC6 0x40
11049 #define _LATC7 0x80
11051 //==============================================================================
11054 //==============================================================================
11055 // LATD Bits
11057 extern __at(0x0F8C) __sfr LATD;
11059 typedef struct
11061 unsigned LATD0 : 1;
11062 unsigned LATD1 : 1;
11063 unsigned LATD2 : 1;
11064 unsigned LATD3 : 1;
11065 unsigned LATD4 : 1;
11066 unsigned LATD5 : 1;
11067 unsigned LATD6 : 1;
11068 unsigned LATD7 : 1;
11069 } __LATDbits_t;
11071 extern __at(0x0F8C) volatile __LATDbits_t LATDbits;
11073 #define _LATD0 0x01
11074 #define _LATD1 0x02
11075 #define _LATD2 0x04
11076 #define _LATD3 0x08
11077 #define _LATD4 0x10
11078 #define _LATD5 0x20
11079 #define _LATD6 0x40
11080 #define _LATD7 0x80
11082 //==============================================================================
11085 //==============================================================================
11086 // LATE Bits
11088 extern __at(0x0F8D) __sfr LATE;
11090 typedef struct
11092 unsigned LATE0 : 1;
11093 unsigned LATE1 : 1;
11094 unsigned LATE2 : 1;
11095 unsigned LATE3 : 1;
11096 unsigned LATE4 : 1;
11097 unsigned LATE5 : 1;
11098 unsigned LATE6 : 1;
11099 unsigned LATE7 : 1;
11100 } __LATEbits_t;
11102 extern __at(0x0F8D) volatile __LATEbits_t LATEbits;
11104 #define _LATE0 0x01
11105 #define _LATE1 0x02
11106 #define _LATE2 0x04
11107 #define _LATE3 0x08
11108 #define _LATE4 0x10
11109 #define _LATE5 0x20
11110 #define _LATE6 0x40
11111 #define _LATE7 0x80
11113 //==============================================================================
11116 //==============================================================================
11117 // LATF Bits
11119 extern __at(0x0F8E) __sfr LATF;
11121 typedef struct
11123 unsigned : 1;
11124 unsigned : 1;
11125 unsigned LATF2 : 1;
11126 unsigned LATF3 : 1;
11127 unsigned LATF4 : 1;
11128 unsigned LATF5 : 1;
11129 unsigned LATF6 : 1;
11130 unsigned LATF7 : 1;
11131 } __LATFbits_t;
11133 extern __at(0x0F8E) volatile __LATFbits_t LATFbits;
11135 #define _LATF2 0x04
11136 #define _LATF3 0x08
11137 #define _LATF4 0x10
11138 #define _LATF5 0x20
11139 #define _LATF6 0x40
11140 #define _LATF7 0x80
11142 //==============================================================================
11145 //==============================================================================
11146 // LATG Bits
11148 extern __at(0x0F8F) __sfr LATG;
11150 typedef union
11152 struct
11154 unsigned LATG0 : 1;
11155 unsigned LATG1 : 1;
11156 unsigned LATG2 : 1;
11157 unsigned LATG3 : 1;
11158 unsigned LATG4 : 1;
11159 unsigned : 1;
11160 unsigned : 1;
11161 unsigned : 1;
11164 struct
11166 unsigned LATG : 5;
11167 unsigned : 3;
11169 } __LATGbits_t;
11171 extern __at(0x0F8F) volatile __LATGbits_t LATGbits;
11173 #define _LATG0 0x01
11174 #define _LATG1 0x02
11175 #define _LATG2 0x04
11176 #define _LATG3 0x08
11177 #define _LATG4 0x10
11179 //==============================================================================
11182 //==============================================================================
11183 // TRISA Bits
11185 extern __at(0x0F92) __sfr TRISA;
11187 typedef struct
11189 unsigned TRISA0 : 1;
11190 unsigned TRISA1 : 1;
11191 unsigned TRISA2 : 1;
11192 unsigned TRISA3 : 1;
11193 unsigned TRISA4 : 1;
11194 unsigned TRISA5 : 1;
11195 unsigned TRISA6 : 1;
11196 unsigned TRISA7 : 1;
11197 } __TRISAbits_t;
11199 extern __at(0x0F92) volatile __TRISAbits_t TRISAbits;
11201 #define _TRISA0 0x01
11202 #define _TRISA1 0x02
11203 #define _TRISA2 0x04
11204 #define _TRISA3 0x08
11205 #define _TRISA4 0x10
11206 #define _TRISA5 0x20
11207 #define _TRISA6 0x40
11208 #define _TRISA7 0x80
11210 //==============================================================================
11213 //==============================================================================
11214 // TRISB Bits
11216 extern __at(0x0F93) __sfr TRISB;
11218 typedef struct
11220 unsigned TRISB0 : 1;
11221 unsigned TRISB1 : 1;
11222 unsigned TRISB2 : 1;
11223 unsigned TRISB3 : 1;
11224 unsigned TRISB4 : 1;
11225 unsigned TRISB5 : 1;
11226 unsigned TRISB6 : 1;
11227 unsigned TRISB7 : 1;
11228 } __TRISBbits_t;
11230 extern __at(0x0F93) volatile __TRISBbits_t TRISBbits;
11232 #define _TRISB0 0x01
11233 #define _TRISB1 0x02
11234 #define _TRISB2 0x04
11235 #define _TRISB3 0x08
11236 #define _TRISB4 0x10
11237 #define _TRISB5 0x20
11238 #define _TRISB6 0x40
11239 #define _TRISB7 0x80
11241 //==============================================================================
11244 //==============================================================================
11245 // TRISC Bits
11247 extern __at(0x0F94) __sfr TRISC;
11249 typedef struct
11251 unsigned TRISC0 : 1;
11252 unsigned TRISC1 : 1;
11253 unsigned TRISC2 : 1;
11254 unsigned TRISC3 : 1;
11255 unsigned TRISC4 : 1;
11256 unsigned TRISC5 : 1;
11257 unsigned TRISC6 : 1;
11258 unsigned TRISC7 : 1;
11259 } __TRISCbits_t;
11261 extern __at(0x0F94) volatile __TRISCbits_t TRISCbits;
11263 #define _TRISC0 0x01
11264 #define _TRISC1 0x02
11265 #define _TRISC2 0x04
11266 #define _TRISC3 0x08
11267 #define _TRISC4 0x10
11268 #define _TRISC5 0x20
11269 #define _TRISC6 0x40
11270 #define _TRISC7 0x80
11272 //==============================================================================
11275 //==============================================================================
11276 // TRISD Bits
11278 extern __at(0x0F95) __sfr TRISD;
11280 typedef struct
11282 unsigned TRISD0 : 1;
11283 unsigned TRISD1 : 1;
11284 unsigned TRISD2 : 1;
11285 unsigned TRISD3 : 1;
11286 unsigned TRISD4 : 1;
11287 unsigned TRISD5 : 1;
11288 unsigned TRISD6 : 1;
11289 unsigned TRISD7 : 1;
11290 } __TRISDbits_t;
11292 extern __at(0x0F95) volatile __TRISDbits_t TRISDbits;
11294 #define _TRISD0 0x01
11295 #define _TRISD1 0x02
11296 #define _TRISD2 0x04
11297 #define _TRISD3 0x08
11298 #define _TRISD4 0x10
11299 #define _TRISD5 0x20
11300 #define _TRISD6 0x40
11301 #define _TRISD7 0x80
11303 //==============================================================================
11306 //==============================================================================
11307 // TRISE Bits
11309 extern __at(0x0F96) __sfr TRISE;
11311 typedef struct
11313 unsigned TRISE0 : 1;
11314 unsigned TRISE1 : 1;
11315 unsigned TRISE2 : 1;
11316 unsigned TRISE3 : 1;
11317 unsigned TRISE4 : 1;
11318 unsigned TRISE5 : 1;
11319 unsigned TRISE6 : 1;
11320 unsigned TRISE7 : 1;
11321 } __TRISEbits_t;
11323 extern __at(0x0F96) volatile __TRISEbits_t TRISEbits;
11325 #define _TRISE0 0x01
11326 #define _TRISE1 0x02
11327 #define _TRISE2 0x04
11328 #define _TRISE3 0x08
11329 #define _TRISE4 0x10
11330 #define _TRISE5 0x20
11331 #define _TRISE6 0x40
11332 #define _TRISE7 0x80
11334 //==============================================================================
11337 //==============================================================================
11338 // TRISF Bits
11340 extern __at(0x0F97) __sfr TRISF;
11342 typedef struct
11344 unsigned : 1;
11345 unsigned : 1;
11346 unsigned TRISF2 : 1;
11347 unsigned TRISF3 : 1;
11348 unsigned TRISF4 : 1;
11349 unsigned TRISF5 : 1;
11350 unsigned TRISF6 : 1;
11351 unsigned TRISF7 : 1;
11352 } __TRISFbits_t;
11354 extern __at(0x0F97) volatile __TRISFbits_t TRISFbits;
11356 #define _TRISF2 0x04
11357 #define _TRISF3 0x08
11358 #define _TRISF4 0x10
11359 #define _TRISF5 0x20
11360 #define _TRISF6 0x40
11361 #define _TRISF7 0x80
11363 //==============================================================================
11366 //==============================================================================
11367 // TRISG Bits
11369 extern __at(0x0F98) __sfr TRISG;
11371 typedef union
11373 struct
11375 unsigned TRISG0 : 1;
11376 unsigned TRISG1 : 1;
11377 unsigned TRISG2 : 1;
11378 unsigned TRISG3 : 1;
11379 unsigned TRISG4 : 1;
11380 unsigned : 1;
11381 unsigned : 1;
11382 unsigned : 1;
11385 struct
11387 unsigned TRISG : 5;
11388 unsigned : 3;
11390 } __TRISGbits_t;
11392 extern __at(0x0F98) volatile __TRISGbits_t TRISGbits;
11394 #define _TRISG0 0x01
11395 #define _TRISG1 0x02
11396 #define _TRISG2 0x04
11397 #define _TRISG3 0x08
11398 #define _TRISG4 0x10
11400 //==============================================================================
11403 //==============================================================================
11404 // OSCTUNE Bits
11406 extern __at(0x0F9B) __sfr OSCTUNE;
11408 typedef union
11410 struct
11412 unsigned TUN0 : 1;
11413 unsigned TUN1 : 1;
11414 unsigned TUN2 : 1;
11415 unsigned TUN3 : 1;
11416 unsigned TUN4 : 1;
11417 unsigned TUN5 : 1;
11418 unsigned : 1;
11419 unsigned : 1;
11422 struct
11424 unsigned TUN : 6;
11425 unsigned : 2;
11427 } __OSCTUNEbits_t;
11429 extern __at(0x0F9B) volatile __OSCTUNEbits_t OSCTUNEbits;
11431 #define _TUN0 0x01
11432 #define _TUN1 0x02
11433 #define _TUN2 0x04
11434 #define _TUN3 0x08
11435 #define _TUN4 0x10
11436 #define _TUN5 0x20
11438 //==============================================================================
11441 //==============================================================================
11442 // PSTR1CON Bits
11444 extern __at(0x0F9C) __sfr PSTR1CON;
11446 typedef union
11448 struct
11450 unsigned STRA : 1;
11451 unsigned STRB : 1;
11452 unsigned STRC : 1;
11453 unsigned STRD : 1;
11454 unsigned STRSYNC : 1;
11455 unsigned : 1;
11456 unsigned CMPL0 : 1;
11457 unsigned CMPL1 : 1;
11460 struct
11462 unsigned : 6;
11463 unsigned CMPL : 2;
11465 } __PSTR1CONbits_t;
11467 extern __at(0x0F9C) volatile __PSTR1CONbits_t PSTR1CONbits;
11469 #define _STRA 0x01
11470 #define _STRB 0x02
11471 #define _STRC 0x04
11472 #define _STRD 0x08
11473 #define _STRSYNC 0x10
11474 #define _CMPL0 0x40
11475 #define _CMPL1 0x80
11477 //==============================================================================
11480 //==============================================================================
11481 // PIE1 Bits
11483 extern __at(0x0F9D) __sfr PIE1;
11485 typedef struct
11487 unsigned TMR1IE : 1;
11488 unsigned TMR2IE : 1;
11489 unsigned TMR1GIE : 1;
11490 unsigned SSP1IE : 1;
11491 unsigned TX1IE : 1;
11492 unsigned RC1IE : 1;
11493 unsigned ADIE : 1;
11494 unsigned PSPIE : 1;
11495 } __PIE1bits_t;
11497 extern __at(0x0F9D) volatile __PIE1bits_t PIE1bits;
11499 #define _TMR1IE 0x01
11500 #define _TMR2IE 0x02
11501 #define _TMR1GIE 0x04
11502 #define _SSP1IE 0x08
11503 #define _TX1IE 0x10
11504 #define _RC1IE 0x20
11505 #define _ADIE 0x40
11506 #define _PSPIE 0x80
11508 //==============================================================================
11511 //==============================================================================
11512 // PIR1 Bits
11514 extern __at(0x0F9E) __sfr PIR1;
11516 typedef struct
11518 unsigned TMR1IF : 1;
11519 unsigned TMR2IF : 1;
11520 unsigned TMR1GIF : 1;
11521 unsigned SSP1IF : 1;
11522 unsigned TX1IF : 1;
11523 unsigned RC1IF : 1;
11524 unsigned ADIF : 1;
11525 unsigned PSPIF : 1;
11526 } __PIR1bits_t;
11528 extern __at(0x0F9E) volatile __PIR1bits_t PIR1bits;
11530 #define _TMR1IF 0x01
11531 #define _TMR2IF 0x02
11532 #define _TMR1GIF 0x04
11533 #define _SSP1IF 0x08
11534 #define _TX1IF 0x10
11535 #define _RC1IF 0x20
11536 #define _ADIF 0x40
11537 #define _PSPIF 0x80
11539 //==============================================================================
11542 //==============================================================================
11543 // IPR1 Bits
11545 extern __at(0x0F9F) __sfr IPR1;
11547 typedef struct
11549 unsigned TMR1IP : 1;
11550 unsigned TMR2IP : 1;
11551 unsigned TMR1GIP : 1;
11552 unsigned SSP1IP : 1;
11553 unsigned TX1IP : 1;
11554 unsigned RC1IP : 1;
11555 unsigned ADIP : 1;
11556 unsigned PSPIP : 1;
11557 } __IPR1bits_t;
11559 extern __at(0x0F9F) volatile __IPR1bits_t IPR1bits;
11561 #define _TMR1IP 0x01
11562 #define _TMR2IP 0x02
11563 #define _TMR1GIP 0x04
11564 #define _SSP1IP 0x08
11565 #define _TX1IP 0x10
11566 #define _RC1IP 0x20
11567 #define _ADIP 0x40
11568 #define _PSPIP 0x80
11570 //==============================================================================
11573 //==============================================================================
11574 // PIE2 Bits
11576 extern __at(0x0FA0) __sfr PIE2;
11578 typedef struct
11580 unsigned TMR3GIE : 1;
11581 unsigned TMR3IE : 1;
11582 unsigned HLVDIE : 1;
11583 unsigned BCL1IE : 1;
11584 unsigned USBIE : 1;
11585 unsigned BCL2IE : 1;
11586 unsigned SSP2IE : 1;
11587 unsigned OSCFIE : 1;
11588 } __PIE2bits_t;
11590 extern __at(0x0FA0) volatile __PIE2bits_t PIE2bits;
11592 #define _TMR3GIE 0x01
11593 #define _TMR3IE 0x02
11594 #define _HLVDIE 0x04
11595 #define _BCL1IE 0x08
11596 #define _USBIE 0x10
11597 #define _BCL2IE 0x20
11598 #define _SSP2IE 0x40
11599 #define _OSCFIE 0x80
11601 //==============================================================================
11604 //==============================================================================
11605 // PIR2 Bits
11607 extern __at(0x0FA1) __sfr PIR2;
11609 typedef union
11611 struct
11613 unsigned TMR3GIF : 1;
11614 unsigned TMR3IF : 1;
11615 unsigned HLVDIF : 1;
11616 unsigned BCL1IF : 1;
11617 unsigned USBIF : 1;
11618 unsigned BCL2IF : 1;
11619 unsigned SSP2IF : 1;
11620 unsigned OSCFIF : 1;
11623 struct
11625 unsigned : 1;
11626 unsigned : 1;
11627 unsigned LVDIF : 1;
11628 unsigned : 1;
11629 unsigned : 1;
11630 unsigned : 1;
11631 unsigned : 1;
11632 unsigned : 1;
11634 } __PIR2bits_t;
11636 extern __at(0x0FA1) volatile __PIR2bits_t PIR2bits;
11638 #define _TMR3GIF 0x01
11639 #define _TMR3IF 0x02
11640 #define _HLVDIF 0x04
11641 #define _LVDIF 0x04
11642 #define _BCL1IF 0x08
11643 #define _USBIF 0x10
11644 #define _BCL2IF 0x20
11645 #define _SSP2IF 0x40
11646 #define _OSCFIF 0x80
11648 //==============================================================================
11651 //==============================================================================
11652 // IPR2 Bits
11654 extern __at(0x0FA2) __sfr IPR2;
11656 typedef struct
11658 unsigned TMR3GIP : 1;
11659 unsigned TMR3IP : 1;
11660 unsigned HLVDIP : 1;
11661 unsigned BCL1IP : 1;
11662 unsigned USBIP : 1;
11663 unsigned BCL2IP : 1;
11664 unsigned SSP2IP : 1;
11665 unsigned OSCFIP : 1;
11666 } __IPR2bits_t;
11668 extern __at(0x0FA2) volatile __IPR2bits_t IPR2bits;
11670 #define _TMR3GIP 0x01
11671 #define _TMR3IP 0x02
11672 #define _HLVDIP 0x04
11673 #define _BCL1IP 0x08
11674 #define _USBIP 0x10
11675 #define _BCL2IP 0x20
11676 #define _SSP2IP 0x40
11677 #define _OSCFIP 0x80
11679 //==============================================================================
11682 //==============================================================================
11683 // PIE3 Bits
11685 extern __at(0x0FA3) __sfr PIE3;
11687 typedef struct
11689 unsigned RTCCIE : 1;
11690 unsigned CCP1IE : 1;
11691 unsigned CCP2IE : 1;
11692 unsigned CTMUIE : 1;
11693 unsigned TX2IE : 1;
11694 unsigned RC2IE : 1;
11695 unsigned LCDIE : 1;
11696 unsigned TMR5GIE : 1;
11697 } __PIE3bits_t;
11699 extern __at(0x0FA3) volatile __PIE3bits_t PIE3bits;
11701 #define _RTCCIE 0x01
11702 #define _CCP1IE 0x02
11703 #define _CCP2IE 0x04
11704 #define _CTMUIE 0x08
11705 #define _TX2IE 0x10
11706 #define _RC2IE 0x20
11707 #define _LCDIE 0x40
11708 #define _TMR5GIE 0x80
11710 //==============================================================================
11713 //==============================================================================
11714 // PIR3 Bits
11716 extern __at(0x0FA4) __sfr PIR3;
11718 typedef struct
11720 unsigned RTCCIF : 1;
11721 unsigned CCP1IF : 1;
11722 unsigned CCP2IF : 1;
11723 unsigned CTMUIF : 1;
11724 unsigned TX2IF : 1;
11725 unsigned RC2IF : 1;
11726 unsigned LCDIF : 1;
11727 unsigned TMR5GIF : 1;
11728 } __PIR3bits_t;
11730 extern __at(0x0FA4) volatile __PIR3bits_t PIR3bits;
11732 #define _RTCCIF 0x01
11733 #define _CCP1IF 0x02
11734 #define _CCP2IF 0x04
11735 #define _CTMUIF 0x08
11736 #define _TX2IF 0x10
11737 #define _RC2IF 0x20
11738 #define _LCDIF 0x40
11739 #define _TMR5GIF 0x80
11741 //==============================================================================
11744 //==============================================================================
11745 // IPR3 Bits
11747 extern __at(0x0FA5) __sfr IPR3;
11749 typedef struct
11751 unsigned RTCCIP : 1;
11752 unsigned CCP1IP : 1;
11753 unsigned CCP2IP : 1;
11754 unsigned CTMUIP : 1;
11755 unsigned TX2IP : 1;
11756 unsigned RC2IP : 1;
11757 unsigned LCDIP : 1;
11758 unsigned TMR5GIP : 1;
11759 } __IPR3bits_t;
11761 extern __at(0x0FA5) volatile __IPR3bits_t IPR3bits;
11763 #define _RTCCIP 0x01
11764 #define _CCP1IP 0x02
11765 #define _CCP2IP 0x04
11766 #define _CTMUIP 0x08
11767 #define _TX2IP 0x10
11768 #define _RC2IP 0x20
11769 #define _LCDIP 0x40
11770 #define _TMR5GIP 0x80
11772 //==============================================================================
11775 //==============================================================================
11776 // PIR6 Bits
11778 extern __at(0x0FA6) __sfr PIR6;
11780 typedef struct
11782 unsigned CMP1IF : 1;
11783 unsigned CMP2IF : 1;
11784 unsigned CMP3IF : 1;
11785 unsigned : 1;
11786 unsigned TX3IF : 1;
11787 unsigned RC3IF : 1;
11788 unsigned TX4IF : 1;
11789 unsigned RC4IF : 1;
11790 } __PIR6bits_t;
11792 extern __at(0x0FA6) volatile __PIR6bits_t PIR6bits;
11794 #define _CMP1IF 0x01
11795 #define _CMP2IF 0x02
11796 #define _CMP3IF 0x04
11797 #define _TX3IF 0x10
11798 #define _RC3IF 0x20
11799 #define _TX4IF 0x40
11800 #define _RC4IF 0x80
11802 //==============================================================================
11805 //==============================================================================
11806 // PSPCON Bits
11808 extern __at(0x0FA7) __sfr PSPCON;
11810 typedef struct
11812 unsigned : 1;
11813 unsigned : 1;
11814 unsigned : 1;
11815 unsigned : 1;
11816 unsigned PSPMODE : 1;
11817 unsigned IBOV : 1;
11818 unsigned OBF : 1;
11819 unsigned IBF : 1;
11820 } __PSPCONbits_t;
11822 extern __at(0x0FA7) volatile __PSPCONbits_t PSPCONbits;
11824 #define _PSPMODE 0x10
11825 #define _IBOV 0x20
11826 #define _OBF 0x40
11827 #define _IBF 0x80
11829 //==============================================================================
11832 //==============================================================================
11833 // HLVDCON Bits
11835 extern __at(0x0FA8) __sfr HLVDCON;
11837 typedef union
11839 struct
11841 unsigned HLVDL0 : 1;
11842 unsigned HLVDL1 : 1;
11843 unsigned HLVDL2 : 1;
11844 unsigned HLVDL3 : 1;
11845 unsigned HLVDEN : 1;
11846 unsigned IRVST : 1;
11847 unsigned BGVST : 1;
11848 unsigned VDIRMAG : 1;
11851 struct
11853 unsigned HLVDL : 4;
11854 unsigned : 4;
11856 } __HLVDCONbits_t;
11858 extern __at(0x0FA8) volatile __HLVDCONbits_t HLVDCONbits;
11860 #define _HLVDL0 0x01
11861 #define _HLVDL1 0x02
11862 #define _HLVDL2 0x04
11863 #define _HLVDL3 0x08
11864 #define _HLVDEN 0x10
11865 #define _IRVST 0x20
11866 #define _BGVST 0x40
11867 #define _VDIRMAG 0x80
11869 //==============================================================================
11872 //==============================================================================
11873 // IPR6 Bits
11875 extern __at(0x0FA9) __sfr IPR6;
11877 typedef struct
11879 unsigned CMP1IP : 1;
11880 unsigned CMP2IP : 1;
11881 unsigned CMP3IP : 1;
11882 unsigned : 1;
11883 unsigned TX3IP : 1;
11884 unsigned RC3IP : 1;
11885 unsigned TX4IP : 1;
11886 unsigned RC4IP : 1;
11887 } __IPR6bits_t;
11889 extern __at(0x0FA9) volatile __IPR6bits_t IPR6bits;
11891 #define _CMP1IP 0x01
11892 #define _CMP2IP 0x02
11893 #define _CMP3IP 0x04
11894 #define _TX3IP 0x10
11895 #define _RC3IP 0x20
11896 #define _TX4IP 0x40
11897 #define _RC4IP 0x80
11899 //==============================================================================
11902 //==============================================================================
11903 // T1GCON Bits
11905 extern __at(0x0FAA) __sfr T1GCON;
11907 typedef union
11909 struct
11911 unsigned T1GSS0 : 1;
11912 unsigned T1GSS1 : 1;
11913 unsigned T1GVAL : 1;
11914 unsigned T1GGO_NOT_T1DONE : 1;
11915 unsigned T1GSPM : 1;
11916 unsigned T1GTM : 1;
11917 unsigned T1GPOL : 1;
11918 unsigned TMR1GE : 1;
11921 struct
11923 unsigned : 1;
11924 unsigned : 1;
11925 unsigned : 1;
11926 unsigned T1GGO : 1;
11927 unsigned : 1;
11928 unsigned : 1;
11929 unsigned : 1;
11930 unsigned : 1;
11933 struct
11935 unsigned : 1;
11936 unsigned : 1;
11937 unsigned : 1;
11938 unsigned NOT_T1DONE : 1;
11939 unsigned : 1;
11940 unsigned : 1;
11941 unsigned : 1;
11942 unsigned : 1;
11945 struct
11947 unsigned T1GSS : 2;
11948 unsigned : 6;
11950 } __T1GCONbits_t;
11952 extern __at(0x0FAA) volatile __T1GCONbits_t T1GCONbits;
11954 #define _T1GSS0 0x01
11955 #define _T1GSS1 0x02
11956 #define _T1GVAL 0x04
11957 #define _T1GGO_NOT_T1DONE 0x08
11958 #define _T1GGO 0x08
11959 #define _NOT_T1DONE 0x08
11960 #define _T1GSPM 0x10
11961 #define _T1GTM 0x20
11962 #define _T1GPOL 0x40
11963 #define _TMR1GE 0x80
11965 //==============================================================================
11968 //==============================================================================
11969 // RCSTA Bits
11971 extern __at(0x0FAB) __sfr RCSTA;
11973 typedef union
11975 struct
11977 unsigned RX9D : 1;
11978 unsigned OERR : 1;
11979 unsigned FERR : 1;
11980 unsigned ADDEN : 1;
11981 unsigned CREN : 1;
11982 unsigned SREN : 1;
11983 unsigned RX9 : 1;
11984 unsigned SPEN : 1;
11987 struct
11989 unsigned : 1;
11990 unsigned : 1;
11991 unsigned : 1;
11992 unsigned ADEN : 1;
11993 unsigned : 1;
11994 unsigned : 1;
11995 unsigned : 1;
11996 unsigned : 1;
11998 } __RCSTAbits_t;
12000 extern __at(0x0FAB) volatile __RCSTAbits_t RCSTAbits;
12002 #define _RX9D 0x01
12003 #define _OERR 0x02
12004 #define _FERR 0x04
12005 #define _ADDEN 0x08
12006 #define _ADEN 0x08
12007 #define _CREN 0x10
12008 #define _SREN 0x20
12009 #define _RX9 0x40
12010 #define _SPEN 0x80
12012 //==============================================================================
12015 //==============================================================================
12016 // RCSTA1 Bits
12018 extern __at(0x0FAB) __sfr RCSTA1;
12020 typedef union
12022 struct
12024 unsigned RX9D : 1;
12025 unsigned OERR : 1;
12026 unsigned FERR : 1;
12027 unsigned ADDEN : 1;
12028 unsigned CREN : 1;
12029 unsigned SREN : 1;
12030 unsigned RX9 : 1;
12031 unsigned SPEN : 1;
12034 struct
12036 unsigned : 1;
12037 unsigned : 1;
12038 unsigned : 1;
12039 unsigned ADEN : 1;
12040 unsigned : 1;
12041 unsigned : 1;
12042 unsigned : 1;
12043 unsigned : 1;
12045 } __RCSTA1bits_t;
12047 extern __at(0x0FAB) volatile __RCSTA1bits_t RCSTA1bits;
12049 #define _RCSTA1_RX9D 0x01
12050 #define _RCSTA1_OERR 0x02
12051 #define _RCSTA1_FERR 0x04
12052 #define _RCSTA1_ADDEN 0x08
12053 #define _RCSTA1_ADEN 0x08
12054 #define _RCSTA1_CREN 0x10
12055 #define _RCSTA1_SREN 0x20
12056 #define _RCSTA1_RX9 0x40
12057 #define _RCSTA1_SPEN 0x80
12059 //==============================================================================
12062 //==============================================================================
12063 // TXSTA Bits
12065 extern __at(0x0FAC) __sfr TXSTA;
12067 typedef struct
12069 unsigned TX9D : 1;
12070 unsigned TRMT : 1;
12071 unsigned BRGH : 1;
12072 unsigned SENDB : 1;
12073 unsigned SYNC : 1;
12074 unsigned TXEN : 1;
12075 unsigned TX9 : 1;
12076 unsigned CSRC : 1;
12077 } __TXSTAbits_t;
12079 extern __at(0x0FAC) volatile __TXSTAbits_t TXSTAbits;
12081 #define _TX9D 0x01
12082 #define _TRMT 0x02
12083 #define _BRGH 0x04
12084 #define _SENDB 0x08
12085 #define _SYNC 0x10
12086 #define _TXEN 0x20
12087 #define _TX9 0x40
12088 #define _CSRC 0x80
12090 //==============================================================================
12093 //==============================================================================
12094 // TXSTA1 Bits
12096 extern __at(0x0FAC) __sfr TXSTA1;
12098 typedef struct
12100 unsigned TX9D : 1;
12101 unsigned TRMT : 1;
12102 unsigned BRGH : 1;
12103 unsigned SENDB : 1;
12104 unsigned SYNC : 1;
12105 unsigned TXEN : 1;
12106 unsigned TX9 : 1;
12107 unsigned CSRC : 1;
12108 } __TXSTA1bits_t;
12110 extern __at(0x0FAC) volatile __TXSTA1bits_t TXSTA1bits;
12112 #define _TXSTA1_TX9D 0x01
12113 #define _TXSTA1_TRMT 0x02
12114 #define _TXSTA1_BRGH 0x04
12115 #define _TXSTA1_SENDB 0x08
12116 #define _TXSTA1_SYNC 0x10
12117 #define _TXSTA1_TXEN 0x20
12118 #define _TXSTA1_TX9 0x40
12119 #define _TXSTA1_CSRC 0x80
12121 //==============================================================================
12123 extern __at(0x0FAD) __sfr TXREG;
12124 extern __at(0x0FAD) __sfr TXREG1;
12125 extern __at(0x0FAE) __sfr RCREG;
12126 extern __at(0x0FAE) __sfr RCREG1;
12128 //==============================================================================
12129 // SPBRG Bits
12131 extern __at(0x0FAF) __sfr SPBRG;
12133 typedef struct
12135 unsigned BRG0 : 1;
12136 unsigned BRG1 : 1;
12137 unsigned BRG2 : 1;
12138 unsigned BRG3 : 1;
12139 unsigned BRG4 : 1;
12140 unsigned BRG5 : 1;
12141 unsigned BRG6 : 1;
12142 unsigned BRG7 : 1;
12143 } __SPBRGbits_t;
12145 extern __at(0x0FAF) volatile __SPBRGbits_t SPBRGbits;
12147 #define _BRG0 0x01
12148 #define _BRG1 0x02
12149 #define _BRG2 0x04
12150 #define _BRG3 0x08
12151 #define _BRG4 0x10
12152 #define _BRG5 0x20
12153 #define _BRG6 0x40
12154 #define _BRG7 0x80
12156 //==============================================================================
12159 //==============================================================================
12160 // SPBRG1 Bits
12162 extern __at(0x0FAF) __sfr SPBRG1;
12164 typedef struct
12166 unsigned BRG0 : 1;
12167 unsigned BRG1 : 1;
12168 unsigned BRG2 : 1;
12169 unsigned BRG3 : 1;
12170 unsigned BRG4 : 1;
12171 unsigned BRG5 : 1;
12172 unsigned BRG6 : 1;
12173 unsigned BRG7 : 1;
12174 } __SPBRG1bits_t;
12176 extern __at(0x0FAF) volatile __SPBRG1bits_t SPBRG1bits;
12178 #define _SPBRG1_BRG0 0x01
12179 #define _SPBRG1_BRG1 0x02
12180 #define _SPBRG1_BRG2 0x04
12181 #define _SPBRG1_BRG3 0x08
12182 #define _SPBRG1_BRG4 0x10
12183 #define _SPBRG1_BRG5 0x20
12184 #define _SPBRG1_BRG6 0x40
12185 #define _SPBRG1_BRG7 0x80
12187 //==============================================================================
12190 //==============================================================================
12191 // T3GCON Bits
12193 extern __at(0x0FB0) __sfr T3GCON;
12195 typedef union
12197 struct
12199 unsigned T3GSS0 : 1;
12200 unsigned T3GSS1 : 1;
12201 unsigned T3GVAL : 1;
12202 unsigned T3GGO_NOT_T3DONE : 1;
12203 unsigned T3GSPM : 1;
12204 unsigned T3GTM : 1;
12205 unsigned T3GPOL : 1;
12206 unsigned TMR3GE : 1;
12209 struct
12211 unsigned : 1;
12212 unsigned : 1;
12213 unsigned : 1;
12214 unsigned T3GGO : 1;
12215 unsigned : 1;
12216 unsigned : 1;
12217 unsigned : 1;
12218 unsigned : 1;
12221 struct
12223 unsigned : 1;
12224 unsigned : 1;
12225 unsigned : 1;
12226 unsigned NOT_T3DONE : 1;
12227 unsigned : 1;
12228 unsigned : 1;
12229 unsigned : 1;
12230 unsigned : 1;
12233 struct
12235 unsigned T3GSS : 2;
12236 unsigned : 6;
12238 } __T3GCONbits_t;
12240 extern __at(0x0FB0) volatile __T3GCONbits_t T3GCONbits;
12242 #define _T3GSS0 0x01
12243 #define _T3GSS1 0x02
12244 #define _T3GVAL 0x04
12245 #define _T3GGO_NOT_T3DONE 0x08
12246 #define _T3GGO 0x08
12247 #define _NOT_T3DONE 0x08
12248 #define _T3GSPM 0x10
12249 #define _T3GTM 0x20
12250 #define _T3GPOL 0x40
12251 #define _TMR3GE 0x80
12253 //==============================================================================
12256 //==============================================================================
12257 // T3CON Bits
12259 extern __at(0x0FB1) __sfr T3CON;
12261 typedef union
12263 struct
12265 unsigned TMR3ON : 1;
12266 unsigned RD16 : 1;
12267 unsigned NOT_T3SYNC : 1;
12268 unsigned SOSCEN : 1;
12269 unsigned T3CKPS0 : 1;
12270 unsigned T3CKPS1 : 1;
12271 unsigned TMR3CS0 : 1;
12272 unsigned TMR3CS1 : 1;
12275 struct
12277 unsigned : 4;
12278 unsigned T3CKPS : 2;
12279 unsigned : 2;
12282 struct
12284 unsigned : 6;
12285 unsigned TMR3CS : 2;
12287 } __T3CONbits_t;
12289 extern __at(0x0FB1) volatile __T3CONbits_t T3CONbits;
12291 #define _T3CON_TMR3ON 0x01
12292 #define _T3CON_RD16 0x02
12293 #define _T3CON_NOT_T3SYNC 0x04
12294 #define _T3CON_SOSCEN 0x08
12295 #define _T3CON_T3CKPS0 0x10
12296 #define _T3CON_T3CKPS1 0x20
12297 #define _T3CON_TMR3CS0 0x40
12298 #define _T3CON_TMR3CS1 0x80
12300 //==============================================================================
12302 extern __at(0x0FB2) __sfr TMR3;
12303 extern __at(0x0FB2) __sfr TMR3L;
12304 extern __at(0x0FB3) __sfr TMR3H;
12306 //==============================================================================
12307 // PIE4 Bits
12309 extern __at(0x0FB4) __sfr PIE4;
12311 typedef struct
12313 unsigned ECCP3IE : 1;
12314 unsigned CCP4IE : 1;
12315 unsigned CCP5IE : 1;
12316 unsigned CCP6IE : 1;
12317 unsigned CCP7IE : 1;
12318 unsigned CCP8IE : 1;
12319 unsigned CCP9IE : 1;
12320 unsigned CCP10IE : 1;
12321 } __PIE4bits_t;
12323 extern __at(0x0FB4) volatile __PIE4bits_t PIE4bits;
12325 #define _ECCP3IE 0x01
12326 #define _CCP4IE 0x02
12327 #define _CCP5IE 0x04
12328 #define _CCP6IE 0x08
12329 #define _CCP7IE 0x10
12330 #define _CCP8IE 0x20
12331 #define _CCP9IE 0x40
12332 #define _CCP10IE 0x80
12334 //==============================================================================
12337 //==============================================================================
12338 // PIR4 Bits
12340 extern __at(0x0FB5) __sfr PIR4;
12342 typedef struct
12344 unsigned ECCP3IF : 1;
12345 unsigned CCP4IF : 1;
12346 unsigned CCP5IF : 1;
12347 unsigned CCP6IF : 1;
12348 unsigned CCP7IF : 1;
12349 unsigned CCP8IF : 1;
12350 unsigned CCP9IF : 1;
12351 unsigned CCP10IF : 1;
12352 } __PIR4bits_t;
12354 extern __at(0x0FB5) volatile __PIR4bits_t PIR4bits;
12356 #define _ECCP3IF 0x01
12357 #define _CCP4IF 0x02
12358 #define _CCP5IF 0x04
12359 #define _CCP6IF 0x08
12360 #define _CCP7IF 0x10
12361 #define _CCP8IF 0x20
12362 #define _CCP9IF 0x40
12363 #define _CCP10IF 0x80
12365 //==============================================================================
12368 //==============================================================================
12369 // IPR4 Bits
12371 extern __at(0x0FB6) __sfr IPR4;
12373 typedef struct
12375 unsigned ECCP3IP : 1;
12376 unsigned CCP4IP : 1;
12377 unsigned CCP5IP : 1;
12378 unsigned CCP6IP : 1;
12379 unsigned CCP7IP : 1;
12380 unsigned CCP8IP : 1;
12381 unsigned CCP9IP : 1;
12382 unsigned CCP10IP : 1;
12383 } __IPR4bits_t;
12385 extern __at(0x0FB6) volatile __IPR4bits_t IPR4bits;
12387 #define _ECCP3IP 0x01
12388 #define _CCP4IP 0x02
12389 #define _CCP5IP 0x04
12390 #define _CCP6IP 0x08
12391 #define _CCP7IP 0x10
12392 #define _CCP8IP 0x20
12393 #define _CCP9IP 0x40
12394 #define _CCP10IP 0x80
12396 //==============================================================================
12399 //==============================================================================
12400 // PIE5 Bits
12402 extern __at(0x0FB7) __sfr PIE5;
12404 typedef struct
12406 unsigned TMR4IE : 1;
12407 unsigned TMR5IE : 1;
12408 unsigned TMR6IE : 1;
12409 unsigned : 1;
12410 unsigned TMR8IE : 1;
12411 unsigned ACTLOCKIE : 1;
12412 unsigned ACTORSIE : 1;
12413 unsigned : 1;
12414 } __PIE5bits_t;
12416 extern __at(0x0FB7) volatile __PIE5bits_t PIE5bits;
12418 #define _TMR4IE 0x01
12419 #define _TMR5IE 0x02
12420 #define _TMR6IE 0x04
12421 #define _TMR8IE 0x10
12422 #define _ACTLOCKIE 0x20
12423 #define _ACTORSIE 0x40
12425 //==============================================================================
12428 //==============================================================================
12429 // PIR5 Bits
12431 extern __at(0x0FB8) __sfr PIR5;
12433 typedef struct
12435 unsigned TMR4IF : 1;
12436 unsigned TMR5IF : 1;
12437 unsigned TMR6IF : 1;
12438 unsigned : 1;
12439 unsigned TMR8IF : 1;
12440 unsigned ACTLOCKIF : 1;
12441 unsigned ACTORSIF : 1;
12442 unsigned : 1;
12443 } __PIR5bits_t;
12445 extern __at(0x0FB8) volatile __PIR5bits_t PIR5bits;
12447 #define _TMR4IF 0x01
12448 #define _TMR5IF 0x02
12449 #define _TMR6IF 0x04
12450 #define _TMR8IF 0x10
12451 #define _ACTLOCKIF 0x20
12452 #define _ACTORSIF 0x40
12454 //==============================================================================
12457 //==============================================================================
12458 // CCP1CON Bits
12460 extern __at(0x0FB9) __sfr CCP1CON;
12462 typedef union
12464 struct
12466 unsigned CCP1M0 : 1;
12467 unsigned CCP1M1 : 1;
12468 unsigned CCP1M2 : 1;
12469 unsigned CCP1M3 : 1;
12470 unsigned DC1B0 : 1;
12471 unsigned DC1B1 : 1;
12472 unsigned P1M0 : 1;
12473 unsigned P1M1 : 1;
12476 struct
12478 unsigned : 1;
12479 unsigned : 1;
12480 unsigned : 1;
12481 unsigned : 1;
12482 unsigned CCP1Y : 1;
12483 unsigned CCP1X : 1;
12484 unsigned : 1;
12485 unsigned : 1;
12488 struct
12490 unsigned CCP1M : 4;
12491 unsigned : 4;
12494 struct
12496 unsigned : 4;
12497 unsigned DC1B : 2;
12498 unsigned : 2;
12501 struct
12503 unsigned : 6;
12504 unsigned P1M : 2;
12506 } __CCP1CONbits_t;
12508 extern __at(0x0FB9) volatile __CCP1CONbits_t CCP1CONbits;
12510 #define _CCP1M0 0x01
12511 #define _CCP1M1 0x02
12512 #define _CCP1M2 0x04
12513 #define _CCP1M3 0x08
12514 #define _DC1B0 0x10
12515 #define _CCP1Y 0x10
12516 #define _DC1B1 0x20
12517 #define _CCP1X 0x20
12518 #define _P1M0 0x40
12519 #define _P1M1 0x80
12521 //==============================================================================
12523 extern __at(0x0FBA) __sfr CCPR1;
12524 extern __at(0x0FBA) __sfr CCPR1L;
12525 extern __at(0x0FBB) __sfr CCPR1H;
12527 //==============================================================================
12528 // ECCP1DEL Bits
12530 extern __at(0x0FBC) __sfr ECCP1DEL;
12532 typedef union
12534 struct
12536 unsigned P1DC0 : 1;
12537 unsigned P1DC1 : 1;
12538 unsigned P1DC2 : 1;
12539 unsigned P1DC3 : 1;
12540 unsigned P1DC4 : 1;
12541 unsigned P1DC5 : 1;
12542 unsigned P1DC6 : 1;
12543 unsigned P1RSEN : 1;
12546 struct
12548 unsigned P1DC : 7;
12549 unsigned : 1;
12551 } __ECCP1DELbits_t;
12553 extern __at(0x0FBC) volatile __ECCP1DELbits_t ECCP1DELbits;
12555 #define _P1DC0 0x01
12556 #define _P1DC1 0x02
12557 #define _P1DC2 0x04
12558 #define _P1DC3 0x08
12559 #define _P1DC4 0x10
12560 #define _P1DC5 0x20
12561 #define _P1DC6 0x40
12562 #define _P1RSEN 0x80
12564 //==============================================================================
12567 //==============================================================================
12568 // ECCP1AS Bits
12570 extern __at(0x0FBD) __sfr ECCP1AS;
12572 typedef union
12574 struct
12576 unsigned PSS1BD0 : 1;
12577 unsigned PSS1BD1 : 1;
12578 unsigned PSS1AC0 : 1;
12579 unsigned PSS1AC1 : 1;
12580 unsigned ECCP1AS0 : 1;
12581 unsigned ECCP1AS1 : 1;
12582 unsigned ECCP1AS2 : 1;
12583 unsigned ECCP1ASE : 1;
12586 struct
12588 unsigned PSS1BD : 2;
12589 unsigned : 6;
12592 struct
12594 unsigned : 2;
12595 unsigned PSS1AC : 2;
12596 unsigned : 4;
12599 struct
12601 unsigned : 4;
12602 unsigned ECCP1AS : 3;
12603 unsigned : 1;
12605 } __ECCP1ASbits_t;
12607 extern __at(0x0FBD) volatile __ECCP1ASbits_t ECCP1ASbits;
12609 #define _PSS1BD0 0x01
12610 #define _PSS1BD1 0x02
12611 #define _PSS1AC0 0x04
12612 #define _PSS1AC1 0x08
12613 #define _ECCP1AS0 0x10
12614 #define _ECCP1AS1 0x20
12615 #define _ECCP1AS2 0x40
12616 #define _ECCP1ASE 0x80
12618 //==============================================================================
12621 //==============================================================================
12622 // CVRCONL Bits
12624 extern __at(0x0FBE) __sfr CVRCONL;
12626 typedef union
12628 struct
12630 unsigned CVRNSS : 1;
12631 unsigned : 1;
12632 unsigned : 1;
12633 unsigned : 1;
12634 unsigned CVRPSS0 : 1;
12635 unsigned CVRPSS1 : 1;
12636 unsigned CVROE : 1;
12637 unsigned CVREN : 1;
12640 struct
12642 unsigned : 4;
12643 unsigned CVRPSS : 2;
12644 unsigned : 2;
12646 } __CVRCONLbits_t;
12648 extern __at(0x0FBE) volatile __CVRCONLbits_t CVRCONLbits;
12650 #define _CVRNSS 0x01
12651 #define _CVRPSS0 0x10
12652 #define _CVRPSS1 0x20
12653 #define _CVROE 0x40
12654 #define _CVREN 0x80
12656 //==============================================================================
12659 //==============================================================================
12660 // CVRCONH Bits
12662 extern __at(0x0FBF) __sfr CVRCONH;
12664 typedef union
12666 struct
12668 unsigned CVR0 : 1;
12669 unsigned CVR1 : 1;
12670 unsigned CVR2 : 1;
12671 unsigned CVR3 : 1;
12672 unsigned CVR4 : 1;
12673 unsigned : 1;
12674 unsigned : 1;
12675 unsigned : 1;
12678 struct
12680 unsigned CVR : 5;
12681 unsigned : 3;
12683 } __CVRCONHbits_t;
12685 extern __at(0x0FBF) volatile __CVRCONHbits_t CVRCONHbits;
12687 #define _CVR0 0x01
12688 #define _CVR1 0x02
12689 #define _CVR2 0x04
12690 #define _CVR3 0x08
12691 #define _CVR4 0x10
12693 //==============================================================================
12696 //==============================================================================
12697 // ADCON1L Bits
12699 extern __at(0x0FC0) __sfr ADCON1L;
12701 typedef union
12703 struct
12705 unsigned DONE : 1;
12706 unsigned SAMP : 1;
12707 unsigned ASAM : 1;
12708 unsigned : 1;
12709 unsigned SSRC0 : 1;
12710 unsigned SSRC1 : 1;
12711 unsigned SSRC2 : 1;
12712 unsigned SSRC3 : 1;
12715 struct
12717 unsigned : 4;
12718 unsigned SSRC : 4;
12720 } __ADCON1Lbits_t;
12722 extern __at(0x0FC0) volatile __ADCON1Lbits_t ADCON1Lbits;
12724 #define _DONE 0x01
12725 #define _SAMP 0x02
12726 #define _ASAM 0x04
12727 #define _SSRC0 0x10
12728 #define _SSRC1 0x20
12729 #define _SSRC2 0x40
12730 #define _SSRC3 0x80
12732 //==============================================================================
12735 //==============================================================================
12736 // ADCON1H Bits
12738 extern __at(0x0FC1) __sfr ADCON1H;
12740 typedef union
12742 struct
12744 unsigned FORM0 : 1;
12745 unsigned FORM1 : 1;
12746 unsigned MODE12 : 1;
12747 unsigned : 1;
12748 unsigned : 1;
12749 unsigned : 1;
12750 unsigned : 1;
12751 unsigned ADON : 1;
12754 struct
12756 unsigned FORM : 2;
12757 unsigned : 6;
12759 } __ADCON1Hbits_t;
12761 extern __at(0x0FC1) volatile __ADCON1Hbits_t ADCON1Hbits;
12763 #define _FORM0 0x01
12764 #define _FORM1 0x02
12765 #define _MODE12 0x04
12766 #define _ADON 0x80
12768 //==============================================================================
12770 extern __at(0x0FC2) __sfr ADCBUF0;
12771 extern __at(0x0FC2) __sfr ADCBUF0L;
12772 extern __at(0x0FC3) __sfr ADCBUF0H;
12774 //==============================================================================
12775 // CMSTAT Bits
12777 extern __at(0x0FC4) __sfr CMSTAT;
12779 typedef struct
12781 unsigned C1OUT : 1;
12782 unsigned C2OUT : 1;
12783 unsigned C3OUT : 1;
12784 unsigned : 1;
12785 unsigned : 1;
12786 unsigned : 1;
12787 unsigned : 1;
12788 unsigned : 1;
12789 } __CMSTATbits_t;
12791 extern __at(0x0FC4) volatile __CMSTATbits_t CMSTATbits;
12793 #define _C1OUT 0x01
12794 #define _C2OUT 0x02
12795 #define _C3OUT 0x04
12797 //==============================================================================
12800 //==============================================================================
12801 // SSP1CON2 Bits
12803 extern __at(0x0FC5) __sfr SSP1CON2;
12805 typedef union
12807 struct
12809 unsigned SEN : 1;
12810 unsigned RSEN : 1;
12811 unsigned PEN : 1;
12812 unsigned RCEN : 1;
12813 unsigned ACKEN : 1;
12814 unsigned ACKDT : 1;
12815 unsigned ACKSTAT : 1;
12816 unsigned GCEN : 1;
12819 struct
12821 unsigned : 1;
12822 unsigned ADMSK1 : 1;
12823 unsigned ADMSK2 : 1;
12824 unsigned ADMSK3 : 1;
12825 unsigned ADMSK4 : 1;
12826 unsigned ADMSK5 : 1;
12827 unsigned : 1;
12828 unsigned : 1;
12830 } __SSP1CON2bits_t;
12832 extern __at(0x0FC5) volatile __SSP1CON2bits_t SSP1CON2bits;
12834 #define _SEN 0x01
12835 #define _RSEN 0x02
12836 #define _ADMSK1 0x02
12837 #define _PEN 0x04
12838 #define _ADMSK2 0x04
12839 #define _RCEN 0x08
12840 #define _ADMSK3 0x08
12841 #define _ACKEN 0x10
12842 #define _ADMSK4 0x10
12843 #define _ACKDT 0x20
12844 #define _ADMSK5 0x20
12845 #define _ACKSTAT 0x40
12846 #define _GCEN 0x80
12848 //==============================================================================
12851 //==============================================================================
12852 // SSP1CON1 Bits
12854 extern __at(0x0FC6) __sfr SSP1CON1;
12856 typedef union
12858 struct
12860 unsigned SSPM0 : 1;
12861 unsigned SSPM1 : 1;
12862 unsigned SSPM2 : 1;
12863 unsigned SSPM3 : 1;
12864 unsigned CKP : 1;
12865 unsigned SSPEN : 1;
12866 unsigned SSPOV : 1;
12867 unsigned WCOL : 1;
12870 struct
12872 unsigned SSPM : 4;
12873 unsigned : 4;
12875 } __SSP1CON1bits_t;
12877 extern __at(0x0FC6) volatile __SSP1CON1bits_t SSP1CON1bits;
12879 #define _SSPM0 0x01
12880 #define _SSPM1 0x02
12881 #define _SSPM2 0x04
12882 #define _SSPM3 0x08
12883 #define _CKP 0x10
12884 #define _SSPEN 0x20
12885 #define _SSPOV 0x40
12886 #define _WCOL 0x80
12888 //==============================================================================
12891 //==============================================================================
12892 // SSP1STAT Bits
12894 extern __at(0x0FC7) __sfr SSP1STAT;
12896 typedef union
12898 struct
12900 unsigned BF : 1;
12901 unsigned UA : 1;
12902 unsigned R_NOT_W : 1;
12903 unsigned S : 1;
12904 unsigned P : 1;
12905 unsigned D_NOT_A : 1;
12906 unsigned CKE : 1;
12907 unsigned SMP : 1;
12910 struct
12912 unsigned : 1;
12913 unsigned : 1;
12914 unsigned R_W : 1;
12915 unsigned I2C_START : 1;
12916 unsigned I2C_STOP : 1;
12917 unsigned D_A : 1;
12918 unsigned : 1;
12919 unsigned : 1;
12922 struct
12924 unsigned : 1;
12925 unsigned : 1;
12926 unsigned NOT_W : 1;
12927 unsigned : 1;
12928 unsigned : 1;
12929 unsigned NOT_A : 1;
12930 unsigned : 1;
12931 unsigned : 1;
12934 struct
12936 unsigned : 1;
12937 unsigned : 1;
12938 unsigned NOT_WRITE : 1;
12939 unsigned : 1;
12940 unsigned : 1;
12941 unsigned NOT_ADDRESS : 1;
12942 unsigned : 1;
12943 unsigned : 1;
12946 struct
12948 unsigned : 1;
12949 unsigned : 1;
12950 unsigned READ_WRITE : 1;
12951 unsigned : 1;
12952 unsigned : 1;
12953 unsigned DATA_ADDRESS : 1;
12954 unsigned : 1;
12955 unsigned : 1;
12958 struct
12960 unsigned : 1;
12961 unsigned : 1;
12962 unsigned I2C_READ : 1;
12963 unsigned : 1;
12964 unsigned : 1;
12965 unsigned I2C_DAT : 1;
12966 unsigned : 1;
12967 unsigned : 1;
12969 } __SSP1STATbits_t;
12971 extern __at(0x0FC7) volatile __SSP1STATbits_t SSP1STATbits;
12973 #define _BF 0x01
12974 #define _UA 0x02
12975 #define _R_NOT_W 0x04
12976 #define _R_W 0x04
12977 #define _NOT_W 0x04
12978 #define _NOT_WRITE 0x04
12979 #define _READ_WRITE 0x04
12980 #define _I2C_READ 0x04
12981 #define _S 0x08
12982 #define _I2C_START 0x08
12983 #define _P 0x10
12984 #define _I2C_STOP 0x10
12985 #define _D_NOT_A 0x20
12986 #define _D_A 0x20
12987 #define _NOT_A 0x20
12988 #define _NOT_ADDRESS 0x20
12989 #define _DATA_ADDRESS 0x20
12990 #define _I2C_DAT 0x20
12991 #define _CKE 0x40
12992 #define _SMP 0x80
12994 //==============================================================================
12996 extern __at(0x0FC8) __sfr SSP1ADD;
12997 extern __at(0x0FC9) __sfr SSP1BUF;
12999 //==============================================================================
13000 // T2CON Bits
13002 extern __at(0x0FCA) __sfr T2CON;
13004 typedef union
13006 struct
13008 unsigned T2CKPS0 : 1;
13009 unsigned T2CKPS1 : 1;
13010 unsigned TMR2ON : 1;
13011 unsigned T2OUTPS0 : 1;
13012 unsigned T2OUTPS1 : 1;
13013 unsigned T2OUTPS2 : 1;
13014 unsigned T2OUTPS3 : 1;
13015 unsigned : 1;
13018 struct
13020 unsigned T2CKPS : 2;
13021 unsigned : 6;
13024 struct
13026 unsigned : 3;
13027 unsigned T2OUTPS : 4;
13028 unsigned : 1;
13030 } __T2CONbits_t;
13032 extern __at(0x0FCA) volatile __T2CONbits_t T2CONbits;
13034 #define _T2CKPS0 0x01
13035 #define _T2CKPS1 0x02
13036 #define _TMR2ON 0x04
13037 #define _T2OUTPS0 0x08
13038 #define _T2OUTPS1 0x10
13039 #define _T2OUTPS2 0x20
13040 #define _T2OUTPS3 0x40
13042 //==============================================================================
13044 extern __at(0x0FCB) __sfr PR2;
13045 extern __at(0x0FCC) __sfr TMR2;
13047 //==============================================================================
13048 // T1CON Bits
13050 extern __at(0x0FCD) __sfr T1CON;
13052 typedef union
13054 struct
13056 unsigned TMR1ON : 1;
13057 unsigned RD16 : 1;
13058 unsigned NOT_T1SYNC : 1;
13059 unsigned SOSCEN : 1;
13060 unsigned T1CKPS0 : 1;
13061 unsigned T1CKPS1 : 1;
13062 unsigned TMR1CS0 : 1;
13063 unsigned TMR1CS1 : 1;
13066 struct
13068 unsigned : 4;
13069 unsigned T1CKPS : 2;
13070 unsigned : 2;
13073 struct
13075 unsigned : 6;
13076 unsigned TMR1CS : 2;
13078 } __T1CONbits_t;
13080 extern __at(0x0FCD) volatile __T1CONbits_t T1CONbits;
13082 #define _TMR1ON 0x01
13083 #define _RD16 0x02
13084 #define _NOT_T1SYNC 0x04
13085 #define _SOSCEN 0x08
13086 #define _T1CKPS0 0x10
13087 #define _T1CKPS1 0x20
13088 #define _TMR1CS0 0x40
13089 #define _TMR1CS1 0x80
13091 //==============================================================================
13093 extern __at(0x0FCE) __sfr TMR1;
13094 extern __at(0x0FCE) __sfr TMR1L;
13095 extern __at(0x0FCF) __sfr TMR1H;
13097 //==============================================================================
13098 // RCON Bits
13100 extern __at(0x0FD0) __sfr RCON;
13102 typedef union
13104 struct
13106 unsigned NOT_BOR : 1;
13107 unsigned NOT_POR : 1;
13108 unsigned NOT_PD : 1;
13109 unsigned NOT_TO : 1;
13110 unsigned NOT_RI : 1;
13111 unsigned NOT_CM : 1;
13112 unsigned : 1;
13113 unsigned IPEN : 1;
13116 struct
13118 unsigned BOR : 1;
13119 unsigned POR : 1;
13120 unsigned PD : 1;
13121 unsigned TO : 1;
13122 unsigned RI : 1;
13123 unsigned CM : 1;
13124 unsigned : 1;
13125 unsigned : 1;
13127 } __RCONbits_t;
13129 extern __at(0x0FD0) volatile __RCONbits_t RCONbits;
13131 #define _RCON_NOT_BOR 0x01
13132 #define _RCON_BOR 0x01
13133 #define _RCON_NOT_POR 0x02
13134 #define _RCON_POR 0x02
13135 #define _RCON_NOT_PD 0x04
13136 #define _RCON_PD 0x04
13137 #define _RCON_NOT_TO 0x08
13138 #define _RCON_TO 0x08
13139 #define _RCON_NOT_RI 0x10
13140 #define _RCON_RI 0x10
13141 #define _RCON_NOT_CM 0x20
13142 #define _RCON_CM 0x20
13143 #define _RCON_IPEN 0x80
13145 //==============================================================================
13148 //==============================================================================
13149 // IOCF Bits
13151 extern __at(0x0FD1) __sfr IOCF;
13153 typedef struct
13155 unsigned IOCF0 : 1;
13156 unsigned IOCF1 : 1;
13157 unsigned IOCF2 : 1;
13158 unsigned IOCF3 : 1;
13159 unsigned IOCF4 : 1;
13160 unsigned IOCF5 : 1;
13161 unsigned IOCF6 : 1;
13162 unsigned IOCF7 : 1;
13163 } __IOCFbits_t;
13165 extern __at(0x0FD1) volatile __IOCFbits_t IOCFbits;
13167 #define _IOCF0 0x01
13168 #define _IOCF1 0x02
13169 #define _IOCF2 0x04
13170 #define _IOCF3 0x08
13171 #define _IOCF4 0x10
13172 #define _IOCF5 0x20
13173 #define _IOCF6 0x40
13174 #define _IOCF7 0x80
13176 //==============================================================================
13179 //==============================================================================
13180 // IPR5 Bits
13182 extern __at(0x0FD2) __sfr IPR5;
13184 typedef struct
13186 unsigned TMR4IP : 1;
13187 unsigned TMR5IP : 1;
13188 unsigned TMR6IP : 1;
13189 unsigned : 1;
13190 unsigned TMR8IP : 1;
13191 unsigned ACTLOCKIP : 1;
13192 unsigned ACTORSIP : 1;
13193 unsigned : 1;
13194 } __IPR5bits_t;
13196 extern __at(0x0FD2) volatile __IPR5bits_t IPR5bits;
13198 #define _TMR4IP 0x01
13199 #define _TMR5IP 0x02
13200 #define _TMR6IP 0x04
13201 #define _TMR8IP 0x10
13202 #define _ACTLOCKIP 0x20
13203 #define _ACTORSIP 0x40
13205 //==============================================================================
13208 //==============================================================================
13209 // OSCCON Bits
13211 extern __at(0x0FD3) __sfr OSCCON;
13213 typedef union
13215 struct
13217 unsigned NOSC0 : 1;
13218 unsigned NOSC1 : 1;
13219 unsigned NOSC2 : 1;
13220 unsigned : 1;
13221 unsigned COSC0 : 1;
13222 unsigned COSC1 : 1;
13223 unsigned COSC2 : 1;
13224 unsigned IDLEN : 1;
13227 struct
13229 unsigned NOSC : 3;
13230 unsigned : 5;
13233 struct
13235 unsigned : 4;
13236 unsigned COSC : 3;
13237 unsigned : 1;
13239 } __OSCCONbits_t;
13241 extern __at(0x0FD3) volatile __OSCCONbits_t OSCCONbits;
13243 #define _NOSC0 0x01
13244 #define _NOSC1 0x02
13245 #define _NOSC2 0x04
13246 #define _COSC0 0x10
13247 #define _COSC1 0x20
13248 #define _COSC2 0x40
13249 #define _IDLEN 0x80
13251 //==============================================================================
13254 //==============================================================================
13255 // T0CON Bits
13257 extern __at(0x0FD5) __sfr T0CON;
13259 typedef union
13261 struct
13263 unsigned T0PS0 : 1;
13264 unsigned T0PS1 : 1;
13265 unsigned T0PS2 : 1;
13266 unsigned PSA : 1;
13267 unsigned T0CS0 : 1;
13268 unsigned T0CS1 : 1;
13269 unsigned T08BIT : 1;
13270 unsigned TMR0ON : 1;
13273 struct
13275 unsigned T0PS : 3;
13276 unsigned : 5;
13279 struct
13281 unsigned : 4;
13282 unsigned T0CS : 2;
13283 unsigned : 2;
13285 } __T0CONbits_t;
13287 extern __at(0x0FD5) volatile __T0CONbits_t T0CONbits;
13289 #define _T0PS0 0x01
13290 #define _T0PS1 0x02
13291 #define _T0PS2 0x04
13292 #define _PSA 0x08
13293 #define _T0CS0 0x10
13294 #define _T0CS1 0x20
13295 #define _T08BIT 0x40
13296 #define _TMR0ON 0x80
13298 //==============================================================================
13300 extern __at(0x0FD6) __sfr TMR0;
13301 extern __at(0x0FD6) __sfr TMR0L;
13302 extern __at(0x0FD7) __sfr TMR0H;
13304 //==============================================================================
13305 // STATUS Bits
13307 extern __at(0x0FD8) __sfr STATUS;
13309 typedef struct
13311 unsigned C : 1;
13312 unsigned DC : 1;
13313 unsigned Z : 1;
13314 unsigned OV : 1;
13315 unsigned N : 1;
13316 unsigned : 1;
13317 unsigned : 1;
13318 unsigned : 1;
13319 } __STATUSbits_t;
13321 extern __at(0x0FD8) volatile __STATUSbits_t STATUSbits;
13323 #define _C 0x01
13324 #define _DC 0x02
13325 #define _Z 0x04
13326 #define _OV 0x08
13327 #define _N 0x10
13329 //==============================================================================
13331 extern __at(0x0FD9) __sfr FSR2L;
13332 extern __at(0x0FDA) __sfr FSR2H;
13333 extern __at(0x0FDB) __sfr PLUSW2;
13334 extern __at(0x0FDC) __sfr PREINC2;
13335 extern __at(0x0FDD) __sfr POSTDEC2;
13336 extern __at(0x0FDE) __sfr POSTINC2;
13337 extern __at(0x0FDF) __sfr INDF2;
13338 extern __at(0x0FE0) __sfr BSR;
13339 extern __at(0x0FE1) __sfr FSR1L;
13340 extern __at(0x0FE2) __sfr FSR1H;
13341 extern __at(0x0FE3) __sfr PLUSW1;
13342 extern __at(0x0FE4) __sfr PREINC1;
13343 extern __at(0x0FE5) __sfr POSTDEC1;
13344 extern __at(0x0FE6) __sfr POSTINC1;
13345 extern __at(0x0FE7) __sfr INDF1;
13346 extern __at(0x0FE8) __sfr WREG;
13347 extern __at(0x0FE9) __sfr FSR0L;
13348 extern __at(0x0FEA) __sfr FSR0H;
13349 extern __at(0x0FEB) __sfr PLUSW0;
13350 extern __at(0x0FEC) __sfr PREINC0;
13351 extern __at(0x0FED) __sfr POSTDEC0;
13352 extern __at(0x0FEE) __sfr POSTINC0;
13353 extern __at(0x0FEF) __sfr INDF0;
13355 //==============================================================================
13356 // INTCON3 Bits
13358 extern __at(0x0FF0) __sfr INTCON3;
13360 typedef union
13362 struct
13364 unsigned INT1IF : 1;
13365 unsigned INT2IF : 1;
13366 unsigned INT3IF : 1;
13367 unsigned INT1IE : 1;
13368 unsigned INT2IE : 1;
13369 unsigned INT3IE : 1;
13370 unsigned INT1IP : 1;
13371 unsigned INT2IP : 1;
13374 struct
13376 unsigned INT1F : 1;
13377 unsigned INT2F : 1;
13378 unsigned INT3F : 1;
13379 unsigned INT1E : 1;
13380 unsigned INT2E : 1;
13381 unsigned INT3E : 1;
13382 unsigned INT1P : 1;
13383 unsigned INT2P : 1;
13385 } __INTCON3bits_t;
13387 extern __at(0x0FF0) volatile __INTCON3bits_t INTCON3bits;
13389 #define _INT1IF 0x01
13390 #define _INT1F 0x01
13391 #define _INT2IF 0x02
13392 #define _INT2F 0x02
13393 #define _INT3IF 0x04
13394 #define _INT3F 0x04
13395 #define _INT1IE 0x08
13396 #define _INT1E 0x08
13397 #define _INT2IE 0x10
13398 #define _INT2E 0x10
13399 #define _INT3IE 0x20
13400 #define _INT3E 0x20
13401 #define _INT1IP 0x40
13402 #define _INT1P 0x40
13403 #define _INT2IP 0x80
13404 #define _INT2P 0x80
13406 //==============================================================================
13409 //==============================================================================
13410 // INTCON2 Bits
13412 extern __at(0x0FF1) __sfr INTCON2;
13414 typedef union
13416 struct
13418 unsigned IOCIP : 1;
13419 unsigned INT3IP : 1;
13420 unsigned TMR0IP : 1;
13421 unsigned INTEDG3 : 1;
13422 unsigned INTEDG2 : 1;
13423 unsigned INTEDG1 : 1;
13424 unsigned INTEDG0 : 1;
13425 unsigned NOT_RBPU : 1;
13428 struct
13430 unsigned : 1;
13431 unsigned INT3P : 1;
13432 unsigned T0IP : 1;
13433 unsigned : 1;
13434 unsigned : 1;
13435 unsigned : 1;
13436 unsigned : 1;
13437 unsigned RBPU : 1;
13439 } __INTCON2bits_t;
13441 extern __at(0x0FF1) volatile __INTCON2bits_t INTCON2bits;
13443 #define _IOCIP 0x01
13444 #define _INT3IP 0x02
13445 #define _INT3P 0x02
13446 #define _TMR0IP 0x04
13447 #define _T0IP 0x04
13448 #define _INTEDG3 0x08
13449 #define _INTEDG2 0x10
13450 #define _INTEDG1 0x20
13451 #define _INTEDG0 0x40
13452 #define _NOT_RBPU 0x80
13453 #define _RBPU 0x80
13455 //==============================================================================
13458 //==============================================================================
13459 // INTCON Bits
13461 extern __at(0x0FF2) __sfr INTCON;
13463 typedef union
13465 struct
13467 unsigned IOCIF : 1;
13468 unsigned INT0IF : 1;
13469 unsigned TMR0IF : 1;
13470 unsigned IOCIE : 1;
13471 unsigned INT0IE : 1;
13472 unsigned TMR0IE : 1;
13473 unsigned PEIE_GIEL : 1;
13474 unsigned GIE_GIEH : 1;
13477 struct
13479 unsigned : 1;
13480 unsigned INT0F : 1;
13481 unsigned T0IF : 1;
13482 unsigned : 1;
13483 unsigned INT0E : 1;
13484 unsigned T0IE : 1;
13485 unsigned PEIE : 1;
13486 unsigned GIE : 1;
13489 struct
13491 unsigned : 1;
13492 unsigned : 1;
13493 unsigned : 1;
13494 unsigned : 1;
13495 unsigned : 1;
13496 unsigned : 1;
13497 unsigned GIEL : 1;
13498 unsigned GIEH : 1;
13500 } __INTCONbits_t;
13502 extern __at(0x0FF2) volatile __INTCONbits_t INTCONbits;
13504 #define _IOCIF 0x01
13505 #define _INT0IF 0x02
13506 #define _INT0F 0x02
13507 #define _TMR0IF 0x04
13508 #define _T0IF 0x04
13509 #define _IOCIE 0x08
13510 #define _INT0IE 0x10
13511 #define _INT0E 0x10
13512 #define _TMR0IE 0x20
13513 #define _T0IE 0x20
13514 #define _PEIE_GIEL 0x40
13515 #define _PEIE 0x40
13516 #define _GIEL 0x40
13517 #define _GIE_GIEH 0x80
13518 #define _GIE 0x80
13519 #define _GIEH 0x80
13521 //==============================================================================
13523 extern __at(0x0FF3) __sfr PROD;
13524 extern __at(0x0FF3) __sfr PRODL;
13525 extern __at(0x0FF4) __sfr PRODH;
13526 extern __at(0x0FF5) __sfr TABLAT;
13527 extern __at(0x0FF6) __sfr TBLPTR;
13528 extern __at(0x0FF6) __sfr TBLPTRL;
13529 extern __at(0x0FF7) __sfr TBLPTRH;
13530 extern __at(0x0FF8) __sfr TBLPTRU;
13531 extern __at(0x0FF9) __sfr PC;
13532 extern __at(0x0FF9) __sfr PCL;
13533 extern __at(0x0FFA) __sfr PCLATH;
13534 extern __at(0x0FFB) __sfr PCLATU;
13536 //==============================================================================
13537 // STKPTR Bits
13539 extern __at(0x0FFC) __sfr STKPTR;
13541 typedef union
13543 struct
13545 unsigned SP0 : 1;
13546 unsigned SP1 : 1;
13547 unsigned SP2 : 1;
13548 unsigned SP3 : 1;
13549 unsigned SP4 : 1;
13550 unsigned : 1;
13551 unsigned STKUNF : 1;
13552 unsigned STKFUL : 1;
13555 struct
13557 unsigned : 1;
13558 unsigned : 1;
13559 unsigned : 1;
13560 unsigned : 1;
13561 unsigned : 1;
13562 unsigned : 1;
13563 unsigned : 1;
13564 unsigned STKOVF : 1;
13567 struct
13569 unsigned SP : 5;
13570 unsigned : 3;
13572 } __STKPTRbits_t;
13574 extern __at(0x0FFC) volatile __STKPTRbits_t STKPTRbits;
13576 #define _SP0 0x01
13577 #define _SP1 0x02
13578 #define _SP2 0x04
13579 #define _SP3 0x08
13580 #define _SP4 0x10
13581 #define _STKUNF 0x40
13582 #define _STKFUL 0x80
13583 #define _STKOVF 0x80
13585 //==============================================================================
13587 extern __at(0x0FFD) __sfr TOS;
13588 extern __at(0x0FFD) __sfr TOSL;
13589 extern __at(0x0FFE) __sfr TOSH;
13590 extern __at(0x0FFF) __sfr TOSU;
13592 //==============================================================================
13594 // Configuration Addresses
13596 //==============================================================================
13598 #define __CONFIG1L 0x017FF0
13599 #define __CONFIG1H 0x017FF1
13600 #define __CONFIG2L 0x017FF2
13601 #define __CONFIG2H 0x017FF3
13602 #define __CONFIG3L 0x017FF4
13603 #define __CONFIG3H 0x017FF5
13604 #define __CONFIG4L 0x017FF6
13605 #define __CONFIG4H 0x017FF7
13606 #define __CONFIG5L 0x017FF8
13607 #define __CONFIG5H 0x017FF9
13608 #define __CONFIG6L 0x017FFA
13609 #define __CONFIG6H 0x017FFB
13610 #define __CONFIG7L 0x017FFC
13611 #define __CONFIG7H 0x017FFD
13612 #define __CONFIG8L 0x017FFE
13613 #define __CONFIG8H 0x017FFF
13615 //==============================================================================
13617 #endif // #ifndef __PIC18F66J99_H__