struct / union in initializer, RFE #901.
[sdcc.git] / sdcc / device / non-free / include / pic14 / pic16c925.h
blobb37d8c720210e0ca99d2793c23896c913cb52792
1 /*
2 * This declarations of the PIC16C925 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:03 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 __PIC16C925_H__
26 #define __PIC16C925_H__
28 //==============================================================================
30 // Register Addresses
32 //==============================================================================
34 #ifndef NO_ADDR_DEFINES
36 #define INDF_ADDR 0x0000
37 #define TMR0_ADDR 0x0001
38 #define PCL_ADDR 0x0002
39 #define STATUS_ADDR 0x0003
40 #define FSR_ADDR 0x0004
41 #define PORTA_ADDR 0x0005
42 #define PORTB_ADDR 0x0006
43 #define PORTC_ADDR 0x0007
44 #define PORTD_ADDR 0x0008
45 #define PORTE_ADDR 0x0009
46 #define PCLATH_ADDR 0x000A
47 #define INTCON_ADDR 0x000B
48 #define PIR1_ADDR 0x000C
49 #define TMR1_ADDR 0x000E
50 #define TMR1L_ADDR 0x000E
51 #define TMR1H_ADDR 0x000F
52 #define T1CON_ADDR 0x0010
53 #define TMR2_ADDR 0x0011
54 #define T2CON_ADDR 0x0012
55 #define SSPBUF_ADDR 0x0013
56 #define SSPCON_ADDR 0x0014
57 #define CCPR1_ADDR 0x0015
58 #define CCPR1L_ADDR 0x0015
59 #define CCPR1H_ADDR 0x0016
60 #define CCP1CON_ADDR 0x0017
61 #define ADRESH_ADDR 0x001E
62 #define ADCON0_ADDR 0x001F
63 #define OPTION_REG_ADDR 0x0081
64 #define TRISA_ADDR 0x0085
65 #define TRISB_ADDR 0x0086
66 #define TRISC_ADDR 0x0087
67 #define TRISD_ADDR 0x0088
68 #define TRISE_ADDR 0x0089
69 #define PIE1_ADDR 0x008C
70 #define PCON_ADDR 0x008E
71 #define PR2_ADDR 0x0092
72 #define SSPADD_ADDR 0x0093
73 #define SSPSTAT_ADDR 0x0094
74 #define ADRESL_ADDR 0x009E
75 #define ADCON1_ADDR 0x009F
76 #define PORTF_ADDR 0x0107
77 #define PORTG_ADDR 0x0108
78 #define PMCON1_ADDR 0x010C
79 #define LCDSE_ADDR 0x010D
80 #define LCDPS_ADDR 0x010E
81 #define LCDCON_ADDR 0x010F
82 #define LCDD00_ADDR 0x0110
83 #define LCDD01_ADDR 0x0111
84 #define LCDD02_ADDR 0x0112
85 #define LCDD03_ADDR 0x0113
86 #define LCDD04_ADDR 0x0114
87 #define LCDD05_ADDR 0x0115
88 #define LCDD06_ADDR 0x0116
89 #define LCDD07_ADDR 0x0117
90 #define LCDD08_ADDR 0x0118
91 #define LCDD09_ADDR 0x0119
92 #define LCDD10_ADDR 0x011A
93 #define LCDD11_ADDR 0x011B
94 #define LCDD12_ADDR 0x011C
95 #define LCDD13_ADDR 0x011D
96 #define LCDD14_ADDR 0x011E
97 #define LCDD15_ADDR 0x011F
98 #define TRISF_ADDR 0x0187
99 #define TRISG_ADDR 0x0188
100 #define PMDATA_ADDR 0x018C
101 #define PMADR_ADDR 0x018D
102 #define PMDATH_ADDR 0x018E
103 #define PMADRH_ADDR 0x018F
105 #endif // #ifndef NO_ADDR_DEFINES
107 //==============================================================================
109 // Register Definitions
111 //==============================================================================
113 extern __at(0x0000) __sfr INDF;
114 extern __at(0x0001) __sfr TMR0;
115 extern __at(0x0002) __sfr PCL;
117 //==============================================================================
118 // STATUS Bits
120 extern __at(0x0003) __sfr STATUS;
122 typedef union
124 struct
126 unsigned C : 1;
127 unsigned DC : 1;
128 unsigned Z : 1;
129 unsigned NOT_PD : 1;
130 unsigned NOT_TO : 1;
131 unsigned RP0 : 1;
132 unsigned RP1 : 1;
133 unsigned IRP : 1;
136 struct
138 unsigned : 5;
139 unsigned RP : 2;
140 unsigned : 1;
142 } __STATUSbits_t;
144 extern __at(0x0003) volatile __STATUSbits_t STATUSbits;
146 #define _C 0x01
147 #define _DC 0x02
148 #define _Z 0x04
149 #define _NOT_PD 0x08
150 #define _NOT_TO 0x10
151 #define _RP0 0x20
152 #define _RP1 0x40
153 #define _IRP 0x80
155 //==============================================================================
157 extern __at(0x0004) __sfr FSR;
159 //==============================================================================
160 // PORTA Bits
162 extern __at(0x0005) __sfr PORTA;
164 typedef union
166 struct
168 unsigned RA0 : 1;
169 unsigned RA1 : 1;
170 unsigned RA2 : 1;
171 unsigned RA3 : 1;
172 unsigned RA4 : 1;
173 unsigned RA5 : 1;
174 unsigned : 1;
175 unsigned : 1;
178 struct
180 unsigned RA : 6;
181 unsigned : 2;
183 } __PORTAbits_t;
185 extern __at(0x0005) volatile __PORTAbits_t PORTAbits;
187 #define _RA0 0x01
188 #define _RA1 0x02
189 #define _RA2 0x04
190 #define _RA3 0x08
191 #define _RA4 0x10
192 #define _RA5 0x20
194 //==============================================================================
197 //==============================================================================
198 // PORTB Bits
200 extern __at(0x0006) __sfr PORTB;
202 typedef struct
204 unsigned RB0 : 1;
205 unsigned RB1 : 1;
206 unsigned RB2 : 1;
207 unsigned RB3 : 1;
208 unsigned RB4 : 1;
209 unsigned RB5 : 1;
210 unsigned RB6 : 1;
211 unsigned RB7 : 1;
212 } __PORTBbits_t;
214 extern __at(0x0006) volatile __PORTBbits_t PORTBbits;
216 #define _RB0 0x01
217 #define _RB1 0x02
218 #define _RB2 0x04
219 #define _RB3 0x08
220 #define _RB4 0x10
221 #define _RB5 0x20
222 #define _RB6 0x40
223 #define _RB7 0x80
225 //==============================================================================
228 //==============================================================================
229 // PORTC Bits
231 extern __at(0x0007) __sfr PORTC;
233 typedef union
235 struct
237 unsigned RC0 : 1;
238 unsigned RC1 : 1;
239 unsigned RC2 : 1;
240 unsigned RC3 : 1;
241 unsigned RC4 : 1;
242 unsigned RC5 : 1;
243 unsigned : 1;
244 unsigned : 1;
247 struct
249 unsigned RC : 6;
250 unsigned : 2;
252 } __PORTCbits_t;
254 extern __at(0x0007) volatile __PORTCbits_t PORTCbits;
256 #define _RC0 0x01
257 #define _RC1 0x02
258 #define _RC2 0x04
259 #define _RC3 0x08
260 #define _RC4 0x10
261 #define _RC5 0x20
263 //==============================================================================
266 //==============================================================================
267 // PORTD Bits
269 extern __at(0x0008) __sfr PORTD;
271 typedef struct
273 unsigned RD0 : 1;
274 unsigned RD1 : 1;
275 unsigned RD2 : 1;
276 unsigned RD3 : 1;
277 unsigned RD4 : 1;
278 unsigned RD5 : 1;
279 unsigned RD6 : 1;
280 unsigned RD7 : 1;
281 } __PORTDbits_t;
283 extern __at(0x0008) volatile __PORTDbits_t PORTDbits;
285 #define _RD0 0x01
286 #define _RD1 0x02
287 #define _RD2 0x04
288 #define _RD3 0x08
289 #define _RD4 0x10
290 #define _RD5 0x20
291 #define _RD6 0x40
292 #define _RD7 0x80
294 //==============================================================================
297 //==============================================================================
298 // PORTE Bits
300 extern __at(0x0009) __sfr PORTE;
302 typedef struct
304 unsigned RE0 : 1;
305 unsigned RE1 : 1;
306 unsigned RE2 : 1;
307 unsigned RE3 : 1;
308 unsigned RE4 : 1;
309 unsigned RE5 : 1;
310 unsigned RE6 : 1;
311 unsigned RE7 : 1;
312 } __PORTEbits_t;
314 extern __at(0x0009) volatile __PORTEbits_t PORTEbits;
316 #define _RE0 0x01
317 #define _RE1 0x02
318 #define _RE2 0x04
319 #define _RE3 0x08
320 #define _RE4 0x10
321 #define _RE5 0x20
322 #define _RE6 0x40
323 #define _RE7 0x80
325 //==============================================================================
327 extern __at(0x000A) __sfr PCLATH;
329 //==============================================================================
330 // INTCON Bits
332 extern __at(0x000B) __sfr INTCON;
334 typedef union
336 struct
338 unsigned RBIF : 1;
339 unsigned INTF : 1;
340 unsigned T0IF : 1;
341 unsigned RBIE : 1;
342 unsigned INTE : 1;
343 unsigned T0IE : 1;
344 unsigned PEIE : 1;
345 unsigned GIE : 1;
348 struct
350 unsigned : 1;
351 unsigned : 1;
352 unsigned TMR0IF : 1;
353 unsigned : 1;
354 unsigned : 1;
355 unsigned TMR0IE : 1;
356 unsigned : 1;
357 unsigned : 1;
359 } __INTCONbits_t;
361 extern __at(0x000B) volatile __INTCONbits_t INTCONbits;
363 #define _RBIF 0x01
364 #define _INTF 0x02
365 #define _T0IF 0x04
366 #define _TMR0IF 0x04
367 #define _RBIE 0x08
368 #define _INTE 0x10
369 #define _T0IE 0x20
370 #define _TMR0IE 0x20
371 #define _PEIE 0x40
372 #define _GIE 0x80
374 //==============================================================================
377 //==============================================================================
378 // PIR1 Bits
380 extern __at(0x000C) __sfr PIR1;
382 typedef struct
384 unsigned TMR1IF : 1;
385 unsigned TMR2IF : 1;
386 unsigned CCP1IF : 1;
387 unsigned SSPIF : 1;
388 unsigned : 1;
389 unsigned : 1;
390 unsigned ADIF : 1;
391 unsigned LCDIF : 1;
392 } __PIR1bits_t;
394 extern __at(0x000C) volatile __PIR1bits_t PIR1bits;
396 #define _TMR1IF 0x01
397 #define _TMR2IF 0x02
398 #define _CCP1IF 0x04
399 #define _SSPIF 0x08
400 #define _ADIF 0x40
401 #define _LCDIF 0x80
403 //==============================================================================
405 extern __at(0x000E) __sfr TMR1;
406 extern __at(0x000E) __sfr TMR1L;
407 extern __at(0x000F) __sfr TMR1H;
409 //==============================================================================
410 // T1CON Bits
412 extern __at(0x0010) __sfr T1CON;
414 typedef union
416 struct
418 unsigned TMR1ON : 1;
419 unsigned TMR1CS : 1;
420 unsigned NOT_T1SYNC : 1;
421 unsigned T1OSCEN : 1;
422 unsigned T1CKPS0 : 1;
423 unsigned T1CKPS1 : 1;
424 unsigned : 1;
425 unsigned : 1;
428 struct
430 unsigned : 1;
431 unsigned : 1;
432 unsigned T1INSYNC : 1;
433 unsigned : 1;
434 unsigned : 1;
435 unsigned : 1;
436 unsigned : 1;
437 unsigned : 1;
440 struct
442 unsigned : 4;
443 unsigned T1CKPS : 2;
444 unsigned : 2;
446 } __T1CONbits_t;
448 extern __at(0x0010) volatile __T1CONbits_t T1CONbits;
450 #define _TMR1ON 0x01
451 #define _TMR1CS 0x02
452 #define _NOT_T1SYNC 0x04
453 #define _T1INSYNC 0x04
454 #define _T1OSCEN 0x08
455 #define _T1CKPS0 0x10
456 #define _T1CKPS1 0x20
458 //==============================================================================
460 extern __at(0x0011) __sfr TMR2;
462 //==============================================================================
463 // T2CON Bits
465 extern __at(0x0012) __sfr T2CON;
467 typedef union
469 struct
471 unsigned T2CKPS0 : 1;
472 unsigned T2CKPS1 : 1;
473 unsigned TMR2ON : 1;
474 unsigned TOUTPS0 : 1;
475 unsigned TOUTPS1 : 1;
476 unsigned TOUTPS2 : 1;
477 unsigned TOUTPS3 : 1;
478 unsigned : 1;
481 struct
483 unsigned T2CKPS : 2;
484 unsigned : 6;
487 struct
489 unsigned : 3;
490 unsigned TOUTPS : 4;
491 unsigned : 1;
493 } __T2CONbits_t;
495 extern __at(0x0012) volatile __T2CONbits_t T2CONbits;
497 #define _T2CKPS0 0x01
498 #define _T2CKPS1 0x02
499 #define _TMR2ON 0x04
500 #define _TOUTPS0 0x08
501 #define _TOUTPS1 0x10
502 #define _TOUTPS2 0x20
503 #define _TOUTPS3 0x40
505 //==============================================================================
507 extern __at(0x0013) __sfr SSPBUF;
509 //==============================================================================
510 // SSPCON Bits
512 extern __at(0x0014) __sfr SSPCON;
514 typedef union
516 struct
518 unsigned SSPM0 : 1;
519 unsigned SSPM1 : 1;
520 unsigned SSPM2 : 1;
521 unsigned SSPM3 : 1;
522 unsigned CKP : 1;
523 unsigned SSPEN : 1;
524 unsigned SSPOV : 1;
525 unsigned WCOL : 1;
528 struct
530 unsigned SSPM : 4;
531 unsigned : 4;
533 } __SSPCONbits_t;
535 extern __at(0x0014) volatile __SSPCONbits_t SSPCONbits;
537 #define _SSPM0 0x01
538 #define _SSPM1 0x02
539 #define _SSPM2 0x04
540 #define _SSPM3 0x08
541 #define _CKP 0x10
542 #define _SSPEN 0x20
543 #define _SSPOV 0x40
544 #define _WCOL 0x80
546 //==============================================================================
548 extern __at(0x0015) __sfr CCPR1;
549 extern __at(0x0015) __sfr CCPR1L;
550 extern __at(0x0016) __sfr CCPR1H;
552 //==============================================================================
553 // CCP1CON Bits
555 extern __at(0x0017) __sfr CCP1CON;
557 typedef union
559 struct
561 unsigned CCP1M0 : 1;
562 unsigned CCP1M1 : 1;
563 unsigned CCP1M2 : 1;
564 unsigned CCP1M3 : 1;
565 unsigned CCP1Y : 1;
566 unsigned CCP1X : 1;
567 unsigned : 1;
568 unsigned : 1;
571 struct
573 unsigned CCP1M : 4;
574 unsigned : 4;
576 } __CCP1CONbits_t;
578 extern __at(0x0017) volatile __CCP1CONbits_t CCP1CONbits;
580 #define _CCP1M0 0x01
581 #define _CCP1M1 0x02
582 #define _CCP1M2 0x04
583 #define _CCP1M3 0x08
584 #define _CCP1Y 0x10
585 #define _CCP1X 0x20
587 //==============================================================================
589 extern __at(0x001E) __sfr ADRESH;
591 //==============================================================================
592 // ADCON0 Bits
594 extern __at(0x001F) __sfr ADCON0;
596 typedef union
598 struct
600 unsigned ADON : 1;
601 unsigned : 1;
602 unsigned GO_NOT_DONE : 1;
603 unsigned CHS0 : 1;
604 unsigned CHS1 : 1;
605 unsigned CHS2 : 1;
606 unsigned ADCS0 : 1;
607 unsigned ADCS1 : 1;
610 struct
612 unsigned : 1;
613 unsigned : 1;
614 unsigned GO : 1;
615 unsigned : 1;
616 unsigned : 1;
617 unsigned : 1;
618 unsigned : 1;
619 unsigned : 1;
622 struct
624 unsigned : 1;
625 unsigned : 1;
626 unsigned NOT_DONE : 1;
627 unsigned : 1;
628 unsigned : 1;
629 unsigned : 1;
630 unsigned : 1;
631 unsigned : 1;
634 struct
636 unsigned : 1;
637 unsigned : 1;
638 unsigned GO_DONE : 1;
639 unsigned : 1;
640 unsigned : 1;
641 unsigned : 1;
642 unsigned : 1;
643 unsigned : 1;
646 struct
648 unsigned : 3;
649 unsigned CHS : 3;
650 unsigned : 2;
653 struct
655 unsigned : 6;
656 unsigned ADCS : 2;
658 } __ADCON0bits_t;
660 extern __at(0x001F) volatile __ADCON0bits_t ADCON0bits;
662 #define _ADON 0x01
663 #define _GO_NOT_DONE 0x04
664 #define _GO 0x04
665 #define _NOT_DONE 0x04
666 #define _GO_DONE 0x04
667 #define _CHS0 0x08
668 #define _CHS1 0x10
669 #define _CHS2 0x20
670 #define _ADCS0 0x40
671 #define _ADCS1 0x80
673 //==============================================================================
676 //==============================================================================
677 // OPTION_REG Bits
679 extern __at(0x0081) __sfr OPTION_REG;
681 typedef union
683 struct
685 unsigned PS0 : 1;
686 unsigned PS1 : 1;
687 unsigned PS2 : 1;
688 unsigned PSA : 1;
689 unsigned T0SE : 1;
690 unsigned T0CS : 1;
691 unsigned INTEDG : 1;
692 unsigned NOT_RBPU : 1;
695 struct
697 unsigned PS : 3;
698 unsigned : 5;
700 } __OPTION_REGbits_t;
702 extern __at(0x0081) volatile __OPTION_REGbits_t OPTION_REGbits;
704 #define _PS0 0x01
705 #define _PS1 0x02
706 #define _PS2 0x04
707 #define _PSA 0x08
708 #define _T0SE 0x10
709 #define _T0CS 0x20
710 #define _INTEDG 0x40
711 #define _NOT_RBPU 0x80
713 //==============================================================================
716 //==============================================================================
717 // TRISA Bits
719 extern __at(0x0085) __sfr TRISA;
721 typedef union
723 struct
725 unsigned TRISA0 : 1;
726 unsigned TRISA1 : 1;
727 unsigned TRISA2 : 1;
728 unsigned TRISA3 : 1;
729 unsigned TRISA4 : 1;
730 unsigned TRISA5 : 1;
731 unsigned : 1;
732 unsigned : 1;
735 struct
737 unsigned TRISA : 6;
738 unsigned : 2;
740 } __TRISAbits_t;
742 extern __at(0x0085) volatile __TRISAbits_t TRISAbits;
744 #define _TRISA0 0x01
745 #define _TRISA1 0x02
746 #define _TRISA2 0x04
747 #define _TRISA3 0x08
748 #define _TRISA4 0x10
749 #define _TRISA5 0x20
751 //==============================================================================
754 //==============================================================================
755 // TRISB Bits
757 extern __at(0x0086) __sfr TRISB;
759 typedef struct
761 unsigned TRISB0 : 1;
762 unsigned TRISB1 : 1;
763 unsigned TRISB2 : 1;
764 unsigned TRISB3 : 1;
765 unsigned TRISB4 : 1;
766 unsigned TRISB5 : 1;
767 unsigned TRISB6 : 1;
768 unsigned TRISB7 : 1;
769 } __TRISBbits_t;
771 extern __at(0x0086) volatile __TRISBbits_t TRISBbits;
773 #define _TRISB0 0x01
774 #define _TRISB1 0x02
775 #define _TRISB2 0x04
776 #define _TRISB3 0x08
777 #define _TRISB4 0x10
778 #define _TRISB5 0x20
779 #define _TRISB6 0x40
780 #define _TRISB7 0x80
782 //==============================================================================
785 //==============================================================================
786 // TRISC Bits
788 extern __at(0x0087) __sfr TRISC;
790 typedef union
792 struct
794 unsigned TRISC0 : 1;
795 unsigned TRISC1 : 1;
796 unsigned TRISC2 : 1;
797 unsigned TRISC3 : 1;
798 unsigned TRISC4 : 1;
799 unsigned TRISC5 : 1;
800 unsigned : 1;
801 unsigned : 1;
804 struct
806 unsigned TRISC : 6;
807 unsigned : 2;
809 } __TRISCbits_t;
811 extern __at(0x0087) volatile __TRISCbits_t TRISCbits;
813 #define _TRISC0 0x01
814 #define _TRISC1 0x02
815 #define _TRISC2 0x04
816 #define _TRISC3 0x08
817 #define _TRISC4 0x10
818 #define _TRISC5 0x20
820 //==============================================================================
823 //==============================================================================
824 // TRISD Bits
826 extern __at(0x0088) __sfr TRISD;
828 typedef struct
830 unsigned TRISD0 : 1;
831 unsigned TRISD1 : 1;
832 unsigned TRISD2 : 1;
833 unsigned TRISD3 : 1;
834 unsigned TRISD4 : 1;
835 unsigned TRISD5 : 1;
836 unsigned TRISD6 : 1;
837 unsigned TRISD7 : 1;
838 } __TRISDbits_t;
840 extern __at(0x0088) volatile __TRISDbits_t TRISDbits;
842 #define _TRISD0 0x01
843 #define _TRISD1 0x02
844 #define _TRISD2 0x04
845 #define _TRISD3 0x08
846 #define _TRISD4 0x10
847 #define _TRISD5 0x20
848 #define _TRISD6 0x40
849 #define _TRISD7 0x80
851 //==============================================================================
854 //==============================================================================
855 // TRISE Bits
857 extern __at(0x0089) __sfr TRISE;
859 typedef union
861 struct
863 unsigned TRISE0 : 1;
864 unsigned TRISE1 : 1;
865 unsigned TRISE2 : 1;
866 unsigned TRISE3 : 1;
867 unsigned TRISE4 : 1;
868 unsigned TRISE5 : 1;
869 unsigned TRISE6 : 1;
870 unsigned TRISE7 : 1;
873 struct
875 unsigned : 1;
876 unsigned : 1;
877 unsigned : 1;
878 unsigned : 1;
879 unsigned PSPMODE : 1;
880 unsigned IBOV : 1;
881 unsigned OBF : 1;
882 unsigned IBF : 1;
884 } __TRISEbits_t;
886 extern __at(0x0089) volatile __TRISEbits_t TRISEbits;
888 #define _TRISE0 0x01
889 #define _TRISE1 0x02
890 #define _TRISE2 0x04
891 #define _TRISE3 0x08
892 #define _TRISE4 0x10
893 #define _PSPMODE 0x10
894 #define _TRISE5 0x20
895 #define _IBOV 0x20
896 #define _TRISE6 0x40
897 #define _OBF 0x40
898 #define _TRISE7 0x80
899 #define _IBF 0x80
901 //==============================================================================
904 //==============================================================================
905 // PIE1 Bits
907 extern __at(0x008C) __sfr PIE1;
909 typedef struct
911 unsigned TMR1IE : 1;
912 unsigned TMR2IE : 1;
913 unsigned CCP1IE : 1;
914 unsigned SSPIE : 1;
915 unsigned : 1;
916 unsigned : 1;
917 unsigned ADIE : 1;
918 unsigned LCDIE : 1;
919 } __PIE1bits_t;
921 extern __at(0x008C) volatile __PIE1bits_t PIE1bits;
923 #define _TMR1IE 0x01
924 #define _TMR2IE 0x02
925 #define _CCP1IE 0x04
926 #define _SSPIE 0x08
927 #define _ADIE 0x40
928 #define _LCDIE 0x80
930 //==============================================================================
933 //==============================================================================
934 // PCON Bits
936 extern __at(0x008E) __sfr PCON;
938 typedef struct
940 unsigned NOT_BOR : 1;
941 unsigned NOT_POR : 1;
942 unsigned : 1;
943 unsigned : 1;
944 unsigned : 1;
945 unsigned : 1;
946 unsigned : 1;
947 unsigned : 1;
948 } __PCONbits_t;
950 extern __at(0x008E) volatile __PCONbits_t PCONbits;
952 #define _NOT_BOR 0x01
953 #define _NOT_POR 0x02
955 //==============================================================================
957 extern __at(0x0092) __sfr PR2;
958 extern __at(0x0093) __sfr SSPADD;
960 //==============================================================================
961 // SSPSTAT Bits
963 extern __at(0x0094) __sfr SSPSTAT;
965 typedef union
967 struct
969 unsigned BF : 1;
970 unsigned UA : 1;
971 unsigned R_NOT_W : 1;
972 unsigned S : 1;
973 unsigned P : 1;
974 unsigned D_NOT_A : 1;
975 unsigned CKE : 1;
976 unsigned SMP : 1;
979 struct
981 unsigned : 1;
982 unsigned : 1;
983 unsigned R : 1;
984 unsigned I2C_START : 1;
985 unsigned I2C_STOP : 1;
986 unsigned D : 1;
987 unsigned : 1;
988 unsigned : 1;
991 struct
993 unsigned : 1;
994 unsigned : 1;
995 unsigned I2C_READ : 1;
996 unsigned : 1;
997 unsigned : 1;
998 unsigned I2C_DATA : 1;
999 unsigned : 1;
1000 unsigned : 1;
1003 struct
1005 unsigned : 1;
1006 unsigned : 1;
1007 unsigned R_W : 1;
1008 unsigned : 1;
1009 unsigned : 1;
1010 unsigned D_A : 1;
1011 unsigned : 1;
1012 unsigned : 1;
1015 struct
1017 unsigned : 1;
1018 unsigned : 1;
1019 unsigned READ_WRITE : 1;
1020 unsigned : 1;
1021 unsigned : 1;
1022 unsigned DATA_ADDRESS : 1;
1023 unsigned : 1;
1024 unsigned : 1;
1027 struct
1029 unsigned : 1;
1030 unsigned : 1;
1031 unsigned NOT_W : 1;
1032 unsigned : 1;
1033 unsigned : 1;
1034 unsigned NOT_A : 1;
1035 unsigned : 1;
1036 unsigned : 1;
1039 struct
1041 unsigned : 1;
1042 unsigned : 1;
1043 unsigned NOT_WRITE : 1;
1044 unsigned : 1;
1045 unsigned : 1;
1046 unsigned NOT_ADDRESS : 1;
1047 unsigned : 1;
1048 unsigned : 1;
1050 } __SSPSTATbits_t;
1052 extern __at(0x0094) volatile __SSPSTATbits_t SSPSTATbits;
1054 #define _BF 0x01
1055 #define _UA 0x02
1056 #define _R_NOT_W 0x04
1057 #define _R 0x04
1058 #define _I2C_READ 0x04
1059 #define _R_W 0x04
1060 #define _READ_WRITE 0x04
1061 #define _NOT_W 0x04
1062 #define _NOT_WRITE 0x04
1063 #define _S 0x08
1064 #define _I2C_START 0x08
1065 #define _P 0x10
1066 #define _I2C_STOP 0x10
1067 #define _D_NOT_A 0x20
1068 #define _D 0x20
1069 #define _I2C_DATA 0x20
1070 #define _D_A 0x20
1071 #define _DATA_ADDRESS 0x20
1072 #define _NOT_A 0x20
1073 #define _NOT_ADDRESS 0x20
1074 #define _CKE 0x40
1075 #define _SMP 0x80
1077 //==============================================================================
1079 extern __at(0x009E) __sfr ADRESL;
1081 //==============================================================================
1082 // ADCON1 Bits
1084 extern __at(0x009F) __sfr ADCON1;
1086 typedef union
1088 struct
1090 unsigned PCFG0 : 1;
1091 unsigned PCFG1 : 1;
1092 unsigned PCFG2 : 1;
1093 unsigned PCFG3 : 1;
1094 unsigned : 1;
1095 unsigned : 1;
1096 unsigned : 1;
1097 unsigned ADFM : 1;
1100 struct
1102 unsigned PCFG : 4;
1103 unsigned : 4;
1105 } __ADCON1bits_t;
1107 extern __at(0x009F) volatile __ADCON1bits_t ADCON1bits;
1109 #define _PCFG0 0x01
1110 #define _PCFG1 0x02
1111 #define _PCFG2 0x04
1112 #define _PCFG3 0x08
1113 #define _ADFM 0x80
1115 //==============================================================================
1118 //==============================================================================
1119 // PORTF Bits
1121 extern __at(0x0107) __sfr PORTF;
1123 typedef struct
1125 unsigned RF0 : 1;
1126 unsigned RF1 : 1;
1127 unsigned RF2 : 1;
1128 unsigned RF3 : 1;
1129 unsigned RF4 : 1;
1130 unsigned RF5 : 1;
1131 unsigned RF6 : 1;
1132 unsigned RF7 : 1;
1133 } __PORTFbits_t;
1135 extern __at(0x0107) volatile __PORTFbits_t PORTFbits;
1137 #define _RF0 0x01
1138 #define _RF1 0x02
1139 #define _RF2 0x04
1140 #define _RF3 0x08
1141 #define _RF4 0x10
1142 #define _RF5 0x20
1143 #define _RF6 0x40
1144 #define _RF7 0x80
1146 //==============================================================================
1149 //==============================================================================
1150 // PORTG Bits
1152 extern __at(0x0108) __sfr PORTG;
1154 typedef struct
1156 unsigned RG0 : 1;
1157 unsigned RG1 : 1;
1158 unsigned RG2 : 1;
1159 unsigned RG3 : 1;
1160 unsigned RG4 : 1;
1161 unsigned RG5 : 1;
1162 unsigned RG6 : 1;
1163 unsigned RG7 : 1;
1164 } __PORTGbits_t;
1166 extern __at(0x0108) volatile __PORTGbits_t PORTGbits;
1168 #define _RG0 0x01
1169 #define _RG1 0x02
1170 #define _RG2 0x04
1171 #define _RG3 0x08
1172 #define _RG4 0x10
1173 #define _RG5 0x20
1174 #define _RG6 0x40
1175 #define _RG7 0x80
1177 //==============================================================================
1180 //==============================================================================
1181 // PMCON1 Bits
1183 extern __at(0x010C) __sfr PMCON1;
1185 typedef struct
1187 unsigned RD : 1;
1188 unsigned : 1;
1189 unsigned : 1;
1190 unsigned : 1;
1191 unsigned : 1;
1192 unsigned : 1;
1193 unsigned : 1;
1194 unsigned : 1;
1195 } __PMCON1bits_t;
1197 extern __at(0x010C) volatile __PMCON1bits_t PMCON1bits;
1199 #define _RD 0x01
1201 //==============================================================================
1204 //==============================================================================
1205 // LCDSE Bits
1207 extern __at(0x010D) __sfr LCDSE;
1209 typedef struct
1211 unsigned SE0 : 1;
1212 unsigned SE5 : 1;
1213 unsigned SE9 : 1;
1214 unsigned SE12 : 1;
1215 unsigned SE16 : 1;
1216 unsigned SE20 : 1;
1217 unsigned SE27 : 1;
1218 unsigned SE29 : 1;
1219 } __LCDSEbits_t;
1221 extern __at(0x010D) volatile __LCDSEbits_t LCDSEbits;
1223 #define _SE0 0x01
1224 #define _SE5 0x02
1225 #define _SE9 0x04
1226 #define _SE12 0x08
1227 #define _SE16 0x10
1228 #define _SE20 0x20
1229 #define _SE27 0x40
1230 #define _SE29 0x80
1232 //==============================================================================
1235 //==============================================================================
1236 // LCDPS Bits
1238 extern __at(0x010E) __sfr LCDPS;
1240 typedef union
1242 struct
1244 unsigned LP0 : 1;
1245 unsigned LP1 : 1;
1246 unsigned LP2 : 1;
1247 unsigned LP3 : 1;
1248 unsigned : 1;
1249 unsigned : 1;
1250 unsigned : 1;
1251 unsigned : 1;
1254 struct
1256 unsigned LP : 4;
1257 unsigned : 4;
1259 } __LCDPSbits_t;
1261 extern __at(0x010E) volatile __LCDPSbits_t LCDPSbits;
1263 #define _LP0 0x01
1264 #define _LP1 0x02
1265 #define _LP2 0x04
1266 #define _LP3 0x08
1268 //==============================================================================
1271 //==============================================================================
1272 // LCDCON Bits
1274 extern __at(0x010F) __sfr LCDCON;
1276 typedef union
1278 struct
1280 unsigned LMUX0 : 1;
1281 unsigned LMUX1 : 1;
1282 unsigned CS0 : 1;
1283 unsigned CS1 : 1;
1284 unsigned VGEN : 1;
1285 unsigned WERR : 1;
1286 unsigned SLPEN : 1;
1287 unsigned LCDEN : 1;
1290 struct
1292 unsigned : 1;
1293 unsigned : 1;
1294 unsigned : 1;
1295 unsigned : 1;
1296 unsigned BIAS : 1;
1297 unsigned : 1;
1298 unsigned : 1;
1299 unsigned : 1;
1302 struct
1304 unsigned LMUX : 2;
1305 unsigned : 6;
1308 struct
1310 unsigned : 2;
1311 unsigned CS : 2;
1312 unsigned : 4;
1314 } __LCDCONbits_t;
1316 extern __at(0x010F) volatile __LCDCONbits_t LCDCONbits;
1318 #define _LMUX0 0x01
1319 #define _LMUX1 0x02
1320 #define _CS0 0x04
1321 #define _CS1 0x08
1322 #define _VGEN 0x10
1323 #define _BIAS 0x10
1324 #define _WERR 0x20
1325 #define _SLPEN 0x40
1326 #define _LCDEN 0x80
1328 //==============================================================================
1331 //==============================================================================
1332 // LCDD00 Bits
1334 extern __at(0x0110) __sfr LCDD00;
1336 typedef struct
1338 unsigned SEG00 : 1;
1339 unsigned SEG01 : 1;
1340 unsigned SEG02 : 1;
1341 unsigned SEG03 : 1;
1342 unsigned SEG04 : 1;
1343 unsigned SEG05 : 1;
1344 unsigned SEG06 : 1;
1345 unsigned SEG07 : 1;
1346 } __LCDD00bits_t;
1348 extern __at(0x0110) volatile __LCDD00bits_t LCDD00bits;
1350 #define _SEG00 0x01
1351 #define _SEG01 0x02
1352 #define _SEG02 0x04
1353 #define _SEG03 0x08
1354 #define _SEG04 0x10
1355 #define _SEG05 0x20
1356 #define _SEG06 0x40
1357 #define _SEG07 0x80
1359 //==============================================================================
1362 //==============================================================================
1363 // LCDD01 Bits
1365 extern __at(0x0111) __sfr LCDD01;
1367 typedef struct
1369 unsigned SEG08 : 1;
1370 unsigned SEG09 : 1;
1371 unsigned SEG10 : 1;
1372 unsigned SEG11 : 1;
1373 unsigned SEG12 : 1;
1374 unsigned SEG13 : 1;
1375 unsigned SEG14 : 1;
1376 unsigned SEG15 : 1;
1377 } __LCDD01bits_t;
1379 extern __at(0x0111) volatile __LCDD01bits_t LCDD01bits;
1381 #define _SEG08 0x01
1382 #define _SEG09 0x02
1383 #define _SEG10 0x04
1384 #define _SEG11 0x08
1385 #define _SEG12 0x10
1386 #define _SEG13 0x20
1387 #define _SEG14 0x40
1388 #define _SEG15 0x80
1390 //==============================================================================
1393 //==============================================================================
1394 // LCDD02 Bits
1396 extern __at(0x0112) __sfr LCDD02;
1398 typedef struct
1400 unsigned SEG16 : 1;
1401 unsigned SEG17 : 1;
1402 unsigned SEG18 : 1;
1403 unsigned SEG19 : 1;
1404 unsigned SEG20 : 1;
1405 unsigned SEG21 : 1;
1406 unsigned SEG22 : 1;
1407 unsigned SEG23 : 1;
1408 } __LCDD02bits_t;
1410 extern __at(0x0112) volatile __LCDD02bits_t LCDD02bits;
1412 #define _SEG16 0x01
1413 #define _SEG17 0x02
1414 #define _SEG18 0x04
1415 #define _SEG19 0x08
1416 #define _SEG20 0x10
1417 #define _SEG21 0x20
1418 #define _SEG22 0x40
1419 #define _SEG23 0x80
1421 //==============================================================================
1424 //==============================================================================
1425 // LCDD03 Bits
1427 extern __at(0x0113) __sfr LCDD03;
1429 typedef struct
1431 unsigned SEG24 : 1;
1432 unsigned SEG25 : 1;
1433 unsigned SEG26 : 1;
1434 unsigned SEG27 : 1;
1435 unsigned SEG28 : 1;
1436 unsigned SEG29 : 1;
1437 unsigned SEG30 : 1;
1438 unsigned SEG31 : 1;
1439 } __LCDD03bits_t;
1441 extern __at(0x0113) volatile __LCDD03bits_t LCDD03bits;
1443 #define _SEG24 0x01
1444 #define _SEG25 0x02
1445 #define _SEG26 0x04
1446 #define _SEG27 0x08
1447 #define _SEG28 0x10
1448 #define _SEG29 0x20
1449 #define _SEG30 0x40
1450 #define _SEG31 0x80
1452 //==============================================================================
1455 //==============================================================================
1456 // LCDD04 Bits
1458 extern __at(0x0114) __sfr LCDD04;
1460 typedef struct
1462 unsigned SEG00 : 1;
1463 unsigned SEG01 : 1;
1464 unsigned SEG02 : 1;
1465 unsigned SEG03 : 1;
1466 unsigned SEG04 : 1;
1467 unsigned SEG05 : 1;
1468 unsigned SEG06 : 1;
1469 unsigned SEG07 : 1;
1470 } __LCDD04bits_t;
1472 extern __at(0x0114) volatile __LCDD04bits_t LCDD04bits;
1474 #define _LCDD04_SEG00 0x01
1475 #define _LCDD04_SEG01 0x02
1476 #define _LCDD04_SEG02 0x04
1477 #define _LCDD04_SEG03 0x08
1478 #define _LCDD04_SEG04 0x10
1479 #define _LCDD04_SEG05 0x20
1480 #define _LCDD04_SEG06 0x40
1481 #define _LCDD04_SEG07 0x80
1483 //==============================================================================
1486 //==============================================================================
1487 // LCDD05 Bits
1489 extern __at(0x0115) __sfr LCDD05;
1491 typedef struct
1493 unsigned SEG08 : 1;
1494 unsigned SEG09 : 1;
1495 unsigned SEG10 : 1;
1496 unsigned SEG11 : 1;
1497 unsigned SEG12 : 1;
1498 unsigned SEG13 : 1;
1499 unsigned SEG14 : 1;
1500 unsigned SEG15 : 1;
1501 } __LCDD05bits_t;
1503 extern __at(0x0115) volatile __LCDD05bits_t LCDD05bits;
1505 #define _LCDD05_SEG08 0x01
1506 #define _LCDD05_SEG09 0x02
1507 #define _LCDD05_SEG10 0x04
1508 #define _LCDD05_SEG11 0x08
1509 #define _LCDD05_SEG12 0x10
1510 #define _LCDD05_SEG13 0x20
1511 #define _LCDD05_SEG14 0x40
1512 #define _LCDD05_SEG15 0x80
1514 //==============================================================================
1517 //==============================================================================
1518 // LCDD06 Bits
1520 extern __at(0x0116) __sfr LCDD06;
1522 typedef struct
1524 unsigned SEG16 : 1;
1525 unsigned SEG17 : 1;
1526 unsigned SEG18 : 1;
1527 unsigned SEG19 : 1;
1528 unsigned SEG20 : 1;
1529 unsigned SEG21 : 1;
1530 unsigned SEG22 : 1;
1531 unsigned SEG23 : 1;
1532 } __LCDD06bits_t;
1534 extern __at(0x0116) volatile __LCDD06bits_t LCDD06bits;
1536 #define _LCDD06_SEG16 0x01
1537 #define _LCDD06_SEG17 0x02
1538 #define _LCDD06_SEG18 0x04
1539 #define _LCDD06_SEG19 0x08
1540 #define _LCDD06_SEG20 0x10
1541 #define _LCDD06_SEG21 0x20
1542 #define _LCDD06_SEG22 0x40
1543 #define _LCDD06_SEG23 0x80
1545 //==============================================================================
1548 //==============================================================================
1549 // LCDD07 Bits
1551 extern __at(0x0117) __sfr LCDD07;
1553 typedef struct
1555 unsigned SEG24 : 1;
1556 unsigned SEG25 : 1;
1557 unsigned SEG26 : 1;
1558 unsigned SEG27 : 1;
1559 unsigned SEG28 : 1;
1560 unsigned SEG29 : 1;
1561 unsigned SEG30 : 1;
1562 unsigned SEG31 : 1;
1563 } __LCDD07bits_t;
1565 extern __at(0x0117) volatile __LCDD07bits_t LCDD07bits;
1567 #define _LCDD07_SEG24 0x01
1568 #define _LCDD07_SEG25 0x02
1569 #define _LCDD07_SEG26 0x04
1570 #define _LCDD07_SEG27 0x08
1571 #define _LCDD07_SEG28 0x10
1572 #define _LCDD07_SEG29 0x20
1573 #define _LCDD07_SEG30 0x40
1574 #define _LCDD07_SEG31 0x80
1576 //==============================================================================
1579 //==============================================================================
1580 // LCDD08 Bits
1582 extern __at(0x0118) __sfr LCDD08;
1584 typedef struct
1586 unsigned SEG00 : 1;
1587 unsigned SEG01 : 1;
1588 unsigned SEG02 : 1;
1589 unsigned SEG03 : 1;
1590 unsigned SEG04 : 1;
1591 unsigned SEG05 : 1;
1592 unsigned SEG06 : 1;
1593 unsigned SEG07 : 1;
1594 } __LCDD08bits_t;
1596 extern __at(0x0118) volatile __LCDD08bits_t LCDD08bits;
1598 #define _LCDD08_SEG00 0x01
1599 #define _LCDD08_SEG01 0x02
1600 #define _LCDD08_SEG02 0x04
1601 #define _LCDD08_SEG03 0x08
1602 #define _LCDD08_SEG04 0x10
1603 #define _LCDD08_SEG05 0x20
1604 #define _LCDD08_SEG06 0x40
1605 #define _LCDD08_SEG07 0x80
1607 //==============================================================================
1610 //==============================================================================
1611 // LCDD09 Bits
1613 extern __at(0x0119) __sfr LCDD09;
1615 typedef struct
1617 unsigned SEG08 : 1;
1618 unsigned SEG09 : 1;
1619 unsigned SEG10 : 1;
1620 unsigned SEG11 : 1;
1621 unsigned SEG12 : 1;
1622 unsigned SEG13 : 1;
1623 unsigned SEG14 : 1;
1624 unsigned SEG15 : 1;
1625 } __LCDD09bits_t;
1627 extern __at(0x0119) volatile __LCDD09bits_t LCDD09bits;
1629 #define _LCDD09_SEG08 0x01
1630 #define _LCDD09_SEG09 0x02
1631 #define _LCDD09_SEG10 0x04
1632 #define _LCDD09_SEG11 0x08
1633 #define _LCDD09_SEG12 0x10
1634 #define _LCDD09_SEG13 0x20
1635 #define _LCDD09_SEG14 0x40
1636 #define _LCDD09_SEG15 0x80
1638 //==============================================================================
1641 //==============================================================================
1642 // LCDD10 Bits
1644 extern __at(0x011A) __sfr LCDD10;
1646 typedef struct
1648 unsigned SEG16 : 1;
1649 unsigned SEG17 : 1;
1650 unsigned SEG18 : 1;
1651 unsigned SEG19 : 1;
1652 unsigned SEG20 : 1;
1653 unsigned SEG21 : 1;
1654 unsigned SEG22 : 1;
1655 unsigned SEG23 : 1;
1656 } __LCDD10bits_t;
1658 extern __at(0x011A) volatile __LCDD10bits_t LCDD10bits;
1660 #define _LCDD10_SEG16 0x01
1661 #define _LCDD10_SEG17 0x02
1662 #define _LCDD10_SEG18 0x04
1663 #define _LCDD10_SEG19 0x08
1664 #define _LCDD10_SEG20 0x10
1665 #define _LCDD10_SEG21 0x20
1666 #define _LCDD10_SEG22 0x40
1667 #define _LCDD10_SEG23 0x80
1669 //==============================================================================
1672 //==============================================================================
1673 // LCDD11 Bits
1675 extern __at(0x011B) __sfr LCDD11;
1677 typedef struct
1679 unsigned SEG24 : 1;
1680 unsigned SEG25 : 1;
1681 unsigned SEG26 : 1;
1682 unsigned SEG27 : 1;
1683 unsigned SEG28 : 1;
1684 unsigned SEG29 : 1;
1685 unsigned SEG30 : 1;
1686 unsigned SEG31 : 1;
1687 } __LCDD11bits_t;
1689 extern __at(0x011B) volatile __LCDD11bits_t LCDD11bits;
1691 #define _LCDD11_SEG24 0x01
1692 #define _LCDD11_SEG25 0x02
1693 #define _LCDD11_SEG26 0x04
1694 #define _LCDD11_SEG27 0x08
1695 #define _LCDD11_SEG28 0x10
1696 #define _LCDD11_SEG29 0x20
1697 #define _LCDD11_SEG30 0x40
1698 #define _LCDD11_SEG31 0x80
1700 //==============================================================================
1703 //==============================================================================
1704 // LCDD12 Bits
1706 extern __at(0x011C) __sfr LCDD12;
1708 typedef struct
1710 unsigned SEG00 : 1;
1711 unsigned SEG01 : 1;
1712 unsigned SEG02 : 1;
1713 unsigned SEG03 : 1;
1714 unsigned SEG04 : 1;
1715 unsigned SEG05 : 1;
1716 unsigned SEG06 : 1;
1717 unsigned SEG07 : 1;
1718 } __LCDD12bits_t;
1720 extern __at(0x011C) volatile __LCDD12bits_t LCDD12bits;
1722 #define _LCDD12_SEG00 0x01
1723 #define _LCDD12_SEG01 0x02
1724 #define _LCDD12_SEG02 0x04
1725 #define _LCDD12_SEG03 0x08
1726 #define _LCDD12_SEG04 0x10
1727 #define _LCDD12_SEG05 0x20
1728 #define _LCDD12_SEG06 0x40
1729 #define _LCDD12_SEG07 0x80
1731 //==============================================================================
1734 //==============================================================================
1735 // LCDD13 Bits
1737 extern __at(0x011D) __sfr LCDD13;
1739 typedef struct
1741 unsigned SEG08 : 1;
1742 unsigned SEG09 : 1;
1743 unsigned SEG10 : 1;
1744 unsigned SEG11 : 1;
1745 unsigned SEG12 : 1;
1746 unsigned SEG13 : 1;
1747 unsigned SEG14 : 1;
1748 unsigned SEG15 : 1;
1749 } __LCDD13bits_t;
1751 extern __at(0x011D) volatile __LCDD13bits_t LCDD13bits;
1753 #define _LCDD13_SEG08 0x01
1754 #define _LCDD13_SEG09 0x02
1755 #define _LCDD13_SEG10 0x04
1756 #define _LCDD13_SEG11 0x08
1757 #define _LCDD13_SEG12 0x10
1758 #define _LCDD13_SEG13 0x20
1759 #define _LCDD13_SEG14 0x40
1760 #define _LCDD13_SEG15 0x80
1762 //==============================================================================
1765 //==============================================================================
1766 // LCDD14 Bits
1768 extern __at(0x011E) __sfr LCDD14;
1770 typedef struct
1772 unsigned SEG16 : 1;
1773 unsigned SEG17 : 1;
1774 unsigned SEG18 : 1;
1775 unsigned SEG19 : 1;
1776 unsigned SEG20 : 1;
1777 unsigned SEG21 : 1;
1778 unsigned SEG22 : 1;
1779 unsigned SEG23 : 1;
1780 } __LCDD14bits_t;
1782 extern __at(0x011E) volatile __LCDD14bits_t LCDD14bits;
1784 #define _LCDD14_SEG16 0x01
1785 #define _LCDD14_SEG17 0x02
1786 #define _LCDD14_SEG18 0x04
1787 #define _LCDD14_SEG19 0x08
1788 #define _LCDD14_SEG20 0x10
1789 #define _LCDD14_SEG21 0x20
1790 #define _LCDD14_SEG22 0x40
1791 #define _LCDD14_SEG23 0x80
1793 //==============================================================================
1796 //==============================================================================
1797 // LCDD15 Bits
1799 extern __at(0x011F) __sfr LCDD15;
1801 typedef struct
1803 unsigned SEG24 : 1;
1804 unsigned SEG25 : 1;
1805 unsigned SEG26 : 1;
1806 unsigned SEG27 : 1;
1807 unsigned SEG28 : 1;
1808 unsigned SEG29 : 1;
1809 unsigned SEG30 : 1;
1810 unsigned SEG31 : 1;
1811 } __LCDD15bits_t;
1813 extern __at(0x011F) volatile __LCDD15bits_t LCDD15bits;
1815 #define _LCDD15_SEG24 0x01
1816 #define _LCDD15_SEG25 0x02
1817 #define _LCDD15_SEG26 0x04
1818 #define _LCDD15_SEG27 0x08
1819 #define _LCDD15_SEG28 0x10
1820 #define _LCDD15_SEG29 0x20
1821 #define _LCDD15_SEG30 0x40
1822 #define _LCDD15_SEG31 0x80
1824 //==============================================================================
1827 //==============================================================================
1828 // TRISF Bits
1830 extern __at(0x0187) __sfr TRISF;
1832 typedef struct
1834 unsigned TRISF0 : 1;
1835 unsigned TRISF1 : 1;
1836 unsigned TRISF2 : 1;
1837 unsigned TRISF3 : 1;
1838 unsigned TRISF4 : 1;
1839 unsigned TRISF5 : 1;
1840 unsigned TRISF6 : 1;
1841 unsigned TRISF7 : 1;
1842 } __TRISFbits_t;
1844 extern __at(0x0187) volatile __TRISFbits_t TRISFbits;
1846 #define _TRISF0 0x01
1847 #define _TRISF1 0x02
1848 #define _TRISF2 0x04
1849 #define _TRISF3 0x08
1850 #define _TRISF4 0x10
1851 #define _TRISF5 0x20
1852 #define _TRISF6 0x40
1853 #define _TRISF7 0x80
1855 //==============================================================================
1858 //==============================================================================
1859 // TRISG Bits
1861 extern __at(0x0188) __sfr TRISG;
1863 typedef struct
1865 unsigned TRISG0 : 1;
1866 unsigned TRISG1 : 1;
1867 unsigned TRISG2 : 1;
1868 unsigned TRISG3 : 1;
1869 unsigned TRISG4 : 1;
1870 unsigned TRISG5 : 1;
1871 unsigned TRISG6 : 1;
1872 unsigned TRISG7 : 1;
1873 } __TRISGbits_t;
1875 extern __at(0x0188) volatile __TRISGbits_t TRISGbits;
1877 #define _TRISG0 0x01
1878 #define _TRISG1 0x02
1879 #define _TRISG2 0x04
1880 #define _TRISG3 0x08
1881 #define _TRISG4 0x10
1882 #define _TRISG5 0x20
1883 #define _TRISG6 0x40
1884 #define _TRISG7 0x80
1886 //==============================================================================
1888 extern __at(0x018C) __sfr PMDATA;
1889 extern __at(0x018D) __sfr PMADR;
1890 extern __at(0x018E) __sfr PMDATH;
1891 extern __at(0x018F) __sfr PMADRH;
1893 //==============================================================================
1895 // Configuration Bits
1897 //==============================================================================
1899 #define _CONFIG1 0x2007
1901 //----------------------------- CONFIG1 Options -------------------------------
1903 #define _FOSC_LP 0x3FFC // LP oscillator.
1904 #define _LP_OSC 0x3FFC // LP oscillator.
1905 #define _FOSC_XT 0x3FFD // XT oscillator.
1906 #define _XT_OSC 0x3FFD // XT oscillator.
1907 #define _FOSC_HS 0x3FFE // HS oscillator.
1908 #define _HS_OSC 0x3FFE // HS oscillator.
1909 #define _FOSC_RC 0x3FFF // RC oscillator.
1910 #define _RC_OSC 0x3FFF // RC oscillator.
1911 #define _WDTE_OFF 0x3FFB // WDT disabled.
1912 #define _WDT_OFF 0x3FFB // WDT disabled.
1913 #define _WDTE_ON 0x3FFF // WDT enabled.
1914 #define _WDT_ON 0x3FFF // WDT enabled.
1915 #define _PWRTE_ON 0x3FF7 // PWRT enabled.
1916 #define _PWRTE_OFF 0x3FFF // PWRT disabled.
1917 #define _CP_ALL 0x3FCF // All memory is code protected.
1918 #define _CP_75 0x3FDF // 0000h-0EFFh code protected.
1919 #define _CP_50 0x3FEF // 0000h-07FFh code protected.
1920 #define _CP_OFF 0x3FFF // Code protection off.
1921 #define _BOREN_OFF 0x3FBF // BOR disabled.
1922 #define _BODEN_OFF 0x3FBF // BOR disabled.
1923 #define _BOREN_ON 0x3FFF // BOR enabled.
1924 #define _BODEN_ON 0x3FFF // BOR enabled.
1926 //==============================================================================
1928 #define _DEVID1 0x2006
1930 #define _IDLOC0 0x2000
1931 #define _IDLOC1 0x2001
1932 #define _IDLOC2 0x2002
1933 #define _IDLOC3 0x2003
1935 //==============================================================================
1937 #ifndef NO_BIT_DEFINES
1939 #define ADON ADCON0bits.ADON // bit 0
1940 #define GO_NOT_DONE ADCON0bits.GO_NOT_DONE // bit 2, shadows bit in ADCON0bits
1941 #define GO ADCON0bits.GO // bit 2, shadows bit in ADCON0bits
1942 #define NOT_DONE ADCON0bits.NOT_DONE // bit 2, shadows bit in ADCON0bits
1943 #define GO_DONE ADCON0bits.GO_DONE // bit 2, shadows bit in ADCON0bits
1944 #define CHS0 ADCON0bits.CHS0 // bit 3
1945 #define CHS1 ADCON0bits.CHS1 // bit 4
1946 #define CHS2 ADCON0bits.CHS2 // bit 5
1947 #define ADCS0 ADCON0bits.ADCS0 // bit 6
1948 #define ADCS1 ADCON0bits.ADCS1 // bit 7
1950 #define PCFG0 ADCON1bits.PCFG0 // bit 0
1951 #define PCFG1 ADCON1bits.PCFG1 // bit 1
1952 #define PCFG2 ADCON1bits.PCFG2 // bit 2
1953 #define PCFG3 ADCON1bits.PCFG3 // bit 3
1954 #define ADFM ADCON1bits.ADFM // bit 7
1956 #define CCP1M0 CCP1CONbits.CCP1M0 // bit 0
1957 #define CCP1M1 CCP1CONbits.CCP1M1 // bit 1
1958 #define CCP1M2 CCP1CONbits.CCP1M2 // bit 2
1959 #define CCP1M3 CCP1CONbits.CCP1M3 // bit 3
1960 #define CCP1Y CCP1CONbits.CCP1Y // bit 4
1961 #define CCP1X CCP1CONbits.CCP1X // bit 5
1963 #define RBIF INTCONbits.RBIF // bit 0
1964 #define INTF INTCONbits.INTF // bit 1
1965 #define T0IF INTCONbits.T0IF // bit 2, shadows bit in INTCONbits
1966 #define TMR0IF INTCONbits.TMR0IF // bit 2, shadows bit in INTCONbits
1967 #define RBIE INTCONbits.RBIE // bit 3
1968 #define INTE INTCONbits.INTE // bit 4
1969 #define T0IE INTCONbits.T0IE // bit 5, shadows bit in INTCONbits
1970 #define TMR0IE INTCONbits.TMR0IE // bit 5, shadows bit in INTCONbits
1971 #define PEIE INTCONbits.PEIE // bit 6
1972 #define GIE INTCONbits.GIE // bit 7
1974 #define LMUX0 LCDCONbits.LMUX0 // bit 0
1975 #define LMUX1 LCDCONbits.LMUX1 // bit 1
1976 #define CS0 LCDCONbits.CS0 // bit 2
1977 #define CS1 LCDCONbits.CS1 // bit 3
1978 #define VGEN LCDCONbits.VGEN // bit 4, shadows bit in LCDCONbits
1979 #define BIAS LCDCONbits.BIAS // bit 4, shadows bit in LCDCONbits
1980 #define WERR LCDCONbits.WERR // bit 5
1981 #define SLPEN LCDCONbits.SLPEN // bit 6
1982 #define LCDEN LCDCONbits.LCDEN // bit 7
1984 #define SEG00 LCDD00bits.SEG00 // bit 0
1985 #define SEG01 LCDD00bits.SEG01 // bit 1
1986 #define SEG02 LCDD00bits.SEG02 // bit 2
1987 #define SEG03 LCDD00bits.SEG03 // bit 3
1988 #define SEG04 LCDD00bits.SEG04 // bit 4
1989 #define SEG05 LCDD00bits.SEG05 // bit 5
1990 #define SEG06 LCDD00bits.SEG06 // bit 6
1991 #define SEG07 LCDD00bits.SEG07 // bit 7
1993 #define SEG08 LCDD01bits.SEG08 // bit 0
1994 #define SEG09 LCDD01bits.SEG09 // bit 1
1995 #define SEG10 LCDD01bits.SEG10 // bit 2
1996 #define SEG11 LCDD01bits.SEG11 // bit 3
1997 #define SEG12 LCDD01bits.SEG12 // bit 4
1998 #define SEG13 LCDD01bits.SEG13 // bit 5
1999 #define SEG14 LCDD01bits.SEG14 // bit 6
2000 #define SEG15 LCDD01bits.SEG15 // bit 7
2002 #define SEG16 LCDD02bits.SEG16 // bit 0
2003 #define SEG17 LCDD02bits.SEG17 // bit 1
2004 #define SEG18 LCDD02bits.SEG18 // bit 2
2005 #define SEG19 LCDD02bits.SEG19 // bit 3
2006 #define SEG20 LCDD02bits.SEG20 // bit 4
2007 #define SEG21 LCDD02bits.SEG21 // bit 5
2008 #define SEG22 LCDD02bits.SEG22 // bit 6
2009 #define SEG23 LCDD02bits.SEG23 // bit 7
2011 #define SEG24 LCDD03bits.SEG24 // bit 0
2012 #define SEG25 LCDD03bits.SEG25 // bit 1
2013 #define SEG26 LCDD03bits.SEG26 // bit 2
2014 #define SEG27 LCDD03bits.SEG27 // bit 3
2015 #define SEG28 LCDD03bits.SEG28 // bit 4
2016 #define SEG29 LCDD03bits.SEG29 // bit 5
2017 #define SEG30 LCDD03bits.SEG30 // bit 6
2018 #define SEG31 LCDD03bits.SEG31 // bit 7
2020 #define LP0 LCDPSbits.LP0 // bit 0
2021 #define LP1 LCDPSbits.LP1 // bit 1
2022 #define LP2 LCDPSbits.LP2 // bit 2
2023 #define LP3 LCDPSbits.LP3 // bit 3
2025 #define SE0 LCDSEbits.SE0 // bit 0
2026 #define SE5 LCDSEbits.SE5 // bit 1
2027 #define SE9 LCDSEbits.SE9 // bit 2
2028 #define SE12 LCDSEbits.SE12 // bit 3
2029 #define SE16 LCDSEbits.SE16 // bit 4
2030 #define SE20 LCDSEbits.SE20 // bit 5
2031 #define SE27 LCDSEbits.SE27 // bit 6
2032 #define SE29 LCDSEbits.SE29 // bit 7
2034 #define PS0 OPTION_REGbits.PS0 // bit 0
2035 #define PS1 OPTION_REGbits.PS1 // bit 1
2036 #define PS2 OPTION_REGbits.PS2 // bit 2
2037 #define PSA OPTION_REGbits.PSA // bit 3
2038 #define T0SE OPTION_REGbits.T0SE // bit 4
2039 #define T0CS OPTION_REGbits.T0CS // bit 5
2040 #define INTEDG OPTION_REGbits.INTEDG // bit 6
2041 #define NOT_RBPU OPTION_REGbits.NOT_RBPU // bit 7
2043 #define NOT_BOR PCONbits.NOT_BOR // bit 0
2044 #define NOT_POR PCONbits.NOT_POR // bit 1
2046 #define TMR1IE PIE1bits.TMR1IE // bit 0
2047 #define TMR2IE PIE1bits.TMR2IE // bit 1
2048 #define CCP1IE PIE1bits.CCP1IE // bit 2
2049 #define SSPIE PIE1bits.SSPIE // bit 3
2050 #define ADIE PIE1bits.ADIE // bit 6
2051 #define LCDIE PIE1bits.LCDIE // bit 7
2053 #define TMR1IF PIR1bits.TMR1IF // bit 0
2054 #define TMR2IF PIR1bits.TMR2IF // bit 1
2055 #define CCP1IF PIR1bits.CCP1IF // bit 2
2056 #define SSPIF PIR1bits.SSPIF // bit 3
2057 #define ADIF PIR1bits.ADIF // bit 6
2058 #define LCDIF PIR1bits.LCDIF // bit 7
2060 #define RD PMCON1bits.RD // bit 0
2062 #define RA0 PORTAbits.RA0 // bit 0
2063 #define RA1 PORTAbits.RA1 // bit 1
2064 #define RA2 PORTAbits.RA2 // bit 2
2065 #define RA3 PORTAbits.RA3 // bit 3
2066 #define RA4 PORTAbits.RA4 // bit 4
2067 #define RA5 PORTAbits.RA5 // bit 5
2069 #define RB0 PORTBbits.RB0 // bit 0
2070 #define RB1 PORTBbits.RB1 // bit 1
2071 #define RB2 PORTBbits.RB2 // bit 2
2072 #define RB3 PORTBbits.RB3 // bit 3
2073 #define RB4 PORTBbits.RB4 // bit 4
2074 #define RB5 PORTBbits.RB5 // bit 5
2075 #define RB6 PORTBbits.RB6 // bit 6
2076 #define RB7 PORTBbits.RB7 // bit 7
2078 #define RC0 PORTCbits.RC0 // bit 0
2079 #define RC1 PORTCbits.RC1 // bit 1
2080 #define RC2 PORTCbits.RC2 // bit 2
2081 #define RC3 PORTCbits.RC3 // bit 3
2082 #define RC4 PORTCbits.RC4 // bit 4
2083 #define RC5 PORTCbits.RC5 // bit 5
2085 #define RD0 PORTDbits.RD0 // bit 0
2086 #define RD1 PORTDbits.RD1 // bit 1
2087 #define RD2 PORTDbits.RD2 // bit 2
2088 #define RD3 PORTDbits.RD3 // bit 3
2089 #define RD4 PORTDbits.RD4 // bit 4
2090 #define RD5 PORTDbits.RD5 // bit 5
2091 #define RD6 PORTDbits.RD6 // bit 6
2092 #define RD7 PORTDbits.RD7 // bit 7
2094 #define RE0 PORTEbits.RE0 // bit 0
2095 #define RE1 PORTEbits.RE1 // bit 1
2096 #define RE2 PORTEbits.RE2 // bit 2
2097 #define RE3 PORTEbits.RE3 // bit 3
2098 #define RE4 PORTEbits.RE4 // bit 4
2099 #define RE5 PORTEbits.RE5 // bit 5
2100 #define RE6 PORTEbits.RE6 // bit 6
2101 #define RE7 PORTEbits.RE7 // bit 7
2103 #define RF0 PORTFbits.RF0 // bit 0
2104 #define RF1 PORTFbits.RF1 // bit 1
2105 #define RF2 PORTFbits.RF2 // bit 2
2106 #define RF3 PORTFbits.RF3 // bit 3
2107 #define RF4 PORTFbits.RF4 // bit 4
2108 #define RF5 PORTFbits.RF5 // bit 5
2109 #define RF6 PORTFbits.RF6 // bit 6
2110 #define RF7 PORTFbits.RF7 // bit 7
2112 #define RG0 PORTGbits.RG0 // bit 0
2113 #define RG1 PORTGbits.RG1 // bit 1
2114 #define RG2 PORTGbits.RG2 // bit 2
2115 #define RG3 PORTGbits.RG3 // bit 3
2116 #define RG4 PORTGbits.RG4 // bit 4
2117 #define RG5 PORTGbits.RG5 // bit 5
2118 #define RG6 PORTGbits.RG6 // bit 6
2119 #define RG7 PORTGbits.RG7 // bit 7
2121 #define SSPM0 SSPCONbits.SSPM0 // bit 0
2122 #define SSPM1 SSPCONbits.SSPM1 // bit 1
2123 #define SSPM2 SSPCONbits.SSPM2 // bit 2
2124 #define SSPM3 SSPCONbits.SSPM3 // bit 3
2125 #define CKP SSPCONbits.CKP // bit 4
2126 #define SSPEN SSPCONbits.SSPEN // bit 5
2127 #define SSPOV SSPCONbits.SSPOV // bit 6
2128 #define WCOL SSPCONbits.WCOL // bit 7
2130 #define BF SSPSTATbits.BF // bit 0
2131 #define UA SSPSTATbits.UA // bit 1
2132 #define R_NOT_W SSPSTATbits.R_NOT_W // bit 2, shadows bit in SSPSTATbits
2133 #define R SSPSTATbits.R // bit 2, shadows bit in SSPSTATbits
2134 #define I2C_READ SSPSTATbits.I2C_READ // bit 2, shadows bit in SSPSTATbits
2135 #define R_W SSPSTATbits.R_W // bit 2, shadows bit in SSPSTATbits
2136 #define READ_WRITE SSPSTATbits.READ_WRITE // bit 2, shadows bit in SSPSTATbits
2137 #define NOT_W SSPSTATbits.NOT_W // bit 2, shadows bit in SSPSTATbits
2138 #define NOT_WRITE SSPSTATbits.NOT_WRITE // bit 2, shadows bit in SSPSTATbits
2139 #define S SSPSTATbits.S // bit 3, shadows bit in SSPSTATbits
2140 #define I2C_START SSPSTATbits.I2C_START // bit 3, shadows bit in SSPSTATbits
2141 #define P SSPSTATbits.P // bit 4, shadows bit in SSPSTATbits
2142 #define I2C_STOP SSPSTATbits.I2C_STOP // bit 4, shadows bit in SSPSTATbits
2143 #define D_NOT_A SSPSTATbits.D_NOT_A // bit 5, shadows bit in SSPSTATbits
2144 #define D SSPSTATbits.D // bit 5, shadows bit in SSPSTATbits
2145 #define I2C_DATA SSPSTATbits.I2C_DATA // bit 5, shadows bit in SSPSTATbits
2146 #define D_A SSPSTATbits.D_A // bit 5, shadows bit in SSPSTATbits
2147 #define DATA_ADDRESS SSPSTATbits.DATA_ADDRESS // bit 5, shadows bit in SSPSTATbits
2148 #define NOT_A SSPSTATbits.NOT_A // bit 5, shadows bit in SSPSTATbits
2149 #define NOT_ADDRESS SSPSTATbits.NOT_ADDRESS // bit 5, shadows bit in SSPSTATbits
2150 #define CKE SSPSTATbits.CKE // bit 6
2151 #define SMP SSPSTATbits.SMP // bit 7
2153 #define C STATUSbits.C // bit 0
2154 #define DC STATUSbits.DC // bit 1
2155 #define Z STATUSbits.Z // bit 2
2156 #define NOT_PD STATUSbits.NOT_PD // bit 3
2157 #define NOT_TO STATUSbits.NOT_TO // bit 4
2158 #define RP0 STATUSbits.RP0 // bit 5
2159 #define RP1 STATUSbits.RP1 // bit 6
2160 #define IRP STATUSbits.IRP // bit 7
2162 #define TMR1ON T1CONbits.TMR1ON // bit 0
2163 #define TMR1CS T1CONbits.TMR1CS // bit 1
2164 #define NOT_T1SYNC T1CONbits.NOT_T1SYNC // bit 2, shadows bit in T1CONbits
2165 #define T1INSYNC T1CONbits.T1INSYNC // bit 2, shadows bit in T1CONbits
2166 #define T1OSCEN T1CONbits.T1OSCEN // bit 3
2167 #define T1CKPS0 T1CONbits.T1CKPS0 // bit 4
2168 #define T1CKPS1 T1CONbits.T1CKPS1 // bit 5
2170 #define T2CKPS0 T2CONbits.T2CKPS0 // bit 0
2171 #define T2CKPS1 T2CONbits.T2CKPS1 // bit 1
2172 #define TMR2ON T2CONbits.TMR2ON // bit 2
2173 #define TOUTPS0 T2CONbits.TOUTPS0 // bit 3
2174 #define TOUTPS1 T2CONbits.TOUTPS1 // bit 4
2175 #define TOUTPS2 T2CONbits.TOUTPS2 // bit 5
2176 #define TOUTPS3 T2CONbits.TOUTPS3 // bit 6
2178 #define TRISA0 TRISAbits.TRISA0 // bit 0
2179 #define TRISA1 TRISAbits.TRISA1 // bit 1
2180 #define TRISA2 TRISAbits.TRISA2 // bit 2
2181 #define TRISA3 TRISAbits.TRISA3 // bit 3
2182 #define TRISA4 TRISAbits.TRISA4 // bit 4
2183 #define TRISA5 TRISAbits.TRISA5 // bit 5
2185 #define TRISB0 TRISBbits.TRISB0 // bit 0
2186 #define TRISB1 TRISBbits.TRISB1 // bit 1
2187 #define TRISB2 TRISBbits.TRISB2 // bit 2
2188 #define TRISB3 TRISBbits.TRISB3 // bit 3
2189 #define TRISB4 TRISBbits.TRISB4 // bit 4
2190 #define TRISB5 TRISBbits.TRISB5 // bit 5
2191 #define TRISB6 TRISBbits.TRISB6 // bit 6
2192 #define TRISB7 TRISBbits.TRISB7 // bit 7
2194 #define TRISC0 TRISCbits.TRISC0 // bit 0
2195 #define TRISC1 TRISCbits.TRISC1 // bit 1
2196 #define TRISC2 TRISCbits.TRISC2 // bit 2
2197 #define TRISC3 TRISCbits.TRISC3 // bit 3
2198 #define TRISC4 TRISCbits.TRISC4 // bit 4
2199 #define TRISC5 TRISCbits.TRISC5 // bit 5
2201 #define TRISD0 TRISDbits.TRISD0 // bit 0
2202 #define TRISD1 TRISDbits.TRISD1 // bit 1
2203 #define TRISD2 TRISDbits.TRISD2 // bit 2
2204 #define TRISD3 TRISDbits.TRISD3 // bit 3
2205 #define TRISD4 TRISDbits.TRISD4 // bit 4
2206 #define TRISD5 TRISDbits.TRISD5 // bit 5
2207 #define TRISD6 TRISDbits.TRISD6 // bit 6
2208 #define TRISD7 TRISDbits.TRISD7 // bit 7
2210 #define TRISE0 TRISEbits.TRISE0 // bit 0
2211 #define TRISE1 TRISEbits.TRISE1 // bit 1
2212 #define TRISE2 TRISEbits.TRISE2 // bit 2
2213 #define TRISE3 TRISEbits.TRISE3 // bit 3
2214 #define TRISE4 TRISEbits.TRISE4 // bit 4, shadows bit in TRISEbits
2215 #define PSPMODE TRISEbits.PSPMODE // bit 4, shadows bit in TRISEbits
2216 #define TRISE5 TRISEbits.TRISE5 // bit 5, shadows bit in TRISEbits
2217 #define IBOV TRISEbits.IBOV // bit 5, shadows bit in TRISEbits
2218 #define TRISE6 TRISEbits.TRISE6 // bit 6, shadows bit in TRISEbits
2219 #define OBF TRISEbits.OBF // bit 6, shadows bit in TRISEbits
2220 #define TRISE7 TRISEbits.TRISE7 // bit 7, shadows bit in TRISEbits
2221 #define IBF TRISEbits.IBF // bit 7, shadows bit in TRISEbits
2223 #define TRISF0 TRISFbits.TRISF0 // bit 0
2224 #define TRISF1 TRISFbits.TRISF1 // bit 1
2225 #define TRISF2 TRISFbits.TRISF2 // bit 2
2226 #define TRISF3 TRISFbits.TRISF3 // bit 3
2227 #define TRISF4 TRISFbits.TRISF4 // bit 4
2228 #define TRISF5 TRISFbits.TRISF5 // bit 5
2229 #define TRISF6 TRISFbits.TRISF6 // bit 6
2230 #define TRISF7 TRISFbits.TRISF7 // bit 7
2232 #define TRISG0 TRISGbits.TRISG0 // bit 0
2233 #define TRISG1 TRISGbits.TRISG1 // bit 1
2234 #define TRISG2 TRISGbits.TRISG2 // bit 2
2235 #define TRISG3 TRISGbits.TRISG3 // bit 3
2236 #define TRISG4 TRISGbits.TRISG4 // bit 4
2237 #define TRISG5 TRISGbits.TRISG5 // bit 5
2238 #define TRISG6 TRISGbits.TRISG6 // bit 6
2239 #define TRISG7 TRISGbits.TRISG7 // bit 7
2241 #endif // #ifndef NO_BIT_DEFINES
2243 #endif // #ifndef __PIC16C925_H__