Hackfix and re-enable strtoull and wcstoull, see bug #3798.
[sdcc.git] / sdcc / device / non-free / include / pic16 / pic18f97j94.h
blobe08b801d71e7ad985265e1392d1b53b27a34e936
1 /*
2 * This declarations of the PIC18F97J94 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:41 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 __PIC18F97J94_H__
26 #define __PIC18F97J94_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 // MEMCON Bits
6490 extern __at(0x0EE3) __sfr MEMCON;
6492 typedef union
6494 struct
6496 unsigned WM0 : 1;
6497 unsigned WM1 : 1;
6498 unsigned : 1;
6499 unsigned : 1;
6500 unsigned WAIT0 : 1;
6501 unsigned WAIT1 : 1;
6502 unsigned : 1;
6503 unsigned EBDIS : 1;
6506 struct
6508 unsigned WM : 2;
6509 unsigned : 6;
6512 struct
6514 unsigned : 4;
6515 unsigned WAIT : 2;
6516 unsigned : 2;
6518 } __MEMCONbits_t;
6520 extern __at(0x0EE3) volatile __MEMCONbits_t MEMCONbits;
6522 #define _MEMCON_WM0 0x01
6523 #define _MEMCON_WM1 0x02
6524 #define _MEMCON_WAIT0 0x10
6525 #define _MEMCON_WAIT1 0x20
6526 #define _MEMCON_EBDIS 0x80
6528 //==============================================================================
6531 //==============================================================================
6532 // PORTL Bits
6534 extern __at(0x0EE4) __sfr PORTL;
6536 typedef struct
6538 unsigned RL0 : 1;
6539 unsigned RL1 : 1;
6540 unsigned RL2 : 1;
6541 unsigned RL3 : 1;
6542 unsigned RL4 : 1;
6543 unsigned RL5 : 1;
6544 unsigned RL6 : 1;
6545 unsigned RL7 : 1;
6546 } __PORTLbits_t;
6548 extern __at(0x0EE4) volatile __PORTLbits_t PORTLbits;
6550 #define _RL0 0x01
6551 #define _RL1 0x02
6552 #define _RL2 0x04
6553 #define _RL3 0x08
6554 #define _RL4 0x10
6555 #define _RL5 0x20
6556 #define _RL6 0x40
6557 #define _RL7 0x80
6559 //==============================================================================
6562 //==============================================================================
6563 // LATL Bits
6565 extern __at(0x0EE5) __sfr LATL;
6567 typedef struct
6569 unsigned LATL0 : 1;
6570 unsigned LATL1 : 1;
6571 unsigned LATL2 : 1;
6572 unsigned LATL3 : 1;
6573 unsigned LATL4 : 1;
6574 unsigned LATL5 : 1;
6575 unsigned LATL6 : 1;
6576 unsigned LATL7 : 1;
6577 } __LATLbits_t;
6579 extern __at(0x0EE5) volatile __LATLbits_t LATLbits;
6581 #define _LATL0 0x01
6582 #define _LATL1 0x02
6583 #define _LATL2 0x04
6584 #define _LATL3 0x08
6585 #define _LATL4 0x10
6586 #define _LATL5 0x20
6587 #define _LATL6 0x40
6588 #define _LATL7 0x80
6590 //==============================================================================
6593 //==============================================================================
6594 // TRISL Bits
6596 extern __at(0x0EE6) __sfr TRISL;
6598 typedef struct
6600 unsigned TRISL0 : 1;
6601 unsigned TRISL1 : 1;
6602 unsigned TRISL2 : 1;
6603 unsigned TRISL3 : 1;
6604 unsigned TRISL4 : 1;
6605 unsigned TRISL5 : 1;
6606 unsigned TRISL6 : 1;
6607 unsigned TRISL7 : 1;
6608 } __TRISLbits_t;
6610 extern __at(0x0EE6) volatile __TRISLbits_t TRISLbits;
6612 #define _TRISL0 0x01
6613 #define _TRISL1 0x02
6614 #define _TRISL2 0x04
6615 #define _TRISL3 0x08
6616 #define _TRISL4 0x10
6617 #define _TRISL5 0x20
6618 #define _TRISL6 0x40
6619 #define _TRISL7 0x80
6621 //==============================================================================
6624 //==============================================================================
6625 // PORTK Bits
6627 extern __at(0x0EE7) __sfr PORTK;
6629 typedef struct
6631 unsigned RK0 : 1;
6632 unsigned RK1 : 1;
6633 unsigned RK2 : 1;
6634 unsigned RK3 : 1;
6635 unsigned RK4 : 1;
6636 unsigned RK5 : 1;
6637 unsigned RK6 : 1;
6638 unsigned RK7 : 1;
6639 } __PORTKbits_t;
6641 extern __at(0x0EE7) volatile __PORTKbits_t PORTKbits;
6643 #define _RK0 0x01
6644 #define _RK1 0x02
6645 #define _RK2 0x04
6646 #define _RK3 0x08
6647 #define _RK4 0x10
6648 #define _RK5 0x20
6649 #define _RK6 0x40
6650 #define _RK7 0x80
6652 //==============================================================================
6655 //==============================================================================
6656 // LATK Bits
6658 extern __at(0x0EE8) __sfr LATK;
6660 typedef struct
6662 unsigned LATK0 : 1;
6663 unsigned LATK1 : 1;
6664 unsigned LATK2 : 1;
6665 unsigned LATK3 : 1;
6666 unsigned LATK4 : 1;
6667 unsigned LATK5 : 1;
6668 unsigned LATK6 : 1;
6669 unsigned LATK7 : 1;
6670 } __LATKbits_t;
6672 extern __at(0x0EE8) volatile __LATKbits_t LATKbits;
6674 #define _LATK0 0x01
6675 #define _LATK1 0x02
6676 #define _LATK2 0x04
6677 #define _LATK3 0x08
6678 #define _LATK4 0x10
6679 #define _LATK5 0x20
6680 #define _LATK6 0x40
6681 #define _LATK7 0x80
6683 //==============================================================================
6686 //==============================================================================
6687 // TRISK Bits
6689 extern __at(0x0EE9) __sfr TRISK;
6691 typedef struct
6693 unsigned TRISK0 : 1;
6694 unsigned TRISK1 : 1;
6695 unsigned TRISK2 : 1;
6696 unsigned TRISK3 : 1;
6697 unsigned TRISK4 : 1;
6698 unsigned TRISK5 : 1;
6699 unsigned TRISK6 : 1;
6700 unsigned TRISK7 : 1;
6701 } __TRISKbits_t;
6703 extern __at(0x0EE9) volatile __TRISKbits_t TRISKbits;
6705 #define _TRISK0 0x01
6706 #define _TRISK1 0x02
6707 #define _TRISK2 0x04
6708 #define _TRISK3 0x08
6709 #define _TRISK4 0x10
6710 #define _TRISK5 0x20
6711 #define _TRISK6 0x40
6712 #define _TRISK7 0x80
6714 //==============================================================================
6717 //==============================================================================
6718 // ODCON2 Bits
6720 extern __at(0x0EEA) __sfr ODCON2;
6722 typedef struct
6724 unsigned ECCP3OD : 1;
6725 unsigned CCP4OD : 1;
6726 unsigned CCP5OD : 1;
6727 unsigned CCP6OD : 1;
6728 unsigned CCP7OD : 1;
6729 unsigned CCP8OD : 1;
6730 unsigned CCP9OD : 1;
6731 unsigned CCP10OD : 1;
6732 } __ODCON2bits_t;
6734 extern __at(0x0EEA) volatile __ODCON2bits_t ODCON2bits;
6736 #define _ECCP3OD 0x01
6737 #define _CCP4OD 0x02
6738 #define _CCP5OD 0x04
6739 #define _CCP6OD 0x08
6740 #define _CCP7OD 0x10
6741 #define _CCP8OD 0x20
6742 #define _CCP9OD 0x40
6743 #define _CCP10OD 0x80
6745 //==============================================================================
6748 //==============================================================================
6749 // ODCON1 Bits
6751 extern __at(0x0EEB) __sfr ODCON1;
6753 typedef struct
6755 unsigned SSP1OD : 1;
6756 unsigned SSP2OD : 1;
6757 unsigned USART1OD : 1;
6758 unsigned USART2OD : 1;
6759 unsigned USART3OD : 1;
6760 unsigned USART4OD : 1;
6761 unsigned ECCP1OD : 1;
6762 unsigned ECCP2OD : 1;
6763 } __ODCON1bits_t;
6765 extern __at(0x0EEB) volatile __ODCON1bits_t ODCON1bits;
6767 #define _SSP1OD 0x01
6768 #define _SSP2OD 0x02
6769 #define _USART1OD 0x04
6770 #define _USART2OD 0x08
6771 #define _USART3OD 0x10
6772 #define _USART4OD 0x20
6773 #define _ECCP1OD 0x40
6774 #define _ECCP2OD 0x80
6776 //==============================================================================
6779 //==============================================================================
6780 // MDCARL Bits
6782 extern __at(0x0EEC) __sfr MDCARL;
6784 typedef union
6786 struct
6788 unsigned MDCL0 : 1;
6789 unsigned MDCL1 : 1;
6790 unsigned MDCL2 : 1;
6791 unsigned MDCL3 : 1;
6792 unsigned : 1;
6793 unsigned MDCLSYNC : 1;
6794 unsigned MDCLPOL : 1;
6795 unsigned MDCLODIS : 1;
6798 struct
6800 unsigned MDCL : 4;
6801 unsigned : 4;
6803 } __MDCARLbits_t;
6805 extern __at(0x0EEC) volatile __MDCARLbits_t MDCARLbits;
6807 #define _MDCL0 0x01
6808 #define _MDCL1 0x02
6809 #define _MDCL2 0x04
6810 #define _MDCL3 0x08
6811 #define _MDCLSYNC 0x20
6812 #define _MDCLPOL 0x40
6813 #define _MDCLODIS 0x80
6815 //==============================================================================
6818 //==============================================================================
6819 // MDCARH Bits
6821 extern __at(0x0EED) __sfr MDCARH;
6823 typedef union
6825 struct
6827 unsigned MDCH0 : 1;
6828 unsigned MDCH1 : 1;
6829 unsigned MDCH2 : 1;
6830 unsigned MDCH3 : 1;
6831 unsigned : 1;
6832 unsigned MDCHSYNC : 1;
6833 unsigned MDCHPOL : 1;
6834 unsigned MDCHODIS : 1;
6837 struct
6839 unsigned MDCH : 4;
6840 unsigned : 4;
6842 } __MDCARHbits_t;
6844 extern __at(0x0EED) volatile __MDCARHbits_t MDCARHbits;
6846 #define _MDCH0 0x01
6847 #define _MDCH1 0x02
6848 #define _MDCH2 0x04
6849 #define _MDCH3 0x08
6850 #define _MDCHSYNC 0x20
6851 #define _MDCHPOL 0x40
6852 #define _MDCHODIS 0x80
6854 //==============================================================================
6857 //==============================================================================
6858 // MDSRC Bits
6860 extern __at(0x0EEE) __sfr MDSRC;
6862 typedef union
6864 struct
6866 unsigned MDSRC0 : 1;
6867 unsigned MDSRC1 : 1;
6868 unsigned MDSRC2 : 1;
6869 unsigned MDSRC3 : 1;
6870 unsigned : 1;
6871 unsigned : 1;
6872 unsigned : 1;
6873 unsigned MDSODIS : 1;
6876 struct
6878 unsigned MDSRC : 4;
6879 unsigned : 4;
6881 } __MDSRCbits_t;
6883 extern __at(0x0EEE) volatile __MDSRCbits_t MDSRCbits;
6885 #define _MDSRC0 0x01
6886 #define _MDSRC1 0x02
6887 #define _MDSRC2 0x04
6888 #define _MDSRC3 0x08
6889 #define _MDSODIS 0x80
6891 //==============================================================================
6894 //==============================================================================
6895 // MDCON Bits
6897 extern __at(0x0EEF) __sfr MDCON;
6899 typedef struct
6901 unsigned MDBIT : 1;
6902 unsigned : 1;
6903 unsigned : 1;
6904 unsigned MDO : 1;
6905 unsigned MDOPOL : 1;
6906 unsigned MDSLR : 1;
6907 unsigned MDOE : 1;
6908 unsigned MDEN : 1;
6909 } __MDCONbits_t;
6911 extern __at(0x0EEF) volatile __MDCONbits_t MDCONbits;
6913 #define _MDBIT 0x01
6914 #define _MDO 0x08
6915 #define _MDOPOL 0x10
6916 #define _MDSLR 0x20
6917 #define _MDOE 0x40
6918 #define _MDEN 0x80
6920 //==============================================================================
6923 //==============================================================================
6924 // PMD4 Bits
6926 extern __at(0x0EF0) __sfr PMD4;
6928 typedef struct
6930 unsigned EMBMD : 1;
6931 unsigned : 1;
6932 unsigned LVDMD : 1;
6933 unsigned IOCMD : 1;
6934 unsigned USBMD : 1;
6935 unsigned CMP3MD : 1;
6936 unsigned CMP2MD : 1;
6937 unsigned CMP1MD : 1;
6938 } __PMD4bits_t;
6940 extern __at(0x0EF0) volatile __PMD4bits_t PMD4bits;
6942 #define _EMBMD 0x01
6943 #define _LVDMD 0x04
6944 #define _IOCMD 0x08
6945 #define _USBMD 0x10
6946 #define _CMP3MD 0x20
6947 #define _CMP2MD 0x40
6948 #define _CMP1MD 0x80
6950 //==============================================================================
6953 //==============================================================================
6954 // PMD3 Bits
6956 extern __at(0x0EF1) __sfr PMD3;
6958 typedef union
6960 struct
6962 unsigned REFO2MD : 1;
6963 unsigned REFO1MD : 1;
6964 unsigned PSPMD : 1;
6965 unsigned LCDMD : 1;
6966 unsigned RTCCMD : 1;
6967 unsigned ADCMD : 1;
6968 unsigned CTMUMD : 1;
6969 unsigned MODMD : 1;
6972 struct
6974 unsigned : 1;
6975 unsigned : 1;
6976 unsigned : 1;
6977 unsigned : 1;
6978 unsigned : 1;
6979 unsigned : 1;
6980 unsigned : 1;
6981 unsigned TXMMD : 1;
6983 } __PMD3bits_t;
6985 extern __at(0x0EF1) volatile __PMD3bits_t PMD3bits;
6987 #define _REFO2MD 0x01
6988 #define _REFO1MD 0x02
6989 #define _PSPMD 0x04
6990 #define _LCDMD 0x08
6991 #define _RTCCMD 0x10
6992 #define _ADCMD 0x20
6993 #define _CTMUMD 0x40
6994 #define _MODMD 0x80
6995 #define _TXMMD 0x80
6997 //==============================================================================
7000 //==============================================================================
7001 // PMD2 Bits
7003 extern __at(0x0EF2) __sfr PMD2;
7005 typedef struct
7007 unsigned TMR0MD : 1;
7008 unsigned TMR1MD : 1;
7009 unsigned TMR2MD : 1;
7010 unsigned TMR3MD : 1;
7011 unsigned TMR4MD : 1;
7012 unsigned TMR5MD : 1;
7013 unsigned TMR6MD : 1;
7014 unsigned TMR8MD : 1;
7015 } __PMD2bits_t;
7017 extern __at(0x0EF2) volatile __PMD2bits_t PMD2bits;
7019 #define _TMR0MD 0x01
7020 #define _TMR1MD 0x02
7021 #define _TMR2MD 0x04
7022 #define _TMR3MD 0x08
7023 #define _TMR4MD 0x10
7024 #define _TMR5MD 0x20
7025 #define _TMR6MD 0x40
7026 #define _TMR8MD 0x80
7028 //==============================================================================
7031 //==============================================================================
7032 // PMD1 Bits
7034 extern __at(0x0EF3) __sfr PMD1;
7036 typedef struct
7038 unsigned SSP1MD : 1;
7039 unsigned SSP2MD : 1;
7040 unsigned UART1MD : 1;
7041 unsigned UART2MD : 1;
7042 unsigned UART3MD : 1;
7043 unsigned UART4MD : 1;
7044 unsigned ECCP1MD : 1;
7045 unsigned ECCP2MD : 1;
7046 } __PMD1bits_t;
7048 extern __at(0x0EF3) volatile __PMD1bits_t PMD1bits;
7050 #define _SSP1MD 0x01
7051 #define _SSP2MD 0x02
7052 #define _UART1MD 0x04
7053 #define _UART2MD 0x08
7054 #define _UART3MD 0x10
7055 #define _UART4MD 0x20
7056 #define _ECCP1MD 0x40
7057 #define _ECCP2MD 0x80
7059 //==============================================================================
7062 //==============================================================================
7063 // PMD0 Bits
7065 extern __at(0x0EF4) __sfr PMD0;
7067 typedef struct
7069 unsigned ECCP3MD : 1;
7070 unsigned CCP4MD : 1;
7071 unsigned CCP5MD : 1;
7072 unsigned CCP6MD : 1;
7073 unsigned CCP7MD : 1;
7074 unsigned CCP8MD : 1;
7075 unsigned CCP9MD : 1;
7076 unsigned CCP10MD : 1;
7077 } __PMD0bits_t;
7079 extern __at(0x0EF4) volatile __PMD0bits_t PMD0bits;
7081 #define _ECCP3MD 0x01
7082 #define _CCP4MD 0x02
7083 #define _CCP5MD 0x04
7084 #define _CCP6MD 0x08
7085 #define _CCP7MD 0x10
7086 #define _CCP8MD 0x20
7087 #define _CCP9MD 0x40
7088 #define _CCP10MD 0x80
7090 //==============================================================================
7093 //==============================================================================
7094 // CTMUCON4 Bits
7096 extern __at(0x0EF5) __sfr CTMUCON4;
7098 typedef union
7100 struct
7102 unsigned EDG1STAT : 1;
7103 unsigned EDG2STAT : 1;
7104 unsigned EDG1SEL0 : 1;
7105 unsigned EDG1SEL1 : 1;
7106 unsigned EDG1SEL2 : 1;
7107 unsigned EDG1SEL3 : 1;
7108 unsigned EDG1POL : 1;
7109 unsigned EDG1EN : 1;
7112 struct
7114 unsigned : 2;
7115 unsigned EDG1SEL : 4;
7116 unsigned : 2;
7118 } __CTMUCON4bits_t;
7120 extern __at(0x0EF5) volatile __CTMUCON4bits_t CTMUCON4bits;
7122 #define _EDG1STAT 0x01
7123 #define _EDG2STAT 0x02
7124 #define _EDG1SEL0 0x04
7125 #define _EDG1SEL1 0x08
7126 #define _EDG1SEL2 0x10
7127 #define _EDG1SEL3 0x20
7128 #define _EDG1POL 0x40
7129 #define _EDG1EN 0x80
7131 //==============================================================================
7134 //==============================================================================
7135 // CTMUCON3 Bits
7137 extern __at(0x0EF6) __sfr CTMUCON3;
7139 typedef union
7141 struct
7143 unsigned : 1;
7144 unsigned : 1;
7145 unsigned EDG2SEL0 : 1;
7146 unsigned EDG2SEL1 : 1;
7147 unsigned EDG2SEL2 : 1;
7148 unsigned EDG2SEL3 : 1;
7149 unsigned EDG2POL : 1;
7150 unsigned EDG2EN : 1;
7153 struct
7155 unsigned : 2;
7156 unsigned EDG2SEL : 4;
7157 unsigned : 2;
7159 } __CTMUCON3bits_t;
7161 extern __at(0x0EF6) volatile __CTMUCON3bits_t CTMUCON3bits;
7163 #define _EDG2SEL0 0x04
7164 #define _EDG2SEL1 0x08
7165 #define _EDG2SEL2 0x10
7166 #define _EDG2SEL3 0x20
7167 #define _EDG2POL 0x40
7168 #define _EDG2EN 0x80
7170 //==============================================================================
7173 //==============================================================================
7174 // CTMUCON2 Bits
7176 extern __at(0x0EF7) __sfr CTMUCON2;
7178 typedef union
7180 struct
7182 unsigned IRNG0 : 1;
7183 unsigned IRNG1 : 1;
7184 unsigned ITRIM0 : 1;
7185 unsigned ITRIM1 : 1;
7186 unsigned ITRIM2 : 1;
7187 unsigned ITRIM3 : 1;
7188 unsigned ITRIM4 : 1;
7189 unsigned ITRIM5 : 1;
7192 struct
7194 unsigned IRNG : 2;
7195 unsigned : 6;
7198 struct
7200 unsigned : 2;
7201 unsigned ITRIM : 6;
7203 } __CTMUCON2bits_t;
7205 extern __at(0x0EF7) volatile __CTMUCON2bits_t CTMUCON2bits;
7207 #define _IRNG0 0x01
7208 #define _IRNG1 0x02
7209 #define _ITRIM0 0x04
7210 #define _ITRIM1 0x08
7211 #define _ITRIM2 0x10
7212 #define _ITRIM3 0x20
7213 #define _ITRIM4 0x40
7214 #define _ITRIM5 0x80
7216 //==============================================================================
7219 //==============================================================================
7220 // CTMUCON1 Bits
7222 extern __at(0x0EF8) __sfr CTMUCON1;
7224 typedef struct
7226 unsigned CTTRIG : 1;
7227 unsigned IDISSEN : 1;
7228 unsigned EDGSEQEN : 1;
7229 unsigned EDGEN : 1;
7230 unsigned TGEN : 1;
7231 unsigned CTMUSIDL : 1;
7232 unsigned : 1;
7233 unsigned CTMUEN : 1;
7234 } __CTMUCON1bits_t;
7236 extern __at(0x0EF8) volatile __CTMUCON1bits_t CTMUCON1bits;
7238 #define _CTTRIG 0x01
7239 #define _IDISSEN 0x02
7240 #define _EDGSEQEN 0x04
7241 #define _EDGEN 0x08
7242 #define _TGEN 0x10
7243 #define _CTMUSIDL 0x20
7244 #define _CTMUEN 0x80
7246 //==============================================================================
7248 extern __at(0x0EF9) __sfr TXREG4;
7249 extern __at(0x0EFA) __sfr RCREG4;
7251 //==============================================================================
7252 // SPBRG4 Bits
7254 extern __at(0x0EFB) __sfr SPBRG4;
7256 typedef struct
7258 unsigned BRG0 : 1;
7259 unsigned BRG1 : 1;
7260 unsigned BRG2 : 1;
7261 unsigned BRG3 : 1;
7262 unsigned BRG4 : 1;
7263 unsigned BRG5 : 1;
7264 unsigned BRG6 : 1;
7265 unsigned BRG7 : 1;
7266 } __SPBRG4bits_t;
7268 extern __at(0x0EFB) volatile __SPBRG4bits_t SPBRG4bits;
7270 #define _SPBRG4_BRG0 0x01
7271 #define _SPBRG4_BRG1 0x02
7272 #define _SPBRG4_BRG2 0x04
7273 #define _SPBRG4_BRG3 0x08
7274 #define _SPBRG4_BRG4 0x10
7275 #define _SPBRG4_BRG5 0x20
7276 #define _SPBRG4_BRG6 0x40
7277 #define _SPBRG4_BRG7 0x80
7279 //==============================================================================
7282 //==============================================================================
7283 // SPBRGH4 Bits
7285 extern __at(0x0EFC) __sfr SPBRGH4;
7287 typedef struct
7289 unsigned BRG8 : 1;
7290 unsigned BRG9 : 1;
7291 unsigned BRG10 : 1;
7292 unsigned BRG11 : 1;
7293 unsigned BRG12 : 1;
7294 unsigned BRG13 : 1;
7295 unsigned BRG14 : 1;
7296 unsigned BRG15 : 1;
7297 } __SPBRGH4bits_t;
7299 extern __at(0x0EFC) volatile __SPBRGH4bits_t SPBRGH4bits;
7301 #define _SPBRGH4_BRG8 0x01
7302 #define _SPBRGH4_BRG9 0x02
7303 #define _SPBRGH4_BRG10 0x04
7304 #define _SPBRGH4_BRG11 0x08
7305 #define _SPBRGH4_BRG12 0x10
7306 #define _SPBRGH4_BRG13 0x20
7307 #define _SPBRGH4_BRG14 0x40
7308 #define _SPBRGH4_BRG15 0x80
7310 //==============================================================================
7313 //==============================================================================
7314 // BAUDCON4 Bits
7316 extern __at(0x0EFD) __sfr BAUDCON4;
7318 typedef struct
7320 unsigned ABDEN : 1;
7321 unsigned WUE : 1;
7322 unsigned IREN : 1;
7323 unsigned BRG16 : 1;
7324 unsigned TXCKP : 1;
7325 unsigned RXDTP : 1;
7326 unsigned RCIDL : 1;
7327 unsigned ABDOVF : 1;
7328 } __BAUDCON4bits_t;
7330 extern __at(0x0EFD) volatile __BAUDCON4bits_t BAUDCON4bits;
7332 #define _BAUDCON4_ABDEN 0x01
7333 #define _BAUDCON4_WUE 0x02
7334 #define _BAUDCON4_IREN 0x04
7335 #define _BAUDCON4_BRG16 0x08
7336 #define _BAUDCON4_TXCKP 0x10
7337 #define _BAUDCON4_RXDTP 0x20
7338 #define _BAUDCON4_RCIDL 0x40
7339 #define _BAUDCON4_ABDOVF 0x80
7341 //==============================================================================
7344 //==============================================================================
7345 // TXSTA4 Bits
7347 extern __at(0x0EFE) __sfr TXSTA4;
7349 typedef struct
7351 unsigned TX9D : 1;
7352 unsigned TRMT : 1;
7353 unsigned BRGH : 1;
7354 unsigned SENDB : 1;
7355 unsigned SYNC : 1;
7356 unsigned TXEN : 1;
7357 unsigned TX9 : 1;
7358 unsigned CSRC : 1;
7359 } __TXSTA4bits_t;
7361 extern __at(0x0EFE) volatile __TXSTA4bits_t TXSTA4bits;
7363 #define _TXSTA4_TX9D 0x01
7364 #define _TXSTA4_TRMT 0x02
7365 #define _TXSTA4_BRGH 0x04
7366 #define _TXSTA4_SENDB 0x08
7367 #define _TXSTA4_SYNC 0x10
7368 #define _TXSTA4_TXEN 0x20
7369 #define _TXSTA4_TX9 0x40
7370 #define _TXSTA4_CSRC 0x80
7372 //==============================================================================
7375 //==============================================================================
7376 // RCSTA4 Bits
7378 extern __at(0x0EFF) __sfr RCSTA4;
7380 typedef struct
7382 unsigned RX9D : 1;
7383 unsigned OERR : 1;
7384 unsigned FERR : 1;
7385 unsigned ADDEN : 1;
7386 unsigned CREN : 1;
7387 unsigned SREN : 1;
7388 unsigned RX9 : 1;
7389 unsigned SPEN : 1;
7390 } __RCSTA4bits_t;
7392 extern __at(0x0EFF) volatile __RCSTA4bits_t RCSTA4bits;
7394 #define _RCSTA4_RX9D 0x01
7395 #define _RCSTA4_OERR 0x02
7396 #define _RCSTA4_FERR 0x04
7397 #define _RCSTA4_ADDEN 0x08
7398 #define _RCSTA4_CREN 0x10
7399 #define _RCSTA4_SREN 0x20
7400 #define _RCSTA4_RX9 0x40
7401 #define _RCSTA4_SPEN 0x80
7403 //==============================================================================
7406 //==============================================================================
7407 // DMACON2 Bits
7409 extern __at(0x0F00) __sfr DMACON2;
7411 typedef union
7413 struct
7415 unsigned INTLVL0 : 1;
7416 unsigned INTLVL1 : 1;
7417 unsigned INTLVL2 : 1;
7418 unsigned INTLVL3 : 1;
7419 unsigned DLYCYC0 : 1;
7420 unsigned DLYCYC1 : 1;
7421 unsigned DLYCYC2 : 1;
7422 unsigned DLYCYC3 : 1;
7425 struct
7427 unsigned INTLVL : 4;
7428 unsigned : 4;
7431 struct
7433 unsigned : 4;
7434 unsigned DLYCYC : 4;
7436 } __DMACON2bits_t;
7438 extern __at(0x0F00) volatile __DMACON2bits_t DMACON2bits;
7440 #define _INTLVL0 0x01
7441 #define _INTLVL1 0x02
7442 #define _INTLVL2 0x04
7443 #define _INTLVL3 0x08
7444 #define _DLYCYC0 0x10
7445 #define _DLYCYC1 0x20
7446 #define _DLYCYC2 0x40
7447 #define _DLYCYC3 0x80
7449 //==============================================================================
7452 //==============================================================================
7453 // ANCFG Bits
7455 extern __at(0x0F01) __sfr ANCFG;
7457 typedef struct
7459 unsigned VBGEN : 1;
7460 unsigned VBG2EN : 1;
7461 unsigned VBG6EN : 1;
7462 unsigned : 1;
7463 unsigned : 1;
7464 unsigned : 1;
7465 unsigned : 1;
7466 unsigned : 1;
7467 } __ANCFGbits_t;
7469 extern __at(0x0F01) volatile __ANCFGbits_t ANCFGbits;
7471 #define _VBGEN 0x01
7472 #define _VBG2EN 0x02
7473 #define _VBG6EN 0x04
7475 //==============================================================================
7477 extern __at(0x0F02) __sfr SSP2ADD;
7478 extern __at(0x0F03) __sfr SSP2BUF;
7480 //==============================================================================
7481 // T4CON Bits
7483 extern __at(0x0F04) __sfr T4CON;
7485 typedef union
7487 struct
7489 unsigned T4CKPS0 : 1;
7490 unsigned T4CKPS1 : 1;
7491 unsigned TMR4ON : 1;
7492 unsigned T4OUTPS0 : 1;
7493 unsigned T4OUTPS1 : 1;
7494 unsigned T4OUTPS2 : 1;
7495 unsigned T4OUTPS3 : 1;
7496 unsigned : 1;
7499 struct
7501 unsigned T4CKPS : 2;
7502 unsigned : 6;
7505 struct
7507 unsigned : 3;
7508 unsigned T4OUTPS : 4;
7509 unsigned : 1;
7511 } __T4CONbits_t;
7513 extern __at(0x0F04) volatile __T4CONbits_t T4CONbits;
7515 #define _T4CKPS0 0x01
7516 #define _T4CKPS1 0x02
7517 #define _TMR4ON 0x04
7518 #define _T4OUTPS0 0x08
7519 #define _T4OUTPS1 0x10
7520 #define _T4OUTPS2 0x20
7521 #define _T4OUTPS3 0x40
7523 //==============================================================================
7525 extern __at(0x0F05) __sfr PR4;
7526 extern __at(0x0F06) __sfr TMR4;
7528 //==============================================================================
7529 // CCP7CON Bits
7531 extern __at(0x0F07) __sfr CCP7CON;
7533 typedef union
7535 struct
7537 unsigned CCP7M0 : 1;
7538 unsigned CCP7M1 : 1;
7539 unsigned CCP7M2 : 1;
7540 unsigned CCP7M3 : 1;
7541 unsigned DC7B0 : 1;
7542 unsigned DC7B1 : 1;
7543 unsigned : 1;
7544 unsigned : 1;
7547 struct
7549 unsigned : 1;
7550 unsigned : 1;
7551 unsigned : 1;
7552 unsigned : 1;
7553 unsigned CCP7Y : 1;
7554 unsigned CCP7X : 1;
7555 unsigned : 1;
7556 unsigned : 1;
7559 struct
7561 unsigned CCP7M : 4;
7562 unsigned : 4;
7565 struct
7567 unsigned : 4;
7568 unsigned DC7B : 2;
7569 unsigned : 2;
7571 } __CCP7CONbits_t;
7573 extern __at(0x0F07) volatile __CCP7CONbits_t CCP7CONbits;
7575 #define _CCP7M0 0x01
7576 #define _CCP7M1 0x02
7577 #define _CCP7M2 0x04
7578 #define _CCP7M3 0x08
7579 #define _DC7B0 0x10
7580 #define _CCP7Y 0x10
7581 #define _DC7B1 0x20
7582 #define _CCP7X 0x20
7584 //==============================================================================
7586 extern __at(0x0F08) __sfr CCPR7;
7587 extern __at(0x0F08) __sfr CCPR7L;
7588 extern __at(0x0F09) __sfr CCPR7H;
7590 //==============================================================================
7591 // CCP6CON Bits
7593 extern __at(0x0F0A) __sfr CCP6CON;
7595 typedef union
7597 struct
7599 unsigned CCP6M0 : 1;
7600 unsigned CCP6M1 : 1;
7601 unsigned CCP6M2 : 1;
7602 unsigned CCP6M3 : 1;
7603 unsigned DC6B0 : 1;
7604 unsigned DC6B1 : 1;
7605 unsigned : 1;
7606 unsigned : 1;
7609 struct
7611 unsigned : 1;
7612 unsigned : 1;
7613 unsigned : 1;
7614 unsigned : 1;
7615 unsigned CCP6Y : 1;
7616 unsigned CCP6X : 1;
7617 unsigned : 1;
7618 unsigned : 1;
7621 struct
7623 unsigned CCP6M : 4;
7624 unsigned : 4;
7627 struct
7629 unsigned : 4;
7630 unsigned DC6B : 2;
7631 unsigned : 2;
7633 } __CCP6CONbits_t;
7635 extern __at(0x0F0A) volatile __CCP6CONbits_t CCP6CONbits;
7637 #define _CCP6M0 0x01
7638 #define _CCP6M1 0x02
7639 #define _CCP6M2 0x04
7640 #define _CCP6M3 0x08
7641 #define _DC6B0 0x10
7642 #define _CCP6Y 0x10
7643 #define _DC6B1 0x20
7644 #define _CCP6X 0x20
7646 //==============================================================================
7648 extern __at(0x0F0B) __sfr CCPR6;
7649 extern __at(0x0F0B) __sfr CCPR6L;
7650 extern __at(0x0F0C) __sfr CCPR6H;
7652 //==============================================================================
7653 // CCP5CON Bits
7655 extern __at(0x0F0D) __sfr CCP5CON;
7657 typedef union
7659 struct
7661 unsigned CCP5M0 : 1;
7662 unsigned CCP5M1 : 1;
7663 unsigned CCP5M2 : 1;
7664 unsigned CCP5M3 : 1;
7665 unsigned DC5B0 : 1;
7666 unsigned DC5B1 : 1;
7667 unsigned : 1;
7668 unsigned : 1;
7671 struct
7673 unsigned : 1;
7674 unsigned : 1;
7675 unsigned : 1;
7676 unsigned : 1;
7677 unsigned CCP5Y : 1;
7678 unsigned CCP5X : 1;
7679 unsigned : 1;
7680 unsigned : 1;
7683 struct
7685 unsigned CCP5M : 4;
7686 unsigned : 4;
7689 struct
7691 unsigned : 4;
7692 unsigned DC5B : 2;
7693 unsigned : 2;
7695 } __CCP5CONbits_t;
7697 extern __at(0x0F0D) volatile __CCP5CONbits_t CCP5CONbits;
7699 #define _CCP5M0 0x01
7700 #define _CCP5M1 0x02
7701 #define _CCP5M2 0x04
7702 #define _CCP5M3 0x08
7703 #define _DC5B0 0x10
7704 #define _CCP5Y 0x10
7705 #define _DC5B1 0x20
7706 #define _CCP5X 0x20
7708 //==============================================================================
7710 extern __at(0x0F0E) __sfr CCPR5;
7711 extern __at(0x0F0E) __sfr CCPR5L;
7712 extern __at(0x0F0F) __sfr CCPR5H;
7714 //==============================================================================
7715 // CCP4CON Bits
7717 extern __at(0x0F10) __sfr CCP4CON;
7719 typedef union
7721 struct
7723 unsigned CCP4M0 : 1;
7724 unsigned CCP4M1 : 1;
7725 unsigned CCP4M2 : 1;
7726 unsigned CCP4M3 : 1;
7727 unsigned DC4B0 : 1;
7728 unsigned DC4B1 : 1;
7729 unsigned : 1;
7730 unsigned : 1;
7733 struct
7735 unsigned : 1;
7736 unsigned : 1;
7737 unsigned : 1;
7738 unsigned : 1;
7739 unsigned CCP4Y : 1;
7740 unsigned CCP4X : 1;
7741 unsigned : 1;
7742 unsigned : 1;
7745 struct
7747 unsigned CCP4M : 4;
7748 unsigned : 4;
7751 struct
7753 unsigned : 4;
7754 unsigned DC4B : 2;
7755 unsigned : 2;
7757 } __CCP4CONbits_t;
7759 extern __at(0x0F10) volatile __CCP4CONbits_t CCP4CONbits;
7761 #define _CCP4M0 0x01
7762 #define _CCP4M1 0x02
7763 #define _CCP4M2 0x04
7764 #define _CCP4M3 0x08
7765 #define _DC4B0 0x10
7766 #define _CCP4Y 0x10
7767 #define _DC4B1 0x20
7768 #define _CCP4X 0x20
7770 //==============================================================================
7772 extern __at(0x0F11) __sfr CCPR4;
7773 extern __at(0x0F11) __sfr CCPR4L;
7774 extern __at(0x0F12) __sfr CCPR4H;
7776 //==============================================================================
7777 // T5GCON Bits
7779 extern __at(0x0F13) __sfr T5GCON;
7781 typedef union
7783 struct
7785 unsigned T5GSS0 : 1;
7786 unsigned T5GSS1 : 1;
7787 unsigned T5GVAL : 1;
7788 unsigned T5GGO_NOT_T5DONE : 1;
7789 unsigned T5GSPM : 1;
7790 unsigned T5GTM : 1;
7791 unsigned T5GPOL : 1;
7792 unsigned TMR5GE : 1;
7795 struct
7797 unsigned : 1;
7798 unsigned : 1;
7799 unsigned : 1;
7800 unsigned T5GGO : 1;
7801 unsigned : 1;
7802 unsigned : 1;
7803 unsigned : 1;
7804 unsigned : 1;
7807 struct
7809 unsigned : 1;
7810 unsigned : 1;
7811 unsigned : 1;
7812 unsigned NOT_T5DONE : 1;
7813 unsigned : 1;
7814 unsigned : 1;
7815 unsigned : 1;
7816 unsigned : 1;
7819 struct
7821 unsigned T5GSS : 2;
7822 unsigned : 6;
7824 } __T5GCONbits_t;
7826 extern __at(0x0F13) volatile __T5GCONbits_t T5GCONbits;
7828 #define _T5GSS0 0x01
7829 #define _T5GSS1 0x02
7830 #define _T5GVAL 0x04
7831 #define _T5GGO_NOT_T5DONE 0x08
7832 #define _T5GGO 0x08
7833 #define _NOT_T5DONE 0x08
7834 #define _T5GSPM 0x10
7835 #define _T5GTM 0x20
7836 #define _T5GPOL 0x40
7837 #define _TMR5GE 0x80
7839 //==============================================================================
7842 //==============================================================================
7843 // T5CON Bits
7845 extern __at(0x0F14) __sfr T5CON;
7847 typedef union
7849 struct
7851 unsigned TMR5ON : 1;
7852 unsigned RD16 : 1;
7853 unsigned NOT_T5SYNC : 1;
7854 unsigned SOSCEN : 1;
7855 unsigned T5CKPS0 : 1;
7856 unsigned T5CKPS1 : 1;
7857 unsigned TMR5CS0 : 1;
7858 unsigned TMR5CS1 : 1;
7861 struct
7863 unsigned : 4;
7864 unsigned T5CKPS : 2;
7865 unsigned : 2;
7868 struct
7870 unsigned : 6;
7871 unsigned TMR5CS : 2;
7873 } __T5CONbits_t;
7875 extern __at(0x0F14) volatile __T5CONbits_t T5CONbits;
7877 #define _T5CON_TMR5ON 0x01
7878 #define _T5CON_RD16 0x02
7879 #define _T5CON_NOT_T5SYNC 0x04
7880 #define _T5CON_SOSCEN 0x08
7881 #define _T5CON_T5CKPS0 0x10
7882 #define _T5CON_T5CKPS1 0x20
7883 #define _T5CON_TMR5CS0 0x40
7884 #define _T5CON_TMR5CS1 0x80
7886 //==============================================================================
7888 extern __at(0x0F15) __sfr TMR5;
7889 extern __at(0x0F15) __sfr TMR5L;
7890 extern __at(0x0F16) __sfr TMR5H;
7892 //==============================================================================
7893 // SSP2MSK Bits
7895 extern __at(0x0F17) __sfr SSP2MSK;
7897 typedef struct
7899 unsigned MSK0 : 1;
7900 unsigned MSK1 : 1;
7901 unsigned MSK2 : 1;
7902 unsigned MSK3 : 1;
7903 unsigned MSK4 : 1;
7904 unsigned MSK5 : 1;
7905 unsigned MSK6 : 1;
7906 unsigned MSK7 : 1;
7907 } __SSP2MSKbits_t;
7909 extern __at(0x0F17) volatile __SSP2MSKbits_t SSP2MSKbits;
7911 #define _SSP2MSK_MSK0 0x01
7912 #define _SSP2MSK_MSK1 0x02
7913 #define _SSP2MSK_MSK2 0x04
7914 #define _SSP2MSK_MSK3 0x08
7915 #define _SSP2MSK_MSK4 0x10
7916 #define _SSP2MSK_MSK5 0x20
7917 #define _SSP2MSK_MSK6 0x40
7918 #define _SSP2MSK_MSK7 0x80
7920 //==============================================================================
7923 //==============================================================================
7924 // SSP2CON2 Bits
7926 extern __at(0x0F18) __sfr SSP2CON2;
7928 typedef union
7930 struct
7932 unsigned SEN : 1;
7933 unsigned RSEN : 1;
7934 unsigned PEN : 1;
7935 unsigned RCEN : 1;
7936 unsigned ACKEN : 1;
7937 unsigned ACKDT : 1;
7938 unsigned ACKSTAT : 1;
7939 unsigned GCEN : 1;
7942 struct
7944 unsigned : 1;
7945 unsigned ADMSK1 : 1;
7946 unsigned ADMSK2 : 1;
7947 unsigned ADMSK3 : 1;
7948 unsigned ADMSK4 : 1;
7949 unsigned ADMSK5 : 1;
7950 unsigned : 1;
7951 unsigned : 1;
7953 } __SSP2CON2bits_t;
7955 extern __at(0x0F18) volatile __SSP2CON2bits_t SSP2CON2bits;
7957 #define _SSP2CON2_SEN 0x01
7958 #define _SSP2CON2_RSEN 0x02
7959 #define _SSP2CON2_ADMSK1 0x02
7960 #define _SSP2CON2_PEN 0x04
7961 #define _SSP2CON2_ADMSK2 0x04
7962 #define _SSP2CON2_RCEN 0x08
7963 #define _SSP2CON2_ADMSK3 0x08
7964 #define _SSP2CON2_ACKEN 0x10
7965 #define _SSP2CON2_ADMSK4 0x10
7966 #define _SSP2CON2_ACKDT 0x20
7967 #define _SSP2CON2_ADMSK5 0x20
7968 #define _SSP2CON2_ACKSTAT 0x40
7969 #define _SSP2CON2_GCEN 0x80
7971 //==============================================================================
7974 //==============================================================================
7975 // SSP2CON1 Bits
7977 extern __at(0x0F19) __sfr SSP2CON1;
7979 typedef union
7981 struct
7983 unsigned SSPM0 : 1;
7984 unsigned SSPM1 : 1;
7985 unsigned SSPM2 : 1;
7986 unsigned SSPM3 : 1;
7987 unsigned CKP : 1;
7988 unsigned SSPEN : 1;
7989 unsigned SSPOV : 1;
7990 unsigned WCOL : 1;
7993 struct
7995 unsigned SSPM : 4;
7996 unsigned : 4;
7998 } __SSP2CON1bits_t;
8000 extern __at(0x0F19) volatile __SSP2CON1bits_t SSP2CON1bits;
8002 #define _SSP2CON1_SSPM0 0x01
8003 #define _SSP2CON1_SSPM1 0x02
8004 #define _SSP2CON1_SSPM2 0x04
8005 #define _SSP2CON1_SSPM3 0x08
8006 #define _SSP2CON1_CKP 0x10
8007 #define _SSP2CON1_SSPEN 0x20
8008 #define _SSP2CON1_SSPOV 0x40
8009 #define _SSP2CON1_WCOL 0x80
8011 //==============================================================================
8014 //==============================================================================
8015 // SSP2STAT Bits
8017 extern __at(0x0F1A) __sfr SSP2STAT;
8019 typedef union
8021 struct
8023 unsigned BF : 1;
8024 unsigned UA : 1;
8025 unsigned R_NOT_W : 1;
8026 unsigned S : 1;
8027 unsigned P : 1;
8028 unsigned D_NOT_A : 1;
8029 unsigned CKE : 1;
8030 unsigned SMP : 1;
8033 struct
8035 unsigned : 1;
8036 unsigned : 1;
8037 unsigned R_W : 1;
8038 unsigned I2C_START : 1;
8039 unsigned I2C_STOP : 1;
8040 unsigned D_A : 1;
8041 unsigned : 1;
8042 unsigned : 1;
8045 struct
8047 unsigned : 1;
8048 unsigned : 1;
8049 unsigned NOT_W : 1;
8050 unsigned : 1;
8051 unsigned : 1;
8052 unsigned NOT_A : 1;
8053 unsigned : 1;
8054 unsigned : 1;
8057 struct
8059 unsigned : 1;
8060 unsigned : 1;
8061 unsigned NOT_WRITE : 1;
8062 unsigned : 1;
8063 unsigned : 1;
8064 unsigned NOT_ADDRESS : 1;
8065 unsigned : 1;
8066 unsigned : 1;
8069 struct
8071 unsigned : 1;
8072 unsigned : 1;
8073 unsigned READ_WRITE : 1;
8074 unsigned : 1;
8075 unsigned : 1;
8076 unsigned DATA_ADDRESS : 1;
8077 unsigned : 1;
8078 unsigned : 1;
8081 struct
8083 unsigned : 1;
8084 unsigned : 1;
8085 unsigned I2C_READ : 1;
8086 unsigned : 1;
8087 unsigned : 1;
8088 unsigned I2C_DAT : 1;
8089 unsigned : 1;
8090 unsigned : 1;
8092 } __SSP2STATbits_t;
8094 extern __at(0x0F1A) volatile __SSP2STATbits_t SSP2STATbits;
8096 #define _SSP2STAT_BF 0x01
8097 #define _SSP2STAT_UA 0x02
8098 #define _SSP2STAT_R_NOT_W 0x04
8099 #define _SSP2STAT_R_W 0x04
8100 #define _SSP2STAT_NOT_W 0x04
8101 #define _SSP2STAT_NOT_WRITE 0x04
8102 #define _SSP2STAT_READ_WRITE 0x04
8103 #define _SSP2STAT_I2C_READ 0x04
8104 #define _SSP2STAT_S 0x08
8105 #define _SSP2STAT_I2C_START 0x08
8106 #define _SSP2STAT_P 0x10
8107 #define _SSP2STAT_I2C_STOP 0x10
8108 #define _SSP2STAT_D_NOT_A 0x20
8109 #define _SSP2STAT_D_A 0x20
8110 #define _SSP2STAT_NOT_A 0x20
8111 #define _SSP2STAT_NOT_ADDRESS 0x20
8112 #define _SSP2STAT_DATA_ADDRESS 0x20
8113 #define _SSP2STAT_I2C_DAT 0x20
8114 #define _SSP2STAT_CKE 0x40
8115 #define _SSP2STAT_SMP 0x80
8117 //==============================================================================
8120 //==============================================================================
8121 // PSTR3CON Bits
8123 extern __at(0x0F1B) __sfr PSTR3CON;
8125 typedef union
8127 struct
8129 unsigned STRA : 1;
8130 unsigned STRB : 1;
8131 unsigned STRC : 1;
8132 unsigned STRD : 1;
8133 unsigned STRSYNC : 1;
8134 unsigned : 1;
8135 unsigned CMPL0 : 1;
8136 unsigned CMPL1 : 1;
8139 struct
8141 unsigned : 6;
8142 unsigned CMPL : 2;
8144 } __PSTR3CONbits_t;
8146 extern __at(0x0F1B) volatile __PSTR3CONbits_t PSTR3CONbits;
8148 #define _PSTR3CON_STRA 0x01
8149 #define _PSTR3CON_STRB 0x02
8150 #define _PSTR3CON_STRC 0x04
8151 #define _PSTR3CON_STRD 0x08
8152 #define _PSTR3CON_STRSYNC 0x10
8153 #define _PSTR3CON_CMPL0 0x40
8154 #define _PSTR3CON_CMPL1 0x80
8156 //==============================================================================
8159 //==============================================================================
8160 // PSTR2CON Bits
8162 extern __at(0x0F1C) __sfr PSTR2CON;
8164 typedef union
8166 struct
8168 unsigned STRA : 1;
8169 unsigned STRB : 1;
8170 unsigned STRC : 1;
8171 unsigned STRD : 1;
8172 unsigned STRSYNC : 1;
8173 unsigned : 1;
8174 unsigned CMPL0 : 1;
8175 unsigned CMPL1 : 1;
8178 struct
8180 unsigned : 6;
8181 unsigned CMPL : 2;
8183 } __PSTR2CONbits_t;
8185 extern __at(0x0F1C) volatile __PSTR2CONbits_t PSTR2CONbits;
8187 #define _PSTR2CON_STRA 0x01
8188 #define _PSTR2CON_STRB 0x02
8189 #define _PSTR2CON_STRC 0x04
8190 #define _PSTR2CON_STRD 0x08
8191 #define _PSTR2CON_STRSYNC 0x10
8192 #define _PSTR2CON_CMPL0 0x40
8193 #define _PSTR2CON_CMPL1 0x80
8195 //==============================================================================
8197 extern __at(0x0F1D) __sfr TXREG2;
8198 extern __at(0x0F1E) __sfr RCREG2;
8200 //==============================================================================
8201 // SPBRG2 Bits
8203 extern __at(0x0F1F) __sfr SPBRG2;
8205 typedef struct
8207 unsigned BRG0 : 1;
8208 unsigned BRG1 : 1;
8209 unsigned BRG2 : 1;
8210 unsigned BRG3 : 1;
8211 unsigned BRG4 : 1;
8212 unsigned BRG5 : 1;
8213 unsigned BRG6 : 1;
8214 unsigned BRG7 : 1;
8215 } __SPBRG2bits_t;
8217 extern __at(0x0F1F) volatile __SPBRG2bits_t SPBRG2bits;
8219 #define _SPBRG2_BRG0 0x01
8220 #define _SPBRG2_BRG1 0x02
8221 #define _SPBRG2_BRG2 0x04
8222 #define _SPBRG2_BRG3 0x08
8223 #define _SPBRG2_BRG4 0x10
8224 #define _SPBRG2_BRG5 0x20
8225 #define _SPBRG2_BRG6 0x40
8226 #define _SPBRG2_BRG7 0x80
8228 //==============================================================================
8231 //==============================================================================
8232 // SPBRGH2 Bits
8234 extern __at(0x0F20) __sfr SPBRGH2;
8236 typedef struct
8238 unsigned BRG8 : 1;
8239 unsigned BRG9 : 1;
8240 unsigned BRG10 : 1;
8241 unsigned BRG11 : 1;
8242 unsigned BRG12 : 1;
8243 unsigned BRG13 : 1;
8244 unsigned BRG14 : 1;
8245 unsigned BRG15 : 1;
8246 } __SPBRGH2bits_t;
8248 extern __at(0x0F20) volatile __SPBRGH2bits_t SPBRGH2bits;
8250 #define _SPBRGH2_BRG8 0x01
8251 #define _SPBRGH2_BRG9 0x02
8252 #define _SPBRGH2_BRG10 0x04
8253 #define _SPBRGH2_BRG11 0x08
8254 #define _SPBRGH2_BRG12 0x10
8255 #define _SPBRGH2_BRG13 0x20
8256 #define _SPBRGH2_BRG14 0x40
8257 #define _SPBRGH2_BRG15 0x80
8259 //==============================================================================
8261 extern __at(0x0F21) __sfr DSGPR3;
8262 extern __at(0x0F22) __sfr DSGPR2;
8263 extern __at(0x0F23) __sfr DSGPR1;
8264 extern __at(0x0F24) __sfr DSGPR0;
8266 //==============================================================================
8267 // DSWAKEH Bits
8269 extern __at(0x0F25) __sfr DSWAKEH;
8271 typedef struct
8273 unsigned DSINT0 : 1;
8274 unsigned : 1;
8275 unsigned : 1;
8276 unsigned : 1;
8277 unsigned : 1;
8278 unsigned : 1;
8279 unsigned : 1;
8280 unsigned : 1;
8281 } __DSWAKEHbits_t;
8283 extern __at(0x0F25) volatile __DSWAKEHbits_t DSWAKEHbits;
8285 #define _DSINT0 0x01
8287 //==============================================================================
8290 //==============================================================================
8291 // DSWAKEL Bits
8293 extern __at(0x0F26) __sfr DSWAKEL;
8295 typedef struct
8297 unsigned DSPOR : 1;
8298 unsigned DSICD : 1;
8299 unsigned DSMCLR : 1;
8300 unsigned DSRTC : 1;
8301 unsigned DSWDT : 1;
8302 unsigned DSULP : 1;
8303 unsigned BOR : 1;
8304 unsigned DSFLT : 1;
8305 } __DSWAKELbits_t;
8307 extern __at(0x0F26) volatile __DSWAKELbits_t DSWAKELbits;
8309 #define _DSPOR 0x01
8310 #define _DSICD 0x02
8311 #define _DSMCLR 0x04
8312 #define _DSRTC 0x08
8313 #define _DSWDT 0x10
8314 #define _DSULP 0x20
8315 #define _BOR 0x40
8316 #define _DSFLT 0x80
8318 //==============================================================================
8321 //==============================================================================
8322 // DSCONH Bits
8324 extern __at(0x0F27) __sfr DSCONH;
8326 typedef struct
8328 unsigned RTCWDIS : 1;
8329 unsigned : 1;
8330 unsigned : 1;
8331 unsigned : 1;
8332 unsigned : 1;
8333 unsigned : 1;
8334 unsigned : 1;
8335 unsigned DSEN : 1;
8336 } __DSCONHbits_t;
8338 extern __at(0x0F27) volatile __DSCONHbits_t DSCONHbits;
8340 #define _RTCWDIS 0x01
8341 #define _DSEN 0x80
8343 //==============================================================================
8346 //==============================================================================
8347 // DSCONL Bits
8349 extern __at(0x0F28) __sfr DSCONL;
8351 typedef struct
8353 unsigned RELEASE : 1;
8354 unsigned DSBOR : 1;
8355 unsigned ULPWDIS : 1;
8356 unsigned : 1;
8357 unsigned : 1;
8358 unsigned : 1;
8359 unsigned : 1;
8360 unsigned : 1;
8361 } __DSCONLbits_t;
8363 extern __at(0x0F28) volatile __DSCONLbits_t DSCONLbits;
8365 #define _RELEASE 0x01
8366 #define _DSBOR 0x02
8367 #define _ULPWDIS 0x04
8369 //==============================================================================
8371 extern __at(0x0F29) __sfr TXREG3;
8372 extern __at(0x0F2A) __sfr RCREG3;
8374 //==============================================================================
8375 // SPBRG3 Bits
8377 extern __at(0x0F2B) __sfr SPBRG3;
8379 typedef struct
8381 unsigned BRG0 : 1;
8382 unsigned BRG1 : 1;
8383 unsigned BRG2 : 1;
8384 unsigned BRG3 : 1;
8385 unsigned BRG4 : 1;
8386 unsigned BRG5 : 1;
8387 unsigned BRG6 : 1;
8388 unsigned BRG7 : 1;
8389 } __SPBRG3bits_t;
8391 extern __at(0x0F2B) volatile __SPBRG3bits_t SPBRG3bits;
8393 #define _SPBRG3_BRG0 0x01
8394 #define _SPBRG3_BRG1 0x02
8395 #define _SPBRG3_BRG2 0x04
8396 #define _SPBRG3_BRG3 0x08
8397 #define _SPBRG3_BRG4 0x10
8398 #define _SPBRG3_BRG5 0x20
8399 #define _SPBRG3_BRG6 0x40
8400 #define _SPBRG3_BRG7 0x80
8402 //==============================================================================
8405 //==============================================================================
8406 // SPBRGH3 Bits
8408 extern __at(0x0F2C) __sfr SPBRGH3;
8410 typedef struct
8412 unsigned BRG8 : 1;
8413 unsigned BRG9 : 1;
8414 unsigned BRG10 : 1;
8415 unsigned BRG11 : 1;
8416 unsigned BRG12 : 1;
8417 unsigned BRG13 : 1;
8418 unsigned BRG14 : 1;
8419 unsigned BRG15 : 1;
8420 } __SPBRGH3bits_t;
8422 extern __at(0x0F2C) volatile __SPBRGH3bits_t SPBRGH3bits;
8424 #define _SPBRGH3_BRG8 0x01
8425 #define _SPBRGH3_BRG9 0x02
8426 #define _SPBRGH3_BRG10 0x04
8427 #define _SPBRGH3_BRG11 0x08
8428 #define _SPBRGH3_BRG12 0x10
8429 #define _SPBRGH3_BRG13 0x20
8430 #define _SPBRGH3_BRG14 0x40
8431 #define _SPBRGH3_BRG15 0x80
8433 //==============================================================================
8436 //==============================================================================
8437 // BAUDCON3 Bits
8439 extern __at(0x0F2D) __sfr BAUDCON3;
8441 typedef struct
8443 unsigned ABDEN : 1;
8444 unsigned WUE : 1;
8445 unsigned IREN : 1;
8446 unsigned BRG16 : 1;
8447 unsigned TXCKP : 1;
8448 unsigned RXDTP : 1;
8449 unsigned RCIDL : 1;
8450 unsigned ABDOVF : 1;
8451 } __BAUDCON3bits_t;
8453 extern __at(0x0F2D) volatile __BAUDCON3bits_t BAUDCON3bits;
8455 #define _BAUDCON3_ABDEN 0x01
8456 #define _BAUDCON3_WUE 0x02
8457 #define _BAUDCON3_IREN 0x04
8458 #define _BAUDCON3_BRG16 0x08
8459 #define _BAUDCON3_TXCKP 0x10
8460 #define _BAUDCON3_RXDTP 0x20
8461 #define _BAUDCON3_RCIDL 0x40
8462 #define _BAUDCON3_ABDOVF 0x80
8464 //==============================================================================
8467 //==============================================================================
8468 // TXSTA3 Bits
8470 extern __at(0x0F2E) __sfr TXSTA3;
8472 typedef struct
8474 unsigned TX9D : 1;
8475 unsigned TRMT : 1;
8476 unsigned BRGH : 1;
8477 unsigned SENDB : 1;
8478 unsigned SYNC : 1;
8479 unsigned TXEN : 1;
8480 unsigned TX9 : 1;
8481 unsigned CSRC : 1;
8482 } __TXSTA3bits_t;
8484 extern __at(0x0F2E) volatile __TXSTA3bits_t TXSTA3bits;
8486 #define _TXSTA3_TX9D 0x01
8487 #define _TXSTA3_TRMT 0x02
8488 #define _TXSTA3_BRGH 0x04
8489 #define _TXSTA3_SENDB 0x08
8490 #define _TXSTA3_SYNC 0x10
8491 #define _TXSTA3_TXEN 0x20
8492 #define _TXSTA3_TX9 0x40
8493 #define _TXSTA3_CSRC 0x80
8495 //==============================================================================
8498 //==============================================================================
8499 // RCSTA3 Bits
8501 extern __at(0x0F2F) __sfr RCSTA3;
8503 typedef struct
8505 unsigned RX9D : 1;
8506 unsigned OERR : 1;
8507 unsigned FERR : 1;
8508 unsigned ADDEN : 1;
8509 unsigned CREN : 1;
8510 unsigned SREN : 1;
8511 unsigned RX9 : 1;
8512 unsigned SPEN : 1;
8513 } __RCSTA3bits_t;
8515 extern __at(0x0F2F) volatile __RCSTA3bits_t RCSTA3bits;
8517 #define _RCSTA3_RX9D 0x01
8518 #define _RCSTA3_OERR 0x02
8519 #define _RCSTA3_FERR 0x04
8520 #define _RCSTA3_ADDEN 0x08
8521 #define _RCSTA3_CREN 0x10
8522 #define _RCSTA3_SREN 0x20
8523 #define _RCSTA3_RX9 0x40
8524 #define _RCSTA3_SPEN 0x80
8526 //==============================================================================
8529 //==============================================================================
8530 // SPBRGH Bits
8532 extern __at(0x0F30) __sfr SPBRGH;
8534 typedef struct
8536 unsigned BRG8 : 1;
8537 unsigned BRG9 : 1;
8538 unsigned BRG10 : 1;
8539 unsigned BRG11 : 1;
8540 unsigned BRG12 : 1;
8541 unsigned BRG13 : 1;
8542 unsigned BRG14 : 1;
8543 unsigned BRG15 : 1;
8544 } __SPBRGHbits_t;
8546 extern __at(0x0F30) volatile __SPBRGHbits_t SPBRGHbits;
8548 #define _BRG8 0x01
8549 #define _BRG9 0x02
8550 #define _BRG10 0x04
8551 #define _BRG11 0x08
8552 #define _BRG12 0x10
8553 #define _BRG13 0x20
8554 #define _BRG14 0x40
8555 #define _BRG15 0x80
8557 //==============================================================================
8560 //==============================================================================
8561 // SPBRGH1 Bits
8563 extern __at(0x0F30) __sfr SPBRGH1;
8565 typedef struct
8567 unsigned BRG8 : 1;
8568 unsigned BRG9 : 1;
8569 unsigned BRG10 : 1;
8570 unsigned BRG11 : 1;
8571 unsigned BRG12 : 1;
8572 unsigned BRG13 : 1;
8573 unsigned BRG14 : 1;
8574 unsigned BRG15 : 1;
8575 } __SPBRGH1bits_t;
8577 extern __at(0x0F30) volatile __SPBRGH1bits_t SPBRGH1bits;
8579 #define _SPBRGH1_BRG8 0x01
8580 #define _SPBRGH1_BRG9 0x02
8581 #define _SPBRGH1_BRG10 0x04
8582 #define _SPBRGH1_BRG11 0x08
8583 #define _SPBRGH1_BRG12 0x10
8584 #define _SPBRGH1_BRG13 0x20
8585 #define _SPBRGH1_BRG14 0x40
8586 #define _SPBRGH1_BRG15 0x80
8588 //==============================================================================
8591 //==============================================================================
8592 // BAUDCON2 Bits
8594 extern __at(0x0F31) __sfr BAUDCON2;
8596 typedef struct
8598 unsigned ABDEN : 1;
8599 unsigned WUE : 1;
8600 unsigned IREN : 1;
8601 unsigned BRG16 : 1;
8602 unsigned TXCKP : 1;
8603 unsigned RXDTP : 1;
8604 unsigned RCIDL : 1;
8605 unsigned ABDOVF : 1;
8606 } __BAUDCON2bits_t;
8608 extern __at(0x0F31) volatile __BAUDCON2bits_t BAUDCON2bits;
8610 #define _BAUDCON2_ABDEN 0x01
8611 #define _BAUDCON2_WUE 0x02
8612 #define _BAUDCON2_IREN 0x04
8613 #define _BAUDCON2_BRG16 0x08
8614 #define _BAUDCON2_TXCKP 0x10
8615 #define _BAUDCON2_RXDTP 0x20
8616 #define _BAUDCON2_RCIDL 0x40
8617 #define _BAUDCON2_ABDOVF 0x80
8619 //==============================================================================
8622 //==============================================================================
8623 // TXSTA2 Bits
8625 extern __at(0x0F32) __sfr TXSTA2;
8627 typedef struct
8629 unsigned TX9D : 1;
8630 unsigned TRMT : 1;
8631 unsigned BRGH : 1;
8632 unsigned SENDB : 1;
8633 unsigned SYNC : 1;
8634 unsigned TXEN : 1;
8635 unsigned TX9 : 1;
8636 unsigned CSRC : 1;
8637 } __TXSTA2bits_t;
8639 extern __at(0x0F32) volatile __TXSTA2bits_t TXSTA2bits;
8641 #define _TXSTA2_TX9D 0x01
8642 #define _TXSTA2_TRMT 0x02
8643 #define _TXSTA2_BRGH 0x04
8644 #define _TXSTA2_SENDB 0x08
8645 #define _TXSTA2_SYNC 0x10
8646 #define _TXSTA2_TXEN 0x20
8647 #define _TXSTA2_TX9 0x40
8648 #define _TXSTA2_CSRC 0x80
8650 //==============================================================================
8653 //==============================================================================
8654 // RCSTA2 Bits
8656 extern __at(0x0F33) __sfr RCSTA2;
8658 typedef struct
8660 unsigned RX9D : 1;
8661 unsigned OERR : 1;
8662 unsigned FERR : 1;
8663 unsigned ADDEN : 1;
8664 unsigned CREN : 1;
8665 unsigned SREN : 1;
8666 unsigned RX9 : 1;
8667 unsigned SPEN : 1;
8668 } __RCSTA2bits_t;
8670 extern __at(0x0F33) volatile __RCSTA2bits_t RCSTA2bits;
8672 #define _RCSTA2_RX9D 0x01
8673 #define _RCSTA2_OERR 0x02
8674 #define _RCSTA2_FERR 0x04
8675 #define _RCSTA2_ADDEN 0x08
8676 #define _RCSTA2_CREN 0x10
8677 #define _RCSTA2_SREN 0x20
8678 #define _RCSTA2_RX9 0x40
8679 #define _RCSTA2_SPEN 0x80
8681 //==============================================================================
8684 //==============================================================================
8685 // CCPTMRS2 Bits
8687 extern __at(0x0F34) __sfr CCPTMRS2;
8689 typedef union
8691 struct
8693 unsigned C8TSEL0 : 1;
8694 unsigned C8TSEL1 : 1;
8695 unsigned C9TSEL : 1;
8696 unsigned : 1;
8697 unsigned C10TSEL : 1;
8698 unsigned : 1;
8699 unsigned : 1;
8700 unsigned : 1;
8703 struct
8705 unsigned : 1;
8706 unsigned : 1;
8707 unsigned C9TSEL0 : 1;
8708 unsigned : 1;
8709 unsigned C10TSEL0 : 1;
8710 unsigned : 1;
8711 unsigned : 1;
8712 unsigned : 1;
8715 struct
8717 unsigned C8TSEL : 2;
8718 unsigned : 6;
8720 } __CCPTMRS2bits_t;
8722 extern __at(0x0F34) volatile __CCPTMRS2bits_t CCPTMRS2bits;
8724 #define _C8TSEL0 0x01
8725 #define _C8TSEL1 0x02
8726 #define _C9TSEL 0x04
8727 #define _C9TSEL0 0x04
8728 #define _C10TSEL 0x10
8729 #define _C10TSEL0 0x10
8731 //==============================================================================
8734 //==============================================================================
8735 // CCPTMRS1 Bits
8737 extern __at(0x0F35) __sfr CCPTMRS1;
8739 typedef union
8741 struct
8743 unsigned C4TSEL0 : 1;
8744 unsigned C4TSEL1 : 1;
8745 unsigned C5TSEL : 1;
8746 unsigned : 1;
8747 unsigned C6TSEL : 1;
8748 unsigned : 1;
8749 unsigned C7TSEL0 : 1;
8750 unsigned C7TSEL1 : 1;
8753 struct
8755 unsigned : 1;
8756 unsigned : 1;
8757 unsigned C5TSEL0 : 1;
8758 unsigned : 1;
8759 unsigned C6TSEL0 : 1;
8760 unsigned : 1;
8761 unsigned : 1;
8762 unsigned : 1;
8765 struct
8767 unsigned C4TSEL : 2;
8768 unsigned : 6;
8771 struct
8773 unsigned : 6;
8774 unsigned C7TSEL : 2;
8776 } __CCPTMRS1bits_t;
8778 extern __at(0x0F35) volatile __CCPTMRS1bits_t CCPTMRS1bits;
8780 #define _C4TSEL0 0x01
8781 #define _C4TSEL1 0x02
8782 #define _C5TSEL 0x04
8783 #define _C5TSEL0 0x04
8784 #define _C6TSEL 0x10
8785 #define _C6TSEL0 0x10
8786 #define _C7TSEL0 0x40
8787 #define _C7TSEL1 0x80
8789 //==============================================================================
8792 //==============================================================================
8793 // CCPTMRS0 Bits
8795 extern __at(0x0F36) __sfr CCPTMRS0;
8797 typedef union
8799 struct
8801 unsigned C1TSEL0 : 1;
8802 unsigned C1TSEL1 : 1;
8803 unsigned C1TSEL2 : 1;
8804 unsigned C2TSEL0 : 1;
8805 unsigned C2TSEL1 : 1;
8806 unsigned C2TSEL2 : 1;
8807 unsigned C3TSEL0 : 1;
8808 unsigned C3TSEL1 : 1;
8811 struct
8813 unsigned C1TSEL : 3;
8814 unsigned : 5;
8817 struct
8819 unsigned : 3;
8820 unsigned C2TSEL : 3;
8821 unsigned : 2;
8824 struct
8826 unsigned : 6;
8827 unsigned C3TSEL : 2;
8829 } __CCPTMRS0bits_t;
8831 extern __at(0x0F36) volatile __CCPTMRS0bits_t CCPTMRS0bits;
8833 #define _C1TSEL0 0x01
8834 #define _C1TSEL1 0x02
8835 #define _C1TSEL2 0x04
8836 #define _C2TSEL0 0x08
8837 #define _C2TSEL1 0x10
8838 #define _C2TSEL2 0x20
8839 #define _C3TSEL0 0x40
8840 #define _C3TSEL1 0x80
8842 //==============================================================================
8845 //==============================================================================
8846 // CM3CON Bits
8848 extern __at(0x0F37) __sfr CM3CON;
8850 typedef union
8852 struct
8854 unsigned CCH0 : 1;
8855 unsigned CCH1 : 1;
8856 unsigned CREF : 1;
8857 unsigned EVPOL0 : 1;
8858 unsigned EVPOL1 : 1;
8859 unsigned CPOL : 1;
8860 unsigned COE : 1;
8861 unsigned CON : 1;
8864 struct
8866 unsigned CCH : 2;
8867 unsigned : 6;
8870 struct
8872 unsigned : 3;
8873 unsigned EVPOL : 2;
8874 unsigned : 3;
8876 } __CM3CONbits_t;
8878 extern __at(0x0F37) volatile __CM3CONbits_t CM3CONbits;
8880 #define _CM3CON_CCH0 0x01
8881 #define _CM3CON_CCH1 0x02
8882 #define _CM3CON_CREF 0x04
8883 #define _CM3CON_EVPOL0 0x08
8884 #define _CM3CON_EVPOL1 0x10
8885 #define _CM3CON_CPOL 0x20
8886 #define _CM3CON_COE 0x40
8887 #define _CM3CON_CON 0x80
8889 //==============================================================================
8892 //==============================================================================
8893 // CM2CON Bits
8895 extern __at(0x0F38) __sfr CM2CON;
8897 typedef union
8899 struct
8901 unsigned CCH0 : 1;
8902 unsigned CCH1 : 1;
8903 unsigned CREF : 1;
8904 unsigned EVPOL0 : 1;
8905 unsigned EVPOL1 : 1;
8906 unsigned CPOL : 1;
8907 unsigned COE : 1;
8908 unsigned CON : 1;
8911 struct
8913 unsigned CCH : 2;
8914 unsigned : 6;
8917 struct
8919 unsigned : 3;
8920 unsigned EVPOL : 2;
8921 unsigned : 3;
8923 } __CM2CONbits_t;
8925 extern __at(0x0F38) volatile __CM2CONbits_t CM2CONbits;
8927 #define _CM2CON_CCH0 0x01
8928 #define _CM2CON_CCH1 0x02
8929 #define _CM2CON_CREF 0x04
8930 #define _CM2CON_EVPOL0 0x08
8931 #define _CM2CON_EVPOL1 0x10
8932 #define _CM2CON_CPOL 0x20
8933 #define _CM2CON_COE 0x40
8934 #define _CM2CON_CON 0x80
8936 //==============================================================================
8939 //==============================================================================
8940 // SSP2CON3 Bits
8942 extern __at(0x0F39) __sfr SSP2CON3;
8944 typedef struct
8946 unsigned DHEN : 1;
8947 unsigned AHEN : 1;
8948 unsigned SBCDE : 1;
8949 unsigned SDAHT : 1;
8950 unsigned BOEN : 1;
8951 unsigned SCIE : 1;
8952 unsigned PCIE : 1;
8953 unsigned ACKTIM : 1;
8954 } __SSP2CON3bits_t;
8956 extern __at(0x0F39) volatile __SSP2CON3bits_t SSP2CON3bits;
8958 #define _SSP2CON3_DHEN 0x01
8959 #define _SSP2CON3_AHEN 0x02
8960 #define _SSP2CON3_SBCDE 0x04
8961 #define _SSP2CON3_SDAHT 0x08
8962 #define _SSP2CON3_BOEN 0x10
8963 #define _SSP2CON3_SCIE 0x20
8964 #define _SSP2CON3_PCIE 0x40
8965 #define _SSP2CON3_ACKTIM 0x80
8967 //==============================================================================
8970 //==============================================================================
8971 // T8CON Bits
8973 extern __at(0x0F3A) __sfr T8CON;
8975 typedef union
8977 struct
8979 unsigned T8CKPS0 : 1;
8980 unsigned T8CKPS1 : 1;
8981 unsigned TMR8ON : 1;
8982 unsigned T8OUTPS0 : 1;
8983 unsigned T8OUTPS1 : 1;
8984 unsigned T8OUTPS2 : 1;
8985 unsigned T8OUTPS3 : 1;
8986 unsigned : 1;
8989 struct
8991 unsigned T8CKPS : 2;
8992 unsigned : 6;
8995 struct
8997 unsigned : 3;
8998 unsigned T8OUTPS : 4;
8999 unsigned : 1;
9001 } __T8CONbits_t;
9003 extern __at(0x0F3A) volatile __T8CONbits_t T8CONbits;
9005 #define _T8CKPS0 0x01
9006 #define _T8CKPS1 0x02
9007 #define _TMR8ON 0x04
9008 #define _T8OUTPS0 0x08
9009 #define _T8OUTPS1 0x10
9010 #define _T8OUTPS2 0x20
9011 #define _T8OUTPS3 0x40
9013 //==============================================================================
9015 extern __at(0x0F3B) __sfr PR8;
9016 extern __at(0x0F3C) __sfr TMR8;
9018 //==============================================================================
9019 // T6CON Bits
9021 extern __at(0x0F3D) __sfr T6CON;
9023 typedef union
9025 struct
9027 unsigned T6CKPS0 : 1;
9028 unsigned T6CKPS1 : 1;
9029 unsigned TMR6ON : 1;
9030 unsigned T6OUTPS0 : 1;
9031 unsigned T6OUTPS1 : 1;
9032 unsigned T6OUTPS2 : 1;
9033 unsigned T6OUTPS3 : 1;
9034 unsigned : 1;
9037 struct
9039 unsigned T6CKPS : 2;
9040 unsigned : 6;
9043 struct
9045 unsigned : 3;
9046 unsigned T6OUTPS : 4;
9047 unsigned : 1;
9049 } __T6CONbits_t;
9051 extern __at(0x0F3D) volatile __T6CONbits_t T6CONbits;
9053 #define _T6CKPS0 0x01
9054 #define _T6CKPS1 0x02
9055 #define _TMR6ON 0x04
9056 #define _T6OUTPS0 0x08
9057 #define _T6OUTPS1 0x10
9058 #define _T6OUTPS2 0x20
9059 #define _T6OUTPS3 0x40
9061 //==============================================================================
9063 extern __at(0x0F3E) __sfr PR6;
9064 extern __at(0x0F3F) __sfr TMR6;
9066 //==============================================================================
9067 // CCP10CON Bits
9069 extern __at(0x0F40) __sfr CCP10CON;
9071 typedef union
9073 struct
9075 unsigned CCP10M0 : 1;
9076 unsigned CCP10M1 : 1;
9077 unsigned CCP10M2 : 1;
9078 unsigned CCP10M3 : 1;
9079 unsigned DC10B0 : 1;
9080 unsigned DC10B1 : 1;
9081 unsigned : 1;
9082 unsigned : 1;
9085 struct
9087 unsigned : 1;
9088 unsigned : 1;
9089 unsigned : 1;
9090 unsigned : 1;
9091 unsigned CCP10Y : 1;
9092 unsigned CCP10X : 1;
9093 unsigned : 1;
9094 unsigned : 1;
9097 struct
9099 unsigned CCP10M : 4;
9100 unsigned : 4;
9103 struct
9105 unsigned : 4;
9106 unsigned DC10B : 2;
9107 unsigned : 2;
9109 } __CCP10CONbits_t;
9111 extern __at(0x0F40) volatile __CCP10CONbits_t CCP10CONbits;
9113 #define _CCP10M0 0x01
9114 #define _CCP10M1 0x02
9115 #define _CCP10M2 0x04
9116 #define _CCP10M3 0x08
9117 #define _DC10B0 0x10
9118 #define _CCP10Y 0x10
9119 #define _DC10B1 0x20
9120 #define _CCP10X 0x20
9122 //==============================================================================
9124 extern __at(0x0F41) __sfr CCPR10;
9125 extern __at(0x0F41) __sfr CCPR10L;
9126 extern __at(0x0F42) __sfr CCPR10H;
9128 //==============================================================================
9129 // CCP9CON Bits
9131 extern __at(0x0F43) __sfr CCP9CON;
9133 typedef union
9135 struct
9137 unsigned CCP9M0 : 1;
9138 unsigned CCP9M1 : 1;
9139 unsigned CCP9M2 : 1;
9140 unsigned CCP9M3 : 1;
9141 unsigned DC9B0 : 1;
9142 unsigned DC9B1 : 1;
9143 unsigned : 1;
9144 unsigned : 1;
9147 struct
9149 unsigned : 1;
9150 unsigned : 1;
9151 unsigned : 1;
9152 unsigned : 1;
9153 unsigned CCP9Y : 1;
9154 unsigned CCP9X : 1;
9155 unsigned : 1;
9156 unsigned : 1;
9159 struct
9161 unsigned CCP9M : 4;
9162 unsigned : 4;
9165 struct
9167 unsigned : 4;
9168 unsigned DC9B : 2;
9169 unsigned : 2;
9171 } __CCP9CONbits_t;
9173 extern __at(0x0F43) volatile __CCP9CONbits_t CCP9CONbits;
9175 #define _CCP9M0 0x01
9176 #define _CCP9M1 0x02
9177 #define _CCP9M2 0x04
9178 #define _CCP9M3 0x08
9179 #define _DC9B0 0x10
9180 #define _CCP9Y 0x10
9181 #define _DC9B1 0x20
9182 #define _CCP9X 0x20
9184 //==============================================================================
9186 extern __at(0x0F44) __sfr CCPR9;
9187 extern __at(0x0F44) __sfr CCPR9L;
9188 extern __at(0x0F45) __sfr CCPR9H;
9190 //==============================================================================
9191 // CCP8CON Bits
9193 extern __at(0x0F46) __sfr CCP8CON;
9195 typedef union
9197 struct
9199 unsigned CCP8M0 : 1;
9200 unsigned CCP8M1 : 1;
9201 unsigned CCP8M2 : 1;
9202 unsigned CCP8M3 : 1;
9203 unsigned DC8B0 : 1;
9204 unsigned DC8B1 : 1;
9205 unsigned : 1;
9206 unsigned : 1;
9209 struct
9211 unsigned : 1;
9212 unsigned : 1;
9213 unsigned : 1;
9214 unsigned : 1;
9215 unsigned CCP8Y : 1;
9216 unsigned CCP8X : 1;
9217 unsigned : 1;
9218 unsigned : 1;
9221 struct
9223 unsigned CCP8M : 4;
9224 unsigned : 4;
9227 struct
9229 unsigned : 4;
9230 unsigned DC8B : 2;
9231 unsigned : 2;
9233 } __CCP8CONbits_t;
9235 extern __at(0x0F46) volatile __CCP8CONbits_t CCP8CONbits;
9237 #define _CCP8M0 0x01
9238 #define _CCP8M1 0x02
9239 #define _CCP8M2 0x04
9240 #define _CCP8M3 0x08
9241 #define _DC8B0 0x10
9242 #define _CCP8Y 0x10
9243 #define _DC8B1 0x20
9244 #define _CCP8X 0x20
9246 //==============================================================================
9248 extern __at(0x0F47) __sfr CCPR8;
9249 extern __at(0x0F47) __sfr CCPR8L;
9250 extern __at(0x0F48) __sfr CCPR8H;
9252 //==============================================================================
9253 // CCP3CON Bits
9255 extern __at(0x0F49) __sfr CCP3CON;
9257 typedef union
9259 struct
9261 unsigned CCP3M0 : 1;
9262 unsigned CCP3M1 : 1;
9263 unsigned CCP3M2 : 1;
9264 unsigned CCP3M3 : 1;
9265 unsigned DC3B0 : 1;
9266 unsigned DC3B1 : 1;
9267 unsigned P3M0 : 1;
9268 unsigned P3M1 : 1;
9271 struct
9273 unsigned : 1;
9274 unsigned : 1;
9275 unsigned : 1;
9276 unsigned : 1;
9277 unsigned CCP3Y : 1;
9278 unsigned CCP3X : 1;
9279 unsigned : 1;
9280 unsigned : 1;
9283 struct
9285 unsigned CCP3M : 4;
9286 unsigned : 4;
9289 struct
9291 unsigned : 4;
9292 unsigned DC3B : 2;
9293 unsigned : 2;
9296 struct
9298 unsigned : 6;
9299 unsigned P3M : 2;
9301 } __CCP3CONbits_t;
9303 extern __at(0x0F49) volatile __CCP3CONbits_t CCP3CONbits;
9305 #define _CCP3M0 0x01
9306 #define _CCP3M1 0x02
9307 #define _CCP3M2 0x04
9308 #define _CCP3M3 0x08
9309 #define _DC3B0 0x10
9310 #define _CCP3Y 0x10
9311 #define _DC3B1 0x20
9312 #define _CCP3X 0x20
9313 #define _P3M0 0x40
9314 #define _P3M1 0x80
9316 //==============================================================================
9318 extern __at(0x0F4A) __sfr CCPR3;
9319 extern __at(0x0F4A) __sfr CCPR3L;
9320 extern __at(0x0F4B) __sfr CCPR3H;
9322 //==============================================================================
9323 // ECCP3DEL Bits
9325 extern __at(0x0F4C) __sfr ECCP3DEL;
9327 typedef union
9329 struct
9331 unsigned P3DC0 : 1;
9332 unsigned P3DC1 : 1;
9333 unsigned P3DC2 : 1;
9334 unsigned P3DC3 : 1;
9335 unsigned P3DC4 : 1;
9336 unsigned P3DC5 : 1;
9337 unsigned P3DC6 : 1;
9338 unsigned P3RSEN : 1;
9341 struct
9343 unsigned P3DC : 7;
9344 unsigned : 1;
9346 } __ECCP3DELbits_t;
9348 extern __at(0x0F4C) volatile __ECCP3DELbits_t ECCP3DELbits;
9350 #define _P3DC0 0x01
9351 #define _P3DC1 0x02
9352 #define _P3DC2 0x04
9353 #define _P3DC3 0x08
9354 #define _P3DC4 0x10
9355 #define _P3DC5 0x20
9356 #define _P3DC6 0x40
9357 #define _P3RSEN 0x80
9359 //==============================================================================
9362 //==============================================================================
9363 // ECCP3AS Bits
9365 extern __at(0x0F4D) __sfr ECCP3AS;
9367 typedef union
9369 struct
9371 unsigned PSS3BD0 : 1;
9372 unsigned PSS3BD1 : 1;
9373 unsigned PSS3AC0 : 1;
9374 unsigned PSS3AC1 : 1;
9375 unsigned ECCP3AS0 : 1;
9376 unsigned ECCP3AS1 : 1;
9377 unsigned ECCP3AS2 : 1;
9378 unsigned ECCP3ASE : 1;
9381 struct
9383 unsigned PSS3BD : 2;
9384 unsigned : 6;
9387 struct
9389 unsigned : 2;
9390 unsigned PSS3AC : 2;
9391 unsigned : 4;
9394 struct
9396 unsigned : 4;
9397 unsigned ECCP3AS : 3;
9398 unsigned : 1;
9400 } __ECCP3ASbits_t;
9402 extern __at(0x0F4D) volatile __ECCP3ASbits_t ECCP3ASbits;
9404 #define _PSS3BD0 0x01
9405 #define _PSS3BD1 0x02
9406 #define _PSS3AC0 0x04
9407 #define _PSS3AC1 0x08
9408 #define _ECCP3AS0 0x10
9409 #define _ECCP3AS1 0x20
9410 #define _ECCP3AS2 0x40
9411 #define _ECCP3ASE 0x80
9413 //==============================================================================
9416 //==============================================================================
9417 // CCP2CON Bits
9419 extern __at(0x0F4E) __sfr CCP2CON;
9421 typedef union
9423 struct
9425 unsigned CCP2M0 : 1;
9426 unsigned CCP2M1 : 1;
9427 unsigned CCP2M2 : 1;
9428 unsigned CCP2M3 : 1;
9429 unsigned DC2B0 : 1;
9430 unsigned DC2B1 : 1;
9431 unsigned P2M0 : 1;
9432 unsigned P2M1 : 1;
9435 struct
9437 unsigned : 1;
9438 unsigned : 1;
9439 unsigned : 1;
9440 unsigned : 1;
9441 unsigned CCP2Y : 1;
9442 unsigned CCP2X : 1;
9443 unsigned : 1;
9444 unsigned : 1;
9447 struct
9449 unsigned CCP2M : 4;
9450 unsigned : 4;
9453 struct
9455 unsigned : 4;
9456 unsigned DC2B : 2;
9457 unsigned : 2;
9460 struct
9462 unsigned : 6;
9463 unsigned P2M : 2;
9465 } __CCP2CONbits_t;
9467 extern __at(0x0F4E) volatile __CCP2CONbits_t CCP2CONbits;
9469 #define _CCP2M0 0x01
9470 #define _CCP2M1 0x02
9471 #define _CCP2M2 0x04
9472 #define _CCP2M3 0x08
9473 #define _DC2B0 0x10
9474 #define _CCP2Y 0x10
9475 #define _DC2B1 0x20
9476 #define _CCP2X 0x20
9477 #define _P2M0 0x40
9478 #define _P2M1 0x80
9480 //==============================================================================
9482 extern __at(0x0F4F) __sfr CCPR2;
9483 extern __at(0x0F4F) __sfr CCPR2L;
9484 extern __at(0x0F50) __sfr CCPR2H;
9486 //==============================================================================
9487 // ECCP2DEL Bits
9489 extern __at(0x0F51) __sfr ECCP2DEL;
9491 typedef union
9493 struct
9495 unsigned P2DC0 : 1;
9496 unsigned P2DC1 : 1;
9497 unsigned P2DC2 : 1;
9498 unsigned P2DC3 : 1;
9499 unsigned P2DC4 : 1;
9500 unsigned P2DC5 : 1;
9501 unsigned P2DC6 : 1;
9502 unsigned P2RSEN : 1;
9505 struct
9507 unsigned P2DC : 7;
9508 unsigned : 1;
9510 } __ECCP2DELbits_t;
9512 extern __at(0x0F51) volatile __ECCP2DELbits_t ECCP2DELbits;
9514 #define _P2DC0 0x01
9515 #define _P2DC1 0x02
9516 #define _P2DC2 0x04
9517 #define _P2DC3 0x08
9518 #define _P2DC4 0x10
9519 #define _P2DC5 0x20
9520 #define _P2DC6 0x40
9521 #define _P2RSEN 0x80
9523 //==============================================================================
9526 //==============================================================================
9527 // ECCP2AS Bits
9529 extern __at(0x0F52) __sfr ECCP2AS;
9531 typedef union
9533 struct
9535 unsigned PSS2BD0 : 1;
9536 unsigned PSS2BD1 : 1;
9537 unsigned PSS2AC0 : 1;
9538 unsigned PSS2AC1 : 1;
9539 unsigned ECCP2AS0 : 1;
9540 unsigned ECCP2AS1 : 1;
9541 unsigned ECCP2AS2 : 1;
9542 unsigned ECCP2ASE : 1;
9545 struct
9547 unsigned PSS2BD : 2;
9548 unsigned : 6;
9551 struct
9553 unsigned : 2;
9554 unsigned PSS2AC : 2;
9555 unsigned : 4;
9558 struct
9560 unsigned : 4;
9561 unsigned ECCP2AS : 3;
9562 unsigned : 1;
9564 } __ECCP2ASbits_t;
9566 extern __at(0x0F52) volatile __ECCP2ASbits_t ECCP2ASbits;
9568 #define _PSS2BD0 0x01
9569 #define _PSS2BD1 0x02
9570 #define _PSS2AC0 0x04
9571 #define _PSS2AC1 0x08
9572 #define _ECCP2AS0 0x10
9573 #define _ECCP2AS1 0x20
9574 #define _ECCP2AS2 0x40
9575 #define _ECCP2ASE 0x80
9577 //==============================================================================
9580 //==============================================================================
9581 // CM1CON Bits
9583 extern __at(0x0F53) __sfr CM1CON;
9585 typedef union
9587 struct
9589 unsigned CCH0 : 1;
9590 unsigned CCH1 : 1;
9591 unsigned CREF : 1;
9592 unsigned EVPOL0 : 1;
9593 unsigned EVPOL1 : 1;
9594 unsigned CPOL : 1;
9595 unsigned COE : 1;
9596 unsigned CON : 1;
9599 struct
9601 unsigned CCH : 2;
9602 unsigned : 6;
9605 struct
9607 unsigned : 3;
9608 unsigned EVPOL : 2;
9609 unsigned : 3;
9611 } __CM1CONbits_t;
9613 extern __at(0x0F53) volatile __CM1CONbits_t CM1CONbits;
9615 #define _CCH0 0x01
9616 #define _CCH1 0x02
9617 #define _CREF 0x04
9618 #define _EVPOL0 0x08
9619 #define _EVPOL1 0x10
9620 #define _CPOL 0x20
9621 #define _COE 0x40
9622 #define _CON 0x80
9624 //==============================================================================
9627 //==============================================================================
9628 // PADCFG1 Bits
9630 extern __at(0x0F54) __sfr PADCFG1;
9632 typedef struct
9634 unsigned RLPU : 1;
9635 unsigned RKPU : 1;
9636 unsigned RJPU : 1;
9637 unsigned RHPU : 1;
9638 unsigned RGPU : 1;
9639 unsigned RFPU : 1;
9640 unsigned REPU : 1;
9641 unsigned RDPU : 1;
9642 } __PADCFG1bits_t;
9644 extern __at(0x0F54) volatile __PADCFG1bits_t PADCFG1bits;
9646 #define _RLPU 0x01
9647 #define _RKPU 0x02
9648 #define _RJPU 0x04
9649 #define _RHPU 0x08
9650 #define _RGPU 0x10
9651 #define _RFPU 0x20
9652 #define _REPU 0x40
9653 #define _RDPU 0x80
9655 //==============================================================================
9658 //==============================================================================
9659 // IOCN Bits
9661 extern __at(0x0F55) __sfr IOCN;
9663 typedef struct
9665 unsigned IOCN0 : 1;
9666 unsigned IOCN1 : 1;
9667 unsigned IOCN2 : 1;
9668 unsigned IOCN3 : 1;
9669 unsigned IOCN4 : 1;
9670 unsigned IOCN5 : 1;
9671 unsigned IOCN6 : 1;
9672 unsigned IOCN7 : 1;
9673 } __IOCNbits_t;
9675 extern __at(0x0F55) volatile __IOCNbits_t IOCNbits;
9677 #define _IOCN0 0x01
9678 #define _IOCN1 0x02
9679 #define _IOCN2 0x04
9680 #define _IOCN3 0x08
9681 #define _IOCN4 0x10
9682 #define _IOCN5 0x20
9683 #define _IOCN6 0x40
9684 #define _IOCN7 0x80
9686 //==============================================================================
9689 //==============================================================================
9690 // IOCP Bits
9692 extern __at(0x0F56) __sfr IOCP;
9694 typedef struct
9696 unsigned IOCP0 : 1;
9697 unsigned IOCP1 : 1;
9698 unsigned IOCP2 : 1;
9699 unsigned IOCP3 : 1;
9700 unsigned IOCP4 : 1;
9701 unsigned IOCP5 : 1;
9702 unsigned IOCP6 : 1;
9703 unsigned IOCP7 : 1;
9704 } __IOCPbits_t;
9706 extern __at(0x0F56) volatile __IOCPbits_t IOCPbits;
9708 #define _IOCP0 0x01
9709 #define _IOCP1 0x02
9710 #define _IOCP2 0x04
9711 #define _IOCP3 0x08
9712 #define _IOCP4 0x10
9713 #define _IOCP5 0x20
9714 #define _IOCP6 0x40
9715 #define _IOCP7 0x80
9717 //==============================================================================
9720 //==============================================================================
9721 // RTCCON2 Bits
9723 extern __at(0x0F57) __sfr RTCCON2;
9725 typedef union
9727 struct
9729 unsigned RTCSECSEL0 : 1;
9730 unsigned RTCSECSEL1 : 1;
9731 unsigned RTCCLKSEL0 : 1;
9732 unsigned RTCCLKSEL1 : 1;
9733 unsigned PWCSPRE : 1;
9734 unsigned PWCCPRE : 1;
9735 unsigned PWCPOL : 1;
9736 unsigned PWCEN : 1;
9739 struct
9741 unsigned RTCSECSEL : 2;
9742 unsigned : 6;
9745 struct
9747 unsigned : 2;
9748 unsigned RTCCLKSEL : 2;
9749 unsigned : 4;
9751 } __RTCCON2bits_t;
9753 extern __at(0x0F57) volatile __RTCCON2bits_t RTCCON2bits;
9755 #define _RTCSECSEL0 0x01
9756 #define _RTCSECSEL1 0x02
9757 #define _RTCCLKSEL0 0x04
9758 #define _RTCCLKSEL1 0x08
9759 #define _PWCSPRE 0x10
9760 #define _PWCCPRE 0x20
9761 #define _PWCPOL 0x40
9762 #define _PWCEN 0x80
9764 //==============================================================================
9766 extern __at(0x0F58) __sfr ALRMVALL;
9767 extern __at(0x0F59) __sfr ALRMVALH;
9769 //==============================================================================
9770 // ALRMRPT Bits
9772 extern __at(0x0F5A) __sfr ALRMRPT;
9774 typedef struct
9776 unsigned ARPT0 : 1;
9777 unsigned ARPT1 : 1;
9778 unsigned ARPT2 : 1;
9779 unsigned ARPT3 : 1;
9780 unsigned ARPT4 : 1;
9781 unsigned ARPT5 : 1;
9782 unsigned ARPT6 : 1;
9783 unsigned ARPT7 : 1;
9784 } __ALRMRPTbits_t;
9786 extern __at(0x0F5A) volatile __ALRMRPTbits_t ALRMRPTbits;
9788 #define _ARPT0 0x01
9789 #define _ARPT1 0x02
9790 #define _ARPT2 0x04
9791 #define _ARPT3 0x08
9792 #define _ARPT4 0x10
9793 #define _ARPT5 0x20
9794 #define _ARPT6 0x40
9795 #define _ARPT7 0x80
9797 //==============================================================================
9800 //==============================================================================
9801 // ALRMCFG Bits
9803 extern __at(0x0F5B) __sfr ALRMCFG;
9805 typedef union
9807 struct
9809 unsigned ALRMPTR0 : 1;
9810 unsigned ALRMPTR1 : 1;
9811 unsigned AMASK0 : 1;
9812 unsigned AMASK1 : 1;
9813 unsigned AMASK2 : 1;
9814 unsigned AMASK3 : 1;
9815 unsigned CHIME : 1;
9816 unsigned ALRMEN : 1;
9819 struct
9821 unsigned ALRMPTR : 2;
9822 unsigned : 6;
9825 struct
9827 unsigned : 2;
9828 unsigned AMASK : 4;
9829 unsigned : 2;
9831 } __ALRMCFGbits_t;
9833 extern __at(0x0F5B) volatile __ALRMCFGbits_t ALRMCFGbits;
9835 #define _ALRMPTR0 0x01
9836 #define _ALRMPTR1 0x02
9837 #define _AMASK0 0x04
9838 #define _AMASK1 0x08
9839 #define _AMASK2 0x10
9840 #define _AMASK3 0x20
9841 #define _CHIME 0x40
9842 #define _ALRMEN 0x80
9844 //==============================================================================
9846 extern __at(0x0F5C) __sfr RTCVALL;
9847 extern __at(0x0F5D) __sfr RTCVALH;
9849 //==============================================================================
9850 // RTCCAL Bits
9852 extern __at(0x0F5E) __sfr RTCCAL;
9854 typedef struct
9856 unsigned CAL0 : 1;
9857 unsigned CAL1 : 1;
9858 unsigned CAL2 : 1;
9859 unsigned CAL3 : 1;
9860 unsigned CAL4 : 1;
9861 unsigned CAL5 : 1;
9862 unsigned CAL6 : 1;
9863 unsigned CAL7 : 1;
9864 } __RTCCALbits_t;
9866 extern __at(0x0F5E) volatile __RTCCALbits_t RTCCALbits;
9868 #define _CAL0 0x01
9869 #define _CAL1 0x02
9870 #define _CAL2 0x04
9871 #define _CAL3 0x08
9872 #define _CAL4 0x10
9873 #define _CAL5 0x20
9874 #define _CAL6 0x40
9875 #define _CAL7 0x80
9877 //==============================================================================
9880 //==============================================================================
9881 // RTCCON1 Bits
9883 extern __at(0x0F5F) __sfr RTCCON1;
9885 typedef union
9887 struct
9889 unsigned RTCPTR0 : 1;
9890 unsigned RTCPTR1 : 1;
9891 unsigned RTCOE : 1;
9892 unsigned HALFSEC : 1;
9893 unsigned RTCSYNC : 1;
9894 unsigned RTCWREN : 1;
9895 unsigned : 1;
9896 unsigned RTCEN : 1;
9899 struct
9901 unsigned RTCPTR : 2;
9902 unsigned : 6;
9904 } __RTCCON1bits_t;
9906 extern __at(0x0F5F) volatile __RTCCON1bits_t RTCCON1bits;
9908 #define _RTCPTR0 0x01
9909 #define _RTCPTR1 0x02
9910 #define _RTCOE 0x04
9911 #define _HALFSEC 0x08
9912 #define _RTCSYNC 0x10
9913 #define _RTCWREN 0x20
9914 #define _RTCEN 0x80
9916 //==============================================================================
9919 //==============================================================================
9920 // DMACON1 Bits
9922 extern __at(0x0F60) __sfr DMACON1;
9924 typedef union
9926 struct
9928 unsigned DMAEN : 1;
9929 unsigned DLYINTEN : 1;
9930 unsigned DUPLEX0 : 1;
9931 unsigned DUPLEX1 : 1;
9932 unsigned RXINC : 1;
9933 unsigned TXINC : 1;
9934 unsigned SSCON0 : 1;
9935 unsigned SSCON1 : 1;
9938 struct
9940 unsigned : 2;
9941 unsigned DUPLEX : 2;
9942 unsigned : 4;
9945 struct
9947 unsigned : 6;
9948 unsigned SSCON : 2;
9950 } __DMACON1bits_t;
9952 extern __at(0x0F60) volatile __DMACON1bits_t DMACON1bits;
9954 #define _DMAEN 0x01
9955 #define _DLYINTEN 0x02
9956 #define _DUPLEX0 0x04
9957 #define _DUPLEX1 0x08
9958 #define _RXINC 0x10
9959 #define _TXINC 0x20
9960 #define _SSCON0 0x40
9961 #define _SSCON1 0x80
9963 //==============================================================================
9966 //==============================================================================
9967 // PIE6 Bits
9969 extern __at(0x0F61) __sfr PIE6;
9971 typedef struct
9973 unsigned CMP1IE : 1;
9974 unsigned CMP2IE : 1;
9975 unsigned CMP3IE : 1;
9976 unsigned : 1;
9977 unsigned TX3IE : 1;
9978 unsigned RC3IE : 1;
9979 unsigned TX4IE : 1;
9980 unsigned RC4IE : 1;
9981 } __PIE6bits_t;
9983 extern __at(0x0F61) volatile __PIE6bits_t PIE6bits;
9985 #define _CMP1IE 0x01
9986 #define _CMP2IE 0x02
9987 #define _CMP3IE 0x04
9988 #define _TX3IE 0x10
9989 #define _RC3IE 0x20
9990 #define _TX4IE 0x40
9991 #define _RC4IE 0x80
9993 //==============================================================================
9996 //==============================================================================
9997 // WPUB Bits
9999 extern __at(0x0F62) __sfr WPUB;
10001 typedef struct
10003 unsigned WPUB0 : 1;
10004 unsigned WPUB1 : 1;
10005 unsigned WPUB2 : 1;
10006 unsigned WPUB3 : 1;
10007 unsigned WPUB4 : 1;
10008 unsigned WPUB5 : 1;
10009 unsigned WPUB6 : 1;
10010 unsigned WPUB7 : 1;
10011 } __WPUBbits_t;
10013 extern __at(0x0F62) volatile __WPUBbits_t WPUBbits;
10015 #define _WPUB0 0x01
10016 #define _WPUB1 0x02
10017 #define _WPUB2 0x04
10018 #define _WPUB3 0x08
10019 #define _WPUB4 0x10
10020 #define _WPUB5 0x20
10021 #define _WPUB6 0x40
10022 #define _WPUB7 0x80
10024 //==============================================================================
10027 //==============================================================================
10028 // ACTCON Bits
10030 extern __at(0x0F63) __sfr ACTCON;
10032 typedef struct
10034 unsigned ACTORSPOL : 1;
10035 unsigned ACTORS : 1;
10036 unsigned ACTLOCKPOL : 1;
10037 unsigned ACTLOCK : 1;
10038 unsigned ACTSRC : 1;
10039 unsigned ACTSIDL : 1;
10040 unsigned : 1;
10041 unsigned ACTEN : 1;
10042 } __ACTCONbits_t;
10044 extern __at(0x0F63) volatile __ACTCONbits_t ACTCONbits;
10046 #define _ACTORSPOL 0x01
10047 #define _ACTORS 0x02
10048 #define _ACTLOCKPOL 0x04
10049 #define _ACTLOCK 0x08
10050 #define _ACTSRC 0x10
10051 #define _ACTSIDL 0x20
10052 #define _ACTEN 0x80
10054 //==============================================================================
10057 //==============================================================================
10058 // OSCCON4 Bits
10060 extern __at(0x0F64) __sfr OSCCON4;
10062 typedef union
10064 struct
10066 unsigned : 1;
10067 unsigned : 1;
10068 unsigned : 1;
10069 unsigned : 1;
10070 unsigned : 1;
10071 unsigned PLLEN : 1;
10072 unsigned CPDIV0 : 1;
10073 unsigned CPDIV1 : 1;
10076 struct
10078 unsigned : 6;
10079 unsigned CPDIV : 2;
10081 } __OSCCON4bits_t;
10083 extern __at(0x0F64) volatile __OSCCON4bits_t OSCCON4bits;
10085 #define _PLLEN 0x20
10086 #define _CPDIV0 0x40
10087 #define _CPDIV1 0x80
10089 //==============================================================================
10092 //==============================================================================
10093 // OSCCON3 Bits
10095 extern __at(0x0F65) __sfr OSCCON3;
10097 typedef union
10099 struct
10101 unsigned IRCF0 : 1;
10102 unsigned IRCF1 : 1;
10103 unsigned IRCF2 : 1;
10104 unsigned : 1;
10105 unsigned : 1;
10106 unsigned : 1;
10107 unsigned : 1;
10108 unsigned : 1;
10111 struct
10113 unsigned IRCF : 3;
10114 unsigned : 5;
10116 } __OSCCON3bits_t;
10118 extern __at(0x0F65) volatile __OSCCON3bits_t OSCCON3bits;
10120 #define _IRCF0 0x01
10121 #define _IRCF1 0x02
10122 #define _IRCF2 0x04
10124 //==============================================================================
10127 //==============================================================================
10128 // OSCCON2 Bits
10130 extern __at(0x0F66) __sfr OSCCON2;
10132 typedef struct
10134 unsigned : 1;
10135 unsigned SOSCGO : 1;
10136 unsigned POSCEN : 1;
10137 unsigned CF : 1;
10138 unsigned : 1;
10139 unsigned LOCK : 1;
10140 unsigned IOLOCK : 1;
10141 unsigned CLKLOCK : 1;
10142 } __OSCCON2bits_t;
10144 extern __at(0x0F66) volatile __OSCCON2bits_t OSCCON2bits;
10146 #define _SOSCGO 0x02
10147 #define _POSCEN 0x04
10148 #define _CF 0x08
10149 #define _LOCK 0x20
10150 #define _IOLOCK 0x40
10151 #define _CLKLOCK 0x80
10153 //==============================================================================
10156 //==============================================================================
10157 // BAUDCON Bits
10159 extern __at(0x0F67) __sfr BAUDCON;
10161 typedef union
10163 struct
10165 unsigned ABDEN : 1;
10166 unsigned WUE : 1;
10167 unsigned IREN : 1;
10168 unsigned BRG16 : 1;
10169 unsigned TXCKP : 1;
10170 unsigned RXDTP : 1;
10171 unsigned RCIDL : 1;
10172 unsigned ABDOVF : 1;
10175 struct
10177 unsigned : 1;
10178 unsigned : 1;
10179 unsigned : 1;
10180 unsigned : 1;
10181 unsigned CKTXP : 1;
10182 unsigned DTRXP : 1;
10183 unsigned RCMT : 1;
10184 unsigned : 1;
10187 struct
10189 unsigned : 1;
10190 unsigned : 1;
10191 unsigned : 1;
10192 unsigned : 1;
10193 unsigned SCKP : 1;
10194 unsigned : 1;
10195 unsigned : 1;
10196 unsigned : 1;
10198 } __BAUDCONbits_t;
10200 extern __at(0x0F67) volatile __BAUDCONbits_t BAUDCONbits;
10202 #define _ABDEN 0x01
10203 #define _WUE 0x02
10204 #define _IREN 0x04
10205 #define _BRG16 0x08
10206 #define _TXCKP 0x10
10207 #define _CKTXP 0x10
10208 #define _SCKP 0x10
10209 #define _RXDTP 0x20
10210 #define _DTRXP 0x20
10211 #define _RCIDL 0x40
10212 #define _RCMT 0x40
10213 #define _ABDOVF 0x80
10215 //==============================================================================
10218 //==============================================================================
10219 // BAUDCON1 Bits
10221 extern __at(0x0F67) __sfr BAUDCON1;
10223 typedef union
10225 struct
10227 unsigned ABDEN : 1;
10228 unsigned WUE : 1;
10229 unsigned IREN : 1;
10230 unsigned BRG16 : 1;
10231 unsigned TXCKP : 1;
10232 unsigned RXDTP : 1;
10233 unsigned RCIDL : 1;
10234 unsigned ABDOVF : 1;
10237 struct
10239 unsigned : 1;
10240 unsigned : 1;
10241 unsigned : 1;
10242 unsigned : 1;
10243 unsigned CKTXP : 1;
10244 unsigned DTRXP : 1;
10245 unsigned RCMT : 1;
10246 unsigned : 1;
10249 struct
10251 unsigned : 1;
10252 unsigned : 1;
10253 unsigned : 1;
10254 unsigned : 1;
10255 unsigned SCKP : 1;
10256 unsigned : 1;
10257 unsigned : 1;
10258 unsigned : 1;
10260 } __BAUDCON1bits_t;
10262 extern __at(0x0F67) volatile __BAUDCON1bits_t BAUDCON1bits;
10264 #define _BAUDCON1_ABDEN 0x01
10265 #define _BAUDCON1_WUE 0x02
10266 #define _BAUDCON1_IREN 0x04
10267 #define _BAUDCON1_BRG16 0x08
10268 #define _BAUDCON1_TXCKP 0x10
10269 #define _BAUDCON1_CKTXP 0x10
10270 #define _BAUDCON1_SCKP 0x10
10271 #define _BAUDCON1_RXDTP 0x20
10272 #define _BAUDCON1_DTRXP 0x20
10273 #define _BAUDCON1_RCIDL 0x40
10274 #define _BAUDCON1_RCMT 0x40
10275 #define _BAUDCON1_ABDOVF 0x80
10277 //==============================================================================
10280 //==============================================================================
10281 // SSP1MSK Bits
10283 extern __at(0x0F68) __sfr SSP1MSK;
10285 typedef struct
10287 unsigned MSK0 : 1;
10288 unsigned MSK1 : 1;
10289 unsigned MSK2 : 1;
10290 unsigned MSK3 : 1;
10291 unsigned MSK4 : 1;
10292 unsigned MSK5 : 1;
10293 unsigned MSK6 : 1;
10294 unsigned MSK7 : 1;
10295 } __SSP1MSKbits_t;
10297 extern __at(0x0F68) volatile __SSP1MSKbits_t SSP1MSKbits;
10299 #define _MSK0 0x01
10300 #define _MSK1 0x02
10301 #define _MSK2 0x04
10302 #define _MSK3 0x08
10303 #define _MSK4 0x10
10304 #define _MSK5 0x20
10305 #define _MSK6 0x40
10306 #define _MSK7 0x80
10308 //==============================================================================
10311 //==============================================================================
10312 // SSP1CON3 Bits
10314 extern __at(0x0F69) __sfr SSP1CON3;
10316 typedef struct
10318 unsigned DHEN : 1;
10319 unsigned AHEN : 1;
10320 unsigned SBCDE : 1;
10321 unsigned SDAHT : 1;
10322 unsigned BOEN : 1;
10323 unsigned SCIE : 1;
10324 unsigned PCIE : 1;
10325 unsigned ACKTIM : 1;
10326 } __SSP1CON3bits_t;
10328 extern __at(0x0F69) volatile __SSP1CON3bits_t SSP1CON3bits;
10330 #define _DHEN 0x01
10331 #define _AHEN 0x02
10332 #define _SBCDE 0x04
10333 #define _SDAHT 0x08
10334 #define _BOEN 0x10
10335 #define _SCIE 0x20
10336 #define _PCIE 0x40
10337 #define _ACKTIM 0x80
10339 //==============================================================================
10342 //==============================================================================
10343 // TXBUF Bits
10345 extern __at(0x0F6A) __sfr TXBUF;
10347 typedef struct
10349 unsigned TXBUF0 : 1;
10350 unsigned TXBUF1 : 1;
10351 unsigned TXBUF2 : 1;
10352 unsigned TXBUF3 : 1;
10353 unsigned TXBUF4 : 1;
10354 unsigned TXBUF5 : 1;
10355 unsigned TXBUF6 : 1;
10356 unsigned TXBUF7 : 1;
10357 } __TXBUFbits_t;
10359 extern __at(0x0F6A) volatile __TXBUFbits_t TXBUFbits;
10361 #define _TXBUF0 0x01
10362 #define _TXBUF1 0x02
10363 #define _TXBUF2 0x04
10364 #define _TXBUF3 0x08
10365 #define _TXBUF4 0x10
10366 #define _TXBUF5 0x20
10367 #define _TXBUF6 0x40
10368 #define _TXBUF7 0x80
10370 //==============================================================================
10373 //==============================================================================
10374 // DMABCH Bits
10376 extern __at(0x0F6B) __sfr DMABCH;
10378 typedef struct
10380 unsigned BC8 : 1;
10381 unsigned BC9 : 1;
10382 unsigned : 1;
10383 unsigned : 1;
10384 unsigned : 1;
10385 unsigned : 1;
10386 unsigned : 1;
10387 unsigned : 1;
10388 } __DMABCHbits_t;
10390 extern __at(0x0F6B) volatile __DMABCHbits_t DMABCHbits;
10392 #define _BC8 0x01
10393 #define _BC9 0x02
10395 //==============================================================================
10398 //==============================================================================
10399 // DMABCL Bits
10401 extern __at(0x0F6C) __sfr DMABCL;
10403 typedef struct
10405 unsigned BC0 : 1;
10406 unsigned BC1 : 1;
10407 unsigned BC2 : 1;
10408 unsigned BC3 : 1;
10409 unsigned BC4 : 1;
10410 unsigned BC5 : 1;
10411 unsigned BC6 : 1;
10412 unsigned BC7 : 1;
10413 } __DMABCLbits_t;
10415 extern __at(0x0F6C) volatile __DMABCLbits_t DMABCLbits;
10417 #define _BC0 0x01
10418 #define _BC1 0x02
10419 #define _BC2 0x04
10420 #define _BC3 0x08
10421 #define _BC4 0x10
10422 #define _BC5 0x20
10423 #define _BC6 0x40
10424 #define _BC7 0x80
10426 //==============================================================================
10429 //==============================================================================
10430 // RXADDRH Bits
10432 extern __at(0x0F6D) __sfr RXADDRH;
10434 typedef struct
10436 unsigned RXADDR8 : 1;
10437 unsigned RXADDR9 : 1;
10438 unsigned RXADDR10 : 1;
10439 unsigned RXADDR11 : 1;
10440 unsigned : 1;
10441 unsigned : 1;
10442 unsigned : 1;
10443 unsigned : 1;
10444 } __RXADDRHbits_t;
10446 extern __at(0x0F6D) volatile __RXADDRHbits_t RXADDRHbits;
10448 #define _RXADDR8 0x01
10449 #define _RXADDR9 0x02
10450 #define _RXADDR10 0x04
10451 #define _RXADDR11 0x08
10453 //==============================================================================
10456 //==============================================================================
10457 // RXADDRL Bits
10459 extern __at(0x0F6E) __sfr RXADDRL;
10461 typedef struct
10463 unsigned RXADDR0 : 1;
10464 unsigned RXADDR1 : 1;
10465 unsigned RXADDR2 : 1;
10466 unsigned RXADDR3 : 1;
10467 unsigned RXADDR4 : 1;
10468 unsigned RXADDR5 : 1;
10469 unsigned RXADDR6 : 1;
10470 unsigned RXADDR7 : 1;
10471 } __RXADDRLbits_t;
10473 extern __at(0x0F6E) volatile __RXADDRLbits_t RXADDRLbits;
10475 #define _RXADDR0 0x01
10476 #define _RXADDR1 0x02
10477 #define _RXADDR2 0x04
10478 #define _RXADDR3 0x08
10479 #define _RXADDR4 0x10
10480 #define _RXADDR5 0x20
10481 #define _RXADDR6 0x40
10482 #define _RXADDR7 0x80
10484 //==============================================================================
10487 //==============================================================================
10488 // TXADDRH Bits
10490 extern __at(0x0F6F) __sfr TXADDRH;
10492 typedef struct
10494 unsigned TXADDR8 : 1;
10495 unsigned TXADDR9 : 1;
10496 unsigned TXADDR10 : 1;
10497 unsigned TXADDR11 : 1;
10498 unsigned : 1;
10499 unsigned : 1;
10500 unsigned : 1;
10501 unsigned : 1;
10502 } __TXADDRHbits_t;
10504 extern __at(0x0F6F) volatile __TXADDRHbits_t TXADDRHbits;
10506 #define _TXADDR8 0x01
10507 #define _TXADDR9 0x02
10508 #define _TXADDR10 0x04
10509 #define _TXADDR11 0x08
10511 //==============================================================================
10514 //==============================================================================
10515 // TXADDRL Bits
10517 extern __at(0x0F70) __sfr TXADDRL;
10519 typedef struct
10521 unsigned TXADDR0 : 1;
10522 unsigned TXADDR1 : 1;
10523 unsigned TXADDR2 : 1;
10524 unsigned TXADDR3 : 1;
10525 unsigned TXADDR4 : 1;
10526 unsigned TXADDR5 : 1;
10527 unsigned TXADDR6 : 1;
10528 unsigned TXADDR7 : 1;
10529 } __TXADDRLbits_t;
10531 extern __at(0x0F70) volatile __TXADDRLbits_t TXADDRLbits;
10533 #define _TXADDR0 0x01
10534 #define _TXADDR1 0x02
10535 #define _TXADDR2 0x04
10536 #define _TXADDR3 0x08
10537 #define _TXADDR4 0x10
10538 #define _TXADDR5 0x20
10539 #define _TXADDR6 0x40
10540 #define _TXADDR7 0x80
10542 //==============================================================================
10545 //==============================================================================
10546 // PORTVP Bits
10548 extern __at(0x0F71) __sfr PORTVP;
10550 typedef struct
10552 unsigned RVP0 : 1;
10553 unsigned RVP1 : 1;
10554 unsigned RVP2 : 1;
10555 unsigned RVP3 : 1;
10556 unsigned RVP4 : 1;
10557 unsigned RVP5 : 1;
10558 unsigned RVP6 : 1;
10559 unsigned RVP7 : 1;
10560 } __PORTVPbits_t;
10562 extern __at(0x0F71) volatile __PORTVPbits_t PORTVPbits;
10564 #define _RVP0 0x01
10565 #define _RVP1 0x02
10566 #define _RVP2 0x04
10567 #define _RVP3 0x08
10568 #define _RVP4 0x10
10569 #define _RVP5 0x20
10570 #define _RVP6 0x40
10571 #define _RVP7 0x80
10573 //==============================================================================
10576 //==============================================================================
10577 // LATVP Bits
10579 extern __at(0x0F72) __sfr LATVP;
10581 typedef struct
10583 unsigned LATVP0 : 1;
10584 unsigned LATVP1 : 1;
10585 unsigned LATVP2 : 1;
10586 unsigned LATVP3 : 1;
10587 unsigned LATVP4 : 1;
10588 unsigned LATVP5 : 1;
10589 unsigned LATVP6 : 1;
10590 unsigned LATVP7 : 1;
10591 } __LATVPbits_t;
10593 extern __at(0x0F72) volatile __LATVPbits_t LATVPbits;
10595 #define _LATVP0 0x01
10596 #define _LATVP1 0x02
10597 #define _LATVP2 0x04
10598 #define _LATVP3 0x08
10599 #define _LATVP4 0x10
10600 #define _LATVP5 0x20
10601 #define _LATVP6 0x40
10602 #define _LATVP7 0x80
10604 //==============================================================================
10607 //==============================================================================
10608 // TRISVP Bits
10610 extern __at(0x0F73) __sfr TRISVP;
10612 typedef struct
10614 unsigned TRISVP0 : 1;
10615 unsigned TRISVP1 : 1;
10616 unsigned TRISVP2 : 1;
10617 unsigned TRISVP3 : 1;
10618 unsigned TRISVP4 : 1;
10619 unsigned TRISVP5 : 1;
10620 unsigned TRISVP6 : 1;
10621 unsigned TRISVP7 : 1;
10622 } __TRISVPbits_t;
10624 extern __at(0x0F73) volatile __TRISVPbits_t TRISVPbits;
10626 #define _TRISVP0 0x01
10627 #define _TRISVP1 0x02
10628 #define _TRISVP2 0x04
10629 #define _TRISVP3 0x08
10630 #define _TRISVP4 0x10
10631 #define _TRISVP5 0x20
10632 #define _TRISVP6 0x40
10633 #define _TRISVP7 0x80
10635 //==============================================================================
10638 //==============================================================================
10639 // UADDR Bits
10641 extern __at(0x0F74) __sfr UADDR;
10643 typedef union
10645 struct
10647 unsigned ADDR0 : 1;
10648 unsigned ADDR1 : 1;
10649 unsigned ADDR2 : 1;
10650 unsigned ADDR3 : 1;
10651 unsigned ADDR4 : 1;
10652 unsigned ADDR5 : 1;
10653 unsigned ADDR6 : 1;
10654 unsigned : 1;
10657 struct
10659 unsigned ADDR : 7;
10660 unsigned : 1;
10662 } __UADDRbits_t;
10664 extern __at(0x0F74) volatile __UADDRbits_t UADDRbits;
10666 #define _ADDR0 0x01
10667 #define _ADDR1 0x02
10668 #define _ADDR2 0x04
10669 #define _ADDR3 0x08
10670 #define _ADDR4 0x10
10671 #define _ADDR5 0x20
10672 #define _ADDR6 0x40
10674 //==============================================================================
10677 //==============================================================================
10678 // UCON Bits
10680 extern __at(0x0F75) __sfr UCON;
10682 typedef struct
10684 unsigned : 1;
10685 unsigned SUSPND : 1;
10686 unsigned RESUME : 1;
10687 unsigned USBEN : 1;
10688 unsigned PKTDIS : 1;
10689 unsigned SE0 : 1;
10690 unsigned PPBRST : 1;
10691 unsigned : 1;
10692 } __UCONbits_t;
10694 extern __at(0x0F75) volatile __UCONbits_t UCONbits;
10696 #define _SUSPND 0x02
10697 #define _RESUME 0x04
10698 #define _USBEN 0x08
10699 #define _PKTDIS 0x10
10700 #define _SE0 0x20
10701 #define _PPBRST 0x40
10703 //==============================================================================
10706 //==============================================================================
10707 // USTAT Bits
10709 extern __at(0x0F76) __sfr USTAT;
10711 typedef union
10713 struct
10715 unsigned : 1;
10716 unsigned PPBI : 1;
10717 unsigned DIR : 1;
10718 unsigned ENDP0 : 1;
10719 unsigned ENDP1 : 1;
10720 unsigned ENDP2 : 1;
10721 unsigned ENDP3 : 1;
10722 unsigned : 1;
10725 struct
10727 unsigned : 3;
10728 unsigned ENDP : 4;
10729 unsigned : 1;
10731 } __USTATbits_t;
10733 extern __at(0x0F76) volatile __USTATbits_t USTATbits;
10735 #define _PPBI 0x02
10736 #define _DIR 0x04
10737 #define _ENDP0 0x08
10738 #define _ENDP1 0x10
10739 #define _ENDP2 0x20
10740 #define _ENDP3 0x40
10742 //==============================================================================
10745 //==============================================================================
10746 // UEIR Bits
10748 extern __at(0x0F77) __sfr UEIR;
10750 typedef struct
10752 unsigned PIDEF : 1;
10753 unsigned CRC5EF : 1;
10754 unsigned CRC16EF : 1;
10755 unsigned DFN8EF : 1;
10756 unsigned BTOEF : 1;
10757 unsigned : 1;
10758 unsigned : 1;
10759 unsigned BTSEF : 1;
10760 } __UEIRbits_t;
10762 extern __at(0x0F77) volatile __UEIRbits_t UEIRbits;
10764 #define _PIDEF 0x01
10765 #define _CRC5EF 0x02
10766 #define _CRC16EF 0x04
10767 #define _DFN8EF 0x08
10768 #define _BTOEF 0x10
10769 #define _BTSEF 0x80
10771 //==============================================================================
10774 //==============================================================================
10775 // UIR Bits
10777 extern __at(0x0F78) __sfr UIR;
10779 typedef struct
10781 unsigned URSTIF : 1;
10782 unsigned UERRIF : 1;
10783 unsigned ACTVIF : 1;
10784 unsigned TRNIF : 1;
10785 unsigned IDLEIF : 1;
10786 unsigned STALLIF : 1;
10787 unsigned SOFIF : 1;
10788 unsigned : 1;
10789 } __UIRbits_t;
10791 extern __at(0x0F78) volatile __UIRbits_t UIRbits;
10793 #define _URSTIF 0x01
10794 #define _UERRIF 0x02
10795 #define _ACTVIF 0x04
10796 #define _TRNIF 0x08
10797 #define _IDLEIF 0x10
10798 #define _STALLIF 0x20
10799 #define _SOFIF 0x40
10801 //==============================================================================
10803 extern __at(0x0F79) __sfr UFRM;
10805 //==============================================================================
10806 // UFRMH Bits
10808 extern __at(0x0F79) __sfr UFRMH;
10810 typedef struct
10812 unsigned FRM8 : 1;
10813 unsigned FRM9 : 1;
10814 unsigned FRM10 : 1;
10815 unsigned : 1;
10816 unsigned : 1;
10817 unsigned : 1;
10818 unsigned : 1;
10819 unsigned : 1;
10820 } __UFRMHbits_t;
10822 extern __at(0x0F79) volatile __UFRMHbits_t UFRMHbits;
10824 #define _FRM8 0x01
10825 #define _FRM9 0x02
10826 #define _FRM10 0x04
10828 //==============================================================================
10831 //==============================================================================
10832 // UFRML Bits
10834 extern __at(0x0F7A) __sfr UFRML;
10836 typedef struct
10838 unsigned FRM0 : 1;
10839 unsigned FRM1 : 1;
10840 unsigned FRM2 : 1;
10841 unsigned FRM3 : 1;
10842 unsigned FRM4 : 1;
10843 unsigned FRM5 : 1;
10844 unsigned FRM6 : 1;
10845 unsigned FRM7 : 1;
10846 } __UFRMLbits_t;
10848 extern __at(0x0F7A) volatile __UFRMLbits_t UFRMLbits;
10850 #define _FRM0 0x01
10851 #define _FRM1 0x02
10852 #define _FRM2 0x04
10853 #define _FRM3 0x08
10854 #define _FRM4 0x10
10855 #define _FRM5 0x20
10856 #define _FRM6 0x40
10857 #define _FRM7 0x80
10859 //==============================================================================
10862 //==============================================================================
10863 // RCON4 Bits
10865 extern __at(0x0F7B) __sfr RCON4;
10867 typedef struct
10869 unsigned PMSLP : 1;
10870 unsigned : 1;
10871 unsigned DPSLP : 1;
10872 unsigned : 1;
10873 unsigned SRETEN : 1;
10874 unsigned : 1;
10875 unsigned : 1;
10876 unsigned : 1;
10877 } __RCON4bits_t;
10879 extern __at(0x0F7B) volatile __RCON4bits_t RCON4bits;
10881 #define _PMSLP 0x01
10882 #define _DPSLP 0x04
10883 #define _SRETEN 0x10
10885 //==============================================================================
10888 //==============================================================================
10889 // RCON3 Bits
10891 extern __at(0x0F7C) __sfr RCON3;
10893 typedef struct
10895 unsigned VBAT : 1;
10896 unsigned VBPOR : 1;
10897 unsigned VDDPOR : 1;
10898 unsigned VDDBOR : 1;
10899 unsigned : 1;
10900 unsigned : 1;
10901 unsigned : 1;
10902 unsigned STKERR : 1;
10903 } __RCON3bits_t;
10905 extern __at(0x0F7C) volatile __RCON3bits_t RCON3bits;
10907 #define _VBAT 0x01
10908 #define _VBPOR 0x02
10909 #define _VDDPOR 0x04
10910 #define _VDDBOR 0x08
10911 #define _STKERR 0x80
10913 //==============================================================================
10916 //==============================================================================
10917 // RCON2 Bits
10919 extern __at(0x0F7D) __sfr RCON2;
10921 typedef struct
10923 unsigned : 1;
10924 unsigned : 1;
10925 unsigned : 1;
10926 unsigned : 1;
10927 unsigned : 1;
10928 unsigned SWDTEN : 1;
10929 unsigned : 1;
10930 unsigned EXTR : 1;
10931 } __RCON2bits_t;
10933 extern __at(0x0F7D) volatile __RCON2bits_t RCON2bits;
10935 #define _SWDTEN 0x20
10936 #define _EXTR 0x80
10938 //==============================================================================
10940 extern __at(0x0F7E) __sfr EECON2;
10942 //==============================================================================
10943 // EECON1 Bits
10945 extern __at(0x0F7F) __sfr EECON1;
10947 typedef struct
10949 unsigned : 1;
10950 unsigned WR : 1;
10951 unsigned WREN : 1;
10952 unsigned WRERR : 1;
10953 unsigned FREE : 1;
10954 unsigned WWPROG : 1;
10955 unsigned : 1;
10956 unsigned : 1;
10957 } __EECON1bits_t;
10959 extern __at(0x0F7F) volatile __EECON1bits_t EECON1bits;
10961 #define _WR 0x02
10962 #define _WREN 0x04
10963 #define _WRERR 0x08
10964 #define _FREE 0x10
10965 #define _WWPROG 0x20
10967 //==============================================================================
10970 //==============================================================================
10971 // PORTA Bits
10973 extern __at(0x0F80) __sfr PORTA;
10975 typedef struct
10977 unsigned RA0 : 1;
10978 unsigned RA1 : 1;
10979 unsigned RA2 : 1;
10980 unsigned RA3 : 1;
10981 unsigned RA4 : 1;
10982 unsigned RA5 : 1;
10983 unsigned RA6 : 1;
10984 unsigned RA7 : 1;
10985 } __PORTAbits_t;
10987 extern __at(0x0F80) volatile __PORTAbits_t PORTAbits;
10989 #define _RA0 0x01
10990 #define _RA1 0x02
10991 #define _RA2 0x04
10992 #define _RA3 0x08
10993 #define _RA4 0x10
10994 #define _RA5 0x20
10995 #define _RA6 0x40
10996 #define _RA7 0x80
10998 //==============================================================================
11001 //==============================================================================
11002 // PORTB Bits
11004 extern __at(0x0F81) __sfr PORTB;
11006 typedef struct
11008 unsigned RB0 : 1;
11009 unsigned RB1 : 1;
11010 unsigned RB2 : 1;
11011 unsigned RB3 : 1;
11012 unsigned RB4 : 1;
11013 unsigned RB5 : 1;
11014 unsigned RB6 : 1;
11015 unsigned RB7 : 1;
11016 } __PORTBbits_t;
11018 extern __at(0x0F81) volatile __PORTBbits_t PORTBbits;
11020 #define _RB0 0x01
11021 #define _RB1 0x02
11022 #define _RB2 0x04
11023 #define _RB3 0x08
11024 #define _RB4 0x10
11025 #define _RB5 0x20
11026 #define _RB6 0x40
11027 #define _RB7 0x80
11029 //==============================================================================
11032 //==============================================================================
11033 // PORTC Bits
11035 extern __at(0x0F82) __sfr PORTC;
11037 typedef struct
11039 unsigned RC0 : 1;
11040 unsigned RC1 : 1;
11041 unsigned RC2 : 1;
11042 unsigned RC3 : 1;
11043 unsigned RC4 : 1;
11044 unsigned RC5 : 1;
11045 unsigned RC6 : 1;
11046 unsigned RC7 : 1;
11047 } __PORTCbits_t;
11049 extern __at(0x0F82) volatile __PORTCbits_t PORTCbits;
11051 #define _RC0 0x01
11052 #define _RC1 0x02
11053 #define _RC2 0x04
11054 #define _RC3 0x08
11055 #define _RC4 0x10
11056 #define _RC5 0x20
11057 #define _RC6 0x40
11058 #define _RC7 0x80
11060 //==============================================================================
11063 //==============================================================================
11064 // PORTD Bits
11066 extern __at(0x0F83) __sfr PORTD;
11068 typedef struct
11070 unsigned RD0 : 1;
11071 unsigned RD1 : 1;
11072 unsigned RD2 : 1;
11073 unsigned RD3 : 1;
11074 unsigned RD4 : 1;
11075 unsigned RD5 : 1;
11076 unsigned RD6 : 1;
11077 unsigned RD7 : 1;
11078 } __PORTDbits_t;
11080 extern __at(0x0F83) volatile __PORTDbits_t PORTDbits;
11082 #define _RD0 0x01
11083 #define _RD1 0x02
11084 #define _RD2 0x04
11085 #define _RD3 0x08
11086 #define _RD4 0x10
11087 #define _RD5 0x20
11088 #define _RD6 0x40
11089 #define _RD7 0x80
11091 //==============================================================================
11094 //==============================================================================
11095 // PORTE Bits
11097 extern __at(0x0F84) __sfr PORTE;
11099 typedef struct
11101 unsigned RE0 : 1;
11102 unsigned RE1 : 1;
11103 unsigned RE2 : 1;
11104 unsigned RE3 : 1;
11105 unsigned RE4 : 1;
11106 unsigned RE5 : 1;
11107 unsigned RE6 : 1;
11108 unsigned RE7 : 1;
11109 } __PORTEbits_t;
11111 extern __at(0x0F84) volatile __PORTEbits_t PORTEbits;
11113 #define _RE0 0x01
11114 #define _RE1 0x02
11115 #define _RE2 0x04
11116 #define _RE3 0x08
11117 #define _RE4 0x10
11118 #define _RE5 0x20
11119 #define _RE6 0x40
11120 #define _RE7 0x80
11122 //==============================================================================
11125 //==============================================================================
11126 // PORTF Bits
11128 extern __at(0x0F85) __sfr PORTF;
11130 typedef struct
11132 unsigned : 1;
11133 unsigned : 1;
11134 unsigned RF2 : 1;
11135 unsigned RF3 : 1;
11136 unsigned RF4 : 1;
11137 unsigned RF5 : 1;
11138 unsigned RF6 : 1;
11139 unsigned RF7 : 1;
11140 } __PORTFbits_t;
11142 extern __at(0x0F85) volatile __PORTFbits_t PORTFbits;
11144 #define _RF2 0x04
11145 #define _RF3 0x08
11146 #define _RF4 0x10
11147 #define _RF5 0x20
11148 #define _RF6 0x40
11149 #define _RF7 0x80
11151 //==============================================================================
11154 //==============================================================================
11155 // PORTG Bits
11157 extern __at(0x0F86) __sfr PORTG;
11159 typedef struct
11161 unsigned RG0 : 1;
11162 unsigned RG1 : 1;
11163 unsigned RG2 : 1;
11164 unsigned RG3 : 1;
11165 unsigned RG4 : 1;
11166 unsigned : 1;
11167 unsigned RG6 : 1;
11168 unsigned RG7 : 1;
11169 } __PORTGbits_t;
11171 extern __at(0x0F86) volatile __PORTGbits_t PORTGbits;
11173 #define _RG0 0x01
11174 #define _RG1 0x02
11175 #define _RG2 0x04
11176 #define _RG3 0x08
11177 #define _RG4 0x10
11178 #define _RG6 0x40
11179 #define _RG7 0x80
11181 //==============================================================================
11184 //==============================================================================
11185 // PORTH Bits
11187 extern __at(0x0F87) __sfr PORTH;
11189 typedef struct
11191 unsigned RH0 : 1;
11192 unsigned RH1 : 1;
11193 unsigned RH2 : 1;
11194 unsigned RH3 : 1;
11195 unsigned RH4 : 1;
11196 unsigned RH5 : 1;
11197 unsigned RH6 : 1;
11198 unsigned RH7 : 1;
11199 } __PORTHbits_t;
11201 extern __at(0x0F87) volatile __PORTHbits_t PORTHbits;
11203 #define _RH0 0x01
11204 #define _RH1 0x02
11205 #define _RH2 0x04
11206 #define _RH3 0x08
11207 #define _RH4 0x10
11208 #define _RH5 0x20
11209 #define _RH6 0x40
11210 #define _RH7 0x80
11212 //==============================================================================
11215 //==============================================================================
11216 // PORTJ Bits
11218 extern __at(0x0F88) __sfr PORTJ;
11220 typedef struct
11222 unsigned RJ0 : 1;
11223 unsigned RJ1 : 1;
11224 unsigned RJ2 : 1;
11225 unsigned RJ3 : 1;
11226 unsigned RJ4 : 1;
11227 unsigned RJ5 : 1;
11228 unsigned RJ6 : 1;
11229 unsigned RJ7 : 1;
11230 } __PORTJbits_t;
11232 extern __at(0x0F88) volatile __PORTJbits_t PORTJbits;
11234 #define _RJ0 0x01
11235 #define _RJ1 0x02
11236 #define _RJ2 0x04
11237 #define _RJ3 0x08
11238 #define _RJ4 0x10
11239 #define _RJ5 0x20
11240 #define _RJ6 0x40
11241 #define _RJ7 0x80
11243 //==============================================================================
11246 //==============================================================================
11247 // LATA Bits
11249 extern __at(0x0F89) __sfr LATA;
11251 typedef struct
11253 unsigned LATA0 : 1;
11254 unsigned LATA1 : 1;
11255 unsigned LATA2 : 1;
11256 unsigned LATA3 : 1;
11257 unsigned LATA4 : 1;
11258 unsigned LATA5 : 1;
11259 unsigned LATA6 : 1;
11260 unsigned LATA7 : 1;
11261 } __LATAbits_t;
11263 extern __at(0x0F89) volatile __LATAbits_t LATAbits;
11265 #define _LATA0 0x01
11266 #define _LATA1 0x02
11267 #define _LATA2 0x04
11268 #define _LATA3 0x08
11269 #define _LATA4 0x10
11270 #define _LATA5 0x20
11271 #define _LATA6 0x40
11272 #define _LATA7 0x80
11274 //==============================================================================
11277 //==============================================================================
11278 // LATB Bits
11280 extern __at(0x0F8A) __sfr LATB;
11282 typedef struct
11284 unsigned LATB0 : 1;
11285 unsigned LATB1 : 1;
11286 unsigned LATB2 : 1;
11287 unsigned LATB3 : 1;
11288 unsigned LATB4 : 1;
11289 unsigned LATB5 : 1;
11290 unsigned LATB6 : 1;
11291 unsigned LATB7 : 1;
11292 } __LATBbits_t;
11294 extern __at(0x0F8A) volatile __LATBbits_t LATBbits;
11296 #define _LATB0 0x01
11297 #define _LATB1 0x02
11298 #define _LATB2 0x04
11299 #define _LATB3 0x08
11300 #define _LATB4 0x10
11301 #define _LATB5 0x20
11302 #define _LATB6 0x40
11303 #define _LATB7 0x80
11305 //==============================================================================
11308 //==============================================================================
11309 // LATC Bits
11311 extern __at(0x0F8B) __sfr LATC;
11313 typedef struct
11315 unsigned LATC0 : 1;
11316 unsigned LATC1 : 1;
11317 unsigned LATC2 : 1;
11318 unsigned LATC3 : 1;
11319 unsigned LATC4 : 1;
11320 unsigned LATC5 : 1;
11321 unsigned LATC6 : 1;
11322 unsigned LATC7 : 1;
11323 } __LATCbits_t;
11325 extern __at(0x0F8B) volatile __LATCbits_t LATCbits;
11327 #define _LATC0 0x01
11328 #define _LATC1 0x02
11329 #define _LATC2 0x04
11330 #define _LATC3 0x08
11331 #define _LATC4 0x10
11332 #define _LATC5 0x20
11333 #define _LATC6 0x40
11334 #define _LATC7 0x80
11336 //==============================================================================
11339 //==============================================================================
11340 // LATD Bits
11342 extern __at(0x0F8C) __sfr LATD;
11344 typedef struct
11346 unsigned LATD0 : 1;
11347 unsigned LATD1 : 1;
11348 unsigned LATD2 : 1;
11349 unsigned LATD3 : 1;
11350 unsigned LATD4 : 1;
11351 unsigned LATD5 : 1;
11352 unsigned LATD6 : 1;
11353 unsigned LATD7 : 1;
11354 } __LATDbits_t;
11356 extern __at(0x0F8C) volatile __LATDbits_t LATDbits;
11358 #define _LATD0 0x01
11359 #define _LATD1 0x02
11360 #define _LATD2 0x04
11361 #define _LATD3 0x08
11362 #define _LATD4 0x10
11363 #define _LATD5 0x20
11364 #define _LATD6 0x40
11365 #define _LATD7 0x80
11367 //==============================================================================
11370 //==============================================================================
11371 // LATE Bits
11373 extern __at(0x0F8D) __sfr LATE;
11375 typedef struct
11377 unsigned LATE0 : 1;
11378 unsigned LATE1 : 1;
11379 unsigned LATE2 : 1;
11380 unsigned LATE3 : 1;
11381 unsigned LATE4 : 1;
11382 unsigned LATE5 : 1;
11383 unsigned LATE6 : 1;
11384 unsigned LATE7 : 1;
11385 } __LATEbits_t;
11387 extern __at(0x0F8D) volatile __LATEbits_t LATEbits;
11389 #define _LATE0 0x01
11390 #define _LATE1 0x02
11391 #define _LATE2 0x04
11392 #define _LATE3 0x08
11393 #define _LATE4 0x10
11394 #define _LATE5 0x20
11395 #define _LATE6 0x40
11396 #define _LATE7 0x80
11398 //==============================================================================
11401 //==============================================================================
11402 // LATF Bits
11404 extern __at(0x0F8E) __sfr LATF;
11406 typedef struct
11408 unsigned : 1;
11409 unsigned : 1;
11410 unsigned LATF2 : 1;
11411 unsigned LATF3 : 1;
11412 unsigned LATF4 : 1;
11413 unsigned LATF5 : 1;
11414 unsigned LATF6 : 1;
11415 unsigned LATF7 : 1;
11416 } __LATFbits_t;
11418 extern __at(0x0F8E) volatile __LATFbits_t LATFbits;
11420 #define _LATF2 0x04
11421 #define _LATF3 0x08
11422 #define _LATF4 0x10
11423 #define _LATF5 0x20
11424 #define _LATF6 0x40
11425 #define _LATF7 0x80
11427 //==============================================================================
11430 //==============================================================================
11431 // LATG Bits
11433 extern __at(0x0F8F) __sfr LATG;
11435 typedef struct
11437 unsigned LATG0 : 1;
11438 unsigned LATG1 : 1;
11439 unsigned LATG2 : 1;
11440 unsigned LATG3 : 1;
11441 unsigned LATG4 : 1;
11442 unsigned : 1;
11443 unsigned LATG6 : 1;
11444 unsigned LATG7 : 1;
11445 } __LATGbits_t;
11447 extern __at(0x0F8F) volatile __LATGbits_t LATGbits;
11449 #define _LATG0 0x01
11450 #define _LATG1 0x02
11451 #define _LATG2 0x04
11452 #define _LATG3 0x08
11453 #define _LATG4 0x10
11454 #define _LATG6 0x40
11455 #define _LATG7 0x80
11457 //==============================================================================
11460 //==============================================================================
11461 // LATH Bits
11463 extern __at(0x0F90) __sfr LATH;
11465 typedef struct
11467 unsigned LATH0 : 1;
11468 unsigned LATH1 : 1;
11469 unsigned LATH2 : 1;
11470 unsigned LATH3 : 1;
11471 unsigned LATH4 : 1;
11472 unsigned LATH5 : 1;
11473 unsigned LATH6 : 1;
11474 unsigned LATH7 : 1;
11475 } __LATHbits_t;
11477 extern __at(0x0F90) volatile __LATHbits_t LATHbits;
11479 #define _LATH0 0x01
11480 #define _LATH1 0x02
11481 #define _LATH2 0x04
11482 #define _LATH3 0x08
11483 #define _LATH4 0x10
11484 #define _LATH5 0x20
11485 #define _LATH6 0x40
11486 #define _LATH7 0x80
11488 //==============================================================================
11491 //==============================================================================
11492 // LATJ Bits
11494 extern __at(0x0F91) __sfr LATJ;
11496 typedef struct
11498 unsigned LATJ0 : 1;
11499 unsigned LATJ1 : 1;
11500 unsigned LATJ2 : 1;
11501 unsigned LATJ3 : 1;
11502 unsigned LATJ4 : 1;
11503 unsigned LATJ5 : 1;
11504 unsigned LATJ6 : 1;
11505 unsigned LATJ7 : 1;
11506 } __LATJbits_t;
11508 extern __at(0x0F91) volatile __LATJbits_t LATJbits;
11510 #define _LATJ0 0x01
11511 #define _LATJ1 0x02
11512 #define _LATJ2 0x04
11513 #define _LATJ3 0x08
11514 #define _LATJ4 0x10
11515 #define _LATJ5 0x20
11516 #define _LATJ6 0x40
11517 #define _LATJ7 0x80
11519 //==============================================================================
11522 //==============================================================================
11523 // TRISA Bits
11525 extern __at(0x0F92) __sfr TRISA;
11527 typedef struct
11529 unsigned TRISA0 : 1;
11530 unsigned TRISA1 : 1;
11531 unsigned TRISA2 : 1;
11532 unsigned TRISA3 : 1;
11533 unsigned TRISA4 : 1;
11534 unsigned TRISA5 : 1;
11535 unsigned TRISA6 : 1;
11536 unsigned TRISA7 : 1;
11537 } __TRISAbits_t;
11539 extern __at(0x0F92) volatile __TRISAbits_t TRISAbits;
11541 #define _TRISA0 0x01
11542 #define _TRISA1 0x02
11543 #define _TRISA2 0x04
11544 #define _TRISA3 0x08
11545 #define _TRISA4 0x10
11546 #define _TRISA5 0x20
11547 #define _TRISA6 0x40
11548 #define _TRISA7 0x80
11550 //==============================================================================
11553 //==============================================================================
11554 // TRISB Bits
11556 extern __at(0x0F93) __sfr TRISB;
11558 typedef struct
11560 unsigned TRISB0 : 1;
11561 unsigned TRISB1 : 1;
11562 unsigned TRISB2 : 1;
11563 unsigned TRISB3 : 1;
11564 unsigned TRISB4 : 1;
11565 unsigned TRISB5 : 1;
11566 unsigned TRISB6 : 1;
11567 unsigned TRISB7 : 1;
11568 } __TRISBbits_t;
11570 extern __at(0x0F93) volatile __TRISBbits_t TRISBbits;
11572 #define _TRISB0 0x01
11573 #define _TRISB1 0x02
11574 #define _TRISB2 0x04
11575 #define _TRISB3 0x08
11576 #define _TRISB4 0x10
11577 #define _TRISB5 0x20
11578 #define _TRISB6 0x40
11579 #define _TRISB7 0x80
11581 //==============================================================================
11584 //==============================================================================
11585 // TRISC Bits
11587 extern __at(0x0F94) __sfr TRISC;
11589 typedef struct
11591 unsigned TRISC0 : 1;
11592 unsigned TRISC1 : 1;
11593 unsigned TRISC2 : 1;
11594 unsigned TRISC3 : 1;
11595 unsigned TRISC4 : 1;
11596 unsigned TRISC5 : 1;
11597 unsigned TRISC6 : 1;
11598 unsigned TRISC7 : 1;
11599 } __TRISCbits_t;
11601 extern __at(0x0F94) volatile __TRISCbits_t TRISCbits;
11603 #define _TRISC0 0x01
11604 #define _TRISC1 0x02
11605 #define _TRISC2 0x04
11606 #define _TRISC3 0x08
11607 #define _TRISC4 0x10
11608 #define _TRISC5 0x20
11609 #define _TRISC6 0x40
11610 #define _TRISC7 0x80
11612 //==============================================================================
11615 //==============================================================================
11616 // TRISD Bits
11618 extern __at(0x0F95) __sfr TRISD;
11620 typedef struct
11622 unsigned TRISD0 : 1;
11623 unsigned TRISD1 : 1;
11624 unsigned TRISD2 : 1;
11625 unsigned TRISD3 : 1;
11626 unsigned TRISD4 : 1;
11627 unsigned TRISD5 : 1;
11628 unsigned TRISD6 : 1;
11629 unsigned TRISD7 : 1;
11630 } __TRISDbits_t;
11632 extern __at(0x0F95) volatile __TRISDbits_t TRISDbits;
11634 #define _TRISD0 0x01
11635 #define _TRISD1 0x02
11636 #define _TRISD2 0x04
11637 #define _TRISD3 0x08
11638 #define _TRISD4 0x10
11639 #define _TRISD5 0x20
11640 #define _TRISD6 0x40
11641 #define _TRISD7 0x80
11643 //==============================================================================
11646 //==============================================================================
11647 // TRISE Bits
11649 extern __at(0x0F96) __sfr TRISE;
11651 typedef struct
11653 unsigned TRISE0 : 1;
11654 unsigned TRISE1 : 1;
11655 unsigned TRISE2 : 1;
11656 unsigned TRISE3 : 1;
11657 unsigned TRISE4 : 1;
11658 unsigned TRISE5 : 1;
11659 unsigned TRISE6 : 1;
11660 unsigned TRISE7 : 1;
11661 } __TRISEbits_t;
11663 extern __at(0x0F96) volatile __TRISEbits_t TRISEbits;
11665 #define _TRISE0 0x01
11666 #define _TRISE1 0x02
11667 #define _TRISE2 0x04
11668 #define _TRISE3 0x08
11669 #define _TRISE4 0x10
11670 #define _TRISE5 0x20
11671 #define _TRISE6 0x40
11672 #define _TRISE7 0x80
11674 //==============================================================================
11677 //==============================================================================
11678 // TRISF Bits
11680 extern __at(0x0F97) __sfr TRISF;
11682 typedef struct
11684 unsigned : 1;
11685 unsigned : 1;
11686 unsigned TRISF2 : 1;
11687 unsigned TRISF3 : 1;
11688 unsigned TRISF4 : 1;
11689 unsigned TRISF5 : 1;
11690 unsigned TRISF6 : 1;
11691 unsigned TRISF7 : 1;
11692 } __TRISFbits_t;
11694 extern __at(0x0F97) volatile __TRISFbits_t TRISFbits;
11696 #define _TRISF2 0x04
11697 #define _TRISF3 0x08
11698 #define _TRISF4 0x10
11699 #define _TRISF5 0x20
11700 #define _TRISF6 0x40
11701 #define _TRISF7 0x80
11703 //==============================================================================
11706 //==============================================================================
11707 // TRISG Bits
11709 extern __at(0x0F98) __sfr TRISG;
11711 typedef struct
11713 unsigned TRISG0 : 1;
11714 unsigned TRISG1 : 1;
11715 unsigned TRISG2 : 1;
11716 unsigned TRISG3 : 1;
11717 unsigned TRISG4 : 1;
11718 unsigned : 1;
11719 unsigned TRISG6 : 1;
11720 unsigned TRISG7 : 1;
11721 } __TRISGbits_t;
11723 extern __at(0x0F98) volatile __TRISGbits_t TRISGbits;
11725 #define _TRISG0 0x01
11726 #define _TRISG1 0x02
11727 #define _TRISG2 0x04
11728 #define _TRISG3 0x08
11729 #define _TRISG4 0x10
11730 #define _TRISG6 0x40
11731 #define _TRISG7 0x80
11733 //==============================================================================
11736 //==============================================================================
11737 // TRISH Bits
11739 extern __at(0x0F99) __sfr TRISH;
11741 typedef struct
11743 unsigned TRISH0 : 1;
11744 unsigned TRISH1 : 1;
11745 unsigned TRISH2 : 1;
11746 unsigned TRISH3 : 1;
11747 unsigned TRISH4 : 1;
11748 unsigned TRISH5 : 1;
11749 unsigned TRISH6 : 1;
11750 unsigned TRISH7 : 1;
11751 } __TRISHbits_t;
11753 extern __at(0x0F99) volatile __TRISHbits_t TRISHbits;
11755 #define _TRISH0 0x01
11756 #define _TRISH1 0x02
11757 #define _TRISH2 0x04
11758 #define _TRISH3 0x08
11759 #define _TRISH4 0x10
11760 #define _TRISH5 0x20
11761 #define _TRISH6 0x40
11762 #define _TRISH7 0x80
11764 //==============================================================================
11767 //==============================================================================
11768 // TRISJ Bits
11770 extern __at(0x0F9A) __sfr TRISJ;
11772 typedef struct
11774 unsigned TRISJ0 : 1;
11775 unsigned TRISJ1 : 1;
11776 unsigned TRISJ2 : 1;
11777 unsigned TRISJ3 : 1;
11778 unsigned TRISJ4 : 1;
11779 unsigned TRISJ5 : 1;
11780 unsigned TRISJ6 : 1;
11781 unsigned TRISJ7 : 1;
11782 } __TRISJbits_t;
11784 extern __at(0x0F9A) volatile __TRISJbits_t TRISJbits;
11786 #define _TRISJ0 0x01
11787 #define _TRISJ1 0x02
11788 #define _TRISJ2 0x04
11789 #define _TRISJ3 0x08
11790 #define _TRISJ4 0x10
11791 #define _TRISJ5 0x20
11792 #define _TRISJ6 0x40
11793 #define _TRISJ7 0x80
11795 //==============================================================================
11798 //==============================================================================
11799 // OSCTUNE Bits
11801 extern __at(0x0F9B) __sfr OSCTUNE;
11803 typedef union
11805 struct
11807 unsigned TUN0 : 1;
11808 unsigned TUN1 : 1;
11809 unsigned TUN2 : 1;
11810 unsigned TUN3 : 1;
11811 unsigned TUN4 : 1;
11812 unsigned TUN5 : 1;
11813 unsigned : 1;
11814 unsigned : 1;
11817 struct
11819 unsigned TUN : 6;
11820 unsigned : 2;
11822 } __OSCTUNEbits_t;
11824 extern __at(0x0F9B) volatile __OSCTUNEbits_t OSCTUNEbits;
11826 #define _TUN0 0x01
11827 #define _TUN1 0x02
11828 #define _TUN2 0x04
11829 #define _TUN3 0x08
11830 #define _TUN4 0x10
11831 #define _TUN5 0x20
11833 //==============================================================================
11836 //==============================================================================
11837 // PSTR1CON Bits
11839 extern __at(0x0F9C) __sfr PSTR1CON;
11841 typedef union
11843 struct
11845 unsigned STRA : 1;
11846 unsigned STRB : 1;
11847 unsigned STRC : 1;
11848 unsigned STRD : 1;
11849 unsigned STRSYNC : 1;
11850 unsigned : 1;
11851 unsigned CMPL0 : 1;
11852 unsigned CMPL1 : 1;
11855 struct
11857 unsigned : 6;
11858 unsigned CMPL : 2;
11860 } __PSTR1CONbits_t;
11862 extern __at(0x0F9C) volatile __PSTR1CONbits_t PSTR1CONbits;
11864 #define _STRA 0x01
11865 #define _STRB 0x02
11866 #define _STRC 0x04
11867 #define _STRD 0x08
11868 #define _STRSYNC 0x10
11869 #define _CMPL0 0x40
11870 #define _CMPL1 0x80
11872 //==============================================================================
11875 //==============================================================================
11876 // PIE1 Bits
11878 extern __at(0x0F9D) __sfr PIE1;
11880 typedef struct
11882 unsigned TMR1IE : 1;
11883 unsigned TMR2IE : 1;
11884 unsigned TMR1GIE : 1;
11885 unsigned SSP1IE : 1;
11886 unsigned TX1IE : 1;
11887 unsigned RC1IE : 1;
11888 unsigned ADIE : 1;
11889 unsigned PSPIE : 1;
11890 } __PIE1bits_t;
11892 extern __at(0x0F9D) volatile __PIE1bits_t PIE1bits;
11894 #define _TMR1IE 0x01
11895 #define _TMR2IE 0x02
11896 #define _TMR1GIE 0x04
11897 #define _SSP1IE 0x08
11898 #define _TX1IE 0x10
11899 #define _RC1IE 0x20
11900 #define _ADIE 0x40
11901 #define _PSPIE 0x80
11903 //==============================================================================
11906 //==============================================================================
11907 // PIR1 Bits
11909 extern __at(0x0F9E) __sfr PIR1;
11911 typedef struct
11913 unsigned TMR1IF : 1;
11914 unsigned TMR2IF : 1;
11915 unsigned TMR1GIF : 1;
11916 unsigned SSP1IF : 1;
11917 unsigned TX1IF : 1;
11918 unsigned RC1IF : 1;
11919 unsigned ADIF : 1;
11920 unsigned PSPIF : 1;
11921 } __PIR1bits_t;
11923 extern __at(0x0F9E) volatile __PIR1bits_t PIR1bits;
11925 #define _TMR1IF 0x01
11926 #define _TMR2IF 0x02
11927 #define _TMR1GIF 0x04
11928 #define _SSP1IF 0x08
11929 #define _TX1IF 0x10
11930 #define _RC1IF 0x20
11931 #define _ADIF 0x40
11932 #define _PSPIF 0x80
11934 //==============================================================================
11937 //==============================================================================
11938 // IPR1 Bits
11940 extern __at(0x0F9F) __sfr IPR1;
11942 typedef struct
11944 unsigned TMR1IP : 1;
11945 unsigned TMR2IP : 1;
11946 unsigned TMR1GIP : 1;
11947 unsigned SSP1IP : 1;
11948 unsigned TX1IP : 1;
11949 unsigned RC1IP : 1;
11950 unsigned ADIP : 1;
11951 unsigned PSPIP : 1;
11952 } __IPR1bits_t;
11954 extern __at(0x0F9F) volatile __IPR1bits_t IPR1bits;
11956 #define _TMR1IP 0x01
11957 #define _TMR2IP 0x02
11958 #define _TMR1GIP 0x04
11959 #define _SSP1IP 0x08
11960 #define _TX1IP 0x10
11961 #define _RC1IP 0x20
11962 #define _ADIP 0x40
11963 #define _PSPIP 0x80
11965 //==============================================================================
11968 //==============================================================================
11969 // PIE2 Bits
11971 extern __at(0x0FA0) __sfr PIE2;
11973 typedef struct
11975 unsigned TMR3GIE : 1;
11976 unsigned TMR3IE : 1;
11977 unsigned HLVDIE : 1;
11978 unsigned BCL1IE : 1;
11979 unsigned USBIE : 1;
11980 unsigned BCL2IE : 1;
11981 unsigned SSP2IE : 1;
11982 unsigned OSCFIE : 1;
11983 } __PIE2bits_t;
11985 extern __at(0x0FA0) volatile __PIE2bits_t PIE2bits;
11987 #define _TMR3GIE 0x01
11988 #define _TMR3IE 0x02
11989 #define _HLVDIE 0x04
11990 #define _BCL1IE 0x08
11991 #define _USBIE 0x10
11992 #define _BCL2IE 0x20
11993 #define _SSP2IE 0x40
11994 #define _OSCFIE 0x80
11996 //==============================================================================
11999 //==============================================================================
12000 // PIR2 Bits
12002 extern __at(0x0FA1) __sfr PIR2;
12004 typedef union
12006 struct
12008 unsigned TMR3GIF : 1;
12009 unsigned TMR3IF : 1;
12010 unsigned HLVDIF : 1;
12011 unsigned BCL1IF : 1;
12012 unsigned USBIF : 1;
12013 unsigned BCL2IF : 1;
12014 unsigned SSP2IF : 1;
12015 unsigned OSCFIF : 1;
12018 struct
12020 unsigned : 1;
12021 unsigned : 1;
12022 unsigned LVDIF : 1;
12023 unsigned : 1;
12024 unsigned : 1;
12025 unsigned : 1;
12026 unsigned : 1;
12027 unsigned : 1;
12029 } __PIR2bits_t;
12031 extern __at(0x0FA1) volatile __PIR2bits_t PIR2bits;
12033 #define _TMR3GIF 0x01
12034 #define _TMR3IF 0x02
12035 #define _HLVDIF 0x04
12036 #define _LVDIF 0x04
12037 #define _BCL1IF 0x08
12038 #define _USBIF 0x10
12039 #define _BCL2IF 0x20
12040 #define _SSP2IF 0x40
12041 #define _OSCFIF 0x80
12043 //==============================================================================
12046 //==============================================================================
12047 // IPR2 Bits
12049 extern __at(0x0FA2) __sfr IPR2;
12051 typedef struct
12053 unsigned TMR3GIP : 1;
12054 unsigned TMR3IP : 1;
12055 unsigned HLVDIP : 1;
12056 unsigned BCL1IP : 1;
12057 unsigned USBIP : 1;
12058 unsigned BCL2IP : 1;
12059 unsigned SSP2IP : 1;
12060 unsigned OSCFIP : 1;
12061 } __IPR2bits_t;
12063 extern __at(0x0FA2) volatile __IPR2bits_t IPR2bits;
12065 #define _TMR3GIP 0x01
12066 #define _TMR3IP 0x02
12067 #define _HLVDIP 0x04
12068 #define _BCL1IP 0x08
12069 #define _USBIP 0x10
12070 #define _BCL2IP 0x20
12071 #define _SSP2IP 0x40
12072 #define _OSCFIP 0x80
12074 //==============================================================================
12077 //==============================================================================
12078 // PIE3 Bits
12080 extern __at(0x0FA3) __sfr PIE3;
12082 typedef struct
12084 unsigned RTCCIE : 1;
12085 unsigned CCP1IE : 1;
12086 unsigned CCP2IE : 1;
12087 unsigned CTMUIE : 1;
12088 unsigned TX2IE : 1;
12089 unsigned RC2IE : 1;
12090 unsigned LCDIE : 1;
12091 unsigned TMR5GIE : 1;
12092 } __PIE3bits_t;
12094 extern __at(0x0FA3) volatile __PIE3bits_t PIE3bits;
12096 #define _RTCCIE 0x01
12097 #define _CCP1IE 0x02
12098 #define _CCP2IE 0x04
12099 #define _CTMUIE 0x08
12100 #define _TX2IE 0x10
12101 #define _RC2IE 0x20
12102 #define _LCDIE 0x40
12103 #define _TMR5GIE 0x80
12105 //==============================================================================
12108 //==============================================================================
12109 // PIR3 Bits
12111 extern __at(0x0FA4) __sfr PIR3;
12113 typedef struct
12115 unsigned RTCCIF : 1;
12116 unsigned CCP1IF : 1;
12117 unsigned CCP2IF : 1;
12118 unsigned CTMUIF : 1;
12119 unsigned TX2IF : 1;
12120 unsigned RC2IF : 1;
12121 unsigned LCDIF : 1;
12122 unsigned TMR5GIF : 1;
12123 } __PIR3bits_t;
12125 extern __at(0x0FA4) volatile __PIR3bits_t PIR3bits;
12127 #define _RTCCIF 0x01
12128 #define _CCP1IF 0x02
12129 #define _CCP2IF 0x04
12130 #define _CTMUIF 0x08
12131 #define _TX2IF 0x10
12132 #define _RC2IF 0x20
12133 #define _LCDIF 0x40
12134 #define _TMR5GIF 0x80
12136 //==============================================================================
12139 //==============================================================================
12140 // IPR3 Bits
12142 extern __at(0x0FA5) __sfr IPR3;
12144 typedef struct
12146 unsigned RTCCIP : 1;
12147 unsigned CCP1IP : 1;
12148 unsigned CCP2IP : 1;
12149 unsigned CTMUIP : 1;
12150 unsigned TX2IP : 1;
12151 unsigned RC2IP : 1;
12152 unsigned LCDIP : 1;
12153 unsigned TMR5GIP : 1;
12154 } __IPR3bits_t;
12156 extern __at(0x0FA5) volatile __IPR3bits_t IPR3bits;
12158 #define _RTCCIP 0x01
12159 #define _CCP1IP 0x02
12160 #define _CCP2IP 0x04
12161 #define _CTMUIP 0x08
12162 #define _TX2IP 0x10
12163 #define _RC2IP 0x20
12164 #define _LCDIP 0x40
12165 #define _TMR5GIP 0x80
12167 //==============================================================================
12170 //==============================================================================
12171 // PIR6 Bits
12173 extern __at(0x0FA6) __sfr PIR6;
12175 typedef struct
12177 unsigned CMP1IF : 1;
12178 unsigned CMP2IF : 1;
12179 unsigned CMP3IF : 1;
12180 unsigned : 1;
12181 unsigned TX3IF : 1;
12182 unsigned RC3IF : 1;
12183 unsigned TX4IF : 1;
12184 unsigned RC4IF : 1;
12185 } __PIR6bits_t;
12187 extern __at(0x0FA6) volatile __PIR6bits_t PIR6bits;
12189 #define _CMP1IF 0x01
12190 #define _CMP2IF 0x02
12191 #define _CMP3IF 0x04
12192 #define _TX3IF 0x10
12193 #define _RC3IF 0x20
12194 #define _TX4IF 0x40
12195 #define _RC4IF 0x80
12197 //==============================================================================
12200 //==============================================================================
12201 // PSPCON Bits
12203 extern __at(0x0FA7) __sfr PSPCON;
12205 typedef struct
12207 unsigned : 1;
12208 unsigned : 1;
12209 unsigned : 1;
12210 unsigned : 1;
12211 unsigned PSPMODE : 1;
12212 unsigned IBOV : 1;
12213 unsigned OBF : 1;
12214 unsigned IBF : 1;
12215 } __PSPCONbits_t;
12217 extern __at(0x0FA7) volatile __PSPCONbits_t PSPCONbits;
12219 #define _PSPMODE 0x10
12220 #define _IBOV 0x20
12221 #define _OBF 0x40
12222 #define _IBF 0x80
12224 //==============================================================================
12227 //==============================================================================
12228 // HLVDCON Bits
12230 extern __at(0x0FA8) __sfr HLVDCON;
12232 typedef union
12234 struct
12236 unsigned HLVDL0 : 1;
12237 unsigned HLVDL1 : 1;
12238 unsigned HLVDL2 : 1;
12239 unsigned HLVDL3 : 1;
12240 unsigned HLVDEN : 1;
12241 unsigned IRVST : 1;
12242 unsigned BGVST : 1;
12243 unsigned VDIRMAG : 1;
12246 struct
12248 unsigned HLVDL : 4;
12249 unsigned : 4;
12251 } __HLVDCONbits_t;
12253 extern __at(0x0FA8) volatile __HLVDCONbits_t HLVDCONbits;
12255 #define _HLVDL0 0x01
12256 #define _HLVDL1 0x02
12257 #define _HLVDL2 0x04
12258 #define _HLVDL3 0x08
12259 #define _HLVDEN 0x10
12260 #define _IRVST 0x20
12261 #define _BGVST 0x40
12262 #define _VDIRMAG 0x80
12264 //==============================================================================
12267 //==============================================================================
12268 // IPR6 Bits
12270 extern __at(0x0FA9) __sfr IPR6;
12272 typedef struct
12274 unsigned CMP1IP : 1;
12275 unsigned CMP2IP : 1;
12276 unsigned CMP3IP : 1;
12277 unsigned : 1;
12278 unsigned TX3IP : 1;
12279 unsigned RC3IP : 1;
12280 unsigned TX4IP : 1;
12281 unsigned RC4IP : 1;
12282 } __IPR6bits_t;
12284 extern __at(0x0FA9) volatile __IPR6bits_t IPR6bits;
12286 #define _CMP1IP 0x01
12287 #define _CMP2IP 0x02
12288 #define _CMP3IP 0x04
12289 #define _TX3IP 0x10
12290 #define _RC3IP 0x20
12291 #define _TX4IP 0x40
12292 #define _RC4IP 0x80
12294 //==============================================================================
12297 //==============================================================================
12298 // T1GCON Bits
12300 extern __at(0x0FAA) __sfr T1GCON;
12302 typedef union
12304 struct
12306 unsigned T1GSS0 : 1;
12307 unsigned T1GSS1 : 1;
12308 unsigned T1GVAL : 1;
12309 unsigned T1GGO_NOT_T1DONE : 1;
12310 unsigned T1GSPM : 1;
12311 unsigned T1GTM : 1;
12312 unsigned T1GPOL : 1;
12313 unsigned TMR1GE : 1;
12316 struct
12318 unsigned : 1;
12319 unsigned : 1;
12320 unsigned : 1;
12321 unsigned T1GGO : 1;
12322 unsigned : 1;
12323 unsigned : 1;
12324 unsigned : 1;
12325 unsigned : 1;
12328 struct
12330 unsigned : 1;
12331 unsigned : 1;
12332 unsigned : 1;
12333 unsigned NOT_T1DONE : 1;
12334 unsigned : 1;
12335 unsigned : 1;
12336 unsigned : 1;
12337 unsigned : 1;
12340 struct
12342 unsigned T1GSS : 2;
12343 unsigned : 6;
12345 } __T1GCONbits_t;
12347 extern __at(0x0FAA) volatile __T1GCONbits_t T1GCONbits;
12349 #define _T1GSS0 0x01
12350 #define _T1GSS1 0x02
12351 #define _T1GVAL 0x04
12352 #define _T1GGO_NOT_T1DONE 0x08
12353 #define _T1GGO 0x08
12354 #define _NOT_T1DONE 0x08
12355 #define _T1GSPM 0x10
12356 #define _T1GTM 0x20
12357 #define _T1GPOL 0x40
12358 #define _TMR1GE 0x80
12360 //==============================================================================
12363 //==============================================================================
12364 // RCSTA Bits
12366 extern __at(0x0FAB) __sfr RCSTA;
12368 typedef union
12370 struct
12372 unsigned RX9D : 1;
12373 unsigned OERR : 1;
12374 unsigned FERR : 1;
12375 unsigned ADDEN : 1;
12376 unsigned CREN : 1;
12377 unsigned SREN : 1;
12378 unsigned RX9 : 1;
12379 unsigned SPEN : 1;
12382 struct
12384 unsigned : 1;
12385 unsigned : 1;
12386 unsigned : 1;
12387 unsigned ADEN : 1;
12388 unsigned : 1;
12389 unsigned : 1;
12390 unsigned : 1;
12391 unsigned : 1;
12393 } __RCSTAbits_t;
12395 extern __at(0x0FAB) volatile __RCSTAbits_t RCSTAbits;
12397 #define _RX9D 0x01
12398 #define _OERR 0x02
12399 #define _FERR 0x04
12400 #define _ADDEN 0x08
12401 #define _ADEN 0x08
12402 #define _CREN 0x10
12403 #define _SREN 0x20
12404 #define _RX9 0x40
12405 #define _SPEN 0x80
12407 //==============================================================================
12410 //==============================================================================
12411 // RCSTA1 Bits
12413 extern __at(0x0FAB) __sfr RCSTA1;
12415 typedef union
12417 struct
12419 unsigned RX9D : 1;
12420 unsigned OERR : 1;
12421 unsigned FERR : 1;
12422 unsigned ADDEN : 1;
12423 unsigned CREN : 1;
12424 unsigned SREN : 1;
12425 unsigned RX9 : 1;
12426 unsigned SPEN : 1;
12429 struct
12431 unsigned : 1;
12432 unsigned : 1;
12433 unsigned : 1;
12434 unsigned ADEN : 1;
12435 unsigned : 1;
12436 unsigned : 1;
12437 unsigned : 1;
12438 unsigned : 1;
12440 } __RCSTA1bits_t;
12442 extern __at(0x0FAB) volatile __RCSTA1bits_t RCSTA1bits;
12444 #define _RCSTA1_RX9D 0x01
12445 #define _RCSTA1_OERR 0x02
12446 #define _RCSTA1_FERR 0x04
12447 #define _RCSTA1_ADDEN 0x08
12448 #define _RCSTA1_ADEN 0x08
12449 #define _RCSTA1_CREN 0x10
12450 #define _RCSTA1_SREN 0x20
12451 #define _RCSTA1_RX9 0x40
12452 #define _RCSTA1_SPEN 0x80
12454 //==============================================================================
12457 //==============================================================================
12458 // TXSTA Bits
12460 extern __at(0x0FAC) __sfr TXSTA;
12462 typedef struct
12464 unsigned TX9D : 1;
12465 unsigned TRMT : 1;
12466 unsigned BRGH : 1;
12467 unsigned SENDB : 1;
12468 unsigned SYNC : 1;
12469 unsigned TXEN : 1;
12470 unsigned TX9 : 1;
12471 unsigned CSRC : 1;
12472 } __TXSTAbits_t;
12474 extern __at(0x0FAC) volatile __TXSTAbits_t TXSTAbits;
12476 #define _TX9D 0x01
12477 #define _TRMT 0x02
12478 #define _BRGH 0x04
12479 #define _SENDB 0x08
12480 #define _SYNC 0x10
12481 #define _TXEN 0x20
12482 #define _TX9 0x40
12483 #define _CSRC 0x80
12485 //==============================================================================
12488 //==============================================================================
12489 // TXSTA1 Bits
12491 extern __at(0x0FAC) __sfr TXSTA1;
12493 typedef struct
12495 unsigned TX9D : 1;
12496 unsigned TRMT : 1;
12497 unsigned BRGH : 1;
12498 unsigned SENDB : 1;
12499 unsigned SYNC : 1;
12500 unsigned TXEN : 1;
12501 unsigned TX9 : 1;
12502 unsigned CSRC : 1;
12503 } __TXSTA1bits_t;
12505 extern __at(0x0FAC) volatile __TXSTA1bits_t TXSTA1bits;
12507 #define _TXSTA1_TX9D 0x01
12508 #define _TXSTA1_TRMT 0x02
12509 #define _TXSTA1_BRGH 0x04
12510 #define _TXSTA1_SENDB 0x08
12511 #define _TXSTA1_SYNC 0x10
12512 #define _TXSTA1_TXEN 0x20
12513 #define _TXSTA1_TX9 0x40
12514 #define _TXSTA1_CSRC 0x80
12516 //==============================================================================
12518 extern __at(0x0FAD) __sfr TXREG;
12519 extern __at(0x0FAD) __sfr TXREG1;
12520 extern __at(0x0FAE) __sfr RCREG;
12521 extern __at(0x0FAE) __sfr RCREG1;
12523 //==============================================================================
12524 // SPBRG Bits
12526 extern __at(0x0FAF) __sfr SPBRG;
12528 typedef struct
12530 unsigned BRG0 : 1;
12531 unsigned BRG1 : 1;
12532 unsigned BRG2 : 1;
12533 unsigned BRG3 : 1;
12534 unsigned BRG4 : 1;
12535 unsigned BRG5 : 1;
12536 unsigned BRG6 : 1;
12537 unsigned BRG7 : 1;
12538 } __SPBRGbits_t;
12540 extern __at(0x0FAF) volatile __SPBRGbits_t SPBRGbits;
12542 #define _BRG0 0x01
12543 #define _BRG1 0x02
12544 #define _BRG2 0x04
12545 #define _BRG3 0x08
12546 #define _BRG4 0x10
12547 #define _BRG5 0x20
12548 #define _BRG6 0x40
12549 #define _BRG7 0x80
12551 //==============================================================================
12554 //==============================================================================
12555 // SPBRG1 Bits
12557 extern __at(0x0FAF) __sfr SPBRG1;
12559 typedef struct
12561 unsigned BRG0 : 1;
12562 unsigned BRG1 : 1;
12563 unsigned BRG2 : 1;
12564 unsigned BRG3 : 1;
12565 unsigned BRG4 : 1;
12566 unsigned BRG5 : 1;
12567 unsigned BRG6 : 1;
12568 unsigned BRG7 : 1;
12569 } __SPBRG1bits_t;
12571 extern __at(0x0FAF) volatile __SPBRG1bits_t SPBRG1bits;
12573 #define _SPBRG1_BRG0 0x01
12574 #define _SPBRG1_BRG1 0x02
12575 #define _SPBRG1_BRG2 0x04
12576 #define _SPBRG1_BRG3 0x08
12577 #define _SPBRG1_BRG4 0x10
12578 #define _SPBRG1_BRG5 0x20
12579 #define _SPBRG1_BRG6 0x40
12580 #define _SPBRG1_BRG7 0x80
12582 //==============================================================================
12585 //==============================================================================
12586 // T3GCON Bits
12588 extern __at(0x0FB0) __sfr T3GCON;
12590 typedef union
12592 struct
12594 unsigned T3GSS0 : 1;
12595 unsigned T3GSS1 : 1;
12596 unsigned T3GVAL : 1;
12597 unsigned T3GGO_NOT_T3DONE : 1;
12598 unsigned T3GSPM : 1;
12599 unsigned T3GTM : 1;
12600 unsigned T3GPOL : 1;
12601 unsigned TMR3GE : 1;
12604 struct
12606 unsigned : 1;
12607 unsigned : 1;
12608 unsigned : 1;
12609 unsigned T3GGO : 1;
12610 unsigned : 1;
12611 unsigned : 1;
12612 unsigned : 1;
12613 unsigned : 1;
12616 struct
12618 unsigned : 1;
12619 unsigned : 1;
12620 unsigned : 1;
12621 unsigned NOT_T3DONE : 1;
12622 unsigned : 1;
12623 unsigned : 1;
12624 unsigned : 1;
12625 unsigned : 1;
12628 struct
12630 unsigned T3GSS : 2;
12631 unsigned : 6;
12633 } __T3GCONbits_t;
12635 extern __at(0x0FB0) volatile __T3GCONbits_t T3GCONbits;
12637 #define _T3GSS0 0x01
12638 #define _T3GSS1 0x02
12639 #define _T3GVAL 0x04
12640 #define _T3GGO_NOT_T3DONE 0x08
12641 #define _T3GGO 0x08
12642 #define _NOT_T3DONE 0x08
12643 #define _T3GSPM 0x10
12644 #define _T3GTM 0x20
12645 #define _T3GPOL 0x40
12646 #define _TMR3GE 0x80
12648 //==============================================================================
12651 //==============================================================================
12652 // T3CON Bits
12654 extern __at(0x0FB1) __sfr T3CON;
12656 typedef union
12658 struct
12660 unsigned TMR3ON : 1;
12661 unsigned RD16 : 1;
12662 unsigned NOT_T3SYNC : 1;
12663 unsigned SOSCEN : 1;
12664 unsigned T3CKPS0 : 1;
12665 unsigned T3CKPS1 : 1;
12666 unsigned TMR3CS0 : 1;
12667 unsigned TMR3CS1 : 1;
12670 struct
12672 unsigned : 4;
12673 unsigned T3CKPS : 2;
12674 unsigned : 2;
12677 struct
12679 unsigned : 6;
12680 unsigned TMR3CS : 2;
12682 } __T3CONbits_t;
12684 extern __at(0x0FB1) volatile __T3CONbits_t T3CONbits;
12686 #define _T3CON_TMR3ON 0x01
12687 #define _T3CON_RD16 0x02
12688 #define _T3CON_NOT_T3SYNC 0x04
12689 #define _T3CON_SOSCEN 0x08
12690 #define _T3CON_T3CKPS0 0x10
12691 #define _T3CON_T3CKPS1 0x20
12692 #define _T3CON_TMR3CS0 0x40
12693 #define _T3CON_TMR3CS1 0x80
12695 //==============================================================================
12697 extern __at(0x0FB2) __sfr TMR3;
12698 extern __at(0x0FB2) __sfr TMR3L;
12699 extern __at(0x0FB3) __sfr TMR3H;
12701 //==============================================================================
12702 // PIE4 Bits
12704 extern __at(0x0FB4) __sfr PIE4;
12706 typedef struct
12708 unsigned ECCP3IE : 1;
12709 unsigned CCP4IE : 1;
12710 unsigned CCP5IE : 1;
12711 unsigned CCP6IE : 1;
12712 unsigned CCP7IE : 1;
12713 unsigned CCP8IE : 1;
12714 unsigned CCP9IE : 1;
12715 unsigned CCP10IE : 1;
12716 } __PIE4bits_t;
12718 extern __at(0x0FB4) volatile __PIE4bits_t PIE4bits;
12720 #define _ECCP3IE 0x01
12721 #define _CCP4IE 0x02
12722 #define _CCP5IE 0x04
12723 #define _CCP6IE 0x08
12724 #define _CCP7IE 0x10
12725 #define _CCP8IE 0x20
12726 #define _CCP9IE 0x40
12727 #define _CCP10IE 0x80
12729 //==============================================================================
12732 //==============================================================================
12733 // PIR4 Bits
12735 extern __at(0x0FB5) __sfr PIR4;
12737 typedef struct
12739 unsigned ECCP3IF : 1;
12740 unsigned CCP4IF : 1;
12741 unsigned CCP5IF : 1;
12742 unsigned CCP6IF : 1;
12743 unsigned CCP7IF : 1;
12744 unsigned CCP8IF : 1;
12745 unsigned CCP9IF : 1;
12746 unsigned CCP10IF : 1;
12747 } __PIR4bits_t;
12749 extern __at(0x0FB5) volatile __PIR4bits_t PIR4bits;
12751 #define _ECCP3IF 0x01
12752 #define _CCP4IF 0x02
12753 #define _CCP5IF 0x04
12754 #define _CCP6IF 0x08
12755 #define _CCP7IF 0x10
12756 #define _CCP8IF 0x20
12757 #define _CCP9IF 0x40
12758 #define _CCP10IF 0x80
12760 //==============================================================================
12763 //==============================================================================
12764 // IPR4 Bits
12766 extern __at(0x0FB6) __sfr IPR4;
12768 typedef struct
12770 unsigned ECCP3IP : 1;
12771 unsigned CCP4IP : 1;
12772 unsigned CCP5IP : 1;
12773 unsigned CCP6IP : 1;
12774 unsigned CCP7IP : 1;
12775 unsigned CCP8IP : 1;
12776 unsigned CCP9IP : 1;
12777 unsigned CCP10IP : 1;
12778 } __IPR4bits_t;
12780 extern __at(0x0FB6) volatile __IPR4bits_t IPR4bits;
12782 #define _ECCP3IP 0x01
12783 #define _CCP4IP 0x02
12784 #define _CCP5IP 0x04
12785 #define _CCP6IP 0x08
12786 #define _CCP7IP 0x10
12787 #define _CCP8IP 0x20
12788 #define _CCP9IP 0x40
12789 #define _CCP10IP 0x80
12791 //==============================================================================
12794 //==============================================================================
12795 // PIE5 Bits
12797 extern __at(0x0FB7) __sfr PIE5;
12799 typedef struct
12801 unsigned TMR4IE : 1;
12802 unsigned TMR5IE : 1;
12803 unsigned TMR6IE : 1;
12804 unsigned : 1;
12805 unsigned TMR8IE : 1;
12806 unsigned ACTLOCKIE : 1;
12807 unsigned ACTORSIE : 1;
12808 unsigned : 1;
12809 } __PIE5bits_t;
12811 extern __at(0x0FB7) volatile __PIE5bits_t PIE5bits;
12813 #define _TMR4IE 0x01
12814 #define _TMR5IE 0x02
12815 #define _TMR6IE 0x04
12816 #define _TMR8IE 0x10
12817 #define _ACTLOCKIE 0x20
12818 #define _ACTORSIE 0x40
12820 //==============================================================================
12823 //==============================================================================
12824 // PIR5 Bits
12826 extern __at(0x0FB8) __sfr PIR5;
12828 typedef struct
12830 unsigned TMR4IF : 1;
12831 unsigned TMR5IF : 1;
12832 unsigned TMR6IF : 1;
12833 unsigned : 1;
12834 unsigned TMR8IF : 1;
12835 unsigned ACTLOCKIF : 1;
12836 unsigned ACTORSIF : 1;
12837 unsigned : 1;
12838 } __PIR5bits_t;
12840 extern __at(0x0FB8) volatile __PIR5bits_t PIR5bits;
12842 #define _TMR4IF 0x01
12843 #define _TMR5IF 0x02
12844 #define _TMR6IF 0x04
12845 #define _TMR8IF 0x10
12846 #define _ACTLOCKIF 0x20
12847 #define _ACTORSIF 0x40
12849 //==============================================================================
12852 //==============================================================================
12853 // CCP1CON Bits
12855 extern __at(0x0FB9) __sfr CCP1CON;
12857 typedef union
12859 struct
12861 unsigned CCP1M0 : 1;
12862 unsigned CCP1M1 : 1;
12863 unsigned CCP1M2 : 1;
12864 unsigned CCP1M3 : 1;
12865 unsigned DC1B0 : 1;
12866 unsigned DC1B1 : 1;
12867 unsigned P1M0 : 1;
12868 unsigned P1M1 : 1;
12871 struct
12873 unsigned : 1;
12874 unsigned : 1;
12875 unsigned : 1;
12876 unsigned : 1;
12877 unsigned CCP1Y : 1;
12878 unsigned CCP1X : 1;
12879 unsigned : 1;
12880 unsigned : 1;
12883 struct
12885 unsigned CCP1M : 4;
12886 unsigned : 4;
12889 struct
12891 unsigned : 4;
12892 unsigned DC1B : 2;
12893 unsigned : 2;
12896 struct
12898 unsigned : 6;
12899 unsigned P1M : 2;
12901 } __CCP1CONbits_t;
12903 extern __at(0x0FB9) volatile __CCP1CONbits_t CCP1CONbits;
12905 #define _CCP1M0 0x01
12906 #define _CCP1M1 0x02
12907 #define _CCP1M2 0x04
12908 #define _CCP1M3 0x08
12909 #define _DC1B0 0x10
12910 #define _CCP1Y 0x10
12911 #define _DC1B1 0x20
12912 #define _CCP1X 0x20
12913 #define _P1M0 0x40
12914 #define _P1M1 0x80
12916 //==============================================================================
12918 extern __at(0x0FBA) __sfr CCPR1;
12919 extern __at(0x0FBA) __sfr CCPR1L;
12920 extern __at(0x0FBB) __sfr CCPR1H;
12922 //==============================================================================
12923 // ECCP1DEL Bits
12925 extern __at(0x0FBC) __sfr ECCP1DEL;
12927 typedef union
12929 struct
12931 unsigned P1DC0 : 1;
12932 unsigned P1DC1 : 1;
12933 unsigned P1DC2 : 1;
12934 unsigned P1DC3 : 1;
12935 unsigned P1DC4 : 1;
12936 unsigned P1DC5 : 1;
12937 unsigned P1DC6 : 1;
12938 unsigned P1RSEN : 1;
12941 struct
12943 unsigned P1DC : 7;
12944 unsigned : 1;
12946 } __ECCP1DELbits_t;
12948 extern __at(0x0FBC) volatile __ECCP1DELbits_t ECCP1DELbits;
12950 #define _P1DC0 0x01
12951 #define _P1DC1 0x02
12952 #define _P1DC2 0x04
12953 #define _P1DC3 0x08
12954 #define _P1DC4 0x10
12955 #define _P1DC5 0x20
12956 #define _P1DC6 0x40
12957 #define _P1RSEN 0x80
12959 //==============================================================================
12962 //==============================================================================
12963 // ECCP1AS Bits
12965 extern __at(0x0FBD) __sfr ECCP1AS;
12967 typedef union
12969 struct
12971 unsigned PSS1BD0 : 1;
12972 unsigned PSS1BD1 : 1;
12973 unsigned PSS1AC0 : 1;
12974 unsigned PSS1AC1 : 1;
12975 unsigned ECCP1AS0 : 1;
12976 unsigned ECCP1AS1 : 1;
12977 unsigned ECCP1AS2 : 1;
12978 unsigned ECCP1ASE : 1;
12981 struct
12983 unsigned PSS1BD : 2;
12984 unsigned : 6;
12987 struct
12989 unsigned : 2;
12990 unsigned PSS1AC : 2;
12991 unsigned : 4;
12994 struct
12996 unsigned : 4;
12997 unsigned ECCP1AS : 3;
12998 unsigned : 1;
13000 } __ECCP1ASbits_t;
13002 extern __at(0x0FBD) volatile __ECCP1ASbits_t ECCP1ASbits;
13004 #define _PSS1BD0 0x01
13005 #define _PSS1BD1 0x02
13006 #define _PSS1AC0 0x04
13007 #define _PSS1AC1 0x08
13008 #define _ECCP1AS0 0x10
13009 #define _ECCP1AS1 0x20
13010 #define _ECCP1AS2 0x40
13011 #define _ECCP1ASE 0x80
13013 //==============================================================================
13016 //==============================================================================
13017 // CVRCONL Bits
13019 extern __at(0x0FBE) __sfr CVRCONL;
13021 typedef union
13023 struct
13025 unsigned CVRNSS : 1;
13026 unsigned : 1;
13027 unsigned : 1;
13028 unsigned : 1;
13029 unsigned CVRPSS0 : 1;
13030 unsigned CVRPSS1 : 1;
13031 unsigned CVROE : 1;
13032 unsigned CVREN : 1;
13035 struct
13037 unsigned : 4;
13038 unsigned CVRPSS : 2;
13039 unsigned : 2;
13041 } __CVRCONLbits_t;
13043 extern __at(0x0FBE) volatile __CVRCONLbits_t CVRCONLbits;
13045 #define _CVRNSS 0x01
13046 #define _CVRPSS0 0x10
13047 #define _CVRPSS1 0x20
13048 #define _CVROE 0x40
13049 #define _CVREN 0x80
13051 //==============================================================================
13054 //==============================================================================
13055 // CVRCONH Bits
13057 extern __at(0x0FBF) __sfr CVRCONH;
13059 typedef union
13061 struct
13063 unsigned CVR0 : 1;
13064 unsigned CVR1 : 1;
13065 unsigned CVR2 : 1;
13066 unsigned CVR3 : 1;
13067 unsigned CVR4 : 1;
13068 unsigned : 1;
13069 unsigned : 1;
13070 unsigned : 1;
13073 struct
13075 unsigned CVR : 5;
13076 unsigned : 3;
13078 } __CVRCONHbits_t;
13080 extern __at(0x0FBF) volatile __CVRCONHbits_t CVRCONHbits;
13082 #define _CVR0 0x01
13083 #define _CVR1 0x02
13084 #define _CVR2 0x04
13085 #define _CVR3 0x08
13086 #define _CVR4 0x10
13088 //==============================================================================
13091 //==============================================================================
13092 // ADCON1L Bits
13094 extern __at(0x0FC0) __sfr ADCON1L;
13096 typedef union
13098 struct
13100 unsigned DONE : 1;
13101 unsigned SAMP : 1;
13102 unsigned ASAM : 1;
13103 unsigned : 1;
13104 unsigned SSRC0 : 1;
13105 unsigned SSRC1 : 1;
13106 unsigned SSRC2 : 1;
13107 unsigned SSRC3 : 1;
13110 struct
13112 unsigned : 4;
13113 unsigned SSRC : 4;
13115 } __ADCON1Lbits_t;
13117 extern __at(0x0FC0) volatile __ADCON1Lbits_t ADCON1Lbits;
13119 #define _DONE 0x01
13120 #define _SAMP 0x02
13121 #define _ASAM 0x04
13122 #define _SSRC0 0x10
13123 #define _SSRC1 0x20
13124 #define _SSRC2 0x40
13125 #define _SSRC3 0x80
13127 //==============================================================================
13130 //==============================================================================
13131 // ADCON1H Bits
13133 extern __at(0x0FC1) __sfr ADCON1H;
13135 typedef union
13137 struct
13139 unsigned FORM0 : 1;
13140 unsigned FORM1 : 1;
13141 unsigned MODE12 : 1;
13142 unsigned : 1;
13143 unsigned : 1;
13144 unsigned : 1;
13145 unsigned : 1;
13146 unsigned ADON : 1;
13149 struct
13151 unsigned FORM : 2;
13152 unsigned : 6;
13154 } __ADCON1Hbits_t;
13156 extern __at(0x0FC1) volatile __ADCON1Hbits_t ADCON1Hbits;
13158 #define _FORM0 0x01
13159 #define _FORM1 0x02
13160 #define _MODE12 0x04
13161 #define _ADON 0x80
13163 //==============================================================================
13165 extern __at(0x0FC2) __sfr ADCBUF0;
13166 extern __at(0x0FC2) __sfr ADCBUF0L;
13167 extern __at(0x0FC3) __sfr ADCBUF0H;
13169 //==============================================================================
13170 // CMSTAT Bits
13172 extern __at(0x0FC4) __sfr CMSTAT;
13174 typedef struct
13176 unsigned C1OUT : 1;
13177 unsigned C2OUT : 1;
13178 unsigned C3OUT : 1;
13179 unsigned : 1;
13180 unsigned : 1;
13181 unsigned : 1;
13182 unsigned : 1;
13183 unsigned : 1;
13184 } __CMSTATbits_t;
13186 extern __at(0x0FC4) volatile __CMSTATbits_t CMSTATbits;
13188 #define _C1OUT 0x01
13189 #define _C2OUT 0x02
13190 #define _C3OUT 0x04
13192 //==============================================================================
13195 //==============================================================================
13196 // SSP1CON2 Bits
13198 extern __at(0x0FC5) __sfr SSP1CON2;
13200 typedef union
13202 struct
13204 unsigned SEN : 1;
13205 unsigned RSEN : 1;
13206 unsigned PEN : 1;
13207 unsigned RCEN : 1;
13208 unsigned ACKEN : 1;
13209 unsigned ACKDT : 1;
13210 unsigned ACKSTAT : 1;
13211 unsigned GCEN : 1;
13214 struct
13216 unsigned : 1;
13217 unsigned ADMSK1 : 1;
13218 unsigned ADMSK2 : 1;
13219 unsigned ADMSK3 : 1;
13220 unsigned ADMSK4 : 1;
13221 unsigned ADMSK5 : 1;
13222 unsigned : 1;
13223 unsigned : 1;
13225 } __SSP1CON2bits_t;
13227 extern __at(0x0FC5) volatile __SSP1CON2bits_t SSP1CON2bits;
13229 #define _SEN 0x01
13230 #define _RSEN 0x02
13231 #define _ADMSK1 0x02
13232 #define _PEN 0x04
13233 #define _ADMSK2 0x04
13234 #define _RCEN 0x08
13235 #define _ADMSK3 0x08
13236 #define _ACKEN 0x10
13237 #define _ADMSK4 0x10
13238 #define _ACKDT 0x20
13239 #define _ADMSK5 0x20
13240 #define _ACKSTAT 0x40
13241 #define _GCEN 0x80
13243 //==============================================================================
13246 //==============================================================================
13247 // SSP1CON1 Bits
13249 extern __at(0x0FC6) __sfr SSP1CON1;
13251 typedef union
13253 struct
13255 unsigned SSPM0 : 1;
13256 unsigned SSPM1 : 1;
13257 unsigned SSPM2 : 1;
13258 unsigned SSPM3 : 1;
13259 unsigned CKP : 1;
13260 unsigned SSPEN : 1;
13261 unsigned SSPOV : 1;
13262 unsigned WCOL : 1;
13265 struct
13267 unsigned SSPM : 4;
13268 unsigned : 4;
13270 } __SSP1CON1bits_t;
13272 extern __at(0x0FC6) volatile __SSP1CON1bits_t SSP1CON1bits;
13274 #define _SSPM0 0x01
13275 #define _SSPM1 0x02
13276 #define _SSPM2 0x04
13277 #define _SSPM3 0x08
13278 #define _CKP 0x10
13279 #define _SSPEN 0x20
13280 #define _SSPOV 0x40
13281 #define _WCOL 0x80
13283 //==============================================================================
13286 //==============================================================================
13287 // SSP1STAT Bits
13289 extern __at(0x0FC7) __sfr SSP1STAT;
13291 typedef union
13293 struct
13295 unsigned BF : 1;
13296 unsigned UA : 1;
13297 unsigned R_NOT_W : 1;
13298 unsigned S : 1;
13299 unsigned P : 1;
13300 unsigned D_NOT_A : 1;
13301 unsigned CKE : 1;
13302 unsigned SMP : 1;
13305 struct
13307 unsigned : 1;
13308 unsigned : 1;
13309 unsigned R_W : 1;
13310 unsigned I2C_START : 1;
13311 unsigned I2C_STOP : 1;
13312 unsigned D_A : 1;
13313 unsigned : 1;
13314 unsigned : 1;
13317 struct
13319 unsigned : 1;
13320 unsigned : 1;
13321 unsigned NOT_W : 1;
13322 unsigned : 1;
13323 unsigned : 1;
13324 unsigned NOT_A : 1;
13325 unsigned : 1;
13326 unsigned : 1;
13329 struct
13331 unsigned : 1;
13332 unsigned : 1;
13333 unsigned NOT_WRITE : 1;
13334 unsigned : 1;
13335 unsigned : 1;
13336 unsigned NOT_ADDRESS : 1;
13337 unsigned : 1;
13338 unsigned : 1;
13341 struct
13343 unsigned : 1;
13344 unsigned : 1;
13345 unsigned READ_WRITE : 1;
13346 unsigned : 1;
13347 unsigned : 1;
13348 unsigned DATA_ADDRESS : 1;
13349 unsigned : 1;
13350 unsigned : 1;
13353 struct
13355 unsigned : 1;
13356 unsigned : 1;
13357 unsigned I2C_READ : 1;
13358 unsigned : 1;
13359 unsigned : 1;
13360 unsigned I2C_DAT : 1;
13361 unsigned : 1;
13362 unsigned : 1;
13364 } __SSP1STATbits_t;
13366 extern __at(0x0FC7) volatile __SSP1STATbits_t SSP1STATbits;
13368 #define _BF 0x01
13369 #define _UA 0x02
13370 #define _R_NOT_W 0x04
13371 #define _R_W 0x04
13372 #define _NOT_W 0x04
13373 #define _NOT_WRITE 0x04
13374 #define _READ_WRITE 0x04
13375 #define _I2C_READ 0x04
13376 #define _S 0x08
13377 #define _I2C_START 0x08
13378 #define _P 0x10
13379 #define _I2C_STOP 0x10
13380 #define _D_NOT_A 0x20
13381 #define _D_A 0x20
13382 #define _NOT_A 0x20
13383 #define _NOT_ADDRESS 0x20
13384 #define _DATA_ADDRESS 0x20
13385 #define _I2C_DAT 0x20
13386 #define _CKE 0x40
13387 #define _SMP 0x80
13389 //==============================================================================
13391 extern __at(0x0FC8) __sfr SSP1ADD;
13392 extern __at(0x0FC9) __sfr SSP1BUF;
13394 //==============================================================================
13395 // T2CON Bits
13397 extern __at(0x0FCA) __sfr T2CON;
13399 typedef union
13401 struct
13403 unsigned T2CKPS0 : 1;
13404 unsigned T2CKPS1 : 1;
13405 unsigned TMR2ON : 1;
13406 unsigned T2OUTPS0 : 1;
13407 unsigned T2OUTPS1 : 1;
13408 unsigned T2OUTPS2 : 1;
13409 unsigned T2OUTPS3 : 1;
13410 unsigned : 1;
13413 struct
13415 unsigned T2CKPS : 2;
13416 unsigned : 6;
13419 struct
13421 unsigned : 3;
13422 unsigned T2OUTPS : 4;
13423 unsigned : 1;
13425 } __T2CONbits_t;
13427 extern __at(0x0FCA) volatile __T2CONbits_t T2CONbits;
13429 #define _T2CKPS0 0x01
13430 #define _T2CKPS1 0x02
13431 #define _TMR2ON 0x04
13432 #define _T2OUTPS0 0x08
13433 #define _T2OUTPS1 0x10
13434 #define _T2OUTPS2 0x20
13435 #define _T2OUTPS3 0x40
13437 //==============================================================================
13439 extern __at(0x0FCB) __sfr PR2;
13440 extern __at(0x0FCC) __sfr TMR2;
13442 //==============================================================================
13443 // T1CON Bits
13445 extern __at(0x0FCD) __sfr T1CON;
13447 typedef union
13449 struct
13451 unsigned TMR1ON : 1;
13452 unsigned RD16 : 1;
13453 unsigned NOT_T1SYNC : 1;
13454 unsigned SOSCEN : 1;
13455 unsigned T1CKPS0 : 1;
13456 unsigned T1CKPS1 : 1;
13457 unsigned TMR1CS0 : 1;
13458 unsigned TMR1CS1 : 1;
13461 struct
13463 unsigned : 4;
13464 unsigned T1CKPS : 2;
13465 unsigned : 2;
13468 struct
13470 unsigned : 6;
13471 unsigned TMR1CS : 2;
13473 } __T1CONbits_t;
13475 extern __at(0x0FCD) volatile __T1CONbits_t T1CONbits;
13477 #define _TMR1ON 0x01
13478 #define _RD16 0x02
13479 #define _NOT_T1SYNC 0x04
13480 #define _SOSCEN 0x08
13481 #define _T1CKPS0 0x10
13482 #define _T1CKPS1 0x20
13483 #define _TMR1CS0 0x40
13484 #define _TMR1CS1 0x80
13486 //==============================================================================
13488 extern __at(0x0FCE) __sfr TMR1;
13489 extern __at(0x0FCE) __sfr TMR1L;
13490 extern __at(0x0FCF) __sfr TMR1H;
13492 //==============================================================================
13493 // RCON Bits
13495 extern __at(0x0FD0) __sfr RCON;
13497 typedef union
13499 struct
13501 unsigned NOT_BOR : 1;
13502 unsigned NOT_POR : 1;
13503 unsigned NOT_PD : 1;
13504 unsigned NOT_TO : 1;
13505 unsigned NOT_RI : 1;
13506 unsigned NOT_CM : 1;
13507 unsigned : 1;
13508 unsigned IPEN : 1;
13511 struct
13513 unsigned BOR : 1;
13514 unsigned POR : 1;
13515 unsigned PD : 1;
13516 unsigned TO : 1;
13517 unsigned RI : 1;
13518 unsigned CM : 1;
13519 unsigned : 1;
13520 unsigned : 1;
13522 } __RCONbits_t;
13524 extern __at(0x0FD0) volatile __RCONbits_t RCONbits;
13526 #define _RCON_NOT_BOR 0x01
13527 #define _RCON_BOR 0x01
13528 #define _RCON_NOT_POR 0x02
13529 #define _RCON_POR 0x02
13530 #define _RCON_NOT_PD 0x04
13531 #define _RCON_PD 0x04
13532 #define _RCON_NOT_TO 0x08
13533 #define _RCON_TO 0x08
13534 #define _RCON_NOT_RI 0x10
13535 #define _RCON_RI 0x10
13536 #define _RCON_NOT_CM 0x20
13537 #define _RCON_CM 0x20
13538 #define _RCON_IPEN 0x80
13540 //==============================================================================
13543 //==============================================================================
13544 // IOCF Bits
13546 extern __at(0x0FD1) __sfr IOCF;
13548 typedef struct
13550 unsigned IOCF0 : 1;
13551 unsigned IOCF1 : 1;
13552 unsigned IOCF2 : 1;
13553 unsigned IOCF3 : 1;
13554 unsigned IOCF4 : 1;
13555 unsigned IOCF5 : 1;
13556 unsigned IOCF6 : 1;
13557 unsigned IOCF7 : 1;
13558 } __IOCFbits_t;
13560 extern __at(0x0FD1) volatile __IOCFbits_t IOCFbits;
13562 #define _IOCF0 0x01
13563 #define _IOCF1 0x02
13564 #define _IOCF2 0x04
13565 #define _IOCF3 0x08
13566 #define _IOCF4 0x10
13567 #define _IOCF5 0x20
13568 #define _IOCF6 0x40
13569 #define _IOCF7 0x80
13571 //==============================================================================
13574 //==============================================================================
13575 // IPR5 Bits
13577 extern __at(0x0FD2) __sfr IPR5;
13579 typedef struct
13581 unsigned TMR4IP : 1;
13582 unsigned TMR5IP : 1;
13583 unsigned TMR6IP : 1;
13584 unsigned : 1;
13585 unsigned TMR8IP : 1;
13586 unsigned ACTLOCKIP : 1;
13587 unsigned ACTORSIP : 1;
13588 unsigned : 1;
13589 } __IPR5bits_t;
13591 extern __at(0x0FD2) volatile __IPR5bits_t IPR5bits;
13593 #define _TMR4IP 0x01
13594 #define _TMR5IP 0x02
13595 #define _TMR6IP 0x04
13596 #define _TMR8IP 0x10
13597 #define _ACTLOCKIP 0x20
13598 #define _ACTORSIP 0x40
13600 //==============================================================================
13603 //==============================================================================
13604 // OSCCON Bits
13606 extern __at(0x0FD3) __sfr OSCCON;
13608 typedef union
13610 struct
13612 unsigned NOSC0 : 1;
13613 unsigned NOSC1 : 1;
13614 unsigned NOSC2 : 1;
13615 unsigned : 1;
13616 unsigned COSC0 : 1;
13617 unsigned COSC1 : 1;
13618 unsigned COSC2 : 1;
13619 unsigned IDLEN : 1;
13622 struct
13624 unsigned NOSC : 3;
13625 unsigned : 5;
13628 struct
13630 unsigned : 4;
13631 unsigned COSC : 3;
13632 unsigned : 1;
13634 } __OSCCONbits_t;
13636 extern __at(0x0FD3) volatile __OSCCONbits_t OSCCONbits;
13638 #define _NOSC0 0x01
13639 #define _NOSC1 0x02
13640 #define _NOSC2 0x04
13641 #define _COSC0 0x10
13642 #define _COSC1 0x20
13643 #define _COSC2 0x40
13644 #define _IDLEN 0x80
13646 //==============================================================================
13649 //==============================================================================
13650 // T0CON Bits
13652 extern __at(0x0FD5) __sfr T0CON;
13654 typedef union
13656 struct
13658 unsigned T0PS0 : 1;
13659 unsigned T0PS1 : 1;
13660 unsigned T0PS2 : 1;
13661 unsigned PSA : 1;
13662 unsigned T0CS0 : 1;
13663 unsigned T0CS1 : 1;
13664 unsigned T08BIT : 1;
13665 unsigned TMR0ON : 1;
13668 struct
13670 unsigned T0PS : 3;
13671 unsigned : 5;
13674 struct
13676 unsigned : 4;
13677 unsigned T0CS : 2;
13678 unsigned : 2;
13680 } __T0CONbits_t;
13682 extern __at(0x0FD5) volatile __T0CONbits_t T0CONbits;
13684 #define _T0PS0 0x01
13685 #define _T0PS1 0x02
13686 #define _T0PS2 0x04
13687 #define _PSA 0x08
13688 #define _T0CS0 0x10
13689 #define _T0CS1 0x20
13690 #define _T08BIT 0x40
13691 #define _TMR0ON 0x80
13693 //==============================================================================
13695 extern __at(0x0FD6) __sfr TMR0;
13696 extern __at(0x0FD6) __sfr TMR0L;
13697 extern __at(0x0FD7) __sfr TMR0H;
13699 //==============================================================================
13700 // STATUS Bits
13702 extern __at(0x0FD8) __sfr STATUS;
13704 typedef struct
13706 unsigned C : 1;
13707 unsigned DC : 1;
13708 unsigned Z : 1;
13709 unsigned OV : 1;
13710 unsigned N : 1;
13711 unsigned : 1;
13712 unsigned : 1;
13713 unsigned : 1;
13714 } __STATUSbits_t;
13716 extern __at(0x0FD8) volatile __STATUSbits_t STATUSbits;
13718 #define _C 0x01
13719 #define _DC 0x02
13720 #define _Z 0x04
13721 #define _OV 0x08
13722 #define _N 0x10
13724 //==============================================================================
13726 extern __at(0x0FD9) __sfr FSR2L;
13727 extern __at(0x0FDA) __sfr FSR2H;
13728 extern __at(0x0FDB) __sfr PLUSW2;
13729 extern __at(0x0FDC) __sfr PREINC2;
13730 extern __at(0x0FDD) __sfr POSTDEC2;
13731 extern __at(0x0FDE) __sfr POSTINC2;
13732 extern __at(0x0FDF) __sfr INDF2;
13733 extern __at(0x0FE0) __sfr BSR;
13734 extern __at(0x0FE1) __sfr FSR1L;
13735 extern __at(0x0FE2) __sfr FSR1H;
13736 extern __at(0x0FE3) __sfr PLUSW1;
13737 extern __at(0x0FE4) __sfr PREINC1;
13738 extern __at(0x0FE5) __sfr POSTDEC1;
13739 extern __at(0x0FE6) __sfr POSTINC1;
13740 extern __at(0x0FE7) __sfr INDF1;
13741 extern __at(0x0FE8) __sfr WREG;
13742 extern __at(0x0FE9) __sfr FSR0L;
13743 extern __at(0x0FEA) __sfr FSR0H;
13744 extern __at(0x0FEB) __sfr PLUSW0;
13745 extern __at(0x0FEC) __sfr PREINC0;
13746 extern __at(0x0FED) __sfr POSTDEC0;
13747 extern __at(0x0FEE) __sfr POSTINC0;
13748 extern __at(0x0FEF) __sfr INDF0;
13750 //==============================================================================
13751 // INTCON3 Bits
13753 extern __at(0x0FF0) __sfr INTCON3;
13755 typedef union
13757 struct
13759 unsigned INT1IF : 1;
13760 unsigned INT2IF : 1;
13761 unsigned INT3IF : 1;
13762 unsigned INT1IE : 1;
13763 unsigned INT2IE : 1;
13764 unsigned INT3IE : 1;
13765 unsigned INT1IP : 1;
13766 unsigned INT2IP : 1;
13769 struct
13771 unsigned INT1F : 1;
13772 unsigned INT2F : 1;
13773 unsigned INT3F : 1;
13774 unsigned INT1E : 1;
13775 unsigned INT2E : 1;
13776 unsigned INT3E : 1;
13777 unsigned INT1P : 1;
13778 unsigned INT2P : 1;
13780 } __INTCON3bits_t;
13782 extern __at(0x0FF0) volatile __INTCON3bits_t INTCON3bits;
13784 #define _INT1IF 0x01
13785 #define _INT1F 0x01
13786 #define _INT2IF 0x02
13787 #define _INT2F 0x02
13788 #define _INT3IF 0x04
13789 #define _INT3F 0x04
13790 #define _INT1IE 0x08
13791 #define _INT1E 0x08
13792 #define _INT2IE 0x10
13793 #define _INT2E 0x10
13794 #define _INT3IE 0x20
13795 #define _INT3E 0x20
13796 #define _INT1IP 0x40
13797 #define _INT1P 0x40
13798 #define _INT2IP 0x80
13799 #define _INT2P 0x80
13801 //==============================================================================
13804 //==============================================================================
13805 // INTCON2 Bits
13807 extern __at(0x0FF1) __sfr INTCON2;
13809 typedef union
13811 struct
13813 unsigned IOCIP : 1;
13814 unsigned INT3IP : 1;
13815 unsigned TMR0IP : 1;
13816 unsigned INTEDG3 : 1;
13817 unsigned INTEDG2 : 1;
13818 unsigned INTEDG1 : 1;
13819 unsigned INTEDG0 : 1;
13820 unsigned NOT_RBPU : 1;
13823 struct
13825 unsigned : 1;
13826 unsigned INT3P : 1;
13827 unsigned T0IP : 1;
13828 unsigned : 1;
13829 unsigned : 1;
13830 unsigned : 1;
13831 unsigned : 1;
13832 unsigned RBPU : 1;
13834 } __INTCON2bits_t;
13836 extern __at(0x0FF1) volatile __INTCON2bits_t INTCON2bits;
13838 #define _IOCIP 0x01
13839 #define _INT3IP 0x02
13840 #define _INT3P 0x02
13841 #define _TMR0IP 0x04
13842 #define _T0IP 0x04
13843 #define _INTEDG3 0x08
13844 #define _INTEDG2 0x10
13845 #define _INTEDG1 0x20
13846 #define _INTEDG0 0x40
13847 #define _NOT_RBPU 0x80
13848 #define _RBPU 0x80
13850 //==============================================================================
13853 //==============================================================================
13854 // INTCON Bits
13856 extern __at(0x0FF2) __sfr INTCON;
13858 typedef union
13860 struct
13862 unsigned IOCIF : 1;
13863 unsigned INT0IF : 1;
13864 unsigned TMR0IF : 1;
13865 unsigned IOCIE : 1;
13866 unsigned INT0IE : 1;
13867 unsigned TMR0IE : 1;
13868 unsigned PEIE_GIEL : 1;
13869 unsigned GIE_GIEH : 1;
13872 struct
13874 unsigned : 1;
13875 unsigned INT0F : 1;
13876 unsigned T0IF : 1;
13877 unsigned : 1;
13878 unsigned INT0E : 1;
13879 unsigned T0IE : 1;
13880 unsigned PEIE : 1;
13881 unsigned GIE : 1;
13884 struct
13886 unsigned : 1;
13887 unsigned : 1;
13888 unsigned : 1;
13889 unsigned : 1;
13890 unsigned : 1;
13891 unsigned : 1;
13892 unsigned GIEL : 1;
13893 unsigned GIEH : 1;
13895 } __INTCONbits_t;
13897 extern __at(0x0FF2) volatile __INTCONbits_t INTCONbits;
13899 #define _IOCIF 0x01
13900 #define _INT0IF 0x02
13901 #define _INT0F 0x02
13902 #define _TMR0IF 0x04
13903 #define _T0IF 0x04
13904 #define _IOCIE 0x08
13905 #define _INT0IE 0x10
13906 #define _INT0E 0x10
13907 #define _TMR0IE 0x20
13908 #define _T0IE 0x20
13909 #define _PEIE_GIEL 0x40
13910 #define _PEIE 0x40
13911 #define _GIEL 0x40
13912 #define _GIE_GIEH 0x80
13913 #define _GIE 0x80
13914 #define _GIEH 0x80
13916 //==============================================================================
13918 extern __at(0x0FF3) __sfr PROD;
13919 extern __at(0x0FF3) __sfr PRODL;
13920 extern __at(0x0FF4) __sfr PRODH;
13921 extern __at(0x0FF5) __sfr TABLAT;
13922 extern __at(0x0FF6) __sfr TBLPTR;
13923 extern __at(0x0FF6) __sfr TBLPTRL;
13924 extern __at(0x0FF7) __sfr TBLPTRH;
13925 extern __at(0x0FF8) __sfr TBLPTRU;
13926 extern __at(0x0FF9) __sfr PC;
13927 extern __at(0x0FF9) __sfr PCL;
13928 extern __at(0x0FFA) __sfr PCLATH;
13929 extern __at(0x0FFB) __sfr PCLATU;
13931 //==============================================================================
13932 // STKPTR Bits
13934 extern __at(0x0FFC) __sfr STKPTR;
13936 typedef union
13938 struct
13940 unsigned SP0 : 1;
13941 unsigned SP1 : 1;
13942 unsigned SP2 : 1;
13943 unsigned SP3 : 1;
13944 unsigned SP4 : 1;
13945 unsigned : 1;
13946 unsigned STKUNF : 1;
13947 unsigned STKFUL : 1;
13950 struct
13952 unsigned : 1;
13953 unsigned : 1;
13954 unsigned : 1;
13955 unsigned : 1;
13956 unsigned : 1;
13957 unsigned : 1;
13958 unsigned : 1;
13959 unsigned STKOVF : 1;
13962 struct
13964 unsigned SP : 5;
13965 unsigned : 3;
13967 } __STKPTRbits_t;
13969 extern __at(0x0FFC) volatile __STKPTRbits_t STKPTRbits;
13971 #define _SP0 0x01
13972 #define _SP1 0x02
13973 #define _SP2 0x04
13974 #define _SP3 0x08
13975 #define _SP4 0x10
13976 #define _STKUNF 0x40
13977 #define _STKFUL 0x80
13978 #define _STKOVF 0x80
13980 //==============================================================================
13982 extern __at(0x0FFD) __sfr TOS;
13983 extern __at(0x0FFD) __sfr TOSL;
13984 extern __at(0x0FFE) __sfr TOSH;
13985 extern __at(0x0FFF) __sfr TOSU;
13987 //==============================================================================
13989 // Configuration Addresses
13991 //==============================================================================
13993 #define __CONFIG1L 0x01FFF0
13994 #define __CONFIG1H 0x01FFF1
13995 #define __CONFIG2L 0x01FFF2
13996 #define __CONFIG2H 0x01FFF3
13997 #define __CONFIG3L 0x01FFF4
13998 #define __CONFIG3H 0x01FFF5
13999 #define __CONFIG4L 0x01FFF6
14000 #define __CONFIG4H 0x01FFF7
14001 #define __CONFIG5L 0x01FFF8
14002 #define __CONFIG5H 0x01FFF9
14003 #define __CONFIG6L 0x01FFFA
14004 #define __CONFIG6H 0x01FFFB
14005 #define __CONFIG7L 0x01FFFC
14006 #define __CONFIG7H 0x01FFFD
14007 #define __CONFIG8L 0x01FFFE
14008 #define __CONFIG8H 0x01FFFF
14010 //==============================================================================
14012 #endif // #ifndef __PIC18F97J94_H__