1 /*
2  * This declarations of the PIC16F1788 MCU.
3  *
4  * This file is part of the GNU PIC library for SDCC, originally
5  * created by Molnar Karoly <molnarkaroly@users.sf.net> 2016.
6  *
7  * This file is generated automatically by the cinc2h.pl, 2016-04-13 17:23:19 UTC.
8  *
9  * SDCC is licensed under the GNU Public license (GPL) v2. Note that
10  * this license covers the code to the compiler and other executables,
11  * but explicitly does not cover any code or objects generated by sdcc.
12  *
13  * For pic device libraries and header files which are derived from
14  * Microchip header (.inc) and linker script (.lkr) files Microchip
15  * requires that "The header files should state that they are only to be
16  * used with authentic Microchip devices" which makes them incompatible
17  * with the GPL. Pic device libraries and header files are located at
18  * non-free/lib and non-free/include directories respectively.
19  * Sdcc should be run with the --use-non-free command line option in
20  * order to include non-free header files and libraries.
21  *
22  * See http://sdcc.sourceforge.net/ for the latest information on sdcc.
23  */
24 
25 #ifndef __PIC16F1788_H__
26 #define __PIC16F1788_H__
27 
28 //==============================================================================
29 //
30 //	Register Addresses
31 //
32 //==============================================================================
33 
34 #ifndef NO_ADDR_DEFINES
35 
36 #define INDF0_ADDR              0x0000
37 #define INDF1_ADDR              0x0001
38 #define PCL_ADDR                0x0002
39 #define STATUS_ADDR             0x0003
40 #define FSR0_ADDR               0x0004
41 #define FSR0L_ADDR              0x0004
42 #define FSR0H_ADDR              0x0005
43 #define FSR1_ADDR               0x0006
44 #define FSR1L_ADDR              0x0006
45 #define FSR1H_ADDR              0x0007
46 #define BSR_ADDR                0x0008
47 #define WREG_ADDR               0x0009
48 #define PCLATH_ADDR             0x000A
49 #define INTCON_ADDR             0x000B
50 #define PORTA_ADDR              0x000C
51 #define PORTB_ADDR              0x000D
52 #define PORTC_ADDR              0x000E
53 #define PORTE_ADDR              0x0010
54 #define PIR1_ADDR               0x0011
55 #define PIR2_ADDR               0x0012
56 #define PIR3_ADDR               0x0013
57 #define PIR4_ADDR               0x0014
58 #define TMR0_ADDR               0x0015
59 #define TMR1_ADDR               0x0016
60 #define TMR1L_ADDR              0x0016
61 #define TMR1H_ADDR              0x0017
62 #define T1CON_ADDR              0x0018
63 #define T1GCON_ADDR             0x0019
64 #define TMR2_ADDR               0x001A
65 #define PR2_ADDR                0x001B
66 #define T2CON_ADDR              0x001C
67 #define TRISA_ADDR              0x008C
68 #define TRISB_ADDR              0x008D
69 #define TRISC_ADDR              0x008E
70 #define TRISE_ADDR              0x0090
71 #define PIE1_ADDR               0x0091
72 #define PIE2_ADDR               0x0092
73 #define PIE3_ADDR               0x0093
74 #define PIE4_ADDR               0x0094
75 #define OPTION_REG_ADDR         0x0095
76 #define PCON_ADDR               0x0096
77 #define WDTCON_ADDR             0x0097
78 #define OSCTUNE_ADDR            0x0098
79 #define OSCCON_ADDR             0x0099
80 #define OSCSTAT_ADDR            0x009A
81 #define ADRES_ADDR              0x009B
82 #define ADRESL_ADDR             0x009B
83 #define ADRESH_ADDR             0x009C
84 #define ADCON0_ADDR             0x009D
85 #define ADCON1_ADDR             0x009E
86 #define ADCON2_ADDR             0x009F
87 #define LATA_ADDR               0x010C
88 #define LATB_ADDR               0x010D
89 #define LATC_ADDR               0x010E
90 #define CM1CON0_ADDR            0x0111
91 #define CM1CON1_ADDR            0x0112
92 #define CM2CON0_ADDR            0x0113
93 #define CM2CON1_ADDR            0x0114
94 #define CMOUT_ADDR              0x0115
95 #define BORCON_ADDR             0x0116
96 #define FVRCON_ADDR             0x0117
97 #define DAC1CON0_ADDR           0x0118
98 #define DAC1CON1_ADDR           0x0119
99 #define CM4CON0_ADDR            0x011A
100 #define CM4CON1_ADDR            0x011B
101 #define APFCON2_ADDR            0x011C
102 #define APFCON_ADDR             0x011D
103 #define APFCON0_ADDR            0x011D
104 #define APFCON1_ADDR            0x011D
105 #define CM3CON0_ADDR            0x011E
106 #define CM3CON1_ADDR            0x011F
107 #define ANSELA_ADDR             0x018C
108 #define ANSELB_ADDR             0x018D
109 #define ANSELC_ADDR             0x018E
110 #define EEADR_ADDR              0x0191
111 #define EEADRL_ADDR             0x0191
112 #define EEADRH_ADDR             0x0192
113 #define EEDAT_ADDR              0x0193
114 #define EEDATL_ADDR             0x0193
115 #define EEDATH_ADDR             0x0194
116 #define EECON1_ADDR             0x0195
117 #define EECON2_ADDR             0x0196
118 #define VREGCON_ADDR            0x0197
119 #define RC1REG_ADDR             0x0199
120 #define RCREG_ADDR              0x0199
121 #define RCREG1_ADDR             0x0199
122 #define TX1REG_ADDR             0x019A
123 #define TXREG_ADDR              0x019A
124 #define TXREG1_ADDR             0x019A
125 #define SP1BRG_ADDR             0x019B
126 #define SP1BRGL_ADDR            0x019B
127 #define SPBRG_ADDR              0x019B
128 #define SPBRG1_ADDR             0x019B
129 #define SPBRGL_ADDR             0x019B
130 #define SP1BRGH_ADDR            0x019C
131 #define SPBRGH_ADDR             0x019C
132 #define SPBRGH1_ADDR            0x019C
133 #define RC1STA_ADDR             0x019D
134 #define RCSTA_ADDR              0x019D
135 #define RCSTA1_ADDR             0x019D
136 #define TX1STA_ADDR             0x019E
137 #define TXSTA_ADDR              0x019E
138 #define TXSTA1_ADDR             0x019E
139 #define BAUD1CON_ADDR           0x019F
140 #define BAUDCON_ADDR            0x019F
141 #define BAUDCON1_ADDR           0x019F
142 #define BAUDCTL_ADDR            0x019F
143 #define BAUDCTL1_ADDR           0x019F
144 #define WPUA_ADDR               0x020C
145 #define WPUB_ADDR               0x020D
146 #define WPUC_ADDR               0x020E
147 #define WPUE_ADDR               0x0210
148 #define SSP1BUF_ADDR            0x0211
149 #define SSPBUF_ADDR             0x0211
150 #define SSP1ADD_ADDR            0x0212
151 #define SSPADD_ADDR             0x0212
152 #define SSP1MSK_ADDR            0x0213
153 #define SSPMSK_ADDR             0x0213
154 #define SSP1STAT_ADDR           0x0214
155 #define SSPSTAT_ADDR            0x0214
156 #define SSP1CON_ADDR            0x0215
157 #define SSP1CON1_ADDR           0x0215
158 #define SSPCON_ADDR             0x0215
159 #define SSPCON1_ADDR            0x0215
160 #define SSP1CON2_ADDR           0x0216
161 #define SSPCON2_ADDR            0x0216
162 #define SSP1CON3_ADDR           0x0217
163 #define SSPCON3_ADDR            0x0217
164 #define ODCONA_ADDR             0x028C
165 #define ODCONB_ADDR             0x028D
166 #define ODCONC_ADDR             0x028E
167 #define CCPR1_ADDR              0x0291
168 #define CCPR1L_ADDR             0x0291
169 #define CCPR1H_ADDR             0x0292
170 #define CCP1CON_ADDR            0x0293
171 #define CCPR2_ADDR              0x0298
172 #define CCPR2L_ADDR             0x0298
173 #define CCPR2H_ADDR             0x0299
174 #define CCP2CON_ADDR            0x029A
175 #define SLRCONA_ADDR            0x030C
176 #define SLRCONB_ADDR            0x030D
177 #define SLRCONC_ADDR            0x030E
178 #define CCPR3_ADDR              0x0311
179 #define CCPR3L_ADDR             0x0311
180 #define CCPR3H_ADDR             0x0312
181 #define CCP3CON_ADDR            0x0313
182 #define INLVLA_ADDR             0x038C
183 #define INLVLB_ADDR             0x038D
184 #define INLVLC_ADDR             0x038E
185 #define INLVLE_ADDR             0x0390
186 #define IOCAP_ADDR              0x0391
187 #define IOCAN_ADDR              0x0392
188 #define IOCAF_ADDR              0x0393
189 #define IOCBP_ADDR              0x0394
190 #define IOCBN_ADDR              0x0395
191 #define IOCBF_ADDR              0x0396
192 #define IOCCP_ADDR              0x0397
193 #define IOCCN_ADDR              0x0398
194 #define IOCCF_ADDR              0x0399
195 #define IOCEP_ADDR              0x039D
196 #define IOCEN_ADDR              0x039E
197 #define IOCEF_ADDR              0x039F
198 #define OPA1CON_ADDR            0x0511
199 #define OPA2CON_ADDR            0x0513
200 #define CLKRCON_ADDR            0x051A
201 #define DAC2CON0_ADDR           0x0591
202 #define DAC2CON1_ADDR           0x0592
203 #define DAC2REF_ADDR            0x0592
204 #define DAC3CON0_ADDR           0x0593
205 #define DAC3CON1_ADDR           0x0594
206 #define DAC3REF_ADDR            0x0594
207 #define DAC4CON0_ADDR           0x0595
208 #define DAC4CON1_ADDR           0x0596
209 #define DAC4REF_ADDR            0x0596
210 #define PSMC1CON_ADDR           0x0E91
211 #define PSMC1MDL_ADDR           0x0E92
212 #define PSMC1SYNC_ADDR          0x0E93
213 #define PSMC1CLK_ADDR           0x0E94
214 #define PSMC1OEN_ADDR           0x0E95
215 #define PSMC1POL_ADDR           0x0E96
216 #define PSMC1BLNK_ADDR          0x0E97
217 #define PSMC1REBS_ADDR          0x0E98
218 #define PSMC1FEBS_ADDR          0x0E99
219 #define PSMC1PHS_ADDR           0x0E9A
220 #define PSMC1DCS_ADDR           0x0E9B
221 #define PSMC1PRS_ADDR           0x0E9C
222 #define PSMC1ASDC_ADDR          0x0E9D
223 #define PSMC1ASDL_ADDR          0x0E9E
224 #define PSMC1ASDS_ADDR          0x0E9F
225 #define PSMC1INT_ADDR           0x0EA0
226 #define PSMC1PH_ADDR            0x0EA1
227 #define PSMC1PHL_ADDR           0x0EA1
228 #define PSMC1PHH_ADDR           0x0EA2
229 #define PSMC1DC_ADDR            0x0EA3
230 #define PSMC1DCL_ADDR           0x0EA3
231 #define PSMC1DCH_ADDR           0x0EA4
232 #define PSMC1PR_ADDR            0x0EA5
233 #define PSMC1PRL_ADDR           0x0EA5
234 #define PSMC1PRH_ADDR           0x0EA6
235 #define PSMC1TMR_ADDR           0x0EA7
236 #define PSMC1TMRL_ADDR          0x0EA7
237 #define PSMC1TMRH_ADDR          0x0EA8
238 #define PSMC1DBR_ADDR           0x0EA9
239 #define PSMC1DBF_ADDR           0x0EAA
240 #define PSMC1BLKR_ADDR          0x0EAB
241 #define PSMC1BLKF_ADDR          0x0EAC
242 #define PSMC1FFA_ADDR           0x0EAD
243 #define PSMC1STR0_ADDR          0x0EAE
244 #define PSMC1STR1_ADDR          0x0EAF
245 #define PSMC2CON_ADDR           0x0EB1
246 #define PSMC2MDL_ADDR           0x0EB2
247 #define PSMC2SYNC_ADDR          0x0EB3
248 #define PSMC2CLK_ADDR           0x0EB4
249 #define PSMC2OEN_ADDR           0x0EB5
250 #define PSMC2POL_ADDR           0x0EB6
251 #define PSMC2BLNK_ADDR          0x0EB7
252 #define PSMC2REBS_ADDR          0x0EB8
253 #define PSMC2FEBS_ADDR          0x0EB9
254 #define PSMC2PHS_ADDR           0x0EBA
255 #define PSMC2DCS_ADDR           0x0EBB
256 #define PSMC2PRS_ADDR           0x0EBC
257 #define PSMC2ASDC_ADDR          0x0EBD
258 #define PSMC2ASDL_ADDR          0x0EBE
259 #define PSMC2ASDS_ADDR          0x0EBF
260 #define PSMC2INT_ADDR           0x0EC0
261 #define PSMC2PH_ADDR            0x0EC1
262 #define PSMC2PHL_ADDR           0x0EC1
263 #define PSMC2PHH_ADDR           0x0EC2
264 #define PSMC2DC_ADDR            0x0EC3
265 #define PSMC2DCL_ADDR           0x0EC3
266 #define PSMC2DCH_ADDR           0x0EC4
267 #define PSMC2PR_ADDR            0x0EC5
268 #define PSMC2PRL_ADDR           0x0EC5
269 #define PSMC2PRH_ADDR           0x0EC6
270 #define PSMC2TMR_ADDR           0x0EC7
271 #define PSMC2TMRL_ADDR          0x0EC7
272 #define PSMC2TMRH_ADDR          0x0EC8
273 #define PSMC2DBR_ADDR           0x0EC9
274 #define PSMC2DBF_ADDR           0x0ECA
275 #define PSMC2BLKR_ADDR          0x0ECB
276 #define PSMC2BLKF_ADDR          0x0ECC
277 #define PSMC2FFA_ADDR           0x0ECD
278 #define PSMC2STR0_ADDR          0x0ECE
279 #define PSMC2STR1_ADDR          0x0ECF
280 #define PSMC3CON_ADDR           0x0ED1
281 #define PSMC3MDL_ADDR           0x0ED2
282 #define PSMC3SYNC_ADDR          0x0ED3
283 #define PSMC3CLK_ADDR           0x0ED4
284 #define PSMC3OEN_ADDR           0x0ED5
285 #define PSMC3POL_ADDR           0x0ED6
286 #define PSMC3BLNK_ADDR          0x0ED7
287 #define PSMC3REBS_ADDR          0x0ED8
288 #define PSMC3FEBS_ADDR          0x0ED9
289 #define PSMC3PHS_ADDR           0x0EDA
290 #define PSMC3DCS_ADDR           0x0EDB
291 #define PSMC3PRS_ADDR           0x0EDC
292 #define PSMC3ASDC_ADDR          0x0EDD
293 #define PSMC3ASDL_ADDR          0x0EDE
294 #define PSMC3ASDS_ADDR          0x0EDF
295 #define PSMC3INT_ADDR           0x0EE0
296 #define PSMC3PH_ADDR            0x0EE1
297 #define PSMC3PHL_ADDR           0x0EE1
298 #define PSMC3PHH_ADDR           0x0EE2
299 #define PSMC3DC_ADDR            0x0EE3
300 #define PSMC3DCL_ADDR           0x0EE3
301 #define PSMC3DCH_ADDR           0x0EE4
302 #define PSMC3PR_ADDR            0x0EE5
303 #define PSMC3PRL_ADDR           0x0EE5
304 #define PSMC3PRH_ADDR           0x0EE6
305 #define PSMC3TMR_ADDR           0x0EE7
306 #define PSMC3TMRL_ADDR          0x0EE7
307 #define PSMC3TMRH_ADDR          0x0EE8
308 #define PSMC3DBR_ADDR           0x0EE9
309 #define PSMC3DBF_ADDR           0x0EEA
310 #define PSMC3BLKR_ADDR          0x0EEB
311 #define PSMC3BLKF_ADDR          0x0EEC
312 #define PSMC3FFA_ADDR           0x0EED
313 #define PSMC3STR0_ADDR          0x0EEE
314 #define PSMC3STR1_ADDR          0x0EEF
315 #define PSMC4CON_ADDR           0x0F11
316 #define PSMC4MDL_ADDR           0x0F12
317 #define PSMC4SYNC_ADDR          0x0F13
318 #define PSMC4CLK_ADDR           0x0F14
319 #define PSMC4OEN_ADDR           0x0F15
320 #define PSMC4POL_ADDR           0x0F16
321 #define PSMC4BLNK_ADDR          0x0F17
322 #define PSMC4REBS_ADDR          0x0F18
323 #define PSMC4FEBS_ADDR          0x0F19
324 #define PSMC4PHS_ADDR           0x0F1A
325 #define PSMC4DCS_ADDR           0x0F1B
326 #define PSMC4PRS_ADDR           0x0F1C
327 #define PSMC4ASDC_ADDR          0x0F1D
328 #define PSMC4ASDL_ADDR          0x0F1E
329 #define PSMC4ASDS_ADDR          0x0F1F
330 #define PSMC4INT_ADDR           0x0F20
331 #define PSMC4PH_ADDR            0x0F21
332 #define PSMC4PHL_ADDR           0x0F21
333 #define PSMC4PHH_ADDR           0x0F22
334 #define PSMC4DC_ADDR            0x0F23
335 #define PSMC4DCL_ADDR           0x0F23
336 #define PSMC4DCH_ADDR           0x0F24
337 #define PSMC4PR_ADDR            0x0F25
338 #define PSMC4PRL_ADDR           0x0F25
339 #define PSMC4PRH_ADDR           0x0F26
340 #define PSMC4TMR_ADDR           0x0F27
341 #define PSMC4TMRL_ADDR          0x0F27
342 #define PSMC4TMRH_ADDR          0x0F28
343 #define PSMC4DBR_ADDR           0x0F29
344 #define PSMC4DBF_ADDR           0x0F2A
345 #define PSMC4BLKR_ADDR          0x0F2B
346 #define PSMC4BLKF_ADDR          0x0F2C
347 #define PSMC4FFA_ADDR           0x0F2D
348 #define PSMC4STR0_ADDR          0x0F2E
349 #define PSMC4STR1_ADDR          0x0F2F
350 #define STATUS_SHAD_ADDR        0x0FE4
351 #define WREG_SHAD_ADDR          0x0FE5
352 #define BSR_SHAD_ADDR           0x0FE6
353 #define PCLATH_SHAD_ADDR        0x0FE7
354 #define FSR0L_SHAD_ADDR         0x0FE8
355 #define FSR0H_SHAD_ADDR         0x0FE9
356 #define FSR1L_SHAD_ADDR         0x0FEA
357 #define FSR1H_SHAD_ADDR         0x0FEB
358 #define STKPTR_ADDR             0x0FED
359 #define TOSL_ADDR               0x0FEE
360 #define TOSH_ADDR               0x0FEF
361 
362 #endif // #ifndef NO_ADDR_DEFINES
363 
364 //==============================================================================
365 //
366 //	Register Definitions
367 //
368 //==============================================================================
369 
370 extern __at(0x0000) __sfr INDF0;
371 extern __at(0x0001) __sfr INDF1;
372 extern __at(0x0002) __sfr PCL;
373 
374 //==============================================================================
375 //        STATUS Bits
376 
377 extern __at(0x0003) __sfr STATUS;
378 
379 typedef struct
380   {
381   unsigned C                    : 1;
382   unsigned DC                   : 1;
383   unsigned Z                    : 1;
384   unsigned NOT_PD               : 1;
385   unsigned NOT_TO               : 1;
386   unsigned                      : 1;
387   unsigned                      : 1;
388   unsigned                      : 1;
389   } __STATUSbits_t;
390 
391 extern __at(0x0003) volatile __STATUSbits_t STATUSbits;
392 
393 #define _C                      0x01
394 #define _DC                     0x02
395 #define _Z                      0x04
396 #define _NOT_PD                 0x08
397 #define _NOT_TO                 0x10
398 
399 //==============================================================================
400 
401 extern __at(0x0004) __sfr FSR0;
402 extern __at(0x0004) __sfr FSR0L;
403 extern __at(0x0005) __sfr FSR0H;
404 extern __at(0x0006) __sfr FSR1;
405 extern __at(0x0006) __sfr FSR1L;
406 extern __at(0x0007) __sfr FSR1H;
407 
408 //==============================================================================
409 //        BSR Bits
410 
411 extern __at(0x0008) __sfr BSR;
412 
413 typedef union
414   {
415   struct
416     {
417     unsigned BSR0               : 1;
418     unsigned BSR1               : 1;
419     unsigned BSR2               : 1;
420     unsigned BSR3               : 1;
421     unsigned BSR4               : 1;
422     unsigned                    : 1;
423     unsigned                    : 1;
424     unsigned                    : 1;
425     };
426 
427   struct
428     {
429     unsigned BSR                : 5;
430     unsigned                    : 3;
431     };
432   } __BSRbits_t;
433 
434 extern __at(0x0008) volatile __BSRbits_t BSRbits;
435 
436 #define _BSR0                   0x01
437 #define _BSR1                   0x02
438 #define _BSR2                   0x04
439 #define _BSR3                   0x08
440 #define _BSR4                   0x10
441 
442 //==============================================================================
443 
444 extern __at(0x0009) __sfr WREG;
445 extern __at(0x000A) __sfr PCLATH;
446 
447 //==============================================================================
448 //        INTCON Bits
449 
450 extern __at(0x000B) __sfr INTCON;
451 
452 typedef union
453   {
454   struct
455     {
456     unsigned IOCIF              : 1;
457     unsigned INTF               : 1;
458     unsigned TMR0IF             : 1;
459     unsigned IOCIE              : 1;
460     unsigned INTE               : 1;
461     unsigned TMR0IE             : 1;
462     unsigned PEIE               : 1;
463     unsigned GIE                : 1;
464     };
465 
466   struct
467     {
468     unsigned                    : 1;
469     unsigned                    : 1;
470     unsigned T0IF               : 1;
471     unsigned                    : 1;
472     unsigned                    : 1;
473     unsigned T0IE               : 1;
474     unsigned                    : 1;
475     unsigned                    : 1;
476     };
477   } __INTCONbits_t;
478 
479 extern __at(0x000B) volatile __INTCONbits_t INTCONbits;
480 
481 #define _IOCIF                  0x01
482 #define _INTF                   0x02
483 #define _TMR0IF                 0x04
484 #define _T0IF                   0x04
485 #define _IOCIE                  0x08
486 #define _INTE                   0x10
487 #define _TMR0IE                 0x20
488 #define _T0IE                   0x20
489 #define _PEIE                   0x40
490 #define _GIE                    0x80
491 
492 //==============================================================================
493 
494 
495 //==============================================================================
496 //        PORTA Bits
497 
498 extern __at(0x000C) __sfr PORTA;
499 
500 typedef struct
501   {
502   unsigned RA0                  : 1;
503   unsigned RA1                  : 1;
504   unsigned RA2                  : 1;
505   unsigned RA3                  : 1;
506   unsigned RA4                  : 1;
507   unsigned RA5                  : 1;
508   unsigned RA6                  : 1;
509   unsigned RA7                  : 1;
510   } __PORTAbits_t;
511 
512 extern __at(0x000C) volatile __PORTAbits_t PORTAbits;
513 
514 #define _RA0                    0x01
515 #define _RA1                    0x02
516 #define _RA2                    0x04
517 #define _RA3                    0x08
518 #define _RA4                    0x10
519 #define _RA5                    0x20
520 #define _RA6                    0x40
521 #define _RA7                    0x80
522 
523 //==============================================================================
524 
525 
526 //==============================================================================
527 //        PORTB Bits
528 
529 extern __at(0x000D) __sfr PORTB;
530 
531 typedef struct
532   {
533   unsigned RB0                  : 1;
534   unsigned RB1                  : 1;
535   unsigned RB2                  : 1;
536   unsigned RB3                  : 1;
537   unsigned RB4                  : 1;
538   unsigned RB5                  : 1;
539   unsigned RB6                  : 1;
540   unsigned RB7                  : 1;
541   } __PORTBbits_t;
542 
543 extern __at(0x000D) volatile __PORTBbits_t PORTBbits;
544 
545 #define _RB0                    0x01
546 #define _RB1                    0x02
547 #define _RB2                    0x04
548 #define _RB3                    0x08
549 #define _RB4                    0x10
550 #define _RB5                    0x20
551 #define _RB6                    0x40
552 #define _RB7                    0x80
553 
554 //==============================================================================
555 
556 
557 //==============================================================================
558 //        PORTC Bits
559 
560 extern __at(0x000E) __sfr PORTC;
561 
562 typedef struct
563   {
564   unsigned RC0                  : 1;
565   unsigned RC1                  : 1;
566   unsigned RC2                  : 1;
567   unsigned RC3                  : 1;
568   unsigned RC4                  : 1;
569   unsigned RC5                  : 1;
570   unsigned RC6                  : 1;
571   unsigned RC7                  : 1;
572   } __PORTCbits_t;
573 
574 extern __at(0x000E) volatile __PORTCbits_t PORTCbits;
575 
576 #define _RC0                    0x01
577 #define _RC1                    0x02
578 #define _RC2                    0x04
579 #define _RC3                    0x08
580 #define _RC4                    0x10
581 #define _RC5                    0x20
582 #define _RC6                    0x40
583 #define _RC7                    0x80
584 
585 //==============================================================================
586 
587 
588 //==============================================================================
589 //        PORTE Bits
590 
591 extern __at(0x0010) __sfr PORTE;
592 
593 typedef struct
594   {
595   unsigned                      : 1;
596   unsigned                      : 1;
597   unsigned                      : 1;
598   unsigned RE3                  : 1;
599   unsigned                      : 1;
600   unsigned                      : 1;
601   unsigned                      : 1;
602   unsigned                      : 1;
603   } __PORTEbits_t;
604 
605 extern __at(0x0010) volatile __PORTEbits_t PORTEbits;
606 
607 #define _RE3                    0x08
608 
609 //==============================================================================
610 
611 
612 //==============================================================================
613 //        PIR1 Bits
614 
615 extern __at(0x0011) __sfr PIR1;
616 
617 typedef struct
618   {
619   unsigned TMR1IF               : 1;
620   unsigned TMR2IF               : 1;
621   unsigned CCP1IF               : 1;
622   unsigned SSP1IF               : 1;
623   unsigned TXIF                 : 1;
624   unsigned RCIF                 : 1;
625   unsigned ADIF                 : 1;
626   unsigned TMR1GIF              : 1;
627   } __PIR1bits_t;
628 
629 extern __at(0x0011) volatile __PIR1bits_t PIR1bits;
630 
631 #define _TMR1IF                 0x01
632 #define _TMR2IF                 0x02
633 #define _CCP1IF                 0x04
634 #define _SSP1IF                 0x08
635 #define _TXIF                   0x10
636 #define _RCIF                   0x20
637 #define _ADIF                   0x40
638 #define _TMR1GIF                0x80
639 
640 //==============================================================================
641 
642 
643 //==============================================================================
644 //        PIR2 Bits
645 
646 extern __at(0x0012) __sfr PIR2;
647 
648 typedef struct
649   {
650   unsigned CCP2IF               : 1;
651   unsigned C3IF                 : 1;
652   unsigned C4IF                 : 1;
653   unsigned BCL1IF               : 1;
654   unsigned EEIF                 : 1;
655   unsigned C1IF                 : 1;
656   unsigned C2IF                 : 1;
657   unsigned OSFIF                : 1;
658   } __PIR2bits_t;
659 
660 extern __at(0x0012) volatile __PIR2bits_t PIR2bits;
661 
662 #define _CCP2IF                 0x01
663 #define _C3IF                   0x02
664 #define _C4IF                   0x04
665 #define _BCL1IF                 0x08
666 #define _EEIF                   0x10
667 #define _C1IF                   0x20
668 #define _C2IF                   0x40
669 #define _OSFIF                  0x80
670 
671 //==============================================================================
672 
673 
674 //==============================================================================
675 //        PIR3 Bits
676 
677 extern __at(0x0013) __sfr PIR3;
678 
679 typedef struct
680   {
681   unsigned                      : 1;
682   unsigned                      : 1;
683   unsigned                      : 1;
684   unsigned                      : 1;
685   unsigned CCP3IF               : 1;
686   unsigned                      : 1;
687   unsigned                      : 1;
688   unsigned                      : 1;
689   } __PIR3bits_t;
690 
691 extern __at(0x0013) volatile __PIR3bits_t PIR3bits;
692 
693 #define _CCP3IF                 0x10
694 
695 //==============================================================================
696 
697 
698 //==============================================================================
699 //        PIR4 Bits
700 
701 extern __at(0x0014) __sfr PIR4;
702 
703 typedef struct
704   {
705   unsigned PSMC1SIF             : 1;
706   unsigned PSMC2SIF             : 1;
707   unsigned PSMC3SIF             : 1;
708   unsigned PSMC4SIF             : 1;
709   unsigned PSMC1TIF             : 1;
710   unsigned PSMC2TIF             : 1;
711   unsigned PSMC3TIF             : 1;
712   unsigned PSMC4TIF             : 1;
713   } __PIR4bits_t;
714 
715 extern __at(0x0014) volatile __PIR4bits_t PIR4bits;
716 
717 #define _PSMC1SIF               0x01
718 #define _PSMC2SIF               0x02
719 #define _PSMC3SIF               0x04
720 #define _PSMC4SIF               0x08
721 #define _PSMC1TIF               0x10
722 #define _PSMC2TIF               0x20
723 #define _PSMC3TIF               0x40
724 #define _PSMC4TIF               0x80
725 
726 //==============================================================================
727 
728 extern __at(0x0015) __sfr TMR0;
729 extern __at(0x0016) __sfr TMR1;
730 extern __at(0x0016) __sfr TMR1L;
731 extern __at(0x0017) __sfr TMR1H;
732 
733 //==============================================================================
734 //        T1CON Bits
735 
736 extern __at(0x0018) __sfr T1CON;
737 
738 typedef union
739   {
740   struct
741     {
742     unsigned TMR1ON             : 1;
743     unsigned                    : 1;
744     unsigned NOT_T1SYNC         : 1;
745     unsigned T1OSCEN            : 1;
746     unsigned T1CKPS0            : 1;
747     unsigned T1CKPS1            : 1;
748     unsigned TMR1CS0            : 1;
749     unsigned TMR1CS1            : 1;
750     };
751 
752   struct
753     {
754     unsigned                    : 4;
755     unsigned T1CKPS             : 2;
756     unsigned                    : 2;
757     };
758 
759   struct
760     {
761     unsigned                    : 6;
762     unsigned TMR1CS             : 2;
763     };
764   } __T1CONbits_t;
765 
766 extern __at(0x0018) volatile __T1CONbits_t T1CONbits;
767 
768 #define _TMR1ON                 0x01
769 #define _NOT_T1SYNC             0x04
770 #define _T1OSCEN                0x08
771 #define _T1CKPS0                0x10
772 #define _T1CKPS1                0x20
773 #define _TMR1CS0                0x40
774 #define _TMR1CS1                0x80
775 
776 //==============================================================================
777 
778 
779 //==============================================================================
780 //        T1GCON Bits
781 
782 extern __at(0x0019) __sfr T1GCON;
783 
784 typedef union
785   {
786   struct
787     {
788     unsigned T1GSS0             : 1;
789     unsigned T1GSS1             : 1;
790     unsigned T1GVAL             : 1;
791     unsigned T1GGO              : 1;
792     unsigned T1GSPM             : 1;
793     unsigned T1GTM              : 1;
794     unsigned T1GPOL             : 1;
795     unsigned TMR1GE             : 1;
796     };
797 
798   struct
799     {
800     unsigned T1GSS              : 2;
801     unsigned                    : 6;
802     };
803   } __T1GCONbits_t;
804 
805 extern __at(0x0019) volatile __T1GCONbits_t T1GCONbits;
806 
807 #define _T1GSS0                 0x01
808 #define _T1GSS1                 0x02
809 #define _T1GVAL                 0x04
810 #define _T1GGO                  0x08
811 #define _T1GSPM                 0x10
812 #define _T1GTM                  0x20
813 #define _T1GPOL                 0x40
814 #define _TMR1GE                 0x80
815 
816 //==============================================================================
817 
818 extern __at(0x001A) __sfr TMR2;
819 extern __at(0x001B) __sfr PR2;
820 
821 //==============================================================================
822 //        T2CON Bits
823 
824 extern __at(0x001C) __sfr T2CON;
825 
826 typedef union
827   {
828   struct
829     {
830     unsigned T2CKPS0            : 1;
831     unsigned T2CKPS1            : 1;
832     unsigned TMR2ON             : 1;
833     unsigned T2OUTPS0           : 1;
834     unsigned T2OUTPS1           : 1;
835     unsigned T2OUTPS2           : 1;
836     unsigned T2OUTPS3           : 1;
837     unsigned                    : 1;
838     };
839 
840   struct
841     {
842     unsigned T2CKPS             : 2;
843     unsigned                    : 6;
844     };
845 
846   struct
847     {
848     unsigned                    : 3;
849     unsigned T2OUTPS            : 4;
850     unsigned                    : 1;
851     };
852   } __T2CONbits_t;
853 
854 extern __at(0x001C) volatile __T2CONbits_t T2CONbits;
855 
856 #define _T2CKPS0                0x01
857 #define _T2CKPS1                0x02
858 #define _TMR2ON                 0x04
859 #define _T2OUTPS0               0x08
860 #define _T2OUTPS1               0x10
861 #define _T2OUTPS2               0x20
862 #define _T2OUTPS3               0x40
863 
864 //==============================================================================
865 
866 
867 //==============================================================================
868 //        TRISA Bits
869 
870 extern __at(0x008C) __sfr TRISA;
871 
872 typedef struct
873   {
874   unsigned TRISA0               : 1;
875   unsigned TRISA1               : 1;
876   unsigned TRISA2               : 1;
877   unsigned TRISA3               : 1;
878   unsigned TRISA4               : 1;
879   unsigned TRISA5               : 1;
880   unsigned TRISA6               : 1;
881   unsigned TRISA7               : 1;
882   } __TRISAbits_t;
883 
884 extern __at(0x008C) volatile __TRISAbits_t TRISAbits;
885 
886 #define _TRISA0                 0x01
887 #define _TRISA1                 0x02
888 #define _TRISA2                 0x04
889 #define _TRISA3                 0x08
890 #define _TRISA4                 0x10
891 #define _TRISA5                 0x20
892 #define _TRISA6                 0x40
893 #define _TRISA7                 0x80
894 
895 //==============================================================================
896 
897 
898 //==============================================================================
899 //        TRISB Bits
900 
901 extern __at(0x008D) __sfr TRISB;
902 
903 typedef struct
904   {
905   unsigned TRISB0               : 1;
906   unsigned TRISB1               : 1;
907   unsigned TRISB2               : 1;
908   unsigned TRISB3               : 1;
909   unsigned TRISB4               : 1;
910   unsigned TRISB5               : 1;
911   unsigned TRISB6               : 1;
912   unsigned TRISB7               : 1;
913   } __TRISBbits_t;
914 
915 extern __at(0x008D) volatile __TRISBbits_t TRISBbits;
916 
917 #define _TRISB0                 0x01
918 #define _TRISB1                 0x02
919 #define _TRISB2                 0x04
920 #define _TRISB3                 0x08
921 #define _TRISB4                 0x10
922 #define _TRISB5                 0x20
923 #define _TRISB6                 0x40
924 #define _TRISB7                 0x80
925 
926 //==============================================================================
927 
928 
929 //==============================================================================
930 //        TRISC Bits
931 
932 extern __at(0x008E) __sfr TRISC;
933 
934 typedef struct
935   {
936   unsigned TRISC0               : 1;
937   unsigned TRISC1               : 1;
938   unsigned TRISC2               : 1;
939   unsigned TRISC3               : 1;
940   unsigned TRISC4               : 1;
941   unsigned TRISC5               : 1;
942   unsigned TRISC6               : 1;
943   unsigned TRISC7               : 1;
944   } __TRISCbits_t;
945 
946 extern __at(0x008E) volatile __TRISCbits_t TRISCbits;
947 
948 #define _TRISC0                 0x01
949 #define _TRISC1                 0x02
950 #define _TRISC2                 0x04
951 #define _TRISC3                 0x08
952 #define _TRISC4                 0x10
953 #define _TRISC5                 0x20
954 #define _TRISC6                 0x40
955 #define _TRISC7                 0x80
956 
957 //==============================================================================
958 
959 
960 //==============================================================================
961 //        TRISE Bits
962 
963 extern __at(0x0090) __sfr TRISE;
964 
965 typedef struct
966   {
967   unsigned                      : 1;
968   unsigned                      : 1;
969   unsigned                      : 1;
970   unsigned TRISE3               : 1;
971   unsigned                      : 1;
972   unsigned                      : 1;
973   unsigned                      : 1;
974   unsigned                      : 1;
975   } __TRISEbits_t;
976 
977 extern __at(0x0090) volatile __TRISEbits_t TRISEbits;
978 
979 #define _TRISE3                 0x08
980 
981 //==============================================================================
982 
983 
984 //==============================================================================
985 //        PIE1 Bits
986 
987 extern __at(0x0091) __sfr PIE1;
988 
989 typedef struct
990   {
991   unsigned TMR1IE               : 1;
992   unsigned TMR2IE               : 1;
993   unsigned CCP1IE               : 1;
994   unsigned SSP1IE               : 1;
995   unsigned TXIE                 : 1;
996   unsigned RCIE                 : 1;
997   unsigned ADIE                 : 1;
998   unsigned TMR1GIE              : 1;
999   } __PIE1bits_t;
1000 
1001 extern __at(0x0091) volatile __PIE1bits_t PIE1bits;
1002 
1003 #define _TMR1IE                 0x01
1004 #define _TMR2IE                 0x02
1005 #define _CCP1IE                 0x04
1006 #define _SSP1IE                 0x08
1007 #define _TXIE                   0x10
1008 #define _RCIE                   0x20
1009 #define _ADIE                   0x40
1010 #define _TMR1GIE                0x80
1011 
1012 //==============================================================================
1013 
1014 
1015 //==============================================================================
1016 //        PIE2 Bits
1017 
1018 extern __at(0x0092) __sfr PIE2;
1019 
1020 typedef struct
1021   {
1022   unsigned CCP2IE               : 1;
1023   unsigned C3IE                 : 1;
1024   unsigned C4IE                 : 1;
1025   unsigned BCL1IE               : 1;
1026   unsigned EEIE                 : 1;
1027   unsigned C1IE                 : 1;
1028   unsigned C2IE                 : 1;
1029   unsigned OSFIE                : 1;
1030   } __PIE2bits_t;
1031 
1032 extern __at(0x0092) volatile __PIE2bits_t PIE2bits;
1033 
1034 #define _CCP2IE                 0x01
1035 #define _C3IE                   0x02
1036 #define _C4IE                   0x04
1037 #define _BCL1IE                 0x08
1038 #define _EEIE                   0x10
1039 #define _C1IE                   0x20
1040 #define _C2IE                   0x40
1041 #define _OSFIE                  0x80
1042 
1043 //==============================================================================
1044 
1045 
1046 //==============================================================================
1047 //        PIE3 Bits
1048 
1049 extern __at(0x0093) __sfr PIE3;
1050 
1051 typedef struct
1052   {
1053   unsigned                      : 1;
1054   unsigned                      : 1;
1055   unsigned                      : 1;
1056   unsigned                      : 1;
1057   unsigned CCP3IE               : 1;
1058   unsigned                      : 1;
1059   unsigned                      : 1;
1060   unsigned                      : 1;
1061   } __PIE3bits_t;
1062 
1063 extern __at(0x0093) volatile __PIE3bits_t PIE3bits;
1064 
1065 #define _CCP3IE                 0x10
1066 
1067 //==============================================================================
1068 
1069 
1070 //==============================================================================
1071 //        PIE4 Bits
1072 
1073 extern __at(0x0094) __sfr PIE4;
1074 
1075 typedef union
1076   {
1077   struct
1078     {
1079     unsigned PSMC1SIE           : 1;
1080     unsigned PSMC2SIE           : 1;
1081     unsigned PSMC3SIE           : 1;
1082     unsigned PSMC4SIE           : 1;
1083     unsigned PSMC1TIE           : 1;
1084     unsigned PSMC2TIE           : 1;
1085     unsigned PSMC3TIE           : 1;
1086     unsigned PSMC4TIE           : 1;
1087     };
1088 
1089   struct
1090     {
1091     unsigned                    : 1;
1092     unsigned                    : 1;
1093     unsigned                    : 1;
1094     unsigned                    : 1;
1095     unsigned                    : 1;
1096     unsigned                    : 1;
1097     unsigned PMSC3TIE           : 1;
1098     unsigned                    : 1;
1099     };
1100   } __PIE4bits_t;
1101 
1102 extern __at(0x0094) volatile __PIE4bits_t PIE4bits;
1103 
1104 #define _PSMC1SIE               0x01
1105 #define _PSMC2SIE               0x02
1106 #define _PSMC3SIE               0x04
1107 #define _PSMC4SIE               0x08
1108 #define _PSMC1TIE               0x10
1109 #define _PSMC2TIE               0x20
1110 #define _PSMC3TIE               0x40
1111 #define _PMSC3TIE               0x40
1112 #define _PSMC4TIE               0x80
1113 
1114 //==============================================================================
1115 
1116 
1117 //==============================================================================
1118 //        OPTION_REG Bits
1119 
1120 extern __at(0x0095) __sfr OPTION_REG;
1121 
1122 typedef union
1123   {
1124   struct
1125     {
1126     unsigned PS0                : 1;
1127     unsigned PS1                : 1;
1128     unsigned PS2                : 1;
1129     unsigned PSA                : 1;
1130     unsigned TMR0SE             : 1;
1131     unsigned TMR0CS             : 1;
1132     unsigned INTEDG             : 1;
1133     unsigned NOT_WPUEN          : 1;
1134     };
1135 
1136   struct
1137     {
1138     unsigned                    : 1;
1139     unsigned                    : 1;
1140     unsigned                    : 1;
1141     unsigned                    : 1;
1142     unsigned T0SE               : 1;
1143     unsigned T0CS               : 1;
1144     unsigned                    : 1;
1145     unsigned                    : 1;
1146     };
1147 
1148   struct
1149     {
1150     unsigned PS                 : 3;
1151     unsigned                    : 5;
1152     };
1153   } __OPTION_REGbits_t;
1154 
1155 extern __at(0x0095) volatile __OPTION_REGbits_t OPTION_REGbits;
1156 
1157 #define _PS0                    0x01
1158 #define _PS1                    0x02
1159 #define _PS2                    0x04
1160 #define _PSA                    0x08
1161 #define _TMR0SE                 0x10
1162 #define _T0SE                   0x10
1163 #define _TMR0CS                 0x20
1164 #define _T0CS                   0x20
1165 #define _INTEDG                 0x40
1166 #define _NOT_WPUEN              0x80
1167 
1168 //==============================================================================
1169 
1170 
1171 //==============================================================================
1172 //        PCON Bits
1173 
1174 extern __at(0x0096) __sfr PCON;
1175 
1176 typedef struct
1177   {
1178   unsigned NOT_BOR              : 1;
1179   unsigned NOT_POR              : 1;
1180   unsigned NOT_RI               : 1;
1181   unsigned NOT_RMCLR            : 1;
1182   unsigned NOT_RWDT             : 1;
1183   unsigned                      : 1;
1184   unsigned STKUNF               : 1;
1185   unsigned STKOVF               : 1;
1186   } __PCONbits_t;
1187 
1188 extern __at(0x0096) volatile __PCONbits_t PCONbits;
1189 
1190 #define _NOT_BOR                0x01
1191 #define _NOT_POR                0x02
1192 #define _NOT_RI                 0x04
1193 #define _NOT_RMCLR              0x08
1194 #define _NOT_RWDT               0x10
1195 #define _STKUNF                 0x40
1196 #define _STKOVF                 0x80
1197 
1198 //==============================================================================
1199 
1200 
1201 //==============================================================================
1202 //        WDTCON Bits
1203 
1204 extern __at(0x0097) __sfr WDTCON;
1205 
1206 typedef union
1207   {
1208   struct
1209     {
1210     unsigned SWDTEN             : 1;
1211     unsigned WDTPS0             : 1;
1212     unsigned WDTPS1             : 1;
1213     unsigned WDTPS2             : 1;
1214     unsigned WDTPS3             : 1;
1215     unsigned WDTPS4             : 1;
1216     unsigned                    : 1;
1217     unsigned                    : 1;
1218     };
1219 
1220   struct
1221     {
1222     unsigned                    : 1;
1223     unsigned WDTPS              : 5;
1224     unsigned                    : 2;
1225     };
1226   } __WDTCONbits_t;
1227 
1228 extern __at(0x0097) volatile __WDTCONbits_t WDTCONbits;
1229 
1230 #define _SWDTEN                 0x01
1231 #define _WDTPS0                 0x02
1232 #define _WDTPS1                 0x04
1233 #define _WDTPS2                 0x08
1234 #define _WDTPS3                 0x10
1235 #define _WDTPS4                 0x20
1236 
1237 //==============================================================================
1238 
1239 
1240 //==============================================================================
1241 //        OSCTUNE Bits
1242 
1243 extern __at(0x0098) __sfr OSCTUNE;
1244 
1245 typedef union
1246   {
1247   struct
1248     {
1249     unsigned TUN0               : 1;
1250     unsigned TUN1               : 1;
1251     unsigned TUN2               : 1;
1252     unsigned TUN3               : 1;
1253     unsigned TUN4               : 1;
1254     unsigned TUN5               : 1;
1255     unsigned                    : 1;
1256     unsigned                    : 1;
1257     };
1258 
1259   struct
1260     {
1261     unsigned TUN                : 6;
1262     unsigned                    : 2;
1263     };
1264   } __OSCTUNEbits_t;
1265 
1266 extern __at(0x0098) volatile __OSCTUNEbits_t OSCTUNEbits;
1267 
1268 #define _TUN0                   0x01
1269 #define _TUN1                   0x02
1270 #define _TUN2                   0x04
1271 #define _TUN3                   0x08
1272 #define _TUN4                   0x10
1273 #define _TUN5                   0x20
1274 
1275 //==============================================================================
1276 
1277 
1278 //==============================================================================
1279 //        OSCCON Bits
1280 
1281 extern __at(0x0099) __sfr OSCCON;
1282 
1283 typedef union
1284   {
1285   struct
1286     {
1287     unsigned SCS0               : 1;
1288     unsigned SCS1               : 1;
1289     unsigned                    : 1;
1290     unsigned IRCF0              : 1;
1291     unsigned IRCF1              : 1;
1292     unsigned IRCF2              : 1;
1293     unsigned IRCF3              : 1;
1294     unsigned SPLLEN             : 1;
1295     };
1296 
1297   struct
1298     {
1299     unsigned SCS                : 2;
1300     unsigned                    : 6;
1301     };
1302 
1303   struct
1304     {
1305     unsigned                    : 3;
1306     unsigned IRCF               : 4;
1307     unsigned                    : 1;
1308     };
1309   } __OSCCONbits_t;
1310 
1311 extern __at(0x0099) volatile __OSCCONbits_t OSCCONbits;
1312 
1313 #define _SCS0                   0x01
1314 #define _SCS1                   0x02
1315 #define _IRCF0                  0x08
1316 #define _IRCF1                  0x10
1317 #define _IRCF2                  0x20
1318 #define _IRCF3                  0x40
1319 #define _SPLLEN                 0x80
1320 
1321 //==============================================================================
1322 
1323 
1324 //==============================================================================
1325 //        OSCSTAT Bits
1326 
1327 extern __at(0x009A) __sfr OSCSTAT;
1328 
1329 typedef struct
1330   {
1331   unsigned HFIOFS               : 1;
1332   unsigned LFIOFR               : 1;
1333   unsigned MFIOFR               : 1;
1334   unsigned HFIOFL               : 1;
1335   unsigned HFIOFR               : 1;
1336   unsigned OSTS                 : 1;
1337   unsigned PLLR                 : 1;
1338   unsigned T1OSCR               : 1;
1339   } __OSCSTATbits_t;
1340 
1341 extern __at(0x009A) volatile __OSCSTATbits_t OSCSTATbits;
1342 
1343 #define _HFIOFS                 0x01
1344 #define _LFIOFR                 0x02
1345 #define _MFIOFR                 0x04
1346 #define _HFIOFL                 0x08
1347 #define _HFIOFR                 0x10
1348 #define _OSTS                   0x20
1349 #define _PLLR                   0x40
1350 #define _T1OSCR                 0x80
1351 
1352 //==============================================================================
1353 
1354 extern __at(0x009B) __sfr ADRES;
1355 extern __at(0x009B) __sfr ADRESL;
1356 extern __at(0x009C) __sfr ADRESH;
1357 
1358 //==============================================================================
1359 //        ADCON0 Bits
1360 
1361 extern __at(0x009D) __sfr ADCON0;
1362 
1363 typedef union
1364   {
1365   struct
1366     {
1367     unsigned ADON               : 1;
1368     unsigned GO_NOT_DONE        : 1;
1369     unsigned CHS0               : 1;
1370     unsigned CHS1               : 1;
1371     unsigned CHS2               : 1;
1372     unsigned CHS3               : 1;
1373     unsigned CHS4               : 1;
1374     unsigned ADRMD              : 1;
1375     };
1376 
1377   struct
1378     {
1379     unsigned                    : 1;
1380     unsigned ADGO               : 1;
1381     unsigned                    : 1;
1382     unsigned                    : 1;
1383     unsigned                    : 1;
1384     unsigned                    : 1;
1385     unsigned                    : 1;
1386     unsigned                    : 1;
1387     };
1388 
1389   struct
1390     {
1391     unsigned                    : 1;
1392     unsigned GO                 : 1;
1393     unsigned                    : 1;
1394     unsigned                    : 1;
1395     unsigned                    : 1;
1396     unsigned                    : 1;
1397     unsigned                    : 1;
1398     unsigned                    : 1;
1399     };
1400 
1401   struct
1402     {
1403     unsigned                    : 1;
1404     unsigned DONE               : 1;
1405     unsigned                    : 1;
1406     unsigned                    : 1;
1407     unsigned                    : 1;
1408     unsigned                    : 1;
1409     unsigned                    : 1;
1410     unsigned                    : 1;
1411     };
1412 
1413   struct
1414     {
1415     unsigned                    : 2;
1416     unsigned CHS                : 5;
1417     unsigned                    : 1;
1418     };
1419   } __ADCON0bits_t;
1420 
1421 extern __at(0x009D) volatile __ADCON0bits_t ADCON0bits;
1422 
1423 #define _ADON                   0x01
1424 #define _GO_NOT_DONE            0x02
1425 #define _ADGO                   0x02
1426 #define _GO                     0x02
1427 #define _DONE                   0x02
1428 #define _CHS0                   0x04
1429 #define _CHS1                   0x08
1430 #define _CHS2                   0x10
1431 #define _CHS3                   0x20
1432 #define _CHS4                   0x40
1433 #define _ADRMD                  0x80
1434 
1435 //==============================================================================
1436 
1437 
1438 //==============================================================================
1439 //        ADCON1 Bits
1440 
1441 extern __at(0x009E) __sfr ADCON1;
1442 
1443 typedef union
1444   {
1445   struct
1446     {
1447     unsigned ADPREF0            : 1;
1448     unsigned ADPREF1            : 1;
1449     unsigned ADNREF             : 1;
1450     unsigned                    : 1;
1451     unsigned ADCS0              : 1;
1452     unsigned ADCS1              : 1;
1453     unsigned ADCS2              : 1;
1454     unsigned ADFM               : 1;
1455     };
1456 
1457   struct
1458     {
1459     unsigned ADPREF             : 2;
1460     unsigned                    : 6;
1461     };
1462 
1463   struct
1464     {
1465     unsigned                    : 4;
1466     unsigned ADCS               : 3;
1467     unsigned                    : 1;
1468     };
1469   } __ADCON1bits_t;
1470 
1471 extern __at(0x009E) volatile __ADCON1bits_t ADCON1bits;
1472 
1473 #define _ADPREF0                0x01
1474 #define _ADPREF1                0x02
1475 #define _ADNREF                 0x04
1476 #define _ADCS0                  0x10
1477 #define _ADCS1                  0x20
1478 #define _ADCS2                  0x40
1479 #define _ADFM                   0x80
1480 
1481 //==============================================================================
1482 
1483 
1484 //==============================================================================
1485 //        ADCON2 Bits
1486 
1487 extern __at(0x009F) __sfr ADCON2;
1488 
1489 typedef union
1490   {
1491   struct
1492     {
1493     unsigned CHSN0              : 1;
1494     unsigned CHSN1              : 1;
1495     unsigned CHSN2              : 1;
1496     unsigned CHSN3              : 1;
1497     unsigned TRIGSEL0           : 1;
1498     unsigned TRIGSEL1           : 1;
1499     unsigned TRIGSEL2           : 1;
1500     unsigned TRIGSEL3           : 1;
1501     };
1502 
1503   struct
1504     {
1505     unsigned CHSN               : 4;
1506     unsigned                    : 4;
1507     };
1508 
1509   struct
1510     {
1511     unsigned                    : 4;
1512     unsigned TRIGSEL            : 4;
1513     };
1514   } __ADCON2bits_t;
1515 
1516 extern __at(0x009F) volatile __ADCON2bits_t ADCON2bits;
1517 
1518 #define _CHSN0                  0x01
1519 #define _CHSN1                  0x02
1520 #define _CHSN2                  0x04
1521 #define _CHSN3                  0x08
1522 #define _TRIGSEL0               0x10
1523 #define _TRIGSEL1               0x20
1524 #define _TRIGSEL2               0x40
1525 #define _TRIGSEL3               0x80
1526 
1527 //==============================================================================
1528 
1529 
1530 //==============================================================================
1531 //        LATA Bits
1532 
1533 extern __at(0x010C) __sfr LATA;
1534 
1535 typedef struct
1536   {
1537   unsigned LATA0                : 1;
1538   unsigned LATA1                : 1;
1539   unsigned LATA2                : 1;
1540   unsigned LATA3                : 1;
1541   unsigned LATA4                : 1;
1542   unsigned LATA5                : 1;
1543   unsigned LATA6                : 1;
1544   unsigned LATA7                : 1;
1545   } __LATAbits_t;
1546 
1547 extern __at(0x010C) volatile __LATAbits_t LATAbits;
1548 
1549 #define _LATA0                  0x01
1550 #define _LATA1                  0x02
1551 #define _LATA2                  0x04
1552 #define _LATA3                  0x08
1553 #define _LATA4                  0x10
1554 #define _LATA5                  0x20
1555 #define _LATA6                  0x40
1556 #define _LATA7                  0x80
1557 
1558 //==============================================================================
1559 
1560 
1561 //==============================================================================
1562 //        LATB Bits
1563 
1564 extern __at(0x010D) __sfr LATB;
1565 
1566 typedef struct
1567   {
1568   unsigned LATB0                : 1;
1569   unsigned LATB1                : 1;
1570   unsigned LATB2                : 1;
1571   unsigned LATB3                : 1;
1572   unsigned LATB4                : 1;
1573   unsigned LATB5                : 1;
1574   unsigned LATB6                : 1;
1575   unsigned LATB7                : 1;
1576   } __LATBbits_t;
1577 
1578 extern __at(0x010D) volatile __LATBbits_t LATBbits;
1579 
1580 #define _LATB0                  0x01
1581 #define _LATB1                  0x02
1582 #define _LATB2                  0x04
1583 #define _LATB3                  0x08
1584 #define _LATB4                  0x10
1585 #define _LATB5                  0x20
1586 #define _LATB6                  0x40
1587 #define _LATB7                  0x80
1588 
1589 //==============================================================================
1590 
1591 
1592 //==============================================================================
1593 //        LATC Bits
1594 
1595 extern __at(0x010E) __sfr LATC;
1596 
1597 typedef struct
1598   {
1599   unsigned LATC0                : 1;
1600   unsigned LATC1                : 1;
1601   unsigned LATC2                : 1;
1602   unsigned LATC3                : 1;
1603   unsigned LATC4                : 1;
1604   unsigned LATC5                : 1;
1605   unsigned LATC6                : 1;
1606   unsigned LATC7                : 1;
1607   } __LATCbits_t;
1608 
1609 extern __at(0x010E) volatile __LATCbits_t LATCbits;
1610 
1611 #define _LATC0                  0x01
1612 #define _LATC1                  0x02
1613 #define _LATC2                  0x04
1614 #define _LATC3                  0x08
1615 #define _LATC4                  0x10
1616 #define _LATC5                  0x20
1617 #define _LATC6                  0x40
1618 #define _LATC7                  0x80
1619 
1620 //==============================================================================
1621 
1622 
1623 //==============================================================================
1624 //        CM1CON0 Bits
1625 
1626 extern __at(0x0111) __sfr CM1CON0;
1627 
1628 typedef struct
1629   {
1630   unsigned C1SYNC               : 1;
1631   unsigned C1HYS                : 1;
1632   unsigned C1SP                 : 1;
1633   unsigned C1ZLF                : 1;
1634   unsigned C1POL                : 1;
1635   unsigned C1OE                 : 1;
1636   unsigned C1OUT                : 1;
1637   unsigned C1ON                 : 1;
1638   } __CM1CON0bits_t;
1639 
1640 extern __at(0x0111) volatile __CM1CON0bits_t CM1CON0bits;
1641 
1642 #define _C1SYNC                 0x01
1643 #define _C1HYS                  0x02
1644 #define _C1SP                   0x04
1645 #define _C1ZLF                  0x08
1646 #define _C1POL                  0x10
1647 #define _C1OE                   0x20
1648 #define _C1OUT                  0x40
1649 #define _C1ON                   0x80
1650 
1651 //==============================================================================
1652 
1653 
1654 //==============================================================================
1655 //        CM1CON1 Bits
1656 
1657 extern __at(0x0112) __sfr CM1CON1;
1658 
1659 typedef union
1660   {
1661   struct
1662     {
1663     unsigned C1NCH0             : 1;
1664     unsigned C1NCH1             : 1;
1665     unsigned C1NCH2             : 1;
1666     unsigned C1PCH0             : 1;
1667     unsigned C1PCH1             : 1;
1668     unsigned C1PCH2             : 1;
1669     unsigned C1INTN             : 1;
1670     unsigned C1INTP             : 1;
1671     };
1672 
1673   struct
1674     {
1675     unsigned C1NCH              : 3;
1676     unsigned                    : 5;
1677     };
1678 
1679   struct
1680     {
1681     unsigned                    : 3;
1682     unsigned C1PCH              : 3;
1683     unsigned                    : 2;
1684     };
1685   } __CM1CON1bits_t;
1686 
1687 extern __at(0x0112) volatile __CM1CON1bits_t CM1CON1bits;
1688 
1689 #define _C1NCH0                 0x01
1690 #define _C1NCH1                 0x02
1691 #define _C1NCH2                 0x04
1692 #define _C1PCH0                 0x08
1693 #define _C1PCH1                 0x10
1694 #define _C1PCH2                 0x20
1695 #define _C1INTN                 0x40
1696 #define _C1INTP                 0x80
1697 
1698 //==============================================================================
1699 
1700 
1701 //==============================================================================
1702 //        CM2CON0 Bits
1703 
1704 extern __at(0x0113) __sfr CM2CON0;
1705 
1706 typedef struct
1707   {
1708   unsigned C2SYNC               : 1;
1709   unsigned C2HYS                : 1;
1710   unsigned C2SP                 : 1;
1711   unsigned C2ZLF                : 1;
1712   unsigned C2POL                : 1;
1713   unsigned C2OE                 : 1;
1714   unsigned C2OUT                : 1;
1715   unsigned C2ON                 : 1;
1716   } __CM2CON0bits_t;
1717 
1718 extern __at(0x0113) volatile __CM2CON0bits_t CM2CON0bits;
1719 
1720 #define _C2SYNC                 0x01
1721 #define _C2HYS                  0x02
1722 #define _C2SP                   0x04
1723 #define _C2ZLF                  0x08
1724 #define _C2POL                  0x10
1725 #define _C2OE                   0x20
1726 #define _C2OUT                  0x40
1727 #define _C2ON                   0x80
1728 
1729 //==============================================================================
1730 
1731 
1732 //==============================================================================
1733 //        CM2CON1 Bits
1734 
1735 extern __at(0x0114) __sfr CM2CON1;
1736 
1737 typedef union
1738   {
1739   struct
1740     {
1741     unsigned C2NCH0             : 1;
1742     unsigned C2NCH1             : 1;
1743     unsigned C2NCH2             : 1;
1744     unsigned C2PCH0             : 1;
1745     unsigned C2PCH1             : 1;
1746     unsigned C2PCH2             : 1;
1747     unsigned C2INTN             : 1;
1748     unsigned C2INTP             : 1;
1749     };
1750 
1751   struct
1752     {
1753     unsigned C2NCH              : 3;
1754     unsigned                    : 5;
1755     };
1756 
1757   struct
1758     {
1759     unsigned                    : 3;
1760     unsigned C2PCH              : 3;
1761     unsigned                    : 2;
1762     };
1763   } __CM2CON1bits_t;
1764 
1765 extern __at(0x0114) volatile __CM2CON1bits_t CM2CON1bits;
1766 
1767 #define _C2NCH0                 0x01
1768 #define _C2NCH1                 0x02
1769 #define _C2NCH2                 0x04
1770 #define _C2PCH0                 0x08
1771 #define _C2PCH1                 0x10
1772 #define _C2PCH2                 0x20
1773 #define _C2INTN                 0x40
1774 #define _C2INTP                 0x80
1775 
1776 //==============================================================================
1777 
1778 
1779 //==============================================================================
1780 //        CMOUT Bits
1781 
1782 extern __at(0x0115) __sfr CMOUT;
1783 
1784 typedef struct
1785   {
1786   unsigned MC1OUT               : 1;
1787   unsigned MC2OUT               : 1;
1788   unsigned MC3OUT               : 1;
1789   unsigned MC4OUT               : 1;
1790   unsigned                      : 1;
1791   unsigned                      : 1;
1792   unsigned                      : 1;
1793   unsigned                      : 1;
1794   } __CMOUTbits_t;
1795 
1796 extern __at(0x0115) volatile __CMOUTbits_t CMOUTbits;
1797 
1798 #define _MC1OUT                 0x01
1799 #define _MC2OUT                 0x02
1800 #define _MC3OUT                 0x04
1801 #define _MC4OUT                 0x08
1802 
1803 //==============================================================================
1804 
1805 
1806 //==============================================================================
1807 //        BORCON Bits
1808 
1809 extern __at(0x0116) __sfr BORCON;
1810 
1811 typedef struct
1812   {
1813   unsigned BORRDY               : 1;
1814   unsigned                      : 1;
1815   unsigned                      : 1;
1816   unsigned                      : 1;
1817   unsigned                      : 1;
1818   unsigned                      : 1;
1819   unsigned BORFS                : 1;
1820   unsigned SBOREN               : 1;
1821   } __BORCONbits_t;
1822 
1823 extern __at(0x0116) volatile __BORCONbits_t BORCONbits;
1824 
1825 #define _BORRDY                 0x01
1826 #define _BORFS                  0x40
1827 #define _SBOREN                 0x80
1828 
1829 //==============================================================================
1830 
1831 
1832 //==============================================================================
1833 //        FVRCON Bits
1834 
1835 extern __at(0x0117) __sfr FVRCON;
1836 
1837 typedef union
1838   {
1839   struct
1840     {
1841     unsigned ADFVR0             : 1;
1842     unsigned ADFVR1             : 1;
1843     unsigned CDAFVR0            : 1;
1844     unsigned CDAFVR1            : 1;
1845     unsigned TSRNG              : 1;
1846     unsigned TSEN               : 1;
1847     unsigned FVRRDY             : 1;
1848     unsigned FVREN              : 1;
1849     };
1850 
1851   struct
1852     {
1853     unsigned ADFVR              : 2;
1854     unsigned                    : 6;
1855     };
1856 
1857   struct
1858     {
1859     unsigned                    : 2;
1860     unsigned CDAFVR             : 2;
1861     unsigned                    : 4;
1862     };
1863   } __FVRCONbits_t;
1864 
1865 extern __at(0x0117) volatile __FVRCONbits_t FVRCONbits;
1866 
1867 #define _ADFVR0                 0x01
1868 #define _ADFVR1                 0x02
1869 #define _CDAFVR0                0x04
1870 #define _CDAFVR1                0x08
1871 #define _TSRNG                  0x10
1872 #define _TSEN                   0x20
1873 #define _FVRRDY                 0x40
1874 #define _FVREN                  0x80
1875 
1876 //==============================================================================
1877 
1878 
1879 //==============================================================================
1880 //        DAC1CON0 Bits
1881 
1882 extern __at(0x0118) __sfr DAC1CON0;
1883 
1884 typedef union
1885   {
1886   struct
1887     {
1888     unsigned DAC1NSS            : 1;
1889     unsigned                    : 1;
1890     unsigned DAC1PSS0           : 1;
1891     unsigned DAC1PSS1           : 1;
1892     unsigned DAC1OE2            : 1;
1893     unsigned DAC1OE1            : 1;
1894     unsigned                    : 1;
1895     unsigned DAC1EN             : 1;
1896     };
1897 
1898   struct
1899     {
1900     unsigned DACNSS             : 1;
1901     unsigned                    : 1;
1902     unsigned DACPSS0            : 1;
1903     unsigned DACPSS1            : 1;
1904     unsigned DACOE0             : 1;
1905     unsigned DACOE1             : 1;
1906     unsigned                    : 1;
1907     unsigned DACEN              : 1;
1908     };
1909 
1910   struct
1911     {
1912     unsigned                    : 2;
1913     unsigned DACPSS             : 2;
1914     unsigned                    : 4;
1915     };
1916 
1917   struct
1918     {
1919     unsigned                    : 2;
1920     unsigned DAC1PSS            : 2;
1921     unsigned                    : 4;
1922     };
1923 
1924   struct
1925     {
1926     unsigned                    : 4;
1927     unsigned DACOE              : 2;
1928     unsigned                    : 2;
1929     };
1930   } __DAC1CON0bits_t;
1931 
1932 extern __at(0x0118) volatile __DAC1CON0bits_t DAC1CON0bits;
1933 
1934 #define _DAC1NSS                0x01
1935 #define _DACNSS                 0x01
1936 #define _DAC1PSS0               0x04
1937 #define _DACPSS0                0x04
1938 #define _DAC1PSS1               0x08
1939 #define _DACPSS1                0x08
1940 #define _DAC1OE2                0x10
1941 #define _DACOE0                 0x10
1942 #define _DAC1OE1                0x20
1943 #define _DACOE1                 0x20
1944 #define _DAC1EN                 0x80
1945 #define _DACEN                  0x80
1946 
1947 //==============================================================================
1948 
1949 
1950 //==============================================================================
1951 //        DAC1CON1 Bits
1952 
1953 extern __at(0x0119) __sfr DAC1CON1;
1954 
1955 typedef union
1956   {
1957   struct
1958     {
1959     unsigned DAC1R0             : 1;
1960     unsigned DAC1R1             : 1;
1961     unsigned DAC1R2             : 1;
1962     unsigned DAC1R3             : 1;
1963     unsigned DAC1R4             : 1;
1964     unsigned DAC1R5             : 1;
1965     unsigned DAC1R6             : 1;
1966     unsigned DAC1R7             : 1;
1967     };
1968 
1969   struct
1970     {
1971     unsigned DACR0              : 1;
1972     unsigned DACR1              : 1;
1973     unsigned DACR2              : 1;
1974     unsigned DACR3              : 1;
1975     unsigned DACR4              : 1;
1976     unsigned DACR5              : 1;
1977     unsigned DACR6              : 1;
1978     unsigned DACR7              : 1;
1979     };
1980   } __DAC1CON1bits_t;
1981 
1982 extern __at(0x0119) volatile __DAC1CON1bits_t DAC1CON1bits;
1983 
1984 #define _DAC1R0                 0x01
1985 #define _DACR0                  0x01
1986 #define _DAC1R1                 0x02
1987 #define _DACR1                  0x02
1988 #define _DAC1R2                 0x04
1989 #define _DACR2                  0x04
1990 #define _DAC1R3                 0x08
1991 #define _DACR3                  0x08
1992 #define _DAC1R4                 0x10
1993 #define _DACR4                  0x10
1994 #define _DAC1R5                 0x20
1995 #define _DACR5                  0x20
1996 #define _DAC1R6                 0x40
1997 #define _DACR6                  0x40
1998 #define _DAC1R7                 0x80
1999 #define _DACR7                  0x80
2000 
2001 //==============================================================================
2002 
2003 
2004 //==============================================================================
2005 //        CM4CON0 Bits
2006 
2007 extern __at(0x011A) __sfr CM4CON0;
2008 
2009 typedef struct
2010   {
2011   unsigned C4SYNC               : 1;
2012   unsigned C4HYS                : 1;
2013   unsigned C4SP                 : 1;
2014   unsigned C4ZLF                : 1;
2015   unsigned C4POL                : 1;
2016   unsigned C4OE                 : 1;
2017   unsigned C4OUT                : 1;
2018   unsigned C4ON                 : 1;
2019   } __CM4CON0bits_t;
2020 
2021 extern __at(0x011A) volatile __CM4CON0bits_t CM4CON0bits;
2022 
2023 #define _C4SYNC                 0x01
2024 #define _C4HYS                  0x02
2025 #define _C4SP                   0x04
2026 #define _C4ZLF                  0x08
2027 #define _C4POL                  0x10
2028 #define _C4OE                   0x20
2029 #define _C4OUT                  0x40
2030 #define _C4ON                   0x80
2031 
2032 //==============================================================================
2033 
2034 
2035 //==============================================================================
2036 //        CM4CON1 Bits
2037 
2038 extern __at(0x011B) __sfr CM4CON1;
2039 
2040 typedef union
2041   {
2042   struct
2043     {
2044     unsigned C4NCH0             : 1;
2045     unsigned C4NCH1             : 1;
2046     unsigned C4NCH2             : 1;
2047     unsigned C4PCH0             : 1;
2048     unsigned C4PCH1             : 1;
2049     unsigned C4PCH2             : 1;
2050     unsigned C4INTN             : 1;
2051     unsigned C4INTP             : 1;
2052     };
2053 
2054   struct
2055     {
2056     unsigned C4NCH              : 3;
2057     unsigned                    : 5;
2058     };
2059 
2060   struct
2061     {
2062     unsigned                    : 3;
2063     unsigned C4PCH              : 3;
2064     unsigned                    : 2;
2065     };
2066   } __CM4CON1bits_t;
2067 
2068 extern __at(0x011B) volatile __CM4CON1bits_t CM4CON1bits;
2069 
2070 #define _C4NCH0                 0x01
2071 #define _C4NCH1                 0x02
2072 #define _C4NCH2                 0x04
2073 #define _C4PCH0                 0x08
2074 #define _C4PCH1                 0x10
2075 #define _C4PCH2                 0x20
2076 #define _C4INTN                 0x40
2077 #define _C4INTP                 0x80
2078 
2079 //==============================================================================
2080 
2081 
2082 //==============================================================================
2083 //        APFCON2 Bits
2084 
2085 extern __at(0x011C) __sfr APFCON2;
2086 
2087 typedef struct
2088   {
2089   unsigned CCP3SEL              : 1;
2090   unsigned                      : 1;
2091   unsigned                      : 1;
2092   unsigned                      : 1;
2093   unsigned                      : 1;
2094   unsigned                      : 1;
2095   unsigned                      : 1;
2096   unsigned                      : 1;
2097   } __APFCON2bits_t;
2098 
2099 extern __at(0x011C) volatile __APFCON2bits_t APFCON2bits;
2100 
2101 #define _CCP3SEL                0x01
2102 
2103 //==============================================================================
2104 
2105 
2106 //==============================================================================
2107 //        APFCON Bits
2108 
2109 extern __at(0x011D) __sfr APFCON;
2110 
2111 typedef struct
2112   {
2113   unsigned CCP2SEL              : 1;
2114   unsigned RXSEL                : 1;
2115   unsigned TXSEL                : 1;
2116   unsigned SDISEL               : 1;
2117   unsigned SCKSEL               : 1;
2118   unsigned SDOSEL               : 1;
2119   unsigned CCP1SEL              : 1;
2120   unsigned C2OUTSEL             : 1;
2121   } __APFCONbits_t;
2122 
2123 extern __at(0x011D) volatile __APFCONbits_t APFCONbits;
2124 
2125 #define _CCP2SEL                0x01
2126 #define _RXSEL                  0x02
2127 #define _TXSEL                  0x04
2128 #define _SDISEL                 0x08
2129 #define _SCKSEL                 0x10
2130 #define _SDOSEL                 0x20
2131 #define _CCP1SEL                0x40
2132 #define _C2OUTSEL               0x80
2133 
2134 //==============================================================================
2135 
2136 
2137 //==============================================================================
2138 //        APFCON0 Bits
2139 
2140 extern __at(0x011D) __sfr APFCON0;
2141 
2142 typedef struct
2143   {
2144   unsigned CCP2SEL              : 1;
2145   unsigned RXSEL                : 1;
2146   unsigned TXSEL                : 1;
2147   unsigned SDISEL               : 1;
2148   unsigned SCKSEL               : 1;
2149   unsigned SDOSEL               : 1;
2150   unsigned CCP1SEL              : 1;
2151   unsigned C2OUTSEL             : 1;
2152   } __APFCON0bits_t;
2153 
2154 extern __at(0x011D) volatile __APFCON0bits_t APFCON0bits;
2155 
2156 #define _APFCON0_CCP2SEL        0x01
2157 #define _APFCON0_RXSEL          0x02
2158 #define _APFCON0_TXSEL          0x04
2159 #define _APFCON0_SDISEL         0x08
2160 #define _APFCON0_SCKSEL         0x10
2161 #define _APFCON0_SDOSEL         0x20
2162 #define _APFCON0_CCP1SEL        0x40
2163 #define _APFCON0_C2OUTSEL       0x80
2164 
2165 //==============================================================================
2166 
2167 
2168 //==============================================================================
2169 //        APFCON1 Bits
2170 
2171 extern __at(0x011D) __sfr APFCON1;
2172 
2173 typedef struct
2174   {
2175   unsigned CCP2SEL              : 1;
2176   unsigned RXSEL                : 1;
2177   unsigned TXSEL                : 1;
2178   unsigned SDISEL               : 1;
2179   unsigned SCKSEL               : 1;
2180   unsigned SDOSEL               : 1;
2181   unsigned CCP1SEL              : 1;
2182   unsigned C2OUTSEL             : 1;
2183   } __APFCON1bits_t;
2184 
2185 extern __at(0x011D) volatile __APFCON1bits_t APFCON1bits;
2186 
2187 #define _APFCON1_CCP2SEL        0x01
2188 #define _APFCON1_RXSEL          0x02
2189 #define _APFCON1_TXSEL          0x04
2190 #define _APFCON1_SDISEL         0x08
2191 #define _APFCON1_SCKSEL         0x10
2192 #define _APFCON1_SDOSEL         0x20
2193 #define _APFCON1_CCP1SEL        0x40
2194 #define _APFCON1_C2OUTSEL       0x80
2195 
2196 //==============================================================================
2197 
2198 
2199 //==============================================================================
2200 //        CM3CON0 Bits
2201 
2202 extern __at(0x011E) __sfr CM3CON0;
2203 
2204 typedef struct
2205   {
2206   unsigned C3SYNC               : 1;
2207   unsigned C3HYS                : 1;
2208   unsigned C3SP                 : 1;
2209   unsigned C3ZLF                : 1;
2210   unsigned C3POL                : 1;
2211   unsigned C3OE                 : 1;
2212   unsigned C3OUT                : 1;
2213   unsigned C3ON                 : 1;
2214   } __CM3CON0bits_t;
2215 
2216 extern __at(0x011E) volatile __CM3CON0bits_t CM3CON0bits;
2217 
2218 #define _C3SYNC                 0x01
2219 #define _C3HYS                  0x02
2220 #define _C3SP                   0x04
2221 #define _C3ZLF                  0x08
2222 #define _C3POL                  0x10
2223 #define _C3OE                   0x20
2224 #define _C3OUT                  0x40
2225 #define _C3ON                   0x80
2226 
2227 //==============================================================================
2228 
2229 
2230 //==============================================================================
2231 //        CM3CON1 Bits
2232 
2233 extern __at(0x011F) __sfr CM3CON1;
2234 
2235 typedef union
2236   {
2237   struct
2238     {
2239     unsigned C3NCH0             : 1;
2240     unsigned C3NCH1             : 1;
2241     unsigned C3NCH2             : 1;
2242     unsigned C3PCH0             : 1;
2243     unsigned C3PCH1             : 1;
2244     unsigned C3PCH2             : 1;
2245     unsigned C3INTN             : 1;
2246     unsigned C3INTP             : 1;
2247     };
2248 
2249   struct
2250     {
2251     unsigned C3NCH              : 3;
2252     unsigned                    : 5;
2253     };
2254 
2255   struct
2256     {
2257     unsigned                    : 3;
2258     unsigned C3PCH              : 3;
2259     unsigned                    : 2;
2260     };
2261   } __CM3CON1bits_t;
2262 
2263 extern __at(0x011F) volatile __CM3CON1bits_t CM3CON1bits;
2264 
2265 #define _C3NCH0                 0x01
2266 #define _C3NCH1                 0x02
2267 #define _C3NCH2                 0x04
2268 #define _C3PCH0                 0x08
2269 #define _C3PCH1                 0x10
2270 #define _C3PCH2                 0x20
2271 #define _C3INTN                 0x40
2272 #define _C3INTP                 0x80
2273 
2274 //==============================================================================
2275 
2276 
2277 //==============================================================================
2278 //        ANSELA Bits
2279 
2280 extern __at(0x018C) __sfr ANSELA;
2281 
2282 typedef struct
2283   {
2284   unsigned ANSA0                : 1;
2285   unsigned ANSA1                : 1;
2286   unsigned ANSA2                : 1;
2287   unsigned ANSA3                : 1;
2288   unsigned ANSA4                : 1;
2289   unsigned ANSA5                : 1;
2290   unsigned                      : 1;
2291   unsigned ANSA7                : 1;
2292   } __ANSELAbits_t;
2293 
2294 extern __at(0x018C) volatile __ANSELAbits_t ANSELAbits;
2295 
2296 #define _ANSA0                  0x01
2297 #define _ANSA1                  0x02
2298 #define _ANSA2                  0x04
2299 #define _ANSA3                  0x08
2300 #define _ANSA4                  0x10
2301 #define _ANSA5                  0x20
2302 #define _ANSA7                  0x80
2303 
2304 //==============================================================================
2305 
2306 
2307 //==============================================================================
2308 //        ANSELB Bits
2309 
2310 extern __at(0x018D) __sfr ANSELB;
2311 
2312 typedef union
2313   {
2314   struct
2315     {
2316     unsigned ANSB0              : 1;
2317     unsigned ANSB1              : 1;
2318     unsigned ANSB2              : 1;
2319     unsigned ANSB3              : 1;
2320     unsigned ANSB4              : 1;
2321     unsigned ANSB5              : 1;
2322     unsigned ANSB6              : 1;
2323     unsigned                    : 1;
2324     };
2325 
2326   struct
2327     {
2328     unsigned ANSB               : 7;
2329     unsigned                    : 1;
2330     };
2331   } __ANSELBbits_t;
2332 
2333 extern __at(0x018D) volatile __ANSELBbits_t ANSELBbits;
2334 
2335 #define _ANSB0                  0x01
2336 #define _ANSB1                  0x02
2337 #define _ANSB2                  0x04
2338 #define _ANSB3                  0x08
2339 #define _ANSB4                  0x10
2340 #define _ANSB5                  0x20
2341 #define _ANSB6                  0x40
2342 
2343 //==============================================================================
2344 
2345 
2346 //==============================================================================
2347 //        ANSELC Bits
2348 
2349 extern __at(0x018E) __sfr ANSELC;
2350 
2351 typedef struct
2352   {
2353   unsigned ANSC0                : 1;
2354   unsigned ANSC1                : 1;
2355   unsigned ANSC2                : 1;
2356   unsigned ANSC3                : 1;
2357   unsigned ANSC4                : 1;
2358   unsigned ANSC5                : 1;
2359   unsigned ANSC6                : 1;
2360   unsigned ANSC7                : 1;
2361   } __ANSELCbits_t;
2362 
2363 extern __at(0x018E) volatile __ANSELCbits_t ANSELCbits;
2364 
2365 #define _ANSC0                  0x01
2366 #define _ANSC1                  0x02
2367 #define _ANSC2                  0x04
2368 #define _ANSC3                  0x08
2369 #define _ANSC4                  0x10
2370 #define _ANSC5                  0x20
2371 #define _ANSC6                  0x40
2372 #define _ANSC7                  0x80
2373 
2374 //==============================================================================
2375 
2376 extern __at(0x0191) __sfr EEADR;
2377 extern __at(0x0191) __sfr EEADRL;
2378 extern __at(0x0192) __sfr EEADRH;
2379 extern __at(0x0193) __sfr EEDAT;
2380 extern __at(0x0193) __sfr EEDATL;
2381 extern __at(0x0194) __sfr EEDATH;
2382 
2383 //==============================================================================
2384 //        EECON1 Bits
2385 
2386 extern __at(0x0195) __sfr EECON1;
2387 
2388 typedef struct
2389   {
2390   unsigned RD                   : 1;
2391   unsigned WR                   : 1;
2392   unsigned WREN                 : 1;
2393   unsigned WRERR                : 1;
2394   unsigned FREE                 : 1;
2395   unsigned LWLO                 : 1;
2396   unsigned CFGS                 : 1;
2397   unsigned EEPGD                : 1;
2398   } __EECON1bits_t;
2399 
2400 extern __at(0x0195) volatile __EECON1bits_t EECON1bits;
2401 
2402 #define _RD                     0x01
2403 #define _WR                     0x02
2404 #define _WREN                   0x04
2405 #define _WRERR                  0x08
2406 #define _FREE                   0x10
2407 #define _LWLO                   0x20
2408 #define _CFGS                   0x40
2409 #define _EEPGD                  0x80
2410 
2411 //==============================================================================
2412 
2413 extern __at(0x0196) __sfr EECON2;
2414 
2415 //==============================================================================
2416 //        VREGCON Bits
2417 
2418 extern __at(0x0197) __sfr VREGCON;
2419 
2420 typedef struct
2421   {
2422   unsigned                      : 1;
2423   unsigned VREGPM               : 1;
2424   unsigned                      : 1;
2425   unsigned                      : 1;
2426   unsigned                      : 1;
2427   unsigned                      : 1;
2428   unsigned                      : 1;
2429   unsigned                      : 1;
2430   } __VREGCONbits_t;
2431 
2432 extern __at(0x0197) volatile __VREGCONbits_t VREGCONbits;
2433 
2434 #define _VREGPM                 0x02
2435 
2436 //==============================================================================
2437 
2438 extern __at(0x0199) __sfr RC1REG;
2439 extern __at(0x0199) __sfr RCREG;
2440 extern __at(0x0199) __sfr RCREG1;
2441 extern __at(0x019A) __sfr TX1REG;
2442 extern __at(0x019A) __sfr TXREG;
2443 extern __at(0x019A) __sfr TXREG1;
2444 extern __at(0x019B) __sfr SP1BRG;
2445 extern __at(0x019B) __sfr SP1BRGL;
2446 extern __at(0x019B) __sfr SPBRG;
2447 extern __at(0x019B) __sfr SPBRG1;
2448 extern __at(0x019B) __sfr SPBRGL;
2449 extern __at(0x019C) __sfr SP1BRGH;
2450 extern __at(0x019C) __sfr SPBRGH;
2451 extern __at(0x019C) __sfr SPBRGH1;
2452 
2453 //==============================================================================
2454 //        RC1STA Bits
2455 
2456 extern __at(0x019D) __sfr RC1STA;
2457 
2458 typedef struct
2459   {
2460   unsigned RX9D                 : 1;
2461   unsigned OERR                 : 1;
2462   unsigned FERR                 : 1;
2463   unsigned ADDEN                : 1;
2464   unsigned CREN                 : 1;
2465   unsigned SREN                 : 1;
2466   unsigned RX9                  : 1;
2467   unsigned SPEN                 : 1;
2468   } __RC1STAbits_t;
2469 
2470 extern __at(0x019D) volatile __RC1STAbits_t RC1STAbits;
2471 
2472 #define _RX9D                   0x01
2473 #define _OERR                   0x02
2474 #define _FERR                   0x04
2475 #define _ADDEN                  0x08
2476 #define _CREN                   0x10
2477 #define _SREN                   0x20
2478 #define _RX9                    0x40
2479 #define _SPEN                   0x80
2480 
2481 //==============================================================================
2482 
2483 
2484 //==============================================================================
2485 //        RCSTA Bits
2486 
2487 extern __at(0x019D) __sfr RCSTA;
2488 
2489 typedef struct
2490   {
2491   unsigned RX9D                 : 1;
2492   unsigned OERR                 : 1;
2493   unsigned FERR                 : 1;
2494   unsigned ADDEN                : 1;
2495   unsigned CREN                 : 1;
2496   unsigned SREN                 : 1;
2497   unsigned RX9                  : 1;
2498   unsigned SPEN                 : 1;
2499   } __RCSTAbits_t;
2500 
2501 extern __at(0x019D) volatile __RCSTAbits_t RCSTAbits;
2502 
2503 #define _RCSTA_RX9D             0x01
2504 #define _RCSTA_OERR             0x02
2505 #define _RCSTA_FERR             0x04
2506 #define _RCSTA_ADDEN            0x08
2507 #define _RCSTA_CREN             0x10
2508 #define _RCSTA_SREN             0x20
2509 #define _RCSTA_RX9              0x40
2510 #define _RCSTA_SPEN             0x80
2511 
2512 //==============================================================================
2513 
2514 
2515 //==============================================================================
2516 //        RCSTA1 Bits
2517 
2518 extern __at(0x019D) __sfr RCSTA1;
2519 
2520 typedef struct
2521   {
2522   unsigned RX9D                 : 1;
2523   unsigned OERR                 : 1;
2524   unsigned FERR                 : 1;
2525   unsigned ADDEN                : 1;
2526   unsigned CREN                 : 1;
2527   unsigned SREN                 : 1;
2528   unsigned RX9                  : 1;
2529   unsigned SPEN                 : 1;
2530   } __RCSTA1bits_t;
2531 
2532 extern __at(0x019D) volatile __RCSTA1bits_t RCSTA1bits;
2533 
2534 #define _RCSTA1_RX9D            0x01
2535 #define _RCSTA1_OERR            0x02
2536 #define _RCSTA1_FERR            0x04
2537 #define _RCSTA1_ADDEN           0x08
2538 #define _RCSTA1_CREN            0x10
2539 #define _RCSTA1_SREN            0x20
2540 #define _RCSTA1_RX9             0x40
2541 #define _RCSTA1_SPEN            0x80
2542 
2543 //==============================================================================
2544 
2545 
2546 //==============================================================================
2547 //        TX1STA Bits
2548 
2549 extern __at(0x019E) __sfr TX1STA;
2550 
2551 typedef struct
2552   {
2553   unsigned TX9D                 : 1;
2554   unsigned TRMT                 : 1;
2555   unsigned BRGH                 : 1;
2556   unsigned SENDB                : 1;
2557   unsigned SYNC                 : 1;
2558   unsigned TXEN                 : 1;
2559   unsigned TX9                  : 1;
2560   unsigned CSRC                 : 1;
2561   } __TX1STAbits_t;
2562 
2563 extern __at(0x019E) volatile __TX1STAbits_t TX1STAbits;
2564 
2565 #define _TX9D                   0x01
2566 #define _TRMT                   0x02
2567 #define _BRGH                   0x04
2568 #define _SENDB                  0x08
2569 #define _SYNC                   0x10
2570 #define _TXEN                   0x20
2571 #define _TX9                    0x40
2572 #define _CSRC                   0x80
2573 
2574 //==============================================================================
2575 
2576 
2577 //==============================================================================
2578 //        TXSTA Bits
2579 
2580 extern __at(0x019E) __sfr TXSTA;
2581 
2582 typedef struct
2583   {
2584   unsigned TX9D                 : 1;
2585   unsigned TRMT                 : 1;
2586   unsigned BRGH                 : 1;
2587   unsigned SENDB                : 1;
2588   unsigned SYNC                 : 1;
2589   unsigned TXEN                 : 1;
2590   unsigned TX9                  : 1;
2591   unsigned CSRC                 : 1;
2592   } __TXSTAbits_t;
2593 
2594 extern __at(0x019E) volatile __TXSTAbits_t TXSTAbits;
2595 
2596 #define _TXSTA_TX9D             0x01
2597 #define _TXSTA_TRMT             0x02
2598 #define _TXSTA_BRGH             0x04
2599 #define _TXSTA_SENDB            0x08
2600 #define _TXSTA_SYNC             0x10
2601 #define _TXSTA_TXEN             0x20
2602 #define _TXSTA_TX9              0x40
2603 #define _TXSTA_CSRC             0x80
2604 
2605 //==============================================================================
2606 
2607 
2608 //==============================================================================
2609 //        TXSTA1 Bits
2610 
2611 extern __at(0x019E) __sfr TXSTA1;
2612 
2613 typedef struct
2614   {
2615   unsigned TX9D                 : 1;
2616   unsigned TRMT                 : 1;
2617   unsigned BRGH                 : 1;
2618   unsigned SENDB                : 1;
2619   unsigned SYNC                 : 1;
2620   unsigned TXEN                 : 1;
2621   unsigned TX9                  : 1;
2622   unsigned CSRC                 : 1;
2623   } __TXSTA1bits_t;
2624 
2625 extern __at(0x019E) volatile __TXSTA1bits_t TXSTA1bits;
2626 
2627 #define _TXSTA1_TX9D            0x01
2628 #define _TXSTA1_TRMT            0x02
2629 #define _TXSTA1_BRGH            0x04
2630 #define _TXSTA1_SENDB           0x08
2631 #define _TXSTA1_SYNC            0x10
2632 #define _TXSTA1_TXEN            0x20
2633 #define _TXSTA1_TX9             0x40
2634 #define _TXSTA1_CSRC            0x80
2635 
2636 //==============================================================================
2637 
2638 
2639 //==============================================================================
2640 //        BAUD1CON Bits
2641 
2642 extern __at(0x019F) __sfr BAUD1CON;
2643 
2644 typedef struct
2645   {
2646   unsigned ABDEN                : 1;
2647   unsigned WUE                  : 1;
2648   unsigned                      : 1;
2649   unsigned BRG16                : 1;
2650   unsigned SCKP                 : 1;
2651   unsigned                      : 1;
2652   unsigned RCIDL                : 1;
2653   unsigned ABDOVF               : 1;
2654   } __BAUD1CONbits_t;
2655 
2656 extern __at(0x019F) volatile __BAUD1CONbits_t BAUD1CONbits;
2657 
2658 #define _ABDEN                  0x01
2659 #define _WUE                    0x02
2660 #define _BRG16                  0x08
2661 #define _SCKP                   0x10
2662 #define _RCIDL                  0x40
2663 #define _ABDOVF                 0x80
2664 
2665 //==============================================================================
2666 
2667 
2668 //==============================================================================
2669 //        BAUDCON Bits
2670 
2671 extern __at(0x019F) __sfr BAUDCON;
2672 
2673 typedef struct
2674   {
2675   unsigned ABDEN                : 1;
2676   unsigned WUE                  : 1;
2677   unsigned                      : 1;
2678   unsigned BRG16                : 1;
2679   unsigned SCKP                 : 1;
2680   unsigned                      : 1;
2681   unsigned RCIDL                : 1;
2682   unsigned ABDOVF               : 1;
2683   } __BAUDCONbits_t;
2684 
2685 extern __at(0x019F) volatile __BAUDCONbits_t BAUDCONbits;
2686 
2687 #define _BAUDCON_ABDEN          0x01
2688 #define _BAUDCON_WUE            0x02
2689 #define _BAUDCON_BRG16          0x08
2690 #define _BAUDCON_SCKP           0x10
2691 #define _BAUDCON_RCIDL          0x40
2692 #define _BAUDCON_ABDOVF         0x80
2693 
2694 //==============================================================================
2695 
2696 
2697 //==============================================================================
2698 //        BAUDCON1 Bits
2699 
2700 extern __at(0x019F) __sfr BAUDCON1;
2701 
2702 typedef struct
2703   {
2704   unsigned ABDEN                : 1;
2705   unsigned WUE                  : 1;
2706   unsigned                      : 1;
2707   unsigned BRG16                : 1;
2708   unsigned SCKP                 : 1;
2709   unsigned                      : 1;
2710   unsigned RCIDL                : 1;
2711   unsigned ABDOVF               : 1;
2712   } __BAUDCON1bits_t;
2713 
2714 extern __at(0x019F) volatile __BAUDCON1bits_t BAUDCON1bits;
2715 
2716 #define _BAUDCON1_ABDEN         0x01
2717 #define _BAUDCON1_WUE           0x02
2718 #define _BAUDCON1_BRG16         0x08
2719 #define _BAUDCON1_SCKP          0x10
2720 #define _BAUDCON1_RCIDL         0x40
2721 #define _BAUDCON1_ABDOVF        0x80
2722 
2723 //==============================================================================
2724 
2725 
2726 //==============================================================================
2727 //        BAUDCTL Bits
2728 
2729 extern __at(0x019F) __sfr BAUDCTL;
2730 
2731 typedef struct
2732   {
2733   unsigned ABDEN                : 1;
2734   unsigned WUE                  : 1;
2735   unsigned                      : 1;
2736   unsigned BRG16                : 1;
2737   unsigned SCKP                 : 1;
2738   unsigned                      : 1;
2739   unsigned RCIDL                : 1;
2740   unsigned ABDOVF               : 1;
2741   } __BAUDCTLbits_t;
2742 
2743 extern __at(0x019F) volatile __BAUDCTLbits_t BAUDCTLbits;
2744 
2745 #define _BAUDCTL_ABDEN          0x01
2746 #define _BAUDCTL_WUE            0x02
2747 #define _BAUDCTL_BRG16          0x08
2748 #define _BAUDCTL_SCKP           0x10
2749 #define _BAUDCTL_RCIDL          0x40
2750 #define _BAUDCTL_ABDOVF         0x80
2751 
2752 //==============================================================================
2753 
2754 
2755 //==============================================================================
2756 //        BAUDCTL1 Bits
2757 
2758 extern __at(0x019F) __sfr BAUDCTL1;
2759 
2760 typedef struct
2761   {
2762   unsigned ABDEN                : 1;
2763   unsigned WUE                  : 1;
2764   unsigned                      : 1;
2765   unsigned BRG16                : 1;
2766   unsigned SCKP                 : 1;
2767   unsigned                      : 1;
2768   unsigned RCIDL                : 1;
2769   unsigned ABDOVF               : 1;
2770   } __BAUDCTL1bits_t;
2771 
2772 extern __at(0x019F) volatile __BAUDCTL1bits_t BAUDCTL1bits;
2773 
2774 #define _BAUDCTL1_ABDEN         0x01
2775 #define _BAUDCTL1_WUE           0x02
2776 #define _BAUDCTL1_BRG16         0x08
2777 #define _BAUDCTL1_SCKP          0x10
2778 #define _BAUDCTL1_RCIDL         0x40
2779 #define _BAUDCTL1_ABDOVF        0x80
2780 
2781 //==============================================================================
2782 
2783 
2784 //==============================================================================
2785 //        WPUA Bits
2786 
2787 extern __at(0x020C) __sfr WPUA;
2788 
2789 typedef struct
2790   {
2791   unsigned WPUA0                : 1;
2792   unsigned WPUA1                : 1;
2793   unsigned WPUA2                : 1;
2794   unsigned WPUA3                : 1;
2795   unsigned WPUA4                : 1;
2796   unsigned WPUA5                : 1;
2797   unsigned WPUA6                : 1;
2798   unsigned WPUA7                : 1;
2799   } __WPUAbits_t;
2800 
2801 extern __at(0x020C) volatile __WPUAbits_t WPUAbits;
2802 
2803 #define _WPUA0                  0x01
2804 #define _WPUA1                  0x02
2805 #define _WPUA2                  0x04
2806 #define _WPUA3                  0x08
2807 #define _WPUA4                  0x10
2808 #define _WPUA5                  0x20
2809 #define _WPUA6                  0x40
2810 #define _WPUA7                  0x80
2811 
2812 //==============================================================================
2813 
2814 
2815 //==============================================================================
2816 //        WPUB Bits
2817 
2818 extern __at(0x020D) __sfr WPUB;
2819 
2820 typedef struct
2821   {
2822   unsigned WPUB0                : 1;
2823   unsigned WPUB1                : 1;
2824   unsigned WPUB2                : 1;
2825   unsigned WPUB3                : 1;
2826   unsigned WPUB4                : 1;
2827   unsigned WPUB5                : 1;
2828   unsigned WPUB6                : 1;
2829   unsigned WPUB7                : 1;
2830   } __WPUBbits_t;
2831 
2832 extern __at(0x020D) volatile __WPUBbits_t WPUBbits;
2833 
2834 #define _WPUB0                  0x01
2835 #define _WPUB1                  0x02
2836 #define _WPUB2                  0x04
2837 #define _WPUB3                  0x08
2838 #define _WPUB4                  0x10
2839 #define _WPUB5                  0x20
2840 #define _WPUB6                  0x40
2841 #define _WPUB7                  0x80
2842 
2843 //==============================================================================
2844 
2845 
2846 //==============================================================================
2847 //        WPUC Bits
2848 
2849 extern __at(0x020E) __sfr WPUC;
2850 
2851 typedef struct
2852   {
2853   unsigned WPUC0                : 1;
2854   unsigned WPUC1                : 1;
2855   unsigned WPUC2                : 1;
2856   unsigned WPUC3                : 1;
2857   unsigned WPUC4                : 1;
2858   unsigned WPUC5                : 1;
2859   unsigned WPUC6                : 1;
2860   unsigned WPUC7                : 1;
2861   } __WPUCbits_t;
2862 
2863 extern __at(0x020E) volatile __WPUCbits_t WPUCbits;
2864 
2865 #define _WPUC0                  0x01
2866 #define _WPUC1                  0x02
2867 #define _WPUC2                  0x04
2868 #define _WPUC3                  0x08
2869 #define _WPUC4                  0x10
2870 #define _WPUC5                  0x20
2871 #define _WPUC6                  0x40
2872 #define _WPUC7                  0x80
2873 
2874 //==============================================================================
2875 
2876 
2877 //==============================================================================
2878 //        WPUE Bits
2879 
2880 extern __at(0x0210) __sfr WPUE;
2881 
2882 typedef struct
2883   {
2884   unsigned                      : 1;
2885   unsigned                      : 1;
2886   unsigned                      : 1;
2887   unsigned WPUE3                : 1;
2888   unsigned                      : 1;
2889   unsigned                      : 1;
2890   unsigned                      : 1;
2891   unsigned                      : 1;
2892   } __WPUEbits_t;
2893 
2894 extern __at(0x0210) volatile __WPUEbits_t WPUEbits;
2895 
2896 #define _WPUE3                  0x08
2897 
2898 //==============================================================================
2899 
2900 
2901 //==============================================================================
2902 //        SSP1BUF Bits
2903 
2904 extern __at(0x0211) __sfr SSP1BUF;
2905 
2906 typedef union
2907   {
2908   struct
2909     {
2910     unsigned SSP1BUF0           : 1;
2911     unsigned SSP1BUF1           : 1;
2912     unsigned SSP1BUF2           : 1;
2913     unsigned SSP1BUF3           : 1;
2914     unsigned SSP1BUF4           : 1;
2915     unsigned SSP1BUF5           : 1;
2916     unsigned SSP1BUF6           : 1;
2917     unsigned SSP1BUF7           : 1;
2918     };
2919 
2920   struct
2921     {
2922     unsigned BUF0               : 1;
2923     unsigned BUF1               : 1;
2924     unsigned BUF2               : 1;
2925     unsigned BUF3               : 1;
2926     unsigned BUF4               : 1;
2927     unsigned BUF5               : 1;
2928     unsigned BUF6               : 1;
2929     unsigned BUF7               : 1;
2930     };
2931   } __SSP1BUFbits_t;
2932 
2933 extern __at(0x0211) volatile __SSP1BUFbits_t SSP1BUFbits;
2934 
2935 #define _SSP1BUF0               0x01
2936 #define _BUF0                   0x01
2937 #define _SSP1BUF1               0x02
2938 #define _BUF1                   0x02
2939 #define _SSP1BUF2               0x04
2940 #define _BUF2                   0x04
2941 #define _SSP1BUF3               0x08
2942 #define _BUF3                   0x08
2943 #define _SSP1BUF4               0x10
2944 #define _BUF4                   0x10
2945 #define _SSP1BUF5               0x20
2946 #define _BUF5                   0x20
2947 #define _SSP1BUF6               0x40
2948 #define _BUF6                   0x40
2949 #define _SSP1BUF7               0x80
2950 #define _BUF7                   0x80
2951 
2952 //==============================================================================
2953 
2954 
2955 //==============================================================================
2956 //        SSPBUF Bits
2957 
2958 extern __at(0x0211) __sfr SSPBUF;
2959 
2960 typedef union
2961   {
2962   struct
2963     {
2964     unsigned SSP1BUF0           : 1;
2965     unsigned SSP1BUF1           : 1;
2966     unsigned SSP1BUF2           : 1;
2967     unsigned SSP1BUF3           : 1;
2968     unsigned SSP1BUF4           : 1;
2969     unsigned SSP1BUF5           : 1;
2970     unsigned SSP1BUF6           : 1;
2971     unsigned SSP1BUF7           : 1;
2972     };
2973 
2974   struct
2975     {
2976     unsigned BUF0               : 1;
2977     unsigned BUF1               : 1;
2978     unsigned BUF2               : 1;
2979     unsigned BUF3               : 1;
2980     unsigned BUF4               : 1;
2981     unsigned BUF5               : 1;
2982     unsigned BUF6               : 1;
2983     unsigned BUF7               : 1;
2984     };
2985   } __SSPBUFbits_t;
2986 
2987 extern __at(0x0211) volatile __SSPBUFbits_t SSPBUFbits;
2988 
2989 #define _SSPBUF_SSP1BUF0        0x01
2990 #define _SSPBUF_BUF0            0x01
2991 #define _SSPBUF_SSP1BUF1        0x02
2992 #define _SSPBUF_BUF1            0x02
2993 #define _SSPBUF_SSP1BUF2        0x04
2994 #define _SSPBUF_BUF2            0x04
2995 #define _SSPBUF_SSP1BUF3        0x08
2996 #define _SSPBUF_BUF3            0x08
2997 #define _SSPBUF_SSP1BUF4        0x10
2998 #define _SSPBUF_BUF4            0x10
2999 #define _SSPBUF_SSP1BUF5        0x20
3000 #define _SSPBUF_BUF5            0x20
3001 #define _SSPBUF_SSP1BUF6        0x40
3002 #define _SSPBUF_BUF6            0x40
3003 #define _SSPBUF_SSP1BUF7        0x80
3004 #define _SSPBUF_BUF7            0x80
3005 
3006 //==============================================================================
3007 
3008 
3009 //==============================================================================
3010 //        SSP1ADD Bits
3011 
3012 extern __at(0x0212) __sfr SSP1ADD;
3013 
3014 typedef union
3015   {
3016   struct
3017     {
3018     unsigned SSP1ADD0           : 1;
3019     unsigned SSP1ADD1           : 1;
3020     unsigned SSP1ADD2           : 1;
3021     unsigned SSP1ADD3           : 1;
3022     unsigned SSP1ADD4           : 1;
3023     unsigned SSP1ADD5           : 1;
3024     unsigned SSP1ADD6           : 1;
3025     unsigned SSP1ADD7           : 1;
3026     };
3027 
3028   struct
3029     {
3030     unsigned ADD0               : 1;
3031     unsigned ADD1               : 1;
3032     unsigned ADD2               : 1;
3033     unsigned ADD3               : 1;
3034     unsigned ADD4               : 1;
3035     unsigned ADD5               : 1;
3036     unsigned ADD6               : 1;
3037     unsigned ADD7               : 1;
3038     };
3039   } __SSP1ADDbits_t;
3040 
3041 extern __at(0x0212) volatile __SSP1ADDbits_t SSP1ADDbits;
3042 
3043 #define _SSP1ADD0               0x01
3044 #define _ADD0                   0x01
3045 #define _SSP1ADD1               0x02
3046 #define _ADD1                   0x02
3047 #define _SSP1ADD2               0x04
3048 #define _ADD2                   0x04
3049 #define _SSP1ADD3               0x08
3050 #define _ADD3                   0x08
3051 #define _SSP1ADD4               0x10
3052 #define _ADD4                   0x10
3053 #define _SSP1ADD5               0x20
3054 #define _ADD5                   0x20
3055 #define _SSP1ADD6               0x40
3056 #define _ADD6                   0x40
3057 #define _SSP1ADD7               0x80
3058 #define _ADD7                   0x80
3059 
3060 //==============================================================================
3061 
3062 
3063 //==============================================================================
3064 //        SSPADD Bits
3065 
3066 extern __at(0x0212) __sfr SSPADD;
3067 
3068 typedef union
3069   {
3070   struct
3071     {
3072     unsigned SSP1ADD0           : 1;
3073     unsigned SSP1ADD1           : 1;
3074     unsigned SSP1ADD2           : 1;
3075     unsigned SSP1ADD3           : 1;
3076     unsigned SSP1ADD4           : 1;
3077     unsigned SSP1ADD5           : 1;
3078     unsigned SSP1ADD6           : 1;
3079     unsigned SSP1ADD7           : 1;
3080     };
3081 
3082   struct
3083     {
3084     unsigned ADD0               : 1;
3085     unsigned ADD1               : 1;
3086     unsigned ADD2               : 1;
3087     unsigned ADD3               : 1;
3088     unsigned ADD4               : 1;
3089     unsigned ADD5               : 1;
3090     unsigned ADD6               : 1;
3091     unsigned ADD7               : 1;
3092     };
3093   } __SSPADDbits_t;
3094 
3095 extern __at(0x0212) volatile __SSPADDbits_t SSPADDbits;
3096 
3097 #define _SSPADD_SSP1ADD0        0x01
3098 #define _SSPADD_ADD0            0x01
3099 #define _SSPADD_SSP1ADD1        0x02
3100 #define _SSPADD_ADD1            0x02
3101 #define _SSPADD_SSP1ADD2        0x04
3102 #define _SSPADD_ADD2            0x04
3103 #define _SSPADD_SSP1ADD3        0x08
3104 #define _SSPADD_ADD3            0x08
3105 #define _SSPADD_SSP1ADD4        0x10
3106 #define _SSPADD_ADD4            0x10
3107 #define _SSPADD_SSP1ADD5        0x20
3108 #define _SSPADD_ADD5            0x20
3109 #define _SSPADD_SSP1ADD6        0x40
3110 #define _SSPADD_ADD6            0x40
3111 #define _SSPADD_SSP1ADD7        0x80
3112 #define _SSPADD_ADD7            0x80
3113 
3114 //==============================================================================
3115 
3116 
3117 //==============================================================================
3118 //        SSP1MSK Bits
3119 
3120 extern __at(0x0213) __sfr SSP1MSK;
3121 
3122 typedef union
3123   {
3124   struct
3125     {
3126     unsigned SSP1MSK0           : 1;
3127     unsigned SSP1MSK1           : 1;
3128     unsigned SSP1MSK2           : 1;
3129     unsigned SSP1MSK3           : 1;
3130     unsigned SSP1MSK4           : 1;
3131     unsigned SSP1MSK5           : 1;
3132     unsigned SSP1MSK6           : 1;
3133     unsigned SSP1MSK7           : 1;
3134     };
3135 
3136   struct
3137     {
3138     unsigned MSK0               : 1;
3139     unsigned MSK1               : 1;
3140     unsigned MSK2               : 1;
3141     unsigned MSK3               : 1;
3142     unsigned MSK4               : 1;
3143     unsigned MSK5               : 1;
3144     unsigned MSK6               : 1;
3145     unsigned MSK7               : 1;
3146     };
3147   } __SSP1MSKbits_t;
3148 
3149 extern __at(0x0213) volatile __SSP1MSKbits_t SSP1MSKbits;
3150 
3151 #define _SSP1MSK0               0x01
3152 #define _MSK0                   0x01
3153 #define _SSP1MSK1               0x02
3154 #define _MSK1                   0x02
3155 #define _SSP1MSK2               0x04
3156 #define _MSK2                   0x04
3157 #define _SSP1MSK3               0x08
3158 #define _MSK3                   0x08
3159 #define _SSP1MSK4               0x10
3160 #define _MSK4                   0x10
3161 #define _SSP1MSK5               0x20
3162 #define _MSK5                   0x20
3163 #define _SSP1MSK6               0x40
3164 #define _MSK6                   0x40
3165 #define _SSP1MSK7               0x80
3166 #define _MSK7                   0x80
3167 
3168 //==============================================================================
3169 
3170 
3171 //==============================================================================
3172 //        SSPMSK Bits
3173 
3174 extern __at(0x0213) __sfr SSPMSK;
3175 
3176 typedef union
3177   {
3178   struct
3179     {
3180     unsigned SSP1MSK0           : 1;
3181     unsigned SSP1MSK1           : 1;
3182     unsigned SSP1MSK2           : 1;
3183     unsigned SSP1MSK3           : 1;
3184     unsigned SSP1MSK4           : 1;
3185     unsigned SSP1MSK5           : 1;
3186     unsigned SSP1MSK6           : 1;
3187     unsigned SSP1MSK7           : 1;
3188     };
3189 
3190   struct
3191     {
3192     unsigned MSK0               : 1;
3193     unsigned MSK1               : 1;
3194     unsigned MSK2               : 1;
3195     unsigned MSK3               : 1;
3196     unsigned MSK4               : 1;
3197     unsigned MSK5               : 1;
3198     unsigned MSK6               : 1;
3199     unsigned MSK7               : 1;
3200     };
3201   } __SSPMSKbits_t;
3202 
3203 extern __at(0x0213) volatile __SSPMSKbits_t SSPMSKbits;
3204 
3205 #define _SSPMSK_SSP1MSK0        0x01
3206 #define _SSPMSK_MSK0            0x01
3207 #define _SSPMSK_SSP1MSK1        0x02
3208 #define _SSPMSK_MSK1            0x02
3209 #define _SSPMSK_SSP1MSK2        0x04
3210 #define _SSPMSK_MSK2            0x04
3211 #define _SSPMSK_SSP1MSK3        0x08
3212 #define _SSPMSK_MSK3            0x08
3213 #define _SSPMSK_SSP1MSK4        0x10
3214 #define _SSPMSK_MSK4            0x10
3215 #define _SSPMSK_SSP1MSK5        0x20
3216 #define _SSPMSK_MSK5            0x20
3217 #define _SSPMSK_SSP1MSK6        0x40
3218 #define _SSPMSK_MSK6            0x40
3219 #define _SSPMSK_SSP1MSK7        0x80
3220 #define _SSPMSK_MSK7            0x80
3221 
3222 //==============================================================================
3223 
3224 
3225 //==============================================================================
3226 //        SSP1STAT Bits
3227 
3228 extern __at(0x0214) __sfr SSP1STAT;
3229 
3230 typedef struct
3231   {
3232   unsigned BF                   : 1;
3233   unsigned UA                   : 1;
3234   unsigned R_NOT_W              : 1;
3235   unsigned S                    : 1;
3236   unsigned P                    : 1;
3237   unsigned D_NOT_A              : 1;
3238   unsigned CKE                  : 1;
3239   unsigned SMP                  : 1;
3240   } __SSP1STATbits_t;
3241 
3242 extern __at(0x0214) volatile __SSP1STATbits_t SSP1STATbits;
3243 
3244 #define _BF                     0x01
3245 #define _UA                     0x02
3246 #define _R_NOT_W                0x04
3247 #define _S                      0x08
3248 #define _P                      0x10
3249 #define _D_NOT_A                0x20
3250 #define _CKE                    0x40
3251 #define _SMP                    0x80
3252 
3253 //==============================================================================
3254 
3255 
3256 //==============================================================================
3257 //        SSPSTAT Bits
3258 
3259 extern __at(0x0214) __sfr SSPSTAT;
3260 
3261 typedef struct
3262   {
3263   unsigned BF                   : 1;
3264   unsigned UA                   : 1;
3265   unsigned R_NOT_W              : 1;
3266   unsigned S                    : 1;
3267   unsigned P                    : 1;
3268   unsigned D_NOT_A              : 1;
3269   unsigned CKE                  : 1;
3270   unsigned SMP                  : 1;
3271   } __SSPSTATbits_t;
3272 
3273 extern __at(0x0214) volatile __SSPSTATbits_t SSPSTATbits;
3274 
3275 #define _SSPSTAT_BF             0x01
3276 #define _SSPSTAT_UA             0x02
3277 #define _SSPSTAT_R_NOT_W        0x04
3278 #define _SSPSTAT_S              0x08
3279 #define _SSPSTAT_P              0x10
3280 #define _SSPSTAT_D_NOT_A        0x20
3281 #define _SSPSTAT_CKE            0x40
3282 #define _SSPSTAT_SMP            0x80
3283 
3284 //==============================================================================
3285 
3286 
3287 //==============================================================================
3288 //        SSP1CON Bits
3289 
3290 extern __at(0x0215) __sfr SSP1CON;
3291 
3292 typedef union
3293   {
3294   struct
3295     {
3296     unsigned SSPM0              : 1;
3297     unsigned SSPM1              : 1;
3298     unsigned SSPM2              : 1;
3299     unsigned SSPM3              : 1;
3300     unsigned CKP                : 1;
3301     unsigned SSPEN              : 1;
3302     unsigned SSPOV              : 1;
3303     unsigned WCOL               : 1;
3304     };
3305 
3306   struct
3307     {
3308     unsigned SSPM               : 4;
3309     unsigned                    : 4;
3310     };
3311   } __SSP1CONbits_t;
3312 
3313 extern __at(0x0215) volatile __SSP1CONbits_t SSP1CONbits;
3314 
3315 #define _SSPM0                  0x01
3316 #define _SSPM1                  0x02
3317 #define _SSPM2                  0x04
3318 #define _SSPM3                  0x08
3319 #define _CKP                    0x10
3320 #define _SSPEN                  0x20
3321 #define _SSPOV                  0x40
3322 #define _WCOL                   0x80
3323 
3324 //==============================================================================
3325 
3326 
3327 //==============================================================================
3328 //        SSP1CON1 Bits
3329 
3330 extern __at(0x0215) __sfr SSP1CON1;
3331 
3332 typedef union
3333   {
3334   struct
3335     {
3336     unsigned SSPM0              : 1;
3337     unsigned SSPM1              : 1;
3338     unsigned SSPM2              : 1;
3339     unsigned SSPM3              : 1;
3340     unsigned CKP                : 1;
3341     unsigned SSPEN              : 1;
3342     unsigned SSPOV              : 1;
3343     unsigned WCOL               : 1;
3344     };
3345 
3346   struct
3347     {
3348     unsigned SSPM               : 4;
3349     unsigned                    : 4;
3350     };
3351   } __SSP1CON1bits_t;
3352 
3353 extern __at(0x0215) volatile __SSP1CON1bits_t SSP1CON1bits;
3354 
3355 #define _SSP1CON1_SSPM0         0x01
3356 #define _SSP1CON1_SSPM1         0x02
3357 #define _SSP1CON1_SSPM2         0x04
3358 #define _SSP1CON1_SSPM3         0x08
3359 #define _SSP1CON1_CKP           0x10
3360 #define _SSP1CON1_SSPEN         0x20
3361 #define _SSP1CON1_SSPOV         0x40
3362 #define _SSP1CON1_WCOL          0x80
3363 
3364 //==============================================================================
3365 
3366 
3367 //==============================================================================
3368 //        SSPCON Bits
3369 
3370 extern __at(0x0215) __sfr SSPCON;
3371 
3372 typedef union
3373   {
3374   struct
3375     {
3376     unsigned SSPM0              : 1;
3377     unsigned SSPM1              : 1;
3378     unsigned SSPM2              : 1;
3379     unsigned SSPM3              : 1;
3380     unsigned CKP                : 1;
3381     unsigned SSPEN              : 1;
3382     unsigned SSPOV              : 1;
3383     unsigned WCOL               : 1;
3384     };
3385 
3386   struct
3387     {
3388     unsigned SSPM               : 4;
3389     unsigned                    : 4;
3390     };
3391   } __SSPCONbits_t;
3392 
3393 extern __at(0x0215) volatile __SSPCONbits_t SSPCONbits;
3394 
3395 #define _SSPCON_SSPM0           0x01
3396 #define _SSPCON_SSPM1           0x02
3397 #define _SSPCON_SSPM2           0x04
3398 #define _SSPCON_SSPM3           0x08
3399 #define _SSPCON_CKP             0x10
3400 #define _SSPCON_SSPEN           0x20
3401 #define _SSPCON_SSPOV           0x40
3402 #define _SSPCON_WCOL            0x80
3403 
3404 //==============================================================================
3405 
3406 
3407 //==============================================================================
3408 //        SSPCON1 Bits
3409 
3410 extern __at(0x0215) __sfr SSPCON1;
3411 
3412 typedef union
3413   {
3414   struct
3415     {
3416     unsigned SSPM0              : 1;
3417     unsigned SSPM1              : 1;
3418     unsigned SSPM2              : 1;
3419     unsigned SSPM3              : 1;
3420     unsigned CKP                : 1;
3421     unsigned SSPEN              : 1;
3422     unsigned SSPOV              : 1;
3423     unsigned WCOL               : 1;
3424     };
3425 
3426   struct
3427     {
3428     unsigned SSPM               : 4;
3429     unsigned                    : 4;
3430     };
3431   } __SSPCON1bits_t;
3432 
3433 extern __at(0x0215) volatile __SSPCON1bits_t SSPCON1bits;
3434 
3435 #define _SSPCON1_SSPM0          0x01
3436 #define _SSPCON1_SSPM1          0x02
3437 #define _SSPCON1_SSPM2          0x04
3438 #define _SSPCON1_SSPM3          0x08
3439 #define _SSPCON1_CKP            0x10
3440 #define _SSPCON1_SSPEN          0x20
3441 #define _SSPCON1_SSPOV          0x40
3442 #define _SSPCON1_WCOL           0x80
3443 
3444 //==============================================================================
3445 
3446 
3447 //==============================================================================
3448 //        SSP1CON2 Bits
3449 
3450 extern __at(0x0216) __sfr SSP1CON2;
3451 
3452 typedef struct
3453   {
3454   unsigned SEN                  : 1;
3455   unsigned RSEN                 : 1;
3456   unsigned PEN                  : 1;
3457   unsigned RCEN                 : 1;
3458   unsigned ACKEN                : 1;
3459   unsigned ACKDT                : 1;
3460   unsigned ACKSTAT              : 1;
3461   unsigned GCEN                 : 1;
3462   } __SSP1CON2bits_t;
3463 
3464 extern __at(0x0216) volatile __SSP1CON2bits_t SSP1CON2bits;
3465 
3466 #define _SEN                    0x01
3467 #define _RSEN                   0x02
3468 #define _PEN                    0x04
3469 #define _RCEN                   0x08
3470 #define _ACKEN                  0x10
3471 #define _ACKDT                  0x20
3472 #define _ACKSTAT                0x40
3473 #define _GCEN                   0x80
3474 
3475 //==============================================================================
3476 
3477 
3478 //==============================================================================
3479 //        SSPCON2 Bits
3480 
3481 extern __at(0x0216) __sfr SSPCON2;
3482 
3483 typedef struct
3484   {
3485   unsigned SEN                  : 1;
3486   unsigned RSEN                 : 1;
3487   unsigned PEN                  : 1;
3488   unsigned RCEN                 : 1;
3489   unsigned ACKEN                : 1;
3490   unsigned ACKDT                : 1;
3491   unsigned ACKSTAT              : 1;
3492   unsigned GCEN                 : 1;
3493   } __SSPCON2bits_t;
3494 
3495 extern __at(0x0216) volatile __SSPCON2bits_t SSPCON2bits;
3496 
3497 #define _SSPCON2_SEN            0x01
3498 #define _SSPCON2_RSEN           0x02
3499 #define _SSPCON2_PEN            0x04
3500 #define _SSPCON2_RCEN           0x08
3501 #define _SSPCON2_ACKEN          0x10
3502 #define _SSPCON2_ACKDT          0x20
3503 #define _SSPCON2_ACKSTAT        0x40
3504 #define _SSPCON2_GCEN           0x80
3505 
3506 //==============================================================================
3507 
3508 
3509 //==============================================================================
3510 //        SSP1CON3 Bits
3511 
3512 extern __at(0x0217) __sfr SSP1CON3;
3513 
3514 typedef struct
3515   {
3516   unsigned DHEN                 : 1;
3517   unsigned AHEN                 : 1;
3518   unsigned SBCDE                : 1;
3519   unsigned SDAHT                : 1;
3520   unsigned BOEN                 : 1;
3521   unsigned SCIE                 : 1;
3522   unsigned PCIE                 : 1;
3523   unsigned ACKTIM               : 1;
3524   } __SSP1CON3bits_t;
3525 
3526 extern __at(0x0217) volatile __SSP1CON3bits_t SSP1CON3bits;
3527 
3528 #define _DHEN                   0x01
3529 #define _AHEN                   0x02
3530 #define _SBCDE                  0x04
3531 #define _SDAHT                  0x08
3532 #define _BOEN                   0x10
3533 #define _SCIE                   0x20
3534 #define _PCIE                   0x40
3535 #define _ACKTIM                 0x80
3536 
3537 //==============================================================================
3538 
3539 
3540 //==============================================================================
3541 //        SSPCON3 Bits
3542 
3543 extern __at(0x0217) __sfr SSPCON3;
3544 
3545 typedef struct
3546   {
3547   unsigned DHEN                 : 1;
3548   unsigned AHEN                 : 1;
3549   unsigned SBCDE                : 1;
3550   unsigned SDAHT                : 1;
3551   unsigned BOEN                 : 1;
3552   unsigned SCIE                 : 1;
3553   unsigned PCIE                 : 1;
3554   unsigned ACKTIM               : 1;
3555   } __SSPCON3bits_t;
3556 
3557 extern __at(0x0217) volatile __SSPCON3bits_t SSPCON3bits;
3558 
3559 #define _SSPCON3_DHEN           0x01
3560 #define _SSPCON3_AHEN           0x02
3561 #define _SSPCON3_SBCDE          0x04
3562 #define _SSPCON3_SDAHT          0x08
3563 #define _SSPCON3_BOEN           0x10
3564 #define _SSPCON3_SCIE           0x20
3565 #define _SSPCON3_PCIE           0x40
3566 #define _SSPCON3_ACKTIM         0x80
3567 
3568 //==============================================================================
3569 
3570 
3571 //==============================================================================
3572 //        ODCONA Bits
3573 
3574 extern __at(0x028C) __sfr ODCONA;
3575 
3576 typedef struct
3577   {
3578   unsigned ODCONA0              : 1;
3579   unsigned ODCONA1              : 1;
3580   unsigned ODCONA2              : 1;
3581   unsigned ODCONA3              : 1;
3582   unsigned ODCONA4              : 1;
3583   unsigned ODCONA5              : 1;
3584   unsigned ODCONA6              : 1;
3585   unsigned ODCONA7              : 1;
3586   } __ODCONAbits_t;
3587 
3588 extern __at(0x028C) volatile __ODCONAbits_t ODCONAbits;
3589 
3590 #define _ODCONA0                0x01
3591 #define _ODCONA1                0x02
3592 #define _ODCONA2                0x04
3593 #define _ODCONA3                0x08
3594 #define _ODCONA4                0x10
3595 #define _ODCONA5                0x20
3596 #define _ODCONA6                0x40
3597 #define _ODCONA7                0x80
3598 
3599 //==============================================================================
3600 
3601 
3602 //==============================================================================
3603 //        ODCONB Bits
3604 
3605 extern __at(0x028D) __sfr ODCONB;
3606 
3607 typedef struct
3608   {
3609   unsigned ODCONB0              : 1;
3610   unsigned ODCONB1              : 1;
3611   unsigned ODCONB2              : 1;
3612   unsigned ODCONB3              : 1;
3613   unsigned ODCONB4              : 1;
3614   unsigned ODCONB5              : 1;
3615   unsigned ODCONB6              : 1;
3616   unsigned ODCONB7              : 1;
3617   } __ODCONBbits_t;
3618 
3619 extern __at(0x028D) volatile __ODCONBbits_t ODCONBbits;
3620 
3621 #define _ODCONB0                0x01
3622 #define _ODCONB1                0x02
3623 #define _ODCONB2                0x04
3624 #define _ODCONB3                0x08
3625 #define _ODCONB4                0x10
3626 #define _ODCONB5                0x20
3627 #define _ODCONB6                0x40
3628 #define _ODCONB7                0x80
3629 
3630 //==============================================================================
3631 
3632 
3633 //==============================================================================
3634 //        ODCONC Bits
3635 
3636 extern __at(0x028E) __sfr ODCONC;
3637 
3638 typedef struct
3639   {
3640   unsigned ODCONC0              : 1;
3641   unsigned ODCONC1              : 1;
3642   unsigned ODCONC2              : 1;
3643   unsigned ODCONC3              : 1;
3644   unsigned ODCONC4              : 1;
3645   unsigned ODCONC5              : 1;
3646   unsigned ODCONC6              : 1;
3647   unsigned ODCONC7              : 1;
3648   } __ODCONCbits_t;
3649 
3650 extern __at(0x028E) volatile __ODCONCbits_t ODCONCbits;
3651 
3652 #define _ODCONC0                0x01
3653 #define _ODCONC1                0x02
3654 #define _ODCONC2                0x04
3655 #define _ODCONC3                0x08
3656 #define _ODCONC4                0x10
3657 #define _ODCONC5                0x20
3658 #define _ODCONC6                0x40
3659 #define _ODCONC7                0x80
3660 
3661 //==============================================================================
3662 
3663 extern __at(0x0291) __sfr CCPR1;
3664 extern __at(0x0291) __sfr CCPR1L;
3665 extern __at(0x0292) __sfr CCPR1H;
3666 
3667 //==============================================================================
3668 //        CCP1CON Bits
3669 
3670 extern __at(0x0293) __sfr CCP1CON;
3671 
3672 typedef union
3673   {
3674   struct
3675     {
3676     unsigned CCP1M0             : 1;
3677     unsigned CCP1M1             : 1;
3678     unsigned CCP1M2             : 1;
3679     unsigned CCP1M3             : 1;
3680     unsigned DC1B0              : 1;
3681     unsigned DC1B1              : 1;
3682     unsigned                    : 1;
3683     unsigned                    : 1;
3684     };
3685 
3686   struct
3687     {
3688     unsigned CCP1M              : 4;
3689     unsigned                    : 4;
3690     };
3691 
3692   struct
3693     {
3694     unsigned                    : 4;
3695     unsigned DC1B               : 2;
3696     unsigned                    : 2;
3697     };
3698   } __CCP1CONbits_t;
3699 
3700 extern __at(0x0293) volatile __CCP1CONbits_t CCP1CONbits;
3701 
3702 #define _CCP1M0                 0x01
3703 #define _CCP1M1                 0x02
3704 #define _CCP1M2                 0x04
3705 #define _CCP1M3                 0x08
3706 #define _DC1B0                  0x10
3707 #define _DC1B1                  0x20
3708 
3709 //==============================================================================
3710 
3711 extern __at(0x0298) __sfr CCPR2;
3712 extern __at(0x0298) __sfr CCPR2L;
3713 extern __at(0x0299) __sfr CCPR2H;
3714 
3715 //==============================================================================
3716 //        CCP2CON Bits
3717 
3718 extern __at(0x029A) __sfr CCP2CON;
3719 
3720 typedef union
3721   {
3722   struct
3723     {
3724     unsigned CCP2M0             : 1;
3725     unsigned CCP2M1             : 1;
3726     unsigned CCP2M2             : 1;
3727     unsigned CCP2M3             : 1;
3728     unsigned DC2B0              : 1;
3729     unsigned DC2B1              : 1;
3730     unsigned                    : 1;
3731     unsigned                    : 1;
3732     };
3733 
3734   struct
3735     {
3736     unsigned CCP2M              : 4;
3737     unsigned                    : 4;
3738     };
3739 
3740   struct
3741     {
3742     unsigned                    : 4;
3743     unsigned DC2B               : 2;
3744     unsigned                    : 2;
3745     };
3746   } __CCP2CONbits_t;
3747 
3748 extern __at(0x029A) volatile __CCP2CONbits_t CCP2CONbits;
3749 
3750 #define _CCP2M0                 0x01
3751 #define _CCP2M1                 0x02
3752 #define _CCP2M2                 0x04
3753 #define _CCP2M3                 0x08
3754 #define _DC2B0                  0x10
3755 #define _DC2B1                  0x20
3756 
3757 //==============================================================================
3758 
3759 
3760 //==============================================================================
3761 //        SLRCONA Bits
3762 
3763 extern __at(0x030C) __sfr SLRCONA;
3764 
3765 typedef struct
3766   {
3767   unsigned SLRCONA0             : 1;
3768   unsigned SLRCONA1             : 1;
3769   unsigned SLRCONA2             : 1;
3770   unsigned SLRCONA3             : 1;
3771   unsigned SLRCONA4             : 1;
3772   unsigned SLRCONA5             : 1;
3773   unsigned SLRCONA6             : 1;
3774   unsigned SLRCONA7             : 1;
3775   } __SLRCONAbits_t;
3776 
3777 extern __at(0x030C) volatile __SLRCONAbits_t SLRCONAbits;
3778 
3779 #define _SLRCONA0               0x01
3780 #define _SLRCONA1               0x02
3781 #define _SLRCONA2               0x04
3782 #define _SLRCONA3               0x08
3783 #define _SLRCONA4               0x10
3784 #define _SLRCONA5               0x20
3785 #define _SLRCONA6               0x40
3786 #define _SLRCONA7               0x80
3787 
3788 //==============================================================================
3789 
3790 
3791 //==============================================================================
3792 //        SLRCONB Bits
3793 
3794 extern __at(0x030D) __sfr SLRCONB;
3795 
3796 typedef struct
3797   {
3798   unsigned SLRCONB0             : 1;
3799   unsigned SLRCONB1             : 1;
3800   unsigned SLRCONB2             : 1;
3801   unsigned SLRCONB3             : 1;
3802   unsigned SLRCONB4             : 1;
3803   unsigned SLRCONB5             : 1;
3804   unsigned SLRCONB6             : 1;
3805   unsigned SLRCONB7             : 1;
3806   } __SLRCONBbits_t;
3807 
3808 extern __at(0x030D) volatile __SLRCONBbits_t SLRCONBbits;
3809 
3810 #define _SLRCONB0               0x01
3811 #define _SLRCONB1               0x02
3812 #define _SLRCONB2               0x04
3813 #define _SLRCONB3               0x08
3814 #define _SLRCONB4               0x10
3815 #define _SLRCONB5               0x20
3816 #define _SLRCONB6               0x40
3817 #define _SLRCONB7               0x80
3818 
3819 //==============================================================================
3820 
3821 
3822 //==============================================================================
3823 //        SLRCONC Bits
3824 
3825 extern __at(0x030E) __sfr SLRCONC;
3826 
3827 typedef struct
3828   {
3829   unsigned SLRCONC0             : 1;
3830   unsigned SLRCONC1             : 1;
3831   unsigned SLRCONC2             : 1;
3832   unsigned SLRCONC3             : 1;
3833   unsigned SLRCONC4             : 1;
3834   unsigned SLRCONC5             : 1;
3835   unsigned SLRCONC6             : 1;
3836   unsigned SLRCONC7             : 1;
3837   } __SLRCONCbits_t;
3838 
3839 extern __at(0x030E) volatile __SLRCONCbits_t SLRCONCbits;
3840 
3841 #define _SLRCONC0               0x01
3842 #define _SLRCONC1               0x02
3843 #define _SLRCONC2               0x04
3844 #define _SLRCONC3               0x08
3845 #define _SLRCONC4               0x10
3846 #define _SLRCONC5               0x20
3847 #define _SLRCONC6               0x40
3848 #define _SLRCONC7               0x80
3849 
3850 //==============================================================================
3851 
3852 extern __at(0x0311) __sfr CCPR3;
3853 extern __at(0x0311) __sfr CCPR3L;
3854 extern __at(0x0312) __sfr CCPR3H;
3855 
3856 //==============================================================================
3857 //        CCP3CON Bits
3858 
3859 extern __at(0x0313) __sfr CCP3CON;
3860 
3861 typedef union
3862   {
3863   struct
3864     {
3865     unsigned CCP3M0             : 1;
3866     unsigned CCP3M1             : 1;
3867     unsigned CCP3M2             : 1;
3868     unsigned CCP3M3             : 1;
3869     unsigned DC3B0              : 1;
3870     unsigned DC3B1              : 1;
3871     unsigned                    : 1;
3872     unsigned                    : 1;
3873     };
3874 
3875   struct
3876     {
3877     unsigned CCP3M              : 4;
3878     unsigned                    : 4;
3879     };
3880 
3881   struct
3882     {
3883     unsigned                    : 4;
3884     unsigned DC3B               : 2;
3885     unsigned                    : 2;
3886     };
3887   } __CCP3CONbits_t;
3888 
3889 extern __at(0x0313) volatile __CCP3CONbits_t CCP3CONbits;
3890 
3891 #define _CCP3M0                 0x01
3892 #define _CCP3M1                 0x02
3893 #define _CCP3M2                 0x04
3894 #define _CCP3M3                 0x08
3895 #define _DC3B0                  0x10
3896 #define _DC3B1                  0x20
3897 
3898 //==============================================================================
3899 
3900 
3901 //==============================================================================
3902 //        INLVLA Bits
3903 
3904 extern __at(0x038C) __sfr INLVLA;
3905 
3906 typedef struct
3907   {
3908   unsigned INLVLA0              : 1;
3909   unsigned INLVLA1              : 1;
3910   unsigned INLVLA2              : 1;
3911   unsigned INLVLA3              : 1;
3912   unsigned INLVLA4              : 1;
3913   unsigned INLVLA5              : 1;
3914   unsigned INLVLA6              : 1;
3915   unsigned INLVLA7              : 1;
3916   } __INLVLAbits_t;
3917 
3918 extern __at(0x038C) volatile __INLVLAbits_t INLVLAbits;
3919 
3920 #define _INLVLA0                0x01
3921 #define _INLVLA1                0x02
3922 #define _INLVLA2                0x04
3923 #define _INLVLA3                0x08
3924 #define _INLVLA4                0x10
3925 #define _INLVLA5                0x20
3926 #define _INLVLA6                0x40
3927 #define _INLVLA7                0x80
3928 
3929 //==============================================================================
3930 
3931 
3932 //==============================================================================
3933 //        INLVLB Bits
3934 
3935 extern __at(0x038D) __sfr INLVLB;
3936 
3937 typedef struct
3938   {
3939   unsigned INLVLB0              : 1;
3940   unsigned INLVLB1              : 1;
3941   unsigned INLVLB2              : 1;
3942   unsigned INLVLB3              : 1;
3943   unsigned INLVLB4              : 1;
3944   unsigned INLVLB5              : 1;
3945   unsigned INLVLB6              : 1;
3946   unsigned INLVLB7              : 1;
3947   } __INLVLBbits_t;
3948 
3949 extern __at(0x038D) volatile __INLVLBbits_t INLVLBbits;
3950 
3951 #define _INLVLB0                0x01
3952 #define _INLVLB1                0x02
3953 #define _INLVLB2                0x04
3954 #define _INLVLB3                0x08
3955 #define _INLVLB4                0x10
3956 #define _INLVLB5                0x20
3957 #define _INLVLB6                0x40
3958 #define _INLVLB7                0x80
3959 
3960 //==============================================================================
3961 
3962 
3963 //==============================================================================
3964 //        INLVLC Bits
3965 
3966 extern __at(0x038E) __sfr INLVLC;
3967 
3968 typedef struct
3969   {
3970   unsigned INLVLC0              : 1;
3971   unsigned INLVLC1              : 1;
3972   unsigned INLVLC2              : 1;
3973   unsigned INLVLC3              : 1;
3974   unsigned INLVLC4              : 1;
3975   unsigned INLVLC5              : 1;
3976   unsigned INLVLC6              : 1;
3977   unsigned INLVLC7              : 1;
3978   } __INLVLCbits_t;
3979 
3980 extern __at(0x038E) volatile __INLVLCbits_t INLVLCbits;
3981 
3982 #define _INLVLC0                0x01
3983 #define _INLVLC1                0x02
3984 #define _INLVLC2                0x04
3985 #define _INLVLC3                0x08
3986 #define _INLVLC4                0x10
3987 #define _INLVLC5                0x20
3988 #define _INLVLC6                0x40
3989 #define _INLVLC7                0x80
3990 
3991 //==============================================================================
3992 
3993 
3994 //==============================================================================
3995 //        INLVLE Bits
3996 
3997 extern __at(0x0390) __sfr INLVLE;
3998 
3999 typedef struct
4000   {
4001   unsigned                      : 1;
4002   unsigned                      : 1;
4003   unsigned                      : 1;
4004   unsigned INLVLE3              : 1;
4005   unsigned                      : 1;
4006   unsigned                      : 1;
4007   unsigned                      : 1;
4008   unsigned                      : 1;
4009   } __INLVLEbits_t;
4010 
4011 extern __at(0x0390) volatile __INLVLEbits_t INLVLEbits;
4012 
4013 #define _INLVLE3                0x08
4014 
4015 //==============================================================================
4016 
4017 
4018 //==============================================================================
4019 //        IOCAP Bits
4020 
4021 extern __at(0x0391) __sfr IOCAP;
4022 
4023 typedef struct
4024   {
4025   unsigned IOCAP0               : 1;
4026   unsigned IOCAP1               : 1;
4027   unsigned IOCAP2               : 1;
4028   unsigned IOCAP3               : 1;
4029   unsigned IOCAP4               : 1;
4030   unsigned IOCAP5               : 1;
4031   unsigned IOCAP6               : 1;
4032   unsigned IOCAP7               : 1;
4033   } __IOCAPbits_t;
4034 
4035 extern __at(0x0391) volatile __IOCAPbits_t IOCAPbits;
4036 
4037 #define _IOCAP0                 0x01
4038 #define _IOCAP1                 0x02
4039 #define _IOCAP2                 0x04
4040 #define _IOCAP3                 0x08
4041 #define _IOCAP4                 0x10
4042 #define _IOCAP5                 0x20
4043 #define _IOCAP6                 0x40
4044 #define _IOCAP7                 0x80
4045 
4046 //==============================================================================
4047 
4048 
4049 //==============================================================================
4050 //        IOCAN Bits
4051 
4052 extern __at(0x0392) __sfr IOCAN;
4053 
4054 typedef struct
4055   {
4056   unsigned IOCAN0               : 1;
4057   unsigned IOCAN1               : 1;
4058   unsigned IOCAN2               : 1;
4059   unsigned IOCAN3               : 1;
4060   unsigned IOCAN4               : 1;
4061   unsigned IOCAN5               : 1;
4062   unsigned IOCAN6               : 1;
4063   unsigned IOCAN7               : 1;
4064   } __IOCANbits_t;
4065 
4066 extern __at(0x0392) volatile __IOCANbits_t IOCANbits;
4067 
4068 #define _IOCAN0                 0x01
4069 #define _IOCAN1                 0x02
4070 #define _IOCAN2                 0x04
4071 #define _IOCAN3                 0x08
4072 #define _IOCAN4                 0x10
4073 #define _IOCAN5                 0x20
4074 #define _IOCAN6                 0x40
4075 #define _IOCAN7                 0x80
4076 
4077 //==============================================================================
4078 
4079 
4080 //==============================================================================
4081 //        IOCAF Bits
4082 
4083 extern __at(0x0393) __sfr IOCAF;
4084 
4085 typedef struct
4086   {
4087   unsigned IOCAF0               : 1;
4088   unsigned IOCAF1               : 1;
4089   unsigned IOCAF2               : 1;
4090   unsigned IOCAF3               : 1;
4091   unsigned IOCAF4               : 1;
4092   unsigned IOCAF5               : 1;
4093   unsigned IOCAF6               : 1;
4094   unsigned IOCAF7               : 1;
4095   } __IOCAFbits_t;
4096 
4097 extern __at(0x0393) volatile __IOCAFbits_t IOCAFbits;
4098 
4099 #define _IOCAF0                 0x01
4100 #define _IOCAF1                 0x02
4101 #define _IOCAF2                 0x04
4102 #define _IOCAF3                 0x08
4103 #define _IOCAF4                 0x10
4104 #define _IOCAF5                 0x20
4105 #define _IOCAF6                 0x40
4106 #define _IOCAF7                 0x80
4107 
4108 //==============================================================================
4109 
4110 
4111 //==============================================================================
4112 //        IOCBP Bits
4113 
4114 extern __at(0x0394) __sfr IOCBP;
4115 
4116 typedef struct
4117   {
4118   unsigned IOCBP0               : 1;
4119   unsigned IOCBP1               : 1;
4120   unsigned IOCBP2               : 1;
4121   unsigned IOCBP3               : 1;
4122   unsigned IOCBP4               : 1;
4123   unsigned IOCBP5               : 1;
4124   unsigned IOCBP6               : 1;
4125   unsigned IOCBP7               : 1;
4126   } __IOCBPbits_t;
4127 
4128 extern __at(0x0394) volatile __IOCBPbits_t IOCBPbits;
4129 
4130 #define _IOCBP0                 0x01
4131 #define _IOCBP1                 0x02
4132 #define _IOCBP2                 0x04
4133 #define _IOCBP3                 0x08
4134 #define _IOCBP4                 0x10
4135 #define _IOCBP5                 0x20
4136 #define _IOCBP6                 0x40
4137 #define _IOCBP7                 0x80
4138 
4139 //==============================================================================
4140 
4141 
4142 //==============================================================================
4143 //        IOCBN Bits
4144 
4145 extern __at(0x0395) __sfr IOCBN;
4146 
4147 typedef struct
4148   {
4149   unsigned IOCBN0               : 1;
4150   unsigned IOCBN1               : 1;
4151   unsigned IOCBN2               : 1;
4152   unsigned IOCBN3               : 1;
4153   unsigned IOCBN4               : 1;
4154   unsigned IOCBN5               : 1;
4155   unsigned IOCBN6               : 1;
4156   unsigned IOCBN7               : 1;
4157   } __IOCBNbits_t;
4158 
4159 extern __at(0x0395) volatile __IOCBNbits_t IOCBNbits;
4160 
4161 #define _IOCBN0                 0x01
4162 #define _IOCBN1                 0x02
4163 #define _IOCBN2                 0x04
4164 #define _IOCBN3                 0x08
4165 #define _IOCBN4                 0x10
4166 #define _IOCBN5                 0x20
4167 #define _IOCBN6                 0x40
4168 #define _IOCBN7                 0x80
4169 
4170 //==============================================================================
4171 
4172 
4173 //==============================================================================
4174 //        IOCBF Bits
4175 
4176 extern __at(0x0396) __sfr IOCBF;
4177 
4178 typedef struct
4179   {
4180   unsigned IOCBF0               : 1;
4181   unsigned IOCBF1               : 1;
4182   unsigned IOCBF2               : 1;
4183   unsigned IOCBF3               : 1;
4184   unsigned IOCBF4               : 1;
4185   unsigned IOCBF5               : 1;
4186   unsigned IOCBF6               : 1;
4187   unsigned IOCBF7               : 1;
4188   } __IOCBFbits_t;
4189 
4190 extern __at(0x0396) volatile __IOCBFbits_t IOCBFbits;
4191 
4192 #define _IOCBF0                 0x01
4193 #define _IOCBF1                 0x02
4194 #define _IOCBF2                 0x04
4195 #define _IOCBF3                 0x08
4196 #define _IOCBF4                 0x10
4197 #define _IOCBF5                 0x20
4198 #define _IOCBF6                 0x40
4199 #define _IOCBF7                 0x80
4200 
4201 //==============================================================================
4202 
4203 
4204 //==============================================================================
4205 //        IOCCP Bits
4206 
4207 extern __at(0x0397) __sfr IOCCP;
4208 
4209 typedef struct
4210   {
4211   unsigned IOCCP0               : 1;
4212   unsigned IOCCP1               : 1;
4213   unsigned IOCCP2               : 1;
4214   unsigned IOCCP3               : 1;
4215   unsigned IOCCP4               : 1;
4216   unsigned IOCCP5               : 1;
4217   unsigned IOCCP6               : 1;
4218   unsigned IOCCP7               : 1;
4219   } __IOCCPbits_t;
4220 
4221 extern __at(0x0397) volatile __IOCCPbits_t IOCCPbits;
4222 
4223 #define _IOCCP0                 0x01
4224 #define _IOCCP1                 0x02
4225 #define _IOCCP2                 0x04
4226 #define _IOCCP3                 0x08
4227 #define _IOCCP4                 0x10
4228 #define _IOCCP5                 0x20
4229 #define _IOCCP6                 0x40
4230 #define _IOCCP7                 0x80
4231 
4232 //==============================================================================
4233 
4234 
4235 //==============================================================================
4236 //        IOCCN Bits
4237 
4238 extern __at(0x0398) __sfr IOCCN;
4239 
4240 typedef struct
4241   {
4242   unsigned IOCCN0               : 1;
4243   unsigned IOCCN1               : 1;
4244   unsigned IOCCN2               : 1;
4245   unsigned IOCCN3               : 1;
4246   unsigned IOCCN4               : 1;
4247   unsigned IOCCN5               : 1;
4248   unsigned IOCCN6               : 1;
4249   unsigned IOCCN7               : 1;
4250   } __IOCCNbits_t;
4251 
4252 extern __at(0x0398) volatile __IOCCNbits_t IOCCNbits;
4253 
4254 #define _IOCCN0                 0x01
4255 #define _IOCCN1                 0x02
4256 #define _IOCCN2                 0x04
4257 #define _IOCCN3                 0x08
4258 #define _IOCCN4                 0x10
4259 #define _IOCCN5                 0x20
4260 #define _IOCCN6                 0x40
4261 #define _IOCCN7                 0x80
4262 
4263 //==============================================================================
4264 
4265 
4266 //==============================================================================
4267 //        IOCCF Bits
4268 
4269 extern __at(0x0399) __sfr IOCCF;
4270 
4271 typedef struct
4272   {
4273   unsigned IOCCF0               : 1;
4274   unsigned IOCCF1               : 1;
4275   unsigned IOCCF2               : 1;
4276   unsigned IOCCF3               : 1;
4277   unsigned IOCCF4               : 1;
4278   unsigned IOCCF5               : 1;
4279   unsigned IOCCF6               : 1;
4280   unsigned IOCCF7               : 1;
4281   } __IOCCFbits_t;
4282 
4283 extern __at(0x0399) volatile __IOCCFbits_t IOCCFbits;
4284 
4285 #define _IOCCF0                 0x01
4286 #define _IOCCF1                 0x02
4287 #define _IOCCF2                 0x04
4288 #define _IOCCF3                 0x08
4289 #define _IOCCF4                 0x10
4290 #define _IOCCF5                 0x20
4291 #define _IOCCF6                 0x40
4292 #define _IOCCF7                 0x80
4293 
4294 //==============================================================================
4295 
4296 
4297 //==============================================================================
4298 //        IOCEP Bits
4299 
4300 extern __at(0x039D) __sfr IOCEP;
4301 
4302 typedef struct
4303   {
4304   unsigned                      : 1;
4305   unsigned                      : 1;
4306   unsigned                      : 1;
4307   unsigned IOCEP3               : 1;
4308   unsigned                      : 1;
4309   unsigned                      : 1;
4310   unsigned                      : 1;
4311   unsigned                      : 1;
4312   } __IOCEPbits_t;
4313 
4314 extern __at(0x039D) volatile __IOCEPbits_t IOCEPbits;
4315 
4316 #define _IOCEP3                 0x08
4317 
4318 //==============================================================================
4319 
4320 
4321 //==============================================================================
4322 //        IOCEN Bits
4323 
4324 extern __at(0x039E) __sfr IOCEN;
4325 
4326 typedef struct
4327   {
4328   unsigned                      : 1;
4329   unsigned                      : 1;
4330   unsigned                      : 1;
4331   unsigned IOCEN3               : 1;
4332   unsigned                      : 1;
4333   unsigned                      : 1;
4334   unsigned                      : 1;
4335   unsigned                      : 1;
4336   } __IOCENbits_t;
4337 
4338 extern __at(0x039E) volatile __IOCENbits_t IOCENbits;
4339 
4340 #define _IOCEN3                 0x08
4341 
4342 //==============================================================================
4343 
4344 
4345 //==============================================================================
4346 //        IOCEF Bits
4347 
4348 extern __at(0x039F) __sfr IOCEF;
4349 
4350 typedef struct
4351   {
4352   unsigned                      : 1;
4353   unsigned                      : 1;
4354   unsigned                      : 1;
4355   unsigned IOCEF3               : 1;
4356   unsigned                      : 1;
4357   unsigned                      : 1;
4358   unsigned                      : 1;
4359   unsigned                      : 1;
4360   } __IOCEFbits_t;
4361 
4362 extern __at(0x039F) volatile __IOCEFbits_t IOCEFbits;
4363 
4364 #define _IOCEF3                 0x08
4365 
4366 //==============================================================================
4367 
4368 
4369 //==============================================================================
4370 //        OPA1CON Bits
4371 
4372 extern __at(0x0511) __sfr OPA1CON;
4373 
4374 typedef union
4375   {
4376   struct
4377     {
4378     unsigned OPA1PCH0           : 1;
4379     unsigned OPA1PCH1           : 1;
4380     unsigned OPA1PCH2           : 1;
4381     unsigned                    : 1;
4382     unsigned                    : 1;
4383     unsigned                    : 1;
4384     unsigned OPA1SP             : 1;
4385     unsigned OPA1EN             : 1;
4386     };
4387 
4388   struct
4389     {
4390     unsigned PCH0               : 1;
4391     unsigned PCH1               : 1;
4392     unsigned PCH2               : 1;
4393     unsigned                    : 1;
4394     unsigned                    : 1;
4395     unsigned                    : 1;
4396     unsigned SP                 : 1;
4397     unsigned EN                 : 1;
4398     };
4399 
4400   struct
4401     {
4402     unsigned OPA1PCH            : 3;
4403     unsigned                    : 5;
4404     };
4405 
4406   struct
4407     {
4408     unsigned PCH                : 3;
4409     unsigned                    : 5;
4410     };
4411   } __OPA1CONbits_t;
4412 
4413 extern __at(0x0511) volatile __OPA1CONbits_t OPA1CONbits;
4414 
4415 #define _OPA1PCH0               0x01
4416 #define _PCH0                   0x01
4417 #define _OPA1PCH1               0x02
4418 #define _PCH1                   0x02
4419 #define _OPA1PCH2               0x04
4420 #define _PCH2                   0x04
4421 #define _OPA1SP                 0x40
4422 #define _SP                     0x40
4423 #define _OPA1EN                 0x80
4424 #define _EN                     0x80
4425 
4426 //==============================================================================
4427 
4428 
4429 //==============================================================================
4430 //        OPA2CON Bits
4431 
4432 extern __at(0x0513) __sfr OPA2CON;
4433 
4434 typedef union
4435   {
4436   struct
4437     {
4438     unsigned OPA2PCH0           : 1;
4439     unsigned OPA2PCH1           : 1;
4440     unsigned OPA2PCH2           : 1;
4441     unsigned                    : 1;
4442     unsigned                    : 1;
4443     unsigned                    : 1;
4444     unsigned OPA2SP             : 1;
4445     unsigned OPA2EN             : 1;
4446     };
4447 
4448   struct
4449     {
4450     unsigned PCH0               : 1;
4451     unsigned PCH1               : 1;
4452     unsigned PCH2               : 1;
4453     unsigned                    : 1;
4454     unsigned                    : 1;
4455     unsigned                    : 1;
4456     unsigned SP                 : 1;
4457     unsigned EN                 : 1;
4458     };
4459 
4460   struct
4461     {
4462     unsigned OPA2PCH            : 3;
4463     unsigned                    : 5;
4464     };
4465 
4466   struct
4467     {
4468     unsigned PCH                : 3;
4469     unsigned                    : 5;
4470     };
4471   } __OPA2CONbits_t;
4472 
4473 extern __at(0x0513) volatile __OPA2CONbits_t OPA2CONbits;
4474 
4475 #define _OPA2CON_OPA2PCH0       0x01
4476 #define _OPA2CON_PCH0           0x01
4477 #define _OPA2CON_OPA2PCH1       0x02
4478 #define _OPA2CON_PCH1           0x02
4479 #define _OPA2CON_OPA2PCH2       0x04
4480 #define _OPA2CON_PCH2           0x04
4481 #define _OPA2CON_OPA2SP         0x40
4482 #define _OPA2CON_SP             0x40
4483 #define _OPA2CON_OPA2EN         0x80
4484 #define _OPA2CON_EN             0x80
4485 
4486 //==============================================================================
4487 
4488 
4489 //==============================================================================
4490 //        CLKRCON Bits
4491 
4492 extern __at(0x051A) __sfr CLKRCON;
4493 
4494 typedef union
4495   {
4496   struct
4497     {
4498     unsigned CLKRDIV0           : 1;
4499     unsigned CLKRDIV1           : 1;
4500     unsigned CLKRDIV2           : 1;
4501     unsigned CLKRDC0            : 1;
4502     unsigned CLKRDC1            : 1;
4503     unsigned CLKRSLR            : 1;
4504     unsigned CLKROE             : 1;
4505     unsigned CLKREN             : 1;
4506     };
4507 
4508   struct
4509     {
4510     unsigned CLKRDIV            : 3;
4511     unsigned                    : 5;
4512     };
4513 
4514   struct
4515     {
4516     unsigned                    : 3;
4517     unsigned CLKRDC             : 2;
4518     unsigned                    : 3;
4519     };
4520   } __CLKRCONbits_t;
4521 
4522 extern __at(0x051A) volatile __CLKRCONbits_t CLKRCONbits;
4523 
4524 #define _CLKRDIV0               0x01
4525 #define _CLKRDIV1               0x02
4526 #define _CLKRDIV2               0x04
4527 #define _CLKRDC0                0x08
4528 #define _CLKRDC1                0x10
4529 #define _CLKRSLR                0x20
4530 #define _CLKROE                 0x40
4531 #define _CLKREN                 0x80
4532 
4533 //==============================================================================
4534 
4535 
4536 //==============================================================================
4537 //        DAC2CON0 Bits
4538 
4539 extern __at(0x0591) __sfr DAC2CON0;
4540 
4541 typedef struct
4542   {
4543   unsigned                      : 1;
4544   unsigned                      : 1;
4545   unsigned                      : 1;
4546   unsigned                      : 1;
4547   unsigned DAC2OE2              : 1;
4548   unsigned DAC2OE1              : 1;
4549   unsigned                      : 1;
4550   unsigned DAC2EN               : 1;
4551   } __DAC2CON0bits_t;
4552 
4553 extern __at(0x0591) volatile __DAC2CON0bits_t DAC2CON0bits;
4554 
4555 #define _DAC2OE2                0x10
4556 #define _DAC2OE1                0x20
4557 #define _DAC2EN                 0x80
4558 
4559 //==============================================================================
4560 
4561 extern __at(0x0592) __sfr DAC2CON1;
4562 extern __at(0x0592) __sfr DAC2REF;
4563 
4564 //==============================================================================
4565 //        DAC3CON0 Bits
4566 
4567 extern __at(0x0593) __sfr DAC3CON0;
4568 
4569 typedef struct
4570   {
4571   unsigned                      : 1;
4572   unsigned                      : 1;
4573   unsigned                      : 1;
4574   unsigned                      : 1;
4575   unsigned DAC3OE2              : 1;
4576   unsigned DAC3OE1              : 1;
4577   unsigned                      : 1;
4578   unsigned DAC3EN               : 1;
4579   } __DAC3CON0bits_t;
4580 
4581 extern __at(0x0593) volatile __DAC3CON0bits_t DAC3CON0bits;
4582 
4583 #define _DAC3OE2                0x10
4584 #define _DAC3OE1                0x20
4585 #define _DAC3EN                 0x80
4586 
4587 //==============================================================================
4588 
4589 extern __at(0x0594) __sfr DAC3CON1;
4590 extern __at(0x0594) __sfr DAC3REF;
4591 
4592 //==============================================================================
4593 //        DAC4CON0 Bits
4594 
4595 extern __at(0x0595) __sfr DAC4CON0;
4596 
4597 typedef struct
4598   {
4599   unsigned                      : 1;
4600   unsigned                      : 1;
4601   unsigned                      : 1;
4602   unsigned                      : 1;
4603   unsigned DAC4OE2              : 1;
4604   unsigned DAC4OE1              : 1;
4605   unsigned                      : 1;
4606   unsigned DAC4EN               : 1;
4607   } __DAC4CON0bits_t;
4608 
4609 extern __at(0x0595) volatile __DAC4CON0bits_t DAC4CON0bits;
4610 
4611 #define _DAC4OE2                0x10
4612 #define _DAC4OE1                0x20
4613 #define _DAC4EN                 0x80
4614 
4615 //==============================================================================
4616 
4617 extern __at(0x0596) __sfr DAC4CON1;
4618 extern __at(0x0596) __sfr DAC4REF;
4619 
4620 //==============================================================================
4621 //        PSMC1CON Bits
4622 
4623 extern __at(0x0E91) __sfr PSMC1CON;
4624 
4625 typedef union
4626   {
4627   struct
4628     {
4629     unsigned P1MODE0            : 1;
4630     unsigned P1MODE1            : 1;
4631     unsigned P1MODE2            : 1;
4632     unsigned P1MODE3            : 1;
4633     unsigned P1DBRE             : 1;
4634     unsigned P1DBFE             : 1;
4635     unsigned PSMC1LD            : 1;
4636     unsigned PSMC1EN            : 1;
4637     };
4638 
4639   struct
4640     {
4641     unsigned P1MODE             : 4;
4642     unsigned                    : 4;
4643     };
4644   } __PSMC1CONbits_t;
4645 
4646 extern __at(0x0E91) volatile __PSMC1CONbits_t PSMC1CONbits;
4647 
4648 #define _P1MODE0                0x01
4649 #define _P1MODE1                0x02
4650 #define _P1MODE2                0x04
4651 #define _P1MODE3                0x08
4652 #define _P1DBRE                 0x10
4653 #define _P1DBFE                 0x20
4654 #define _PSMC1LD                0x40
4655 #define _PSMC1EN                0x80
4656 
4657 //==============================================================================
4658 
4659 
4660 //==============================================================================
4661 //        PSMC1MDL Bits
4662 
4663 extern __at(0x0E92) __sfr PSMC1MDL;
4664 
4665 typedef union
4666   {
4667   struct
4668     {
4669     unsigned P1MSRC0            : 1;
4670     unsigned P1MSRC1            : 1;
4671     unsigned P1MSRC2            : 1;
4672     unsigned P1MSRC3            : 1;
4673     unsigned                    : 1;
4674     unsigned P1MDLBIT           : 1;
4675     unsigned P1MDLPOL           : 1;
4676     unsigned P1MDLEN            : 1;
4677     };
4678 
4679   struct
4680     {
4681     unsigned P1MSRC             : 4;
4682     unsigned                    : 4;
4683     };
4684   } __PSMC1MDLbits_t;
4685 
4686 extern __at(0x0E92) volatile __PSMC1MDLbits_t PSMC1MDLbits;
4687 
4688 #define _P1MSRC0                0x01
4689 #define _P1MSRC1                0x02
4690 #define _P1MSRC2                0x04
4691 #define _P1MSRC3                0x08
4692 #define _P1MDLBIT               0x20
4693 #define _P1MDLPOL               0x40
4694 #define _P1MDLEN                0x80
4695 
4696 //==============================================================================
4697 
4698 
4699 //==============================================================================
4700 //        PSMC1SYNC Bits
4701 
4702 extern __at(0x0E93) __sfr PSMC1SYNC;
4703 
4704 typedef union
4705   {
4706   struct
4707     {
4708     unsigned P1SYNC0            : 1;
4709     unsigned P1SYNC1            : 1;
4710     unsigned P1SYNC2            : 1;
4711     unsigned                    : 1;
4712     unsigned                    : 1;
4713     unsigned P1DCPOL            : 1;
4714     unsigned P1PRPOL            : 1;
4715     unsigned P1POFST            : 1;
4716     };
4717 
4718   struct
4719     {
4720     unsigned P1SYNC             : 3;
4721     unsigned                    : 5;
4722     };
4723   } __PSMC1SYNCbits_t;
4724 
4725 extern __at(0x0E93) volatile __PSMC1SYNCbits_t PSMC1SYNCbits;
4726 
4727 #define _P1SYNC0                0x01
4728 #define _P1SYNC1                0x02
4729 #define _P1SYNC2                0x04
4730 #define _P1DCPOL                0x20
4731 #define _P1PRPOL                0x40
4732 #define _P1POFST                0x80
4733 
4734 //==============================================================================
4735 
4736 
4737 //==============================================================================
4738 //        PSMC1CLK Bits
4739 
4740 extern __at(0x0E94) __sfr PSMC1CLK;
4741 
4742 typedef union
4743   {
4744   struct
4745     {
4746     unsigned P1CSRC0            : 1;
4747     unsigned P1CSRC1            : 1;
4748     unsigned                    : 1;
4749     unsigned                    : 1;
4750     unsigned P1CPRE0            : 1;
4751     unsigned P1CPRE1            : 1;
4752     unsigned                    : 1;
4753     unsigned                    : 1;
4754     };
4755 
4756   struct
4757     {
4758     unsigned P1CSRC             : 2;
4759     unsigned                    : 6;
4760     };
4761 
4762   struct
4763     {
4764     unsigned                    : 4;
4765     unsigned P1CPRE             : 2;
4766     unsigned                    : 2;
4767     };
4768   } __PSMC1CLKbits_t;
4769 
4770 extern __at(0x0E94) volatile __PSMC1CLKbits_t PSMC1CLKbits;
4771 
4772 #define _P1CSRC0                0x01
4773 #define _P1CSRC1                0x02
4774 #define _P1CPRE0                0x10
4775 #define _P1CPRE1                0x20
4776 
4777 //==============================================================================
4778 
4779 
4780 //==============================================================================
4781 //        PSMC1OEN Bits
4782 
4783 extern __at(0x0E95) __sfr PSMC1OEN;
4784 
4785 typedef struct
4786   {
4787   unsigned P1OEA                : 1;
4788   unsigned P1OEB                : 1;
4789   unsigned P1OEC                : 1;
4790   unsigned P1OED                : 1;
4791   unsigned P1OEE                : 1;
4792   unsigned P1OEF                : 1;
4793   unsigned                      : 1;
4794   unsigned                      : 1;
4795   } __PSMC1OENbits_t;
4796 
4797 extern __at(0x0E95) volatile __PSMC1OENbits_t PSMC1OENbits;
4798 
4799 #define _P1OEA                  0x01
4800 #define _P1OEB                  0x02
4801 #define _P1OEC                  0x04
4802 #define _P1OED                  0x08
4803 #define _P1OEE                  0x10
4804 #define _P1OEF                  0x20
4805 
4806 //==============================================================================
4807 
4808 
4809 //==============================================================================
4810 //        PSMC1POL Bits
4811 
4812 extern __at(0x0E96) __sfr PSMC1POL;
4813 
4814 typedef struct
4815   {
4816   unsigned P1POLA               : 1;
4817   unsigned P1POLB               : 1;
4818   unsigned P1POLC               : 1;
4819   unsigned P1POLD               : 1;
4820   unsigned P1POLE               : 1;
4821   unsigned P1POLF               : 1;
4822   unsigned P1INPOL              : 1;
4823   unsigned                      : 1;
4824   } __PSMC1POLbits_t;
4825 
4826 extern __at(0x0E96) volatile __PSMC1POLbits_t PSMC1POLbits;
4827 
4828 #define _P1POLA                 0x01
4829 #define _P1POLB                 0x02
4830 #define _P1POLC                 0x04
4831 #define _P1POLD                 0x08
4832 #define _P1POLE                 0x10
4833 #define _P1POLF                 0x20
4834 #define _P1INPOL                0x40
4835 
4836 //==============================================================================
4837 
4838 
4839 //==============================================================================
4840 //        PSMC1BLNK Bits
4841 
4842 extern __at(0x0E97) __sfr PSMC1BLNK;
4843 
4844 typedef union
4845   {
4846   struct
4847     {
4848     unsigned P1REBM0            : 1;
4849     unsigned P1REBM1            : 1;
4850     unsigned                    : 1;
4851     unsigned                    : 1;
4852     unsigned P1FEBM0            : 1;
4853     unsigned P1FEBM1            : 1;
4854     unsigned                    : 1;
4855     unsigned                    : 1;
4856     };
4857 
4858   struct
4859     {
4860     unsigned P1REBM             : 2;
4861     unsigned                    : 6;
4862     };
4863 
4864   struct
4865     {
4866     unsigned                    : 4;
4867     unsigned P1FEBM             : 2;
4868     unsigned                    : 2;
4869     };
4870   } __PSMC1BLNKbits_t;
4871 
4872 extern __at(0x0E97) volatile __PSMC1BLNKbits_t PSMC1BLNKbits;
4873 
4874 #define _P1REBM0                0x01
4875 #define _P1REBM1                0x02
4876 #define _P1FEBM0                0x10
4877 #define _P1FEBM1                0x20
4878 
4879 //==============================================================================
4880 
4881 
4882 //==============================================================================
4883 //        PSMC1REBS Bits
4884 
4885 extern __at(0x0E98) __sfr PSMC1REBS;
4886 
4887 typedef struct
4888   {
4889   unsigned                      : 1;
4890   unsigned P1REBSC1             : 1;
4891   unsigned P1REBSC2             : 1;
4892   unsigned P1REBSC3             : 1;
4893   unsigned P1REBSC4             : 1;
4894   unsigned                      : 1;
4895   unsigned                      : 1;
4896   unsigned P1REBSIN             : 1;
4897   } __PSMC1REBSbits_t;
4898 
4899 extern __at(0x0E98) volatile __PSMC1REBSbits_t PSMC1REBSbits;
4900 
4901 #define _P1REBSC1               0x02
4902 #define _P1REBSC2               0x04
4903 #define _P1REBSC3               0x08
4904 #define _P1REBSC4               0x10
4905 #define _P1REBSIN               0x80
4906 
4907 //==============================================================================
4908 
4909 
4910 //==============================================================================
4911 //        PSMC1FEBS Bits
4912 
4913 extern __at(0x0E99) __sfr PSMC1FEBS;
4914 
4915 typedef struct
4916   {
4917   unsigned                      : 1;
4918   unsigned P1FEBSC1             : 1;
4919   unsigned P1FEBSC2             : 1;
4920   unsigned P1FEBSC3             : 1;
4921   unsigned P1FEBSC4             : 1;
4922   unsigned                      : 1;
4923   unsigned                      : 1;
4924   unsigned P1FEBSIN             : 1;
4925   } __PSMC1FEBSbits_t;
4926 
4927 extern __at(0x0E99) volatile __PSMC1FEBSbits_t PSMC1FEBSbits;
4928 
4929 #define _P1FEBSC1               0x02
4930 #define _P1FEBSC2               0x04
4931 #define _P1FEBSC3               0x08
4932 #define _P1FEBSC4               0x10
4933 #define _P1FEBSIN               0x80
4934 
4935 //==============================================================================
4936 
4937 
4938 //==============================================================================
4939 //        PSMC1PHS Bits
4940 
4941 extern __at(0x0E9A) __sfr PSMC1PHS;
4942 
4943 typedef struct
4944   {
4945   unsigned P1PHST               : 1;
4946   unsigned P1PHSC1              : 1;
4947   unsigned P1PHSC2              : 1;
4948   unsigned P1PHSC3              : 1;
4949   unsigned P1PHSC4              : 1;
4950   unsigned                      : 1;
4951   unsigned                      : 1;
4952   unsigned P1PHSIN              : 1;
4953   } __PSMC1PHSbits_t;
4954 
4955 extern __at(0x0E9A) volatile __PSMC1PHSbits_t PSMC1PHSbits;
4956 
4957 #define _P1PHST                 0x01
4958 #define _P1PHSC1                0x02
4959 #define _P1PHSC2                0x04
4960 #define _P1PHSC3                0x08
4961 #define _P1PHSC4                0x10
4962 #define _P1PHSIN                0x80
4963 
4964 //==============================================================================
4965 
4966 
4967 //==============================================================================
4968 //        PSMC1DCS Bits
4969 
4970 extern __at(0x0E9B) __sfr PSMC1DCS;
4971 
4972 typedef struct
4973   {
4974   unsigned P1DCST               : 1;
4975   unsigned P1DCSC1              : 1;
4976   unsigned P1DCSC2              : 1;
4977   unsigned P1DCSC3              : 1;
4978   unsigned P1DCSC4              : 1;
4979   unsigned                      : 1;
4980   unsigned                      : 1;
4981   unsigned P1DCSIN              : 1;
4982   } __PSMC1DCSbits_t;
4983 
4984 extern __at(0x0E9B) volatile __PSMC1DCSbits_t PSMC1DCSbits;
4985 
4986 #define _P1DCST                 0x01
4987 #define _P1DCSC1                0x02
4988 #define _P1DCSC2                0x04
4989 #define _P1DCSC3                0x08
4990 #define _P1DCSC4                0x10
4991 #define _P1DCSIN                0x80
4992 
4993 //==============================================================================
4994 
4995 
4996 //==============================================================================
4997 //        PSMC1PRS Bits
4998 
4999 extern __at(0x0E9C) __sfr PSMC1PRS;
5000 
5001 typedef struct
5002   {
5003   unsigned P1PRST               : 1;
5004   unsigned P1PRSC1              : 1;
5005   unsigned P1PRSC2              : 1;
5006   unsigned P1PRSC3              : 1;
5007   unsigned P1PRSC4              : 1;
5008   unsigned                      : 1;
5009   unsigned                      : 1;
5010   unsigned P1PRSIN              : 1;
5011   } __PSMC1PRSbits_t;
5012 
5013 extern __at(0x0E9C) volatile __PSMC1PRSbits_t PSMC1PRSbits;
5014 
5015 #define _P1PRST                 0x01
5016 #define _P1PRSC1                0x02
5017 #define _P1PRSC2                0x04
5018 #define _P1PRSC3                0x08
5019 #define _P1PRSC4                0x10
5020 #define _P1PRSIN                0x80
5021 
5022 //==============================================================================
5023 
5024 
5025 //==============================================================================
5026 //        PSMC1ASDC Bits
5027 
5028 extern __at(0x0E9D) __sfr PSMC1ASDC;
5029 
5030 typedef struct
5031   {
5032   unsigned P1ASDOV              : 1;
5033   unsigned                      : 1;
5034   unsigned                      : 1;
5035   unsigned                      : 1;
5036   unsigned                      : 1;
5037   unsigned P1ARSEN              : 1;
5038   unsigned P1ASDEN              : 1;
5039   unsigned P1ASE                : 1;
5040   } __PSMC1ASDCbits_t;
5041 
5042 extern __at(0x0E9D) volatile __PSMC1ASDCbits_t PSMC1ASDCbits;
5043 
5044 #define _P1ASDOV                0x01
5045 #define _P1ARSEN                0x20
5046 #define _P1ASDEN                0x40
5047 #define _P1ASE                  0x80
5048 
5049 //==============================================================================
5050 
5051 
5052 //==============================================================================
5053 //        PSMC1ASDL Bits
5054 
5055 extern __at(0x0E9E) __sfr PSMC1ASDL;
5056 
5057 typedef struct
5058   {
5059   unsigned P1ASDLA              : 1;
5060   unsigned P1ASDLB              : 1;
5061   unsigned P1ASDLC              : 1;
5062   unsigned P1ASDLD              : 1;
5063   unsigned P1ASDLE              : 1;
5064   unsigned P1ASDLF              : 1;
5065   unsigned                      : 1;
5066   unsigned                      : 1;
5067   } __PSMC1ASDLbits_t;
5068 
5069 extern __at(0x0E9E) volatile __PSMC1ASDLbits_t PSMC1ASDLbits;
5070 
5071 #define _P1ASDLA                0x01
5072 #define _P1ASDLB                0x02
5073 #define _P1ASDLC                0x04
5074 #define _P1ASDLD                0x08
5075 #define _P1ASDLE                0x10
5076 #define _P1ASDLF                0x20
5077 
5078 //==============================================================================
5079 
5080 
5081 //==============================================================================
5082 //        PSMC1ASDS Bits
5083 
5084 extern __at(0x0E9F) __sfr PSMC1ASDS;
5085 
5086 typedef struct
5087   {
5088   unsigned                      : 1;
5089   unsigned P1ASDSC1             : 1;
5090   unsigned P1ASDSC2             : 1;
5091   unsigned P1ASDSC3             : 1;
5092   unsigned P1ASDSC4             : 1;
5093   unsigned                      : 1;
5094   unsigned                      : 1;
5095   unsigned P1ASDSIN             : 1;
5096   } __PSMC1ASDSbits_t;
5097 
5098 extern __at(0x0E9F) volatile __PSMC1ASDSbits_t PSMC1ASDSbits;
5099 
5100 #define _P1ASDSC1               0x02
5101 #define _P1ASDSC2               0x04
5102 #define _P1ASDSC3               0x08
5103 #define _P1ASDSC4               0x10
5104 #define _P1ASDSIN               0x80
5105 
5106 //==============================================================================
5107 
5108 
5109 //==============================================================================
5110 //        PSMC1INT Bits
5111 
5112 extern __at(0x0EA0) __sfr PSMC1INT;
5113 
5114 typedef struct
5115   {
5116   unsigned P1TPRIF              : 1;
5117   unsigned P1TDCIF              : 1;
5118   unsigned P1TPHIF              : 1;
5119   unsigned P1TOVIF              : 1;
5120   unsigned P1TPRIE              : 1;
5121   unsigned P1TDCIE              : 1;
5122   unsigned P1TPHIE              : 1;
5123   unsigned P1TOVIE              : 1;
5124   } __PSMC1INTbits_t;
5125 
5126 extern __at(0x0EA0) volatile __PSMC1INTbits_t PSMC1INTbits;
5127 
5128 #define _P1TPRIF                0x01
5129 #define _P1TDCIF                0x02
5130 #define _P1TPHIF                0x04
5131 #define _P1TOVIF                0x08
5132 #define _P1TPRIE                0x10
5133 #define _P1TDCIE                0x20
5134 #define _P1TPHIE                0x40
5135 #define _P1TOVIE                0x80
5136 
5137 //==============================================================================
5138 
5139 extern __at(0x0EA1) __sfr PSMC1PH;
5140 
5141 //==============================================================================
5142 //        PSMC1PHL Bits
5143 
5144 extern __at(0x0EA1) __sfr PSMC1PHL;
5145 
5146 typedef struct
5147   {
5148   unsigned PSMC1PH0             : 1;
5149   unsigned PSMC1PH1             : 1;
5150   unsigned PSMC1PH2             : 1;
5151   unsigned PSMC1PH3             : 1;
5152   unsigned PSMC1PH4             : 1;
5153   unsigned PSMC1PH5             : 1;
5154   unsigned PSMC1PH6             : 1;
5155   unsigned PSMC1PH7             : 1;
5156   } __PSMC1PHLbits_t;
5157 
5158 extern __at(0x0EA1) volatile __PSMC1PHLbits_t PSMC1PHLbits;
5159 
5160 #define _PSMC1PH0               0x01
5161 #define _PSMC1PH1               0x02
5162 #define _PSMC1PH2               0x04
5163 #define _PSMC1PH3               0x08
5164 #define _PSMC1PH4               0x10
5165 #define _PSMC1PH5               0x20
5166 #define _PSMC1PH6               0x40
5167 #define _PSMC1PH7               0x80
5168 
5169 //==============================================================================
5170 
5171 
5172 //==============================================================================
5173 //        PSMC1PHH Bits
5174 
5175 extern __at(0x0EA2) __sfr PSMC1PHH;
5176 
5177 typedef struct
5178   {
5179   unsigned PSMC1PH8             : 1;
5180   unsigned PSMC1PH9             : 1;
5181   unsigned PSMC1PH10            : 1;
5182   unsigned PSMC1PH11            : 1;
5183   unsigned PSMC1PH12            : 1;
5184   unsigned PSMC1PH13            : 1;
5185   unsigned PSMC1PH14            : 1;
5186   unsigned PSMC1PH15            : 1;
5187   } __PSMC1PHHbits_t;
5188 
5189 extern __at(0x0EA2) volatile __PSMC1PHHbits_t PSMC1PHHbits;
5190 
5191 #define _PSMC1PH8               0x01
5192 #define _PSMC1PH9               0x02
5193 #define _PSMC1PH10              0x04
5194 #define _PSMC1PH11              0x08
5195 #define _PSMC1PH12              0x10
5196 #define _PSMC1PH13              0x20
5197 #define _PSMC1PH14              0x40
5198 #define _PSMC1PH15              0x80
5199 
5200 //==============================================================================
5201 
5202 extern __at(0x0EA3) __sfr PSMC1DC;
5203 
5204 //==============================================================================
5205 //        PSMC1DCL Bits
5206 
5207 extern __at(0x0EA3) __sfr PSMC1DCL;
5208 
5209 typedef struct
5210   {
5211   unsigned PSMC1DC0             : 1;
5212   unsigned PSMC1DC1             : 1;
5213   unsigned PSMC1DC2             : 1;
5214   unsigned PSMC1DC3             : 1;
5215   unsigned PSMC1DC4             : 1;
5216   unsigned PSMC1DC5             : 1;
5217   unsigned PSMC1DC6             : 1;
5218   unsigned PSMC1DC7             : 1;
5219   } __PSMC1DCLbits_t;
5220 
5221 extern __at(0x0EA3) volatile __PSMC1DCLbits_t PSMC1DCLbits;
5222 
5223 #define _PSMC1DC0               0x01
5224 #define _PSMC1DC1               0x02
5225 #define _PSMC1DC2               0x04
5226 #define _PSMC1DC3               0x08
5227 #define _PSMC1DC4               0x10
5228 #define _PSMC1DC5               0x20
5229 #define _PSMC1DC6               0x40
5230 #define _PSMC1DC7               0x80
5231 
5232 //==============================================================================
5233 
5234 
5235 //==============================================================================
5236 //        PSMC1DCH Bits
5237 
5238 extern __at(0x0EA4) __sfr PSMC1DCH;
5239 
5240 typedef struct
5241   {
5242   unsigned PSMC1DC8             : 1;
5243   unsigned PSMC1DC9             : 1;
5244   unsigned PSMC1DC10            : 1;
5245   unsigned PSMC1DC11            : 1;
5246   unsigned PSMC1DC12            : 1;
5247   unsigned PSMC1DC13            : 1;
5248   unsigned PSMC1DC14            : 1;
5249   unsigned PSMC1DC15            : 1;
5250   } __PSMC1DCHbits_t;
5251 
5252 extern __at(0x0EA4) volatile __PSMC1DCHbits_t PSMC1DCHbits;
5253 
5254 #define _PSMC1DC8               0x01
5255 #define _PSMC1DC9               0x02
5256 #define _PSMC1DC10              0x04
5257 #define _PSMC1DC11              0x08
5258 #define _PSMC1DC12              0x10
5259 #define _PSMC1DC13              0x20
5260 #define _PSMC1DC14              0x40
5261 #define _PSMC1DC15              0x80
5262 
5263 //==============================================================================
5264 
5265 extern __at(0x0EA5) __sfr PSMC1PR;
5266 
5267 //==============================================================================
5268 //        PSMC1PRL Bits
5269 
5270 extern __at(0x0EA5) __sfr PSMC1PRL;
5271 
5272 typedef struct
5273   {
5274   unsigned PSMC1PR0             : 1;
5275   unsigned PSMC1PR1             : 1;
5276   unsigned PSMC1PR2             : 1;
5277   unsigned PSMC1PR3             : 1;
5278   unsigned PSMC1PR4             : 1;
5279   unsigned PSMC1PR5             : 1;
5280   unsigned PSMC1PR6             : 1;
5281   unsigned PSMC1PR7             : 1;
5282   } __PSMC1PRLbits_t;
5283 
5284 extern __at(0x0EA5) volatile __PSMC1PRLbits_t PSMC1PRLbits;
5285 
5286 #define _PSMC1PR0               0x01
5287 #define _PSMC1PR1               0x02
5288 #define _PSMC1PR2               0x04
5289 #define _PSMC1PR3               0x08
5290 #define _PSMC1PR4               0x10
5291 #define _PSMC1PR5               0x20
5292 #define _PSMC1PR6               0x40
5293 #define _PSMC1PR7               0x80
5294 
5295 //==============================================================================
5296 
5297 
5298 //==============================================================================
5299 //        PSMC1PRH Bits
5300 
5301 extern __at(0x0EA6) __sfr PSMC1PRH;
5302 
5303 typedef struct
5304   {
5305   unsigned PSMC1PR8             : 1;
5306   unsigned PSMC1PR9             : 1;
5307   unsigned PSMC1PR10            : 1;
5308   unsigned PSMC1PR11            : 1;
5309   unsigned PSMC1PR12            : 1;
5310   unsigned PSMC1PR13            : 1;
5311   unsigned PSMC1PR14            : 1;
5312   unsigned PSMC1PR15            : 1;
5313   } __PSMC1PRHbits_t;
5314 
5315 extern __at(0x0EA6) volatile __PSMC1PRHbits_t PSMC1PRHbits;
5316 
5317 #define _PSMC1PR8               0x01
5318 #define _PSMC1PR9               0x02
5319 #define _PSMC1PR10              0x04
5320 #define _PSMC1PR11              0x08
5321 #define _PSMC1PR12              0x10
5322 #define _PSMC1PR13              0x20
5323 #define _PSMC1PR14              0x40
5324 #define _PSMC1PR15              0x80
5325 
5326 //==============================================================================
5327 
5328 extern __at(0x0EA7) __sfr PSMC1TMR;
5329 
5330 //==============================================================================
5331 //        PSMC1TMRL Bits
5332 
5333 extern __at(0x0EA7) __sfr PSMC1TMRL;
5334 
5335 typedef struct
5336   {
5337   unsigned PSMC1TMR0            : 1;
5338   unsigned PSMC1TMR1            : 1;
5339   unsigned PSMC1TMR2            : 1;
5340   unsigned PSMC1TMR3            : 1;
5341   unsigned PSMC1TMR4            : 1;
5342   unsigned PSMC1TMR5            : 1;
5343   unsigned PSMC1TMR6            : 1;
5344   unsigned PSMC1TMR7            : 1;
5345   } __PSMC1TMRLbits_t;
5346 
5347 extern __at(0x0EA7) volatile __PSMC1TMRLbits_t PSMC1TMRLbits;
5348 
5349 #define _PSMC1TMR0              0x01
5350 #define _PSMC1TMR1              0x02
5351 #define _PSMC1TMR2              0x04
5352 #define _PSMC1TMR3              0x08
5353 #define _PSMC1TMR4              0x10
5354 #define _PSMC1TMR5              0x20
5355 #define _PSMC1TMR6              0x40
5356 #define _PSMC1TMR7              0x80
5357 
5358 //==============================================================================
5359 
5360 
5361 //==============================================================================
5362 //        PSMC1TMRH Bits
5363 
5364 extern __at(0x0EA8) __sfr PSMC1TMRH;
5365 
5366 typedef struct
5367   {
5368   unsigned PSMC1TMR8            : 1;
5369   unsigned PSMC1TMR9            : 1;
5370   unsigned PSMC1TMR10           : 1;
5371   unsigned PSMC1TMR11           : 1;
5372   unsigned PSMC1TMR12           : 1;
5373   unsigned PSMC1TMR13           : 1;
5374   unsigned PSMC1TMR14           : 1;
5375   unsigned PSMC1TMR15           : 1;
5376   } __PSMC1TMRHbits_t;
5377 
5378 extern __at(0x0EA8) volatile __PSMC1TMRHbits_t PSMC1TMRHbits;
5379 
5380 #define _PSMC1TMR8              0x01
5381 #define _PSMC1TMR9              0x02
5382 #define _PSMC1TMR10             0x04
5383 #define _PSMC1TMR11             0x08
5384 #define _PSMC1TMR12             0x10
5385 #define _PSMC1TMR13             0x20
5386 #define _PSMC1TMR14             0x40
5387 #define _PSMC1TMR15             0x80
5388 
5389 //==============================================================================
5390 
5391 
5392 //==============================================================================
5393 //        PSMC1DBR Bits
5394 
5395 extern __at(0x0EA9) __sfr PSMC1DBR;
5396 
5397 typedef struct
5398   {
5399   unsigned PSMC1DBR0            : 1;
5400   unsigned PSMC1DBR1            : 1;
5401   unsigned PSMC1DBR2            : 1;
5402   unsigned PSMC1DBR3            : 1;
5403   unsigned PSMC1DBR4            : 1;
5404   unsigned PSMC1DBR5            : 1;
5405   unsigned PSMC1DBR6            : 1;
5406   unsigned PSMC1DBR7            : 1;
5407   } __PSMC1DBRbits_t;
5408 
5409 extern __at(0x0EA9) volatile __PSMC1DBRbits_t PSMC1DBRbits;
5410 
5411 #define _PSMC1DBR0              0x01
5412 #define _PSMC1DBR1              0x02
5413 #define _PSMC1DBR2              0x04
5414 #define _PSMC1DBR3              0x08
5415 #define _PSMC1DBR4              0x10
5416 #define _PSMC1DBR5              0x20
5417 #define _PSMC1DBR6              0x40
5418 #define _PSMC1DBR7              0x80
5419 
5420 //==============================================================================
5421 
5422 
5423 //==============================================================================
5424 //        PSMC1DBF Bits
5425 
5426 extern __at(0x0EAA) __sfr PSMC1DBF;
5427 
5428 typedef struct
5429   {
5430   unsigned PSMC1DBF0            : 1;
5431   unsigned PSMC1DBF1            : 1;
5432   unsigned PSMC1DBF2            : 1;
5433   unsigned PSMC1DBF3            : 1;
5434   unsigned PSMC1DBF4            : 1;
5435   unsigned PSMC1DBF5            : 1;
5436   unsigned PSMC1DBF6            : 1;
5437   unsigned PSMC1DBF7            : 1;
5438   } __PSMC1DBFbits_t;
5439 
5440 extern __at(0x0EAA) volatile __PSMC1DBFbits_t PSMC1DBFbits;
5441 
5442 #define _PSMC1DBF0              0x01
5443 #define _PSMC1DBF1              0x02
5444 #define _PSMC1DBF2              0x04
5445 #define _PSMC1DBF3              0x08
5446 #define _PSMC1DBF4              0x10
5447 #define _PSMC1DBF5              0x20
5448 #define _PSMC1DBF6              0x40
5449 #define _PSMC1DBF7              0x80
5450 
5451 //==============================================================================
5452 
5453 
5454 //==============================================================================
5455 //        PSMC1BLKR Bits
5456 
5457 extern __at(0x0EAB) __sfr PSMC1BLKR;
5458 
5459 typedef struct
5460   {
5461   unsigned PSMC1BLKR0           : 1;
5462   unsigned PSMC1BLKR1           : 1;
5463   unsigned PSMC1BLKR2           : 1;
5464   unsigned PSMC1BLKR3           : 1;
5465   unsigned PSMC1BLKR4           : 1;
5466   unsigned PSMC1BLKR5           : 1;
5467   unsigned PSMC1BLKR6           : 1;
5468   unsigned PSMC1BLKR7           : 1;
5469   } __PSMC1BLKRbits_t;
5470 
5471 extern __at(0x0EAB) volatile __PSMC1BLKRbits_t PSMC1BLKRbits;
5472 
5473 #define _PSMC1BLKR0             0x01
5474 #define _PSMC1BLKR1             0x02
5475 #define _PSMC1BLKR2             0x04
5476 #define _PSMC1BLKR3             0x08
5477 #define _PSMC1BLKR4             0x10
5478 #define _PSMC1BLKR5             0x20
5479 #define _PSMC1BLKR6             0x40
5480 #define _PSMC1BLKR7             0x80
5481 
5482 //==============================================================================
5483 
5484 
5485 //==============================================================================
5486 //        PSMC1BLKF Bits
5487 
5488 extern __at(0x0EAC) __sfr PSMC1BLKF;
5489 
5490 typedef struct
5491   {
5492   unsigned PSMC1BLKF0           : 1;
5493   unsigned PSMC1BLKF1           : 1;
5494   unsigned PSMC1BLKF2           : 1;
5495   unsigned PSMC1BLKF3           : 1;
5496   unsigned PSMC1BLKF4           : 1;
5497   unsigned PSMC1BLKF5           : 1;
5498   unsigned PSMC1BLKF6           : 1;
5499   unsigned PSMC1BLKF7           : 1;
5500   } __PSMC1BLKFbits_t;
5501 
5502 extern __at(0x0EAC) volatile __PSMC1BLKFbits_t PSMC1BLKFbits;
5503 
5504 #define _PSMC1BLKF0             0x01
5505 #define _PSMC1BLKF1             0x02
5506 #define _PSMC1BLKF2             0x04
5507 #define _PSMC1BLKF3             0x08
5508 #define _PSMC1BLKF4             0x10
5509 #define _PSMC1BLKF5             0x20
5510 #define _PSMC1BLKF6             0x40
5511 #define _PSMC1BLKF7             0x80
5512 
5513 //==============================================================================
5514 
5515 
5516 //==============================================================================
5517 //        PSMC1FFA Bits
5518 
5519 extern __at(0x0EAD) __sfr PSMC1FFA;
5520 
5521 typedef union
5522   {
5523   struct
5524     {
5525     unsigned PSMC1FFA0          : 1;
5526     unsigned PSMC1FFA1          : 1;
5527     unsigned PSMC1FFA2          : 1;
5528     unsigned PSMC1FFA3          : 1;
5529     unsigned                    : 1;
5530     unsigned                    : 1;
5531     unsigned                    : 1;
5532     unsigned                    : 1;
5533     };
5534 
5535   struct
5536     {
5537     unsigned PSMC1FFA           : 4;
5538     unsigned                    : 4;
5539     };
5540   } __PSMC1FFAbits_t;
5541 
5542 extern __at(0x0EAD) volatile __PSMC1FFAbits_t PSMC1FFAbits;
5543 
5544 #define _PSMC1FFA0              0x01
5545 #define _PSMC1FFA1              0x02
5546 #define _PSMC1FFA2              0x04
5547 #define _PSMC1FFA3              0x08
5548 
5549 //==============================================================================
5550 
5551 
5552 //==============================================================================
5553 //        PSMC1STR0 Bits
5554 
5555 extern __at(0x0EAE) __sfr PSMC1STR0;
5556 
5557 typedef struct
5558   {
5559   unsigned P1STRA               : 1;
5560   unsigned P1STRB               : 1;
5561   unsigned P1STRC               : 1;
5562   unsigned P1STRD               : 1;
5563   unsigned P1STRE               : 1;
5564   unsigned P1STRF               : 1;
5565   unsigned                      : 1;
5566   unsigned                      : 1;
5567   } __PSMC1STR0bits_t;
5568 
5569 extern __at(0x0EAE) volatile __PSMC1STR0bits_t PSMC1STR0bits;
5570 
5571 #define _P1STRA                 0x01
5572 #define _P1STRB                 0x02
5573 #define _P1STRC                 0x04
5574 #define _P1STRD                 0x08
5575 #define _P1STRE                 0x10
5576 #define _P1STRF                 0x20
5577 
5578 //==============================================================================
5579 
5580 
5581 //==============================================================================
5582 //        PSMC1STR1 Bits
5583 
5584 extern __at(0x0EAF) __sfr PSMC1STR1;
5585 
5586 typedef struct
5587   {
5588   unsigned P1HSMEN              : 1;
5589   unsigned P1LSMEN              : 1;
5590   unsigned                      : 1;
5591   unsigned                      : 1;
5592   unsigned                      : 1;
5593   unsigned                      : 1;
5594   unsigned                      : 1;
5595   unsigned P1SSYNC              : 1;
5596   } __PSMC1STR1bits_t;
5597 
5598 extern __at(0x0EAF) volatile __PSMC1STR1bits_t PSMC1STR1bits;
5599 
5600 #define _P1HSMEN                0x01
5601 #define _P1LSMEN                0x02
5602 #define _P1SSYNC                0x80
5603 
5604 //==============================================================================
5605 
5606 
5607 //==============================================================================
5608 //        PSMC2CON Bits
5609 
5610 extern __at(0x0EB1) __sfr PSMC2CON;
5611 
5612 typedef union
5613   {
5614   struct
5615     {
5616     unsigned P2MODE0            : 1;
5617     unsigned P2MODE1            : 1;
5618     unsigned P2MODE2            : 1;
5619     unsigned P2MODE3            : 1;
5620     unsigned P2DBRE             : 1;
5621     unsigned P2DBFE             : 1;
5622     unsigned PSMC2LD            : 1;
5623     unsigned PSMC2EN            : 1;
5624     };
5625 
5626   struct
5627     {
5628     unsigned P2MODE             : 4;
5629     unsigned                    : 4;
5630     };
5631   } __PSMC2CONbits_t;
5632 
5633 extern __at(0x0EB1) volatile __PSMC2CONbits_t PSMC2CONbits;
5634 
5635 #define _P2MODE0                0x01
5636 #define _P2MODE1                0x02
5637 #define _P2MODE2                0x04
5638 #define _P2MODE3                0x08
5639 #define _P2DBRE                 0x10
5640 #define _P2DBFE                 0x20
5641 #define _PSMC2LD                0x40
5642 #define _PSMC2EN                0x80
5643 
5644 //==============================================================================
5645 
5646 
5647 //==============================================================================
5648 //        PSMC2MDL Bits
5649 
5650 extern __at(0x0EB2) __sfr PSMC2MDL;
5651 
5652 typedef union
5653   {
5654   struct
5655     {
5656     unsigned P2MSRC0            : 1;
5657     unsigned P2MSRC1            : 1;
5658     unsigned P2MSRC2            : 1;
5659     unsigned P2MSRC3            : 1;
5660     unsigned                    : 1;
5661     unsigned P2MDLBIT           : 1;
5662     unsigned P2MDLPOL           : 1;
5663     unsigned P2MDLEN            : 1;
5664     };
5665 
5666   struct
5667     {
5668     unsigned P2MSRC             : 4;
5669     unsigned                    : 4;
5670     };
5671   } __PSMC2MDLbits_t;
5672 
5673 extern __at(0x0EB2) volatile __PSMC2MDLbits_t PSMC2MDLbits;
5674 
5675 #define _P2MSRC0                0x01
5676 #define _P2MSRC1                0x02
5677 #define _P2MSRC2                0x04
5678 #define _P2MSRC3                0x08
5679 #define _P2MDLBIT               0x20
5680 #define _P2MDLPOL               0x40
5681 #define _P2MDLEN                0x80
5682 
5683 //==============================================================================
5684 
5685 
5686 //==============================================================================
5687 //        PSMC2SYNC Bits
5688 
5689 extern __at(0x0EB3) __sfr PSMC2SYNC;
5690 
5691 typedef union
5692   {
5693   struct
5694     {
5695     unsigned P2SYNC0            : 1;
5696     unsigned P2SYNC1            : 1;
5697     unsigned P2SYNC2            : 1;
5698     unsigned                    : 1;
5699     unsigned                    : 1;
5700     unsigned P2DCPOL            : 1;
5701     unsigned P2PRPOL            : 1;
5702     unsigned P2POFST            : 1;
5703     };
5704 
5705   struct
5706     {
5707     unsigned P2SYNC             : 3;
5708     unsigned                    : 5;
5709     };
5710   } __PSMC2SYNCbits_t;
5711 
5712 extern __at(0x0EB3) volatile __PSMC2SYNCbits_t PSMC2SYNCbits;
5713 
5714 #define _P2SYNC0                0x01
5715 #define _P2SYNC1                0x02
5716 #define _P2SYNC2                0x04
5717 #define _P2DCPOL                0x20
5718 #define _P2PRPOL                0x40
5719 #define _P2POFST                0x80
5720 
5721 //==============================================================================
5722 
5723 
5724 //==============================================================================
5725 //        PSMC2CLK Bits
5726 
5727 extern __at(0x0EB4) __sfr PSMC2CLK;
5728 
5729 typedef union
5730   {
5731   struct
5732     {
5733     unsigned P2CSRC0            : 1;
5734     unsigned P2CSRC1            : 1;
5735     unsigned                    : 1;
5736     unsigned                    : 1;
5737     unsigned P2CPRE0            : 1;
5738     unsigned P2CPRE1            : 1;
5739     unsigned                    : 1;
5740     unsigned                    : 1;
5741     };
5742 
5743   struct
5744     {
5745     unsigned P2CSRC             : 2;
5746     unsigned                    : 6;
5747     };
5748 
5749   struct
5750     {
5751     unsigned                    : 4;
5752     unsigned P2CPRE             : 2;
5753     unsigned                    : 2;
5754     };
5755   } __PSMC2CLKbits_t;
5756 
5757 extern __at(0x0EB4) volatile __PSMC2CLKbits_t PSMC2CLKbits;
5758 
5759 #define _P2CSRC0                0x01
5760 #define _P2CSRC1                0x02
5761 #define _P2CPRE0                0x10
5762 #define _P2CPRE1                0x20
5763 
5764 //==============================================================================
5765 
5766 
5767 //==============================================================================
5768 //        PSMC2OEN Bits
5769 
5770 extern __at(0x0EB5) __sfr PSMC2OEN;
5771 
5772 typedef struct
5773   {
5774   unsigned P2OEA                : 1;
5775   unsigned P2OEB                : 1;
5776   unsigned                      : 1;
5777   unsigned                      : 1;
5778   unsigned                      : 1;
5779   unsigned                      : 1;
5780   unsigned                      : 1;
5781   unsigned                      : 1;
5782   } __PSMC2OENbits_t;
5783 
5784 extern __at(0x0EB5) volatile __PSMC2OENbits_t PSMC2OENbits;
5785 
5786 #define _P2OEA                  0x01
5787 #define _P2OEB                  0x02
5788 
5789 //==============================================================================
5790 
5791 
5792 //==============================================================================
5793 //        PSMC2POL Bits
5794 
5795 extern __at(0x0EB6) __sfr PSMC2POL;
5796 
5797 typedef struct
5798   {
5799   unsigned P2POLA               : 1;
5800   unsigned P2POLB               : 1;
5801   unsigned                      : 1;
5802   unsigned                      : 1;
5803   unsigned                      : 1;
5804   unsigned                      : 1;
5805   unsigned P2INPOL              : 1;
5806   unsigned                      : 1;
5807   } __PSMC2POLbits_t;
5808 
5809 extern __at(0x0EB6) volatile __PSMC2POLbits_t PSMC2POLbits;
5810 
5811 #define _P2POLA                 0x01
5812 #define _P2POLB                 0x02
5813 #define _P2INPOL                0x40
5814 
5815 //==============================================================================
5816 
5817 
5818 //==============================================================================
5819 //        PSMC2BLNK Bits
5820 
5821 extern __at(0x0EB7) __sfr PSMC2BLNK;
5822 
5823 typedef union
5824   {
5825   struct
5826     {
5827     unsigned P2REBM0            : 1;
5828     unsigned P2REBM1            : 1;
5829     unsigned                    : 1;
5830     unsigned                    : 1;
5831     unsigned P2FEBM0            : 1;
5832     unsigned P2FEBM1            : 1;
5833     unsigned                    : 1;
5834     unsigned                    : 1;
5835     };
5836 
5837   struct
5838     {
5839     unsigned P2REBM             : 2;
5840     unsigned                    : 6;
5841     };
5842 
5843   struct
5844     {
5845     unsigned                    : 4;
5846     unsigned P2FEBM             : 2;
5847     unsigned                    : 2;
5848     };
5849   } __PSMC2BLNKbits_t;
5850 
5851 extern __at(0x0EB7) volatile __PSMC2BLNKbits_t PSMC2BLNKbits;
5852 
5853 #define _P2REBM0                0x01
5854 #define _P2REBM1                0x02
5855 #define _P2FEBM0                0x10
5856 #define _P2FEBM1                0x20
5857 
5858 //==============================================================================
5859 
5860 
5861 //==============================================================================
5862 //        PSMC2REBS Bits
5863 
5864 extern __at(0x0EB8) __sfr PSMC2REBS;
5865 
5866 typedef struct
5867   {
5868   unsigned                      : 1;
5869   unsigned P2REBSC1             : 1;
5870   unsigned P2REBSC2             : 1;
5871   unsigned P2REBSC3             : 1;
5872   unsigned P2REBSC4             : 1;
5873   unsigned                      : 1;
5874   unsigned                      : 1;
5875   unsigned P2REBSIN             : 1;
5876   } __PSMC2REBSbits_t;
5877 
5878 extern __at(0x0EB8) volatile __PSMC2REBSbits_t PSMC2REBSbits;
5879 
5880 #define _P2REBSC1               0x02
5881 #define _P2REBSC2               0x04
5882 #define _P2REBSC3               0x08
5883 #define _P2REBSC4               0x10
5884 #define _P2REBSIN               0x80
5885 
5886 //==============================================================================
5887 
5888 
5889 //==============================================================================
5890 //        PSMC2FEBS Bits
5891 
5892 extern __at(0x0EB9) __sfr PSMC2FEBS;
5893 
5894 typedef struct
5895   {
5896   unsigned                      : 1;
5897   unsigned P2FEBSC1             : 1;
5898   unsigned P2FEBSC2             : 1;
5899   unsigned P2FEBSC3             : 1;
5900   unsigned P2FEBSC4             : 1;
5901   unsigned                      : 1;
5902   unsigned                      : 1;
5903   unsigned P2FEBSIN             : 1;
5904   } __PSMC2FEBSbits_t;
5905 
5906 extern __at(0x0EB9) volatile __PSMC2FEBSbits_t PSMC2FEBSbits;
5907 
5908 #define _P2FEBSC1               0x02
5909 #define _P2FEBSC2               0x04
5910 #define _P2FEBSC3               0x08
5911 #define _P2FEBSC4               0x10
5912 #define _P2FEBSIN               0x80
5913 
5914 //==============================================================================
5915 
5916 
5917 //==============================================================================
5918 //        PSMC2PHS Bits
5919 
5920 extern __at(0x0EBA) __sfr PSMC2PHS;
5921 
5922 typedef struct
5923   {
5924   unsigned P2PHST               : 1;
5925   unsigned P2PHSC1              : 1;
5926   unsigned P2PHSC2              : 1;
5927   unsigned P2PHSC3              : 1;
5928   unsigned P2PHSC4              : 1;
5929   unsigned                      : 1;
5930   unsigned                      : 1;
5931   unsigned P2PHSIN              : 1;
5932   } __PSMC2PHSbits_t;
5933 
5934 extern __at(0x0EBA) volatile __PSMC2PHSbits_t PSMC2PHSbits;
5935 
5936 #define _P2PHST                 0x01
5937 #define _P2PHSC1                0x02
5938 #define _P2PHSC2                0x04
5939 #define _P2PHSC3                0x08
5940 #define _P2PHSC4                0x10
5941 #define _P2PHSIN                0x80
5942 
5943 //==============================================================================
5944 
5945 
5946 //==============================================================================
5947 //        PSMC2DCS Bits
5948 
5949 extern __at(0x0EBB) __sfr PSMC2DCS;
5950 
5951 typedef struct
5952   {
5953   unsigned P2DCST               : 1;
5954   unsigned P2DCSC1              : 1;
5955   unsigned P2DCSC2              : 1;
5956   unsigned P2DCSC3              : 1;
5957   unsigned P2DCSC4              : 1;
5958   unsigned                      : 1;
5959   unsigned                      : 1;
5960   unsigned P2DCSIN              : 1;
5961   } __PSMC2DCSbits_t;
5962 
5963 extern __at(0x0EBB) volatile __PSMC2DCSbits_t PSMC2DCSbits;
5964 
5965 #define _P2DCST                 0x01
5966 #define _P2DCSC1                0x02
5967 #define _P2DCSC2                0x04
5968 #define _P2DCSC3                0x08
5969 #define _P2DCSC4                0x10
5970 #define _P2DCSIN                0x80
5971 
5972 //==============================================================================
5973 
5974 
5975 //==============================================================================
5976 //        PSMC2PRS Bits
5977 
5978 extern __at(0x0EBC) __sfr PSMC2PRS;
5979 
5980 typedef struct
5981   {
5982   unsigned P2PRST               : 1;
5983   unsigned P2PRSC1              : 1;
5984   unsigned P2PRSC2              : 1;
5985   unsigned P2PRSC3              : 1;
5986   unsigned P2PRSC4              : 1;
5987   unsigned                      : 1;
5988   unsigned                      : 1;
5989   unsigned P2PRSIN              : 1;
5990   } __PSMC2PRSbits_t;
5991 
5992 extern __at(0x0EBC) volatile __PSMC2PRSbits_t PSMC2PRSbits;
5993 
5994 #define _P2PRST                 0x01
5995 #define _P2PRSC1                0x02
5996 #define _P2PRSC2                0x04
5997 #define _P2PRSC3                0x08
5998 #define _P2PRSC4                0x10
5999 #define _P2PRSIN                0x80
6000 
6001 //==============================================================================
6002 
6003 
6004 //==============================================================================
6005 //        PSMC2ASDC Bits
6006 
6007 extern __at(0x0EBD) __sfr PSMC2ASDC;
6008 
6009 typedef struct
6010   {
6011   unsigned P2ASDOV              : 1;
6012   unsigned                      : 1;
6013   unsigned                      : 1;
6014   unsigned                      : 1;
6015   unsigned                      : 1;
6016   unsigned P2ARSEN              : 1;
6017   unsigned P2ASDEN              : 1;
6018   unsigned P2ASE                : 1;
6019   } __PSMC2ASDCbits_t;
6020 
6021 extern __at(0x0EBD) volatile __PSMC2ASDCbits_t PSMC2ASDCbits;
6022 
6023 #define _P2ASDOV                0x01
6024 #define _P2ARSEN                0x20
6025 #define _P2ASDEN                0x40
6026 #define _P2ASE                  0x80
6027 
6028 //==============================================================================
6029 
6030 
6031 //==============================================================================
6032 //        PSMC2ASDL Bits
6033 
6034 extern __at(0x0EBE) __sfr PSMC2ASDL;
6035 
6036 typedef struct
6037   {
6038   unsigned P2ASDLA              : 1;
6039   unsigned P2ASDLB              : 1;
6040   unsigned                      : 1;
6041   unsigned                      : 1;
6042   unsigned                      : 1;
6043   unsigned                      : 1;
6044   unsigned                      : 1;
6045   unsigned                      : 1;
6046   } __PSMC2ASDLbits_t;
6047 
6048 extern __at(0x0EBE) volatile __PSMC2ASDLbits_t PSMC2ASDLbits;
6049 
6050 #define _P2ASDLA                0x01
6051 #define _P2ASDLB                0x02
6052 
6053 //==============================================================================
6054 
6055 
6056 //==============================================================================
6057 //        PSMC2ASDS Bits
6058 
6059 extern __at(0x0EBF) __sfr PSMC2ASDS;
6060 
6061 typedef struct
6062   {
6063   unsigned                      : 1;
6064   unsigned P2ASDSC1             : 1;
6065   unsigned P2ASDSC2             : 1;
6066   unsigned P2ASDSC3             : 1;
6067   unsigned P2ASDSC4             : 1;
6068   unsigned                      : 1;
6069   unsigned                      : 1;
6070   unsigned P2ASDSIN             : 1;
6071   } __PSMC2ASDSbits_t;
6072 
6073 extern __at(0x0EBF) volatile __PSMC2ASDSbits_t PSMC2ASDSbits;
6074 
6075 #define _P2ASDSC1               0x02
6076 #define _P2ASDSC2               0x04
6077 #define _P2ASDSC3               0x08
6078 #define _P2ASDSC4               0x10
6079 #define _P2ASDSIN               0x80
6080 
6081 //==============================================================================
6082 
6083 
6084 //==============================================================================
6085 //        PSMC2INT Bits
6086 
6087 extern __at(0x0EC0) __sfr PSMC2INT;
6088 
6089 typedef struct
6090   {
6091   unsigned P2TPRIF              : 1;
6092   unsigned P2TDCIF              : 1;
6093   unsigned P2TPHIF              : 1;
6094   unsigned P2TOVIF              : 1;
6095   unsigned P2TPRIE              : 1;
6096   unsigned P2TDCIE              : 1;
6097   unsigned P2TPHIE              : 1;
6098   unsigned P2TOVIE              : 1;
6099   } __PSMC2INTbits_t;
6100 
6101 extern __at(0x0EC0) volatile __PSMC2INTbits_t PSMC2INTbits;
6102 
6103 #define _P2TPRIF                0x01
6104 #define _P2TDCIF                0x02
6105 #define _P2TPHIF                0x04
6106 #define _P2TOVIF                0x08
6107 #define _P2TPRIE                0x10
6108 #define _P2TDCIE                0x20
6109 #define _P2TPHIE                0x40
6110 #define _P2TOVIE                0x80
6111 
6112 //==============================================================================
6113 
6114 extern __at(0x0EC1) __sfr PSMC2PH;
6115 
6116 //==============================================================================
6117 //        PSMC2PHL Bits
6118 
6119 extern __at(0x0EC1) __sfr PSMC2PHL;
6120 
6121 typedef struct
6122   {
6123   unsigned PSMC2PH0             : 1;
6124   unsigned PSMC2PH1             : 1;
6125   unsigned PSMC2PH2             : 1;
6126   unsigned PSMC2PH3             : 1;
6127   unsigned PSMC2PH4             : 1;
6128   unsigned PSMC2PH5             : 1;
6129   unsigned PSMC2PH6             : 1;
6130   unsigned PSMC2PH7             : 1;
6131   } __PSMC2PHLbits_t;
6132 
6133 extern __at(0x0EC1) volatile __PSMC2PHLbits_t PSMC2PHLbits;
6134 
6135 #define _PSMC2PH0               0x01
6136 #define _PSMC2PH1               0x02
6137 #define _PSMC2PH2               0x04
6138 #define _PSMC2PH3               0x08
6139 #define _PSMC2PH4               0x10
6140 #define _PSMC2PH5               0x20
6141 #define _PSMC2PH6               0x40
6142 #define _PSMC2PH7               0x80
6143 
6144 //==============================================================================
6145 
6146 
6147 //==============================================================================
6148 //        PSMC2PHH Bits
6149 
6150 extern __at(0x0EC2) __sfr PSMC2PHH;
6151 
6152 typedef struct
6153   {
6154   unsigned PSMC2PH8             : 1;
6155   unsigned PSMC2PH9             : 1;
6156   unsigned PSMC2PH10            : 1;
6157   unsigned PSMC2PH11            : 1;
6158   unsigned PSMC2PH12            : 1;
6159   unsigned PSMC2PH13            : 1;
6160   unsigned PSMC2PH14            : 1;
6161   unsigned PSMC2PH15            : 1;
6162   } __PSMC2PHHbits_t;
6163 
6164 extern __at(0x0EC2) volatile __PSMC2PHHbits_t PSMC2PHHbits;
6165 
6166 #define _PSMC2PH8               0x01
6167 #define _PSMC2PH9               0x02
6168 #define _PSMC2PH10              0x04
6169 #define _PSMC2PH11              0x08
6170 #define _PSMC2PH12              0x10
6171 #define _PSMC2PH13              0x20
6172 #define _PSMC2PH14              0x40
6173 #define _PSMC2PH15              0x80
6174 
6175 //==============================================================================
6176 
6177 extern __at(0x0EC3) __sfr PSMC2DC;
6178 
6179 //==============================================================================
6180 //        PSMC2DCL Bits
6181 
6182 extern __at(0x0EC3) __sfr PSMC2DCL;
6183 
6184 typedef struct
6185   {
6186   unsigned PSMC2DC0             : 1;
6187   unsigned PSMC2DC1             : 1;
6188   unsigned PSMC2DC2             : 1;
6189   unsigned PSMC2DC3             : 1;
6190   unsigned PSMC2DC4             : 1;
6191   unsigned PSMC2DC5             : 1;
6192   unsigned PSMC2DC6             : 1;
6193   unsigned PSMC2DC7             : 1;
6194   } __PSMC2DCLbits_t;
6195 
6196 extern __at(0x0EC3) volatile __PSMC2DCLbits_t PSMC2DCLbits;
6197 
6198 #define _PSMC2DC0               0x01
6199 #define _PSMC2DC1               0x02
6200 #define _PSMC2DC2               0x04
6201 #define _PSMC2DC3               0x08
6202 #define _PSMC2DC4               0x10
6203 #define _PSMC2DC5               0x20
6204 #define _PSMC2DC6               0x40
6205 #define _PSMC2DC7               0x80
6206 
6207 //==============================================================================
6208 
6209 
6210 //==============================================================================
6211 //        PSMC2DCH Bits
6212 
6213 extern __at(0x0EC4) __sfr PSMC2DCH;
6214 
6215 typedef struct
6216   {
6217   unsigned PSMC2DC8             : 1;
6218   unsigned PSMC2DC9             : 1;
6219   unsigned PSMC2DC10            : 1;
6220   unsigned PSMC2DC11            : 1;
6221   unsigned PSMC2DC12            : 1;
6222   unsigned PSMC2DC13            : 1;
6223   unsigned PSMC2DC14            : 1;
6224   unsigned PSMC2DC15            : 1;
6225   } __PSMC2DCHbits_t;
6226 
6227 extern __at(0x0EC4) volatile __PSMC2DCHbits_t PSMC2DCHbits;
6228 
6229 #define _PSMC2DC8               0x01
6230 #define _PSMC2DC9               0x02
6231 #define _PSMC2DC10              0x04
6232 #define _PSMC2DC11              0x08
6233 #define _PSMC2DC12              0x10
6234 #define _PSMC2DC13              0x20
6235 #define _PSMC2DC14              0x40
6236 #define _PSMC2DC15              0x80
6237 
6238 //==============================================================================
6239 
6240 extern __at(0x0EC5) __sfr PSMC2PR;
6241 
6242 //==============================================================================
6243 //        PSMC2PRL Bits
6244 
6245 extern __at(0x0EC5) __sfr PSMC2PRL;
6246 
6247 typedef struct
6248   {
6249   unsigned PSMC2PR0             : 1;
6250   unsigned PSMC2PR1             : 1;
6251   unsigned PSMC2PR2             : 1;
6252   unsigned PSMC2PR3             : 1;
6253   unsigned PSMC2PR4             : 1;
6254   unsigned PSMC2PR5             : 1;
6255   unsigned PSMC2PR6             : 1;
6256   unsigned PSMC2PR7             : 1;
6257   } __PSMC2PRLbits_t;
6258 
6259 extern __at(0x0EC5) volatile __PSMC2PRLbits_t PSMC2PRLbits;
6260 
6261 #define _PSMC2PR0               0x01
6262 #define _PSMC2PR1               0x02
6263 #define _PSMC2PR2               0x04
6264 #define _PSMC2PR3               0x08
6265 #define _PSMC2PR4               0x10
6266 #define _PSMC2PR5               0x20
6267 #define _PSMC2PR6               0x40
6268 #define _PSMC2PR7               0x80
6269 
6270 //==============================================================================
6271 
6272 
6273 //==============================================================================
6274 //        PSMC2PRH Bits
6275 
6276 extern __at(0x0EC6) __sfr PSMC2PRH;
6277 
6278 typedef struct
6279   {
6280   unsigned PSMC2PR8             : 1;
6281   unsigned PSMC2PR9             : 1;
6282   unsigned PSMC2PR10            : 1;
6283   unsigned PSMC2PR11            : 1;
6284   unsigned PSMC2PR12            : 1;
6285   unsigned PSMC2PR13            : 1;
6286   unsigned PSMC2PR14            : 1;
6287   unsigned PSMC2PR15            : 1;
6288   } __PSMC2PRHbits_t;
6289 
6290 extern __at(0x0EC6) volatile __PSMC2PRHbits_t PSMC2PRHbits;
6291 
6292 #define _PSMC2PR8               0x01
6293 #define _PSMC2PR9               0x02
6294 #define _PSMC2PR10              0x04
6295 #define _PSMC2PR11              0x08
6296 #define _PSMC2PR12              0x10
6297 #define _PSMC2PR13              0x20
6298 #define _PSMC2PR14              0x40
6299 #define _PSMC2PR15              0x80
6300 
6301 //==============================================================================
6302 
6303 extern __at(0x0EC7) __sfr PSMC2TMR;
6304 
6305 //==============================================================================
6306 //        PSMC2TMRL Bits
6307 
6308 extern __at(0x0EC7) __sfr PSMC2TMRL;
6309 
6310 typedef struct
6311   {
6312   unsigned PSMC2TMR0            : 1;
6313   unsigned PSMC2TMR1            : 1;
6314   unsigned PSMC2TMR2            : 1;
6315   unsigned PSMC2TMR3            : 1;
6316   unsigned PSMC2TMR4            : 1;
6317   unsigned PSMC2TMR5            : 1;
6318   unsigned PSMC2TMR6            : 1;
6319   unsigned PSMC2TMR7            : 1;
6320   } __PSMC2TMRLbits_t;
6321 
6322 extern __at(0x0EC7) volatile __PSMC2TMRLbits_t PSMC2TMRLbits;
6323 
6324 #define _PSMC2TMR0              0x01
6325 #define _PSMC2TMR1              0x02
6326 #define _PSMC2TMR2              0x04
6327 #define _PSMC2TMR3              0x08
6328 #define _PSMC2TMR4              0x10
6329 #define _PSMC2TMR5              0x20
6330 #define _PSMC2TMR6              0x40
6331 #define _PSMC2TMR7              0x80
6332 
6333 //==============================================================================
6334 
6335 
6336 //==============================================================================
6337 //        PSMC2TMRH Bits
6338 
6339 extern __at(0x0EC8) __sfr PSMC2TMRH;
6340 
6341 typedef struct
6342   {
6343   unsigned PSMC2TMR8            : 1;
6344   unsigned PSMC2TMR9            : 1;
6345   unsigned PSMC2TMR10           : 1;
6346   unsigned PSMC2TMR11           : 1;
6347   unsigned PSMC2TMR12           : 1;
6348   unsigned PSMC2TMR13           : 1;
6349   unsigned PSMC2TMR14           : 1;
6350   unsigned PSMC2TMR15           : 1;
6351   } __PSMC2TMRHbits_t;
6352 
6353 extern __at(0x0EC8) volatile __PSMC2TMRHbits_t PSMC2TMRHbits;
6354 
6355 #define _PSMC2TMR8              0x01
6356 #define _PSMC2TMR9              0x02
6357 #define _PSMC2TMR10             0x04
6358 #define _PSMC2TMR11             0x08
6359 #define _PSMC2TMR12             0x10
6360 #define _PSMC2TMR13             0x20
6361 #define _PSMC2TMR14             0x40
6362 #define _PSMC2TMR15             0x80
6363 
6364 //==============================================================================
6365 
6366 
6367 //==============================================================================
6368 //        PSMC2DBR Bits
6369 
6370 extern __at(0x0EC9) __sfr PSMC2DBR;
6371 
6372 typedef struct
6373   {
6374   unsigned PSMC2DBR0            : 1;
6375   unsigned PSMC2DBR1            : 1;
6376   unsigned PSMC2DBR2            : 1;
6377   unsigned PSMC2DBR3            : 1;
6378   unsigned PSMC2DBR4            : 1;
6379   unsigned PSMC2DBR5            : 1;
6380   unsigned PSMC2DBR6            : 1;
6381   unsigned PSMC2DBR7            : 1;
6382   } __PSMC2DBRbits_t;
6383 
6384 extern __at(0x0EC9) volatile __PSMC2DBRbits_t PSMC2DBRbits;
6385 
6386 #define _PSMC2DBR0              0x01
6387 #define _PSMC2DBR1              0x02
6388 #define _PSMC2DBR2              0x04
6389 #define _PSMC2DBR3              0x08
6390 #define _PSMC2DBR4              0x10
6391 #define _PSMC2DBR5              0x20
6392 #define _PSMC2DBR6              0x40
6393 #define _PSMC2DBR7              0x80
6394 
6395 //==============================================================================
6396 
6397 
6398 //==============================================================================
6399 //        PSMC2DBF Bits
6400 
6401 extern __at(0x0ECA) __sfr PSMC2DBF;
6402 
6403 typedef struct
6404   {
6405   unsigned PSMC2DBF0            : 1;
6406   unsigned PSMC2DBF1            : 1;
6407   unsigned PSMC2DBF2            : 1;
6408   unsigned PSMC2DBF3            : 1;
6409   unsigned PSMC2DBF4            : 1;
6410   unsigned PSMC2DBF5            : 1;
6411   unsigned PSMC2DBF6            : 1;
6412   unsigned PSMC2DBF7            : 1;
6413   } __PSMC2DBFbits_t;
6414 
6415 extern __at(0x0ECA) volatile __PSMC2DBFbits_t PSMC2DBFbits;
6416 
6417 #define _PSMC2DBF0              0x01
6418 #define _PSMC2DBF1              0x02
6419 #define _PSMC2DBF2              0x04
6420 #define _PSMC2DBF3              0x08
6421 #define _PSMC2DBF4              0x10
6422 #define _PSMC2DBF5              0x20
6423 #define _PSMC2DBF6              0x40
6424 #define _PSMC2DBF7              0x80
6425 
6426 //==============================================================================
6427 
6428 
6429 //==============================================================================
6430 //        PSMC2BLKR Bits
6431 
6432 extern __at(0x0ECB) __sfr PSMC2BLKR;
6433 
6434 typedef struct
6435   {
6436   unsigned PSMC2BLKR0           : 1;
6437   unsigned PSMC2BLKR1           : 1;
6438   unsigned PSMC2BLKR2           : 1;
6439   unsigned PSMC2BLKR3           : 1;
6440   unsigned PSMC2BLKR4           : 1;
6441   unsigned PSMC2BLKR5           : 1;
6442   unsigned PSMC2BLKR6           : 1;
6443   unsigned PSMC2BLKR7           : 1;
6444   } __PSMC2BLKRbits_t;
6445 
6446 extern __at(0x0ECB) volatile __PSMC2BLKRbits_t PSMC2BLKRbits;
6447 
6448 #define _PSMC2BLKR0             0x01
6449 #define _PSMC2BLKR1             0x02
6450 #define _PSMC2BLKR2             0x04
6451 #define _PSMC2BLKR3             0x08
6452 #define _PSMC2BLKR4             0x10
6453 #define _PSMC2BLKR5             0x20
6454 #define _PSMC2BLKR6             0x40
6455 #define _PSMC2BLKR7             0x80
6456 
6457 //==============================================================================
6458 
6459 
6460 //==============================================================================
6461 //        PSMC2BLKF Bits
6462 
6463 extern __at(0x0ECC) __sfr PSMC2BLKF;
6464 
6465 typedef struct
6466   {
6467   unsigned PSMC2BLKF0           : 1;
6468   unsigned PSMC2BLKF1           : 1;
6469   unsigned PSMC2BLKF2           : 1;
6470   unsigned PSMC2BLKF3           : 1;
6471   unsigned PSMC2BLKF4           : 1;
6472   unsigned PSMC2BLKF5           : 1;
6473   unsigned PSMC2BLKF6           : 1;
6474   unsigned PSMC2BLKF7           : 1;
6475   } __PSMC2BLKFbits_t;
6476 
6477 extern __at(0x0ECC) volatile __PSMC2BLKFbits_t PSMC2BLKFbits;
6478 
6479 #define _PSMC2BLKF0             0x01
6480 #define _PSMC2BLKF1             0x02
6481 #define _PSMC2BLKF2             0x04
6482 #define _PSMC2BLKF3             0x08
6483 #define _PSMC2BLKF4             0x10
6484 #define _PSMC2BLKF5             0x20
6485 #define _PSMC2BLKF6             0x40
6486 #define _PSMC2BLKF7             0x80
6487 
6488 //==============================================================================
6489 
6490 
6491 //==============================================================================
6492 //        PSMC2FFA Bits
6493 
6494 extern __at(0x0ECD) __sfr PSMC2FFA;
6495 
6496 typedef union
6497   {
6498   struct
6499     {
6500     unsigned PSMC2FFA0          : 1;
6501     unsigned PSMC2FFA1          : 1;
6502     unsigned PSMC2FFA2          : 1;
6503     unsigned PSMC2FFA3          : 1;
6504     unsigned                    : 1;
6505     unsigned                    : 1;
6506     unsigned                    : 1;
6507     unsigned                    : 1;
6508     };
6509 
6510   struct
6511     {
6512     unsigned PSMC2FFA           : 4;
6513     unsigned                    : 4;
6514     };
6515   } __PSMC2FFAbits_t;
6516 
6517 extern __at(0x0ECD) volatile __PSMC2FFAbits_t PSMC2FFAbits;
6518 
6519 #define _PSMC2FFA0              0x01
6520 #define _PSMC2FFA1              0x02
6521 #define _PSMC2FFA2              0x04
6522 #define _PSMC2FFA3              0x08
6523 
6524 //==============================================================================
6525 
6526 
6527 //==============================================================================
6528 //        PSMC2STR0 Bits
6529 
6530 extern __at(0x0ECE) __sfr PSMC2STR0;
6531 
6532 typedef struct
6533   {
6534   unsigned P2STRA               : 1;
6535   unsigned P2STRB               : 1;
6536   unsigned                      : 1;
6537   unsigned                      : 1;
6538   unsigned                      : 1;
6539   unsigned                      : 1;
6540   unsigned                      : 1;
6541   unsigned                      : 1;
6542   } __PSMC2STR0bits_t;
6543 
6544 extern __at(0x0ECE) volatile __PSMC2STR0bits_t PSMC2STR0bits;
6545 
6546 #define _P2STRA                 0x01
6547 #define _P2STRB                 0x02
6548 
6549 //==============================================================================
6550 
6551 
6552 //==============================================================================
6553 //        PSMC2STR1 Bits
6554 
6555 extern __at(0x0ECF) __sfr PSMC2STR1;
6556 
6557 typedef struct
6558   {
6559   unsigned P2HSMEN              : 1;
6560   unsigned P2LSMEN              : 1;
6561   unsigned                      : 1;
6562   unsigned                      : 1;
6563   unsigned                      : 1;
6564   unsigned                      : 1;
6565   unsigned                      : 1;
6566   unsigned P2SSYNC              : 1;
6567   } __PSMC2STR1bits_t;
6568 
6569 extern __at(0x0ECF) volatile __PSMC2STR1bits_t PSMC2STR1bits;
6570 
6571 #define _P2HSMEN                0x01
6572 #define _P2LSMEN                0x02
6573 #define _P2SSYNC                0x80
6574 
6575 //==============================================================================
6576 
6577 
6578 //==============================================================================
6579 //        PSMC3CON Bits
6580 
6581 extern __at(0x0ED1) __sfr PSMC3CON;
6582 
6583 typedef union
6584   {
6585   struct
6586     {
6587     unsigned P3MODE0            : 1;
6588     unsigned P3MODE1            : 1;
6589     unsigned P3MODE2            : 1;
6590     unsigned P3MODE3            : 1;
6591     unsigned P3DBRE             : 1;
6592     unsigned P3DBFE             : 1;
6593     unsigned PSMC3LD            : 1;
6594     unsigned PSMC3EN            : 1;
6595     };
6596 
6597   struct
6598     {
6599     unsigned P3MODE             : 4;
6600     unsigned                    : 4;
6601     };
6602   } __PSMC3CONbits_t;
6603 
6604 extern __at(0x0ED1) volatile __PSMC3CONbits_t PSMC3CONbits;
6605 
6606 #define _P3MODE0                0x01
6607 #define _P3MODE1                0x02
6608 #define _P3MODE2                0x04
6609 #define _P3MODE3                0x08
6610 #define _P3DBRE                 0x10
6611 #define _P3DBFE                 0x20
6612 #define _PSMC3LD                0x40
6613 #define _PSMC3EN                0x80
6614 
6615 //==============================================================================
6616 
6617 
6618 //==============================================================================
6619 //        PSMC3MDL Bits
6620 
6621 extern __at(0x0ED2) __sfr PSMC3MDL;
6622 
6623 typedef union
6624   {
6625   struct
6626     {
6627     unsigned P3MSRC0            : 1;
6628     unsigned P3MSRC1            : 1;
6629     unsigned P3MSRC2            : 1;
6630     unsigned P3MSRC3            : 1;
6631     unsigned                    : 1;
6632     unsigned P3MDLBIT           : 1;
6633     unsigned P3MDLPOL           : 1;
6634     unsigned P3MDLEN            : 1;
6635     };
6636 
6637   struct
6638     {
6639     unsigned P3MSRC             : 4;
6640     unsigned                    : 4;
6641     };
6642   } __PSMC3MDLbits_t;
6643 
6644 extern __at(0x0ED2) volatile __PSMC3MDLbits_t PSMC3MDLbits;
6645 
6646 #define _P3MSRC0                0x01
6647 #define _P3MSRC1                0x02
6648 #define _P3MSRC2                0x04
6649 #define _P3MSRC3                0x08
6650 #define _P3MDLBIT               0x20
6651 #define _P3MDLPOL               0x40
6652 #define _P3MDLEN                0x80
6653 
6654 //==============================================================================
6655 
6656 
6657 //==============================================================================
6658 //        PSMC3SYNC Bits
6659 
6660 extern __at(0x0ED3) __sfr PSMC3SYNC;
6661 
6662 typedef union
6663   {
6664   struct
6665     {
6666     unsigned P3SYNC0            : 1;
6667     unsigned P3SYNC1            : 1;
6668     unsigned P3SYNC2            : 1;
6669     unsigned                    : 1;
6670     unsigned                    : 1;
6671     unsigned P3DCPOL            : 1;
6672     unsigned P3PRPOL            : 1;
6673     unsigned P3POFST            : 1;
6674     };
6675 
6676   struct
6677     {
6678     unsigned P3SYNC             : 3;
6679     unsigned                    : 5;
6680     };
6681   } __PSMC3SYNCbits_t;
6682 
6683 extern __at(0x0ED3) volatile __PSMC3SYNCbits_t PSMC3SYNCbits;
6684 
6685 #define _P3SYNC0                0x01
6686 #define _P3SYNC1                0x02
6687 #define _P3SYNC2                0x04
6688 #define _P3DCPOL                0x20
6689 #define _P3PRPOL                0x40
6690 #define _P3POFST                0x80
6691 
6692 //==============================================================================
6693 
6694 
6695 //==============================================================================
6696 //        PSMC3CLK Bits
6697 
6698 extern __at(0x0ED4) __sfr PSMC3CLK;
6699 
6700 typedef union
6701   {
6702   struct
6703     {
6704     unsigned P3CSRC0            : 1;
6705     unsigned P3CSRC1            : 1;
6706     unsigned                    : 1;
6707     unsigned                    : 1;
6708     unsigned P3CPRE0            : 1;
6709     unsigned P3CPRE1            : 1;
6710     unsigned                    : 1;
6711     unsigned                    : 1;
6712     };
6713 
6714   struct
6715     {
6716     unsigned P3CSRC             : 2;
6717     unsigned                    : 6;
6718     };
6719 
6720   struct
6721     {
6722     unsigned                    : 4;
6723     unsigned P3CPRE             : 2;
6724     unsigned                    : 2;
6725     };
6726   } __PSMC3CLKbits_t;
6727 
6728 extern __at(0x0ED4) volatile __PSMC3CLKbits_t PSMC3CLKbits;
6729 
6730 #define _P3CSRC0                0x01
6731 #define _P3CSRC1                0x02
6732 #define _P3CPRE0                0x10
6733 #define _P3CPRE1                0x20
6734 
6735 //==============================================================================
6736 
6737 
6738 //==============================================================================
6739 //        PSMC3OEN Bits
6740 
6741 extern __at(0x0ED5) __sfr PSMC3OEN;
6742 
6743 typedef struct
6744   {
6745   unsigned P3OEA                : 1;
6746   unsigned P3OEB                : 1;
6747   unsigned                      : 1;
6748   unsigned                      : 1;
6749   unsigned                      : 1;
6750   unsigned                      : 1;
6751   unsigned                      : 1;
6752   unsigned                      : 1;
6753   } __PSMC3OENbits_t;
6754 
6755 extern __at(0x0ED5) volatile __PSMC3OENbits_t PSMC3OENbits;
6756 
6757 #define _P3OEA                  0x01
6758 #define _P3OEB                  0x02
6759 
6760 //==============================================================================
6761 
6762 
6763 //==============================================================================
6764 //        PSMC3POL Bits
6765 
6766 extern __at(0x0ED6) __sfr PSMC3POL;
6767 
6768 typedef struct
6769   {
6770   unsigned P3POLA               : 1;
6771   unsigned P3POLB               : 1;
6772   unsigned                      : 1;
6773   unsigned                      : 1;
6774   unsigned                      : 1;
6775   unsigned                      : 1;
6776   unsigned P3INPOL              : 1;
6777   unsigned                      : 1;
6778   } __PSMC3POLbits_t;
6779 
6780 extern __at(0x0ED6) volatile __PSMC3POLbits_t PSMC3POLbits;
6781 
6782 #define _P3POLA                 0x01
6783 #define _P3POLB                 0x02
6784 #define _P3INPOL                0x40
6785 
6786 //==============================================================================
6787 
6788 
6789 //==============================================================================
6790 //        PSMC3BLNK Bits
6791 
6792 extern __at(0x0ED7) __sfr PSMC3BLNK;
6793 
6794 typedef union
6795   {
6796   struct
6797     {
6798     unsigned P3REBM0            : 1;
6799     unsigned P3REBM1            : 1;
6800     unsigned                    : 1;
6801     unsigned                    : 1;
6802     unsigned P3FEBM0            : 1;
6803     unsigned P3FEBM1            : 1;
6804     unsigned                    : 1;
6805     unsigned                    : 1;
6806     };
6807 
6808   struct
6809     {
6810     unsigned P3REBM             : 2;
6811     unsigned                    : 6;
6812     };
6813 
6814   struct
6815     {
6816     unsigned                    : 4;
6817     unsigned P3FEBM             : 2;
6818     unsigned                    : 2;
6819     };
6820   } __PSMC3BLNKbits_t;
6821 
6822 extern __at(0x0ED7) volatile __PSMC3BLNKbits_t PSMC3BLNKbits;
6823 
6824 #define _P3REBM0                0x01
6825 #define _P3REBM1                0x02
6826 #define _P3FEBM0                0x10
6827 #define _P3FEBM1                0x20
6828 
6829 //==============================================================================
6830 
6831 
6832 //==============================================================================
6833 //        PSMC3REBS Bits
6834 
6835 extern __at(0x0ED8) __sfr PSMC3REBS;
6836 
6837 typedef struct
6838   {
6839   unsigned                      : 1;
6840   unsigned P3REBSC1             : 1;
6841   unsigned P3REBSC2             : 1;
6842   unsigned P3REBSC3             : 1;
6843   unsigned P3REBSC4             : 1;
6844   unsigned                      : 1;
6845   unsigned                      : 1;
6846   unsigned P3REBSIN             : 1;
6847   } __PSMC3REBSbits_t;
6848 
6849 extern __at(0x0ED8) volatile __PSMC3REBSbits_t PSMC3REBSbits;
6850 
6851 #define _P3REBSC1               0x02
6852 #define _P3REBSC2               0x04
6853 #define _P3REBSC3               0x08
6854 #define _P3REBSC4               0x10
6855 #define _P3REBSIN               0x80
6856 
6857 //==============================================================================
6858 
6859 
6860 //==============================================================================
6861 //        PSMC3FEBS Bits
6862 
6863 extern __at(0x0ED9) __sfr PSMC3FEBS;
6864 
6865 typedef struct
6866   {
6867   unsigned                      : 1;
6868   unsigned P3FEBSC1             : 1;
6869   unsigned P3FEBSC2             : 1;
6870   unsigned P3FEBSC3             : 1;
6871   unsigned P3FEBSC4             : 1;
6872   unsigned                      : 1;
6873   unsigned                      : 1;
6874   unsigned P3FEBSIN             : 1;
6875   } __PSMC3FEBSbits_t;
6876 
6877 extern __at(0x0ED9) volatile __PSMC3FEBSbits_t PSMC3FEBSbits;
6878 
6879 #define _P3FEBSC1               0x02
6880 #define _P3FEBSC2               0x04
6881 #define _P3FEBSC3               0x08
6882 #define _P3FEBSC4               0x10
6883 #define _P3FEBSIN               0x80
6884 
6885 //==============================================================================
6886 
6887 
6888 //==============================================================================
6889 //        PSMC3PHS Bits
6890 
6891 extern __at(0x0EDA) __sfr PSMC3PHS;
6892 
6893 typedef struct
6894   {
6895   unsigned P3PHST               : 1;
6896   unsigned P3PHSC1              : 1;
6897   unsigned P3PHSC2              : 1;
6898   unsigned P3PHSC3              : 1;
6899   unsigned P3PHSC4              : 1;
6900   unsigned                      : 1;
6901   unsigned                      : 1;
6902   unsigned P3PHSIN              : 1;
6903   } __PSMC3PHSbits_t;
6904 
6905 extern __at(0x0EDA) volatile __PSMC3PHSbits_t PSMC3PHSbits;
6906 
6907 #define _P3PHST                 0x01
6908 #define _P3PHSC1                0x02
6909 #define _P3PHSC2                0x04
6910 #define _P3PHSC3                0x08
6911 #define _P3PHSC4                0x10
6912 #define _P3PHSIN                0x80
6913 
6914 //==============================================================================
6915 
6916 
6917 //==============================================================================
6918 //        PSMC3DCS Bits
6919 
6920 extern __at(0x0EDB) __sfr PSMC3DCS;
6921 
6922 typedef struct
6923   {
6924   unsigned P3DCST               : 1;
6925   unsigned P3DCSC1              : 1;
6926   unsigned P3DCSC2              : 1;
6927   unsigned P3DCSC3              : 1;
6928   unsigned P3DCSC4              : 1;
6929   unsigned                      : 1;
6930   unsigned                      : 1;
6931   unsigned P3DCSIN              : 1;
6932   } __PSMC3DCSbits_t;
6933 
6934 extern __at(0x0EDB) volatile __PSMC3DCSbits_t PSMC3DCSbits;
6935 
6936 #define _P3DCST                 0x01
6937 #define _P3DCSC1                0x02
6938 #define _P3DCSC2                0x04
6939 #define _P3DCSC3                0x08
6940 #define _P3DCSC4                0x10
6941 #define _P3DCSIN                0x80
6942 
6943 //==============================================================================
6944 
6945 
6946 //==============================================================================
6947 //        PSMC3PRS Bits
6948 
6949 extern __at(0x0EDC) __sfr PSMC3PRS;
6950 
6951 typedef struct
6952   {
6953   unsigned P3PRST               : 1;
6954   unsigned P3PRSC1              : 1;
6955   unsigned P3PRSC2              : 1;
6956   unsigned P3PRSC3              : 1;
6957   unsigned P3PRSC4              : 1;
6958   unsigned                      : 1;
6959   unsigned                      : 1;
6960   unsigned P3PRSIN              : 1;
6961   } __PSMC3PRSbits_t;
6962 
6963 extern __at(0x0EDC) volatile __PSMC3PRSbits_t PSMC3PRSbits;
6964 
6965 #define _P3PRST                 0x01
6966 #define _P3PRSC1                0x02
6967 #define _P3PRSC2                0x04
6968 #define _P3PRSC3                0x08
6969 #define _P3PRSC4                0x10
6970 #define _P3PRSIN                0x80
6971 
6972 //==============================================================================
6973 
6974 
6975 //==============================================================================
6976 //        PSMC3ASDC Bits
6977 
6978 extern __at(0x0EDD) __sfr PSMC3ASDC;
6979 
6980 typedef struct
6981   {
6982   unsigned P3ASDOV              : 1;
6983   unsigned                      : 1;
6984   unsigned                      : 1;
6985   unsigned                      : 1;
6986   unsigned                      : 1;
6987   unsigned P3ARSEN              : 1;
6988   unsigned P3ASDEN              : 1;
6989   unsigned P3ASE                : 1;
6990   } __PSMC3ASDCbits_t;
6991 
6992 extern __at(0x0EDD) volatile __PSMC3ASDCbits_t PSMC3ASDCbits;
6993 
6994 #define _P3ASDOV                0x01
6995 #define _P3ARSEN                0x20
6996 #define _P3ASDEN                0x40
6997 #define _P3ASE                  0x80
6998 
6999 //==============================================================================
7000 
7001 
7002 //==============================================================================
7003 //        PSMC3ASDL Bits
7004 
7005 extern __at(0x0EDE) __sfr PSMC3ASDL;
7006 
7007 typedef struct
7008   {
7009   unsigned P3ASDLA              : 1;
7010   unsigned P3ASDLB              : 1;
7011   unsigned                      : 1;
7012   unsigned                      : 1;
7013   unsigned                      : 1;
7014   unsigned                      : 1;
7015   unsigned                      : 1;
7016   unsigned                      : 1;
7017   } __PSMC3ASDLbits_t;
7018 
7019 extern __at(0x0EDE) volatile __PSMC3ASDLbits_t PSMC3ASDLbits;
7020 
7021 #define _P3ASDLA                0x01
7022 #define _P3ASDLB                0x02
7023 
7024 //==============================================================================
7025 
7026 
7027 //==============================================================================
7028 //        PSMC3ASDS Bits
7029 
7030 extern __at(0x0EDF) __sfr PSMC3ASDS;
7031 
7032 typedef struct
7033   {
7034   unsigned                      : 1;
7035   unsigned P3ASDSC1             : 1;
7036   unsigned P3ASDSC2             : 1;
7037   unsigned P3ASDSC3             : 1;
7038   unsigned P3ASDSC4             : 1;
7039   unsigned                      : 1;
7040   unsigned                      : 1;
7041   unsigned P3ASDSIN             : 1;
7042   } __PSMC3ASDSbits_t;
7043 
7044 extern __at(0x0EDF) volatile __PSMC3ASDSbits_t PSMC3ASDSbits;
7045 
7046 #define _P3ASDSC1               0x02
7047 #define _P3ASDSC2               0x04
7048 #define _P3ASDSC3               0x08
7049 #define _P3ASDSC4               0x10
7050 #define _P3ASDSIN               0x80
7051 
7052 //==============================================================================
7053 
7054 
7055 //==============================================================================
7056 //        PSMC3INT Bits
7057 
7058 extern __at(0x0EE0) __sfr PSMC3INT;
7059 
7060 typedef struct
7061   {
7062   unsigned P3TPRIF              : 1;
7063   unsigned P3TDCIF              : 1;
7064   unsigned P3TPHIF              : 1;
7065   unsigned P3TOVIF              : 1;
7066   unsigned P3TPRIE              : 1;
7067   unsigned P3TDCIE              : 1;
7068   unsigned P3TPHIE              : 1;
7069   unsigned P3TOVIE              : 1;
7070   } __PSMC3INTbits_t;
7071 
7072 extern __at(0x0EE0) volatile __PSMC3INTbits_t PSMC3INTbits;
7073 
7074 #define _P3TPRIF                0x01
7075 #define _P3TDCIF                0x02
7076 #define _P3TPHIF                0x04
7077 #define _P3TOVIF                0x08
7078 #define _P3TPRIE                0x10
7079 #define _P3TDCIE                0x20
7080 #define _P3TPHIE                0x40
7081 #define _P3TOVIE                0x80
7082 
7083 //==============================================================================
7084 
7085 extern __at(0x0EE1) __sfr PSMC3PH;
7086 
7087 //==============================================================================
7088 //        PSMC3PHL Bits
7089 
7090 extern __at(0x0EE1) __sfr PSMC3PHL;
7091 
7092 typedef struct
7093   {
7094   unsigned PSMC3PH0             : 1;
7095   unsigned PSMC3PH1             : 1;
7096   unsigned PSMC3PH2             : 1;
7097   unsigned PSMC3PH3             : 1;
7098   unsigned PSMC3PH4             : 1;
7099   unsigned PSMC3PH5             : 1;
7100   unsigned PSMC3PH6             : 1;
7101   unsigned PSMC3PH7             : 1;
7102   } __PSMC3PHLbits_t;
7103 
7104 extern __at(0x0EE1) volatile __PSMC3PHLbits_t PSMC3PHLbits;
7105 
7106 #define _PSMC3PH0               0x01
7107 #define _PSMC3PH1               0x02
7108 #define _PSMC3PH2               0x04
7109 #define _PSMC3PH3               0x08
7110 #define _PSMC3PH4               0x10
7111 #define _PSMC3PH5               0x20
7112 #define _PSMC3PH6               0x40
7113 #define _PSMC3PH7               0x80
7114 
7115 //==============================================================================
7116 
7117 
7118 //==============================================================================
7119 //        PSMC3PHH Bits
7120 
7121 extern __at(0x0EE2) __sfr PSMC3PHH;
7122 
7123 typedef struct
7124   {
7125   unsigned PSMC3PH8             : 1;
7126   unsigned PSMC3PH9             : 1;
7127   unsigned PSMC3PH10            : 1;
7128   unsigned PSMC3PH11            : 1;
7129   unsigned PSMC3PH12            : 1;
7130   unsigned PSMC3PH13            : 1;
7131   unsigned PSMC3PH14            : 1;
7132   unsigned PSMC3PH15            : 1;
7133   } __PSMC3PHHbits_t;
7134 
7135 extern __at(0x0EE2) volatile __PSMC3PHHbits_t PSMC3PHHbits;
7136 
7137 #define _PSMC3PH8               0x01
7138 #define _PSMC3PH9               0x02
7139 #define _PSMC3PH10              0x04
7140 #define _PSMC3PH11              0x08
7141 #define _PSMC3PH12              0x10
7142 #define _PSMC3PH13              0x20
7143 #define _PSMC3PH14              0x40
7144 #define _PSMC3PH15              0x80
7145 
7146 //==============================================================================
7147 
7148 extern __at(0x0EE3) __sfr PSMC3DC;
7149 
7150 //==============================================================================
7151 //        PSMC3DCL Bits
7152 
7153 extern __at(0x0EE3) __sfr PSMC3DCL;
7154 
7155 typedef struct
7156   {
7157   unsigned PSMC3DC0             : 1;
7158   unsigned PSMC3DC1             : 1;
7159   unsigned PSMC3DC2             : 1;
7160   unsigned PSMC3DC3             : 1;
7161   unsigned PSMC3DC4             : 1;
7162   unsigned PSMC3DC5             : 1;
7163   unsigned PSMC3DC6             : 1;
7164   unsigned PSMC3DC7             : 1;
7165   } __PSMC3DCLbits_t;
7166 
7167 extern __at(0x0EE3) volatile __PSMC3DCLbits_t PSMC3DCLbits;
7168 
7169 #define _PSMC3DC0               0x01
7170 #define _PSMC3DC1               0x02
7171 #define _PSMC3DC2               0x04
7172 #define _PSMC3DC3               0x08
7173 #define _PSMC3DC4               0x10
7174 #define _PSMC3DC5               0x20
7175 #define _PSMC3DC6               0x40
7176 #define _PSMC3DC7               0x80
7177 
7178 //==============================================================================
7179 
7180 
7181 //==============================================================================
7182 //        PSMC3DCH Bits
7183 
7184 extern __at(0x0EE4) __sfr PSMC3DCH;
7185 
7186 typedef struct
7187   {
7188   unsigned PSMC3DC8             : 1;
7189   unsigned PSMC3DC9             : 1;
7190   unsigned PSMC3DC10            : 1;
7191   unsigned PSMC3DC11            : 1;
7192   unsigned PSMC3DC12            : 1;
7193   unsigned PSMC3DC13            : 1;
7194   unsigned PSMC3DC14            : 1;
7195   unsigned PSMC3DC15            : 1;
7196   } __PSMC3DCHbits_t;
7197 
7198 extern __at(0x0EE4) volatile __PSMC3DCHbits_t PSMC3DCHbits;
7199 
7200 #define _PSMC3DC8               0x01
7201 #define _PSMC3DC9               0x02
7202 #define _PSMC3DC10              0x04
7203 #define _PSMC3DC11              0x08
7204 #define _PSMC3DC12              0x10
7205 #define _PSMC3DC13              0x20
7206 #define _PSMC3DC14              0x40
7207 #define _PSMC3DC15              0x80
7208 
7209 //==============================================================================
7210 
7211 extern __at(0x0EE5) __sfr PSMC3PR;
7212 
7213 //==============================================================================
7214 //        PSMC3PRL Bits
7215 
7216 extern __at(0x0EE5) __sfr PSMC3PRL;
7217 
7218 typedef struct
7219   {
7220   unsigned PSMC3PR0             : 1;
7221   unsigned PSMC3PR1             : 1;
7222   unsigned PSMC3PR2             : 1;
7223   unsigned PSMC3PR3             : 1;
7224   unsigned PSMC3PR4             : 1;
7225   unsigned PSMC3PR5             : 1;
7226   unsigned PSMC3PR6             : 1;
7227   unsigned PSMC3PR7             : 1;
7228   } __PSMC3PRLbits_t;
7229 
7230 extern __at(0x0EE5) volatile __PSMC3PRLbits_t PSMC3PRLbits;
7231 
7232 #define _PSMC3PR0               0x01
7233 #define _PSMC3PR1               0x02
7234 #define _PSMC3PR2               0x04
7235 #define _PSMC3PR3               0x08
7236 #define _PSMC3PR4               0x10
7237 #define _PSMC3PR5               0x20
7238 #define _PSMC3PR6               0x40
7239 #define _PSMC3PR7               0x80
7240 
7241 //==============================================================================
7242 
7243 
7244 //==============================================================================
7245 //        PSMC3PRH Bits
7246 
7247 extern __at(0x0EE6) __sfr PSMC3PRH;
7248 
7249 typedef struct
7250   {
7251   unsigned PSMC3PR8             : 1;
7252   unsigned PSMC3PR9             : 1;
7253   unsigned PSMC3PR10            : 1;
7254   unsigned PSMC3PR11            : 1;
7255   unsigned PSMC3PR12            : 1;
7256   unsigned PSMC3PR13            : 1;
7257   unsigned PSMC3PR14            : 1;
7258   unsigned PSMC3PR15            : 1;
7259   } __PSMC3PRHbits_t;
7260 
7261 extern __at(0x0EE6) volatile __PSMC3PRHbits_t PSMC3PRHbits;
7262 
7263 #define _PSMC3PR8               0x01
7264 #define _PSMC3PR9               0x02
7265 #define _PSMC3PR10              0x04
7266 #define _PSMC3PR11              0x08
7267 #define _PSMC3PR12              0x10
7268 #define _PSMC3PR13              0x20
7269 #define _PSMC3PR14              0x40
7270 #define _PSMC3PR15              0x80
7271 
7272 //==============================================================================
7273 
7274 extern __at(0x0EE7) __sfr PSMC3TMR;
7275 
7276 //==============================================================================
7277 //        PSMC3TMRL Bits
7278 
7279 extern __at(0x0EE7) __sfr PSMC3TMRL;
7280 
7281 typedef struct
7282   {
7283   unsigned PSMC3TMR0            : 1;
7284   unsigned PSMC3TMR1            : 1;
7285   unsigned PSMC3TMR2            : 1;
7286   unsigned PSMC3TMR3            : 1;
7287   unsigned PSMC3TMR4            : 1;
7288   unsigned PSMC3TMR5            : 1;
7289   unsigned PSMC3TMR6            : 1;
7290   unsigned PSMC3TMR7            : 1;
7291   } __PSMC3TMRLbits_t;
7292 
7293 extern __at(0x0EE7) volatile __PSMC3TMRLbits_t PSMC3TMRLbits;
7294 
7295 #define _PSMC3TMR0              0x01
7296 #define _PSMC3TMR1              0x02
7297 #define _PSMC3TMR2              0x04
7298 #define _PSMC3TMR3              0x08
7299 #define _PSMC3TMR4              0x10
7300 #define _PSMC3TMR5              0x20
7301 #define _PSMC3TMR6              0x40
7302 #define _PSMC3TMR7              0x80
7303 
7304 //==============================================================================
7305 
7306 
7307 //==============================================================================
7308 //        PSMC3TMRH Bits
7309 
7310 extern __at(0x0EE8) __sfr PSMC3TMRH;
7311 
7312 typedef struct
7313   {
7314   unsigned PSMC3TMR8            : 1;
7315   unsigned PSMC3TMR9            : 1;
7316   unsigned PSMC3TMR10           : 1;
7317   unsigned PSMC3TMR11           : 1;
7318   unsigned PSMC3TMR12           : 1;
7319   unsigned PSMC3TMR13           : 1;
7320   unsigned PSMC3TMR14           : 1;
7321   unsigned PSMC3TMR15           : 1;
7322   } __PSMC3TMRHbits_t;
7323 
7324 extern __at(0x0EE8) volatile __PSMC3TMRHbits_t PSMC3TMRHbits;
7325 
7326 #define _PSMC3TMR8              0x01
7327 #define _PSMC3TMR9              0x02
7328 #define _PSMC3TMR10             0x04
7329 #define _PSMC3TMR11             0x08
7330 #define _PSMC3TMR12             0x10
7331 #define _PSMC3TMR13             0x20
7332 #define _PSMC3TMR14             0x40
7333 #define _PSMC3TMR15             0x80
7334 
7335 //==============================================================================
7336 
7337 
7338 //==============================================================================
7339 //        PSMC3DBR Bits
7340 
7341 extern __at(0x0EE9) __sfr PSMC3DBR;
7342 
7343 typedef struct
7344   {
7345   unsigned PSMC3DBR0            : 1;
7346   unsigned PSMC3DBR1            : 1;
7347   unsigned PSMC3DBR2            : 1;
7348   unsigned PSMC3DBR3            : 1;
7349   unsigned PSMC3DBR4            : 1;
7350   unsigned PSMC3DBR5            : 1;
7351   unsigned PSMC3DBR6            : 1;
7352   unsigned PSMC3DBR7            : 1;
7353   } __PSMC3DBRbits_t;
7354 
7355 extern __at(0x0EE9) volatile __PSMC3DBRbits_t PSMC3DBRbits;
7356 
7357 #define _PSMC3DBR0              0x01
7358 #define _PSMC3DBR1              0x02
7359 #define _PSMC3DBR2              0x04
7360 #define _PSMC3DBR3              0x08
7361 #define _PSMC3DBR4              0x10
7362 #define _PSMC3DBR5              0x20
7363 #define _PSMC3DBR6              0x40
7364 #define _PSMC3DBR7              0x80
7365 
7366 //==============================================================================
7367 
7368 
7369 //==============================================================================
7370 //        PSMC3DBF Bits
7371 
7372 extern __at(0x0EEA) __sfr PSMC3DBF;
7373 
7374 typedef struct
7375   {
7376   unsigned PSMC3DBF0            : 1;
7377   unsigned PSMC3DBF1            : 1;
7378   unsigned PSMC3DBF2            : 1;
7379   unsigned PSMC3DBF3            : 1;
7380   unsigned PSMC3DBF4            : 1;
7381   unsigned PSMC3DBF5            : 1;
7382   unsigned PSMC3DBF6            : 1;
7383   unsigned PSMC3DBF7            : 1;
7384   } __PSMC3DBFbits_t;
7385 
7386 extern __at(0x0EEA) volatile __PSMC3DBFbits_t PSMC3DBFbits;
7387 
7388 #define _PSMC3DBF0              0x01
7389 #define _PSMC3DBF1              0x02
7390 #define _PSMC3DBF2              0x04
7391 #define _PSMC3DBF3              0x08
7392 #define _PSMC3DBF4              0x10
7393 #define _PSMC3DBF5              0x20
7394 #define _PSMC3DBF6              0x40
7395 #define _PSMC3DBF7              0x80
7396 
7397 //==============================================================================
7398 
7399 
7400 //==============================================================================
7401 //        PSMC3BLKR Bits
7402 
7403 extern __at(0x0EEB) __sfr PSMC3BLKR;
7404 
7405 typedef struct
7406   {
7407   unsigned PSMC3BLKR0           : 1;
7408   unsigned PSMC3BLKR1           : 1;
7409   unsigned PSMC3BLKR2           : 1;
7410   unsigned PSMC3BLKR3           : 1;
7411   unsigned PSMC3BLKR4           : 1;
7412   unsigned PSMC3BLKR5           : 1;
7413   unsigned PSMC3BLKR6           : 1;
7414   unsigned PSMC3BLKR7           : 1;
7415   } __PSMC3BLKRbits_t;
7416 
7417 extern __at(0x0EEB) volatile __PSMC3BLKRbits_t PSMC3BLKRbits;
7418 
7419 #define _PSMC3BLKR0             0x01
7420 #define _PSMC3BLKR1             0x02
7421 #define _PSMC3BLKR2             0x04
7422 #define _PSMC3BLKR3             0x08
7423 #define _PSMC3BLKR4             0x10
7424 #define _PSMC3BLKR5             0x20
7425 #define _PSMC3BLKR6             0x40
7426 #define _PSMC3BLKR7             0x80
7427 
7428 //==============================================================================
7429 
7430 
7431 //==============================================================================
7432 //        PSMC3BLKF Bits
7433 
7434 extern __at(0x0EEC) __sfr PSMC3BLKF;
7435 
7436 typedef struct
7437   {
7438   unsigned PSMC3BLKF0           : 1;
7439   unsigned PSMC3BLKF1           : 1;
7440   unsigned PSMC3BLKF2           : 1;
7441   unsigned PSMC3BLKF3           : 1;
7442   unsigned PSMC3BLKF4           : 1;
7443   unsigned PSMC3BLKF5           : 1;
7444   unsigned PSMC3BLKF6           : 1;
7445   unsigned PSMC3BLKF7           : 1;
7446   } __PSMC3BLKFbits_t;
7447 
7448 extern __at(0x0EEC) volatile __PSMC3BLKFbits_t PSMC3BLKFbits;
7449 
7450 #define _PSMC3BLKF0             0x01
7451 #define _PSMC3BLKF1             0x02
7452 #define _PSMC3BLKF2             0x04
7453 #define _PSMC3BLKF3             0x08
7454 #define _PSMC3BLKF4             0x10
7455 #define _PSMC3BLKF5             0x20
7456 #define _PSMC3BLKF6             0x40
7457 #define _PSMC3BLKF7             0x80
7458 
7459 //==============================================================================
7460 
7461 
7462 //==============================================================================
7463 //        PSMC3FFA Bits
7464 
7465 extern __at(0x0EED) __sfr PSMC3FFA;
7466 
7467 typedef union
7468   {
7469   struct
7470     {
7471     unsigned PSMC3FFA0          : 1;
7472     unsigned PSMC3FFA1          : 1;
7473     unsigned PSMC3FFA2          : 1;
7474     unsigned PSMC3FFA3          : 1;
7475     unsigned                    : 1;
7476     unsigned                    : 1;
7477     unsigned                    : 1;
7478     unsigned                    : 1;
7479     };
7480 
7481   struct
7482     {
7483     unsigned PSMC3FFA           : 4;
7484     unsigned                    : 4;
7485     };
7486   } __PSMC3FFAbits_t;
7487 
7488 extern __at(0x0EED) volatile __PSMC3FFAbits_t PSMC3FFAbits;
7489 
7490 #define _PSMC3FFA0              0x01
7491 #define _PSMC3FFA1              0x02
7492 #define _PSMC3FFA2              0x04
7493 #define _PSMC3FFA3              0x08
7494 
7495 //==============================================================================
7496 
7497 
7498 //==============================================================================
7499 //        PSMC3STR0 Bits
7500 
7501 extern __at(0x0EEE) __sfr PSMC3STR0;
7502 
7503 typedef struct
7504   {
7505   unsigned P3STRA               : 1;
7506   unsigned P3STRB               : 1;
7507   unsigned                      : 1;
7508   unsigned                      : 1;
7509   unsigned                      : 1;
7510   unsigned                      : 1;
7511   unsigned                      : 1;
7512   unsigned                      : 1;
7513   } __PSMC3STR0bits_t;
7514 
7515 extern __at(0x0EEE) volatile __PSMC3STR0bits_t PSMC3STR0bits;
7516 
7517 #define _P3STRA                 0x01
7518 #define _P3STRB                 0x02
7519 
7520 //==============================================================================
7521 
7522 
7523 //==============================================================================
7524 //        PSMC3STR1 Bits
7525 
7526 extern __at(0x0EEF) __sfr PSMC3STR1;
7527 
7528 typedef struct
7529   {
7530   unsigned P3HSMEN              : 1;
7531   unsigned P3LSMEN              : 1;
7532   unsigned                      : 1;
7533   unsigned                      : 1;
7534   unsigned                      : 1;
7535   unsigned                      : 1;
7536   unsigned                      : 1;
7537   unsigned P3SSYNC              : 1;
7538   } __PSMC3STR1bits_t;
7539 
7540 extern __at(0x0EEF) volatile __PSMC3STR1bits_t PSMC3STR1bits;
7541 
7542 #define _P3HSMEN                0x01
7543 #define _P3LSMEN                0x02
7544 #define _P3SSYNC                0x80
7545 
7546 //==============================================================================
7547 
7548 
7549 //==============================================================================
7550 //        PSMC4CON Bits
7551 
7552 extern __at(0x0F11) __sfr PSMC4CON;
7553 
7554 typedef union
7555   {
7556   struct
7557     {
7558     unsigned P4MODE0            : 1;
7559     unsigned P4MODE1            : 1;
7560     unsigned P4MODE2            : 1;
7561     unsigned P4MODE3            : 1;
7562     unsigned P4DBRE             : 1;
7563     unsigned P4DBFE             : 1;
7564     unsigned PSMC4LD            : 1;
7565     unsigned PSMC4EN            : 1;
7566     };
7567 
7568   struct
7569     {
7570     unsigned P4MODE             : 4;
7571     unsigned                    : 4;
7572     };
7573   } __PSMC4CONbits_t;
7574 
7575 extern __at(0x0F11) volatile __PSMC4CONbits_t PSMC4CONbits;
7576 
7577 #define _P4MODE0                0x01
7578 #define _P4MODE1                0x02
7579 #define _P4MODE2                0x04
7580 #define _P4MODE3                0x08
7581 #define _P4DBRE                 0x10
7582 #define _P4DBFE                 0x20
7583 #define _PSMC4LD                0x40
7584 #define _PSMC4EN                0x80
7585 
7586 //==============================================================================
7587 
7588 
7589 //==============================================================================
7590 //        PSMC4MDL Bits
7591 
7592 extern __at(0x0F12) __sfr PSMC4MDL;
7593 
7594 typedef union
7595   {
7596   struct
7597     {
7598     unsigned P4MSRC0            : 1;
7599     unsigned P4MSRC1            : 1;
7600     unsigned P4MSRC2            : 1;
7601     unsigned P4MSRC3            : 1;
7602     unsigned                    : 1;
7603     unsigned P4MDLBIT           : 1;
7604     unsigned P4MDLPOL           : 1;
7605     unsigned P4MDLEN            : 1;
7606     };
7607 
7608   struct
7609     {
7610     unsigned P4MSRC             : 4;
7611     unsigned                    : 4;
7612     };
7613   } __PSMC4MDLbits_t;
7614 
7615 extern __at(0x0F12) volatile __PSMC4MDLbits_t PSMC4MDLbits;
7616 
7617 #define _P4MSRC0                0x01
7618 #define _P4MSRC1                0x02
7619 #define _P4MSRC2                0x04
7620 #define _P4MSRC3                0x08
7621 #define _P4MDLBIT               0x20
7622 #define _P4MDLPOL               0x40
7623 #define _P4MDLEN                0x80
7624 
7625 //==============================================================================
7626 
7627 
7628 //==============================================================================
7629 //        PSMC4SYNC Bits
7630 
7631 extern __at(0x0F13) __sfr PSMC4SYNC;
7632 
7633 typedef union
7634   {
7635   struct
7636     {
7637     unsigned P4SYNC0            : 1;
7638     unsigned P4SYNC1            : 1;
7639     unsigned P4SYNC2            : 1;
7640     unsigned                    : 1;
7641     unsigned                    : 1;
7642     unsigned P4DCPOL            : 1;
7643     unsigned P4PRPOL            : 1;
7644     unsigned P4POFST            : 1;
7645     };
7646 
7647   struct
7648     {
7649     unsigned P4SYNC             : 3;
7650     unsigned                    : 5;
7651     };
7652   } __PSMC4SYNCbits_t;
7653 
7654 extern __at(0x0F13) volatile __PSMC4SYNCbits_t PSMC4SYNCbits;
7655 
7656 #define _P4SYNC0                0x01
7657 #define _P4SYNC1                0x02
7658 #define _P4SYNC2                0x04
7659 #define _P4DCPOL                0x20
7660 #define _P4PRPOL                0x40
7661 #define _P4POFST                0x80
7662 
7663 //==============================================================================
7664 
7665 
7666 //==============================================================================
7667 //        PSMC4CLK Bits
7668 
7669 extern __at(0x0F14) __sfr PSMC4CLK;
7670 
7671 typedef union
7672   {
7673   struct
7674     {
7675     unsigned P4CSRC0            : 1;
7676     unsigned P4CSRC1            : 1;
7677     unsigned                    : 1;
7678     unsigned                    : 1;
7679     unsigned P4CPRE0            : 1;
7680     unsigned P4CPRE1            : 1;
7681     unsigned                    : 1;
7682     unsigned                    : 1;
7683     };
7684 
7685   struct
7686     {
7687     unsigned P4CSRC             : 2;
7688     unsigned                    : 6;
7689     };
7690 
7691   struct
7692     {
7693     unsigned                    : 4;
7694     unsigned P4CPRE             : 2;
7695     unsigned                    : 2;
7696     };
7697   } __PSMC4CLKbits_t;
7698 
7699 extern __at(0x0F14) volatile __PSMC4CLKbits_t PSMC4CLKbits;
7700 
7701 #define _P4CSRC0                0x01
7702 #define _P4CSRC1                0x02
7703 #define _P4CPRE0                0x10
7704 #define _P4CPRE1                0x20
7705 
7706 //==============================================================================
7707 
7708 
7709 //==============================================================================
7710 //        PSMC4OEN Bits
7711 
7712 extern __at(0x0F15) __sfr PSMC4OEN;
7713 
7714 typedef struct
7715   {
7716   unsigned P4OEA                : 1;
7717   unsigned P4OEB                : 1;
7718   unsigned                      : 1;
7719   unsigned                      : 1;
7720   unsigned                      : 1;
7721   unsigned                      : 1;
7722   unsigned                      : 1;
7723   unsigned                      : 1;
7724   } __PSMC4OENbits_t;
7725 
7726 extern __at(0x0F15) volatile __PSMC4OENbits_t PSMC4OENbits;
7727 
7728 #define _P4OEA                  0x01
7729 #define _P4OEB                  0x02
7730 
7731 //==============================================================================
7732 
7733 
7734 //==============================================================================
7735 //        PSMC4POL Bits
7736 
7737 extern __at(0x0F16) __sfr PSMC4POL;
7738 
7739 typedef struct
7740   {
7741   unsigned P4POLA               : 1;
7742   unsigned P4POLB               : 1;
7743   unsigned                      : 1;
7744   unsigned                      : 1;
7745   unsigned                      : 1;
7746   unsigned                      : 1;
7747   unsigned P4INPOL              : 1;
7748   unsigned                      : 1;
7749   } __PSMC4POLbits_t;
7750 
7751 extern __at(0x0F16) volatile __PSMC4POLbits_t PSMC4POLbits;
7752 
7753 #define _P4POLA                 0x01
7754 #define _P4POLB                 0x02
7755 #define _P4INPOL                0x40
7756 
7757 //==============================================================================
7758 
7759 
7760 //==============================================================================
7761 //        PSMC4BLNK Bits
7762 
7763 extern __at(0x0F17) __sfr PSMC4BLNK;
7764 
7765 typedef union
7766   {
7767   struct
7768     {
7769     unsigned P4REBM0            : 1;
7770     unsigned P4REBM1            : 1;
7771     unsigned                    : 1;
7772     unsigned                    : 1;
7773     unsigned P4FEBM0            : 1;
7774     unsigned P4FEBM1            : 1;
7775     unsigned                    : 1;
7776     unsigned                    : 1;
7777     };
7778 
7779   struct
7780     {
7781     unsigned P4REBM             : 2;
7782     unsigned                    : 6;
7783     };
7784 
7785   struct
7786     {
7787     unsigned                    : 4;
7788     unsigned P4FEBM             : 2;
7789     unsigned                    : 2;
7790     };
7791   } __PSMC4BLNKbits_t;
7792 
7793 extern __at(0x0F17) volatile __PSMC4BLNKbits_t PSMC4BLNKbits;
7794 
7795 #define _P4REBM0                0x01
7796 #define _P4REBM1                0x02
7797 #define _P4FEBM0                0x10
7798 #define _P4FEBM1                0x20
7799 
7800 //==============================================================================
7801 
7802 
7803 //==============================================================================
7804 //        PSMC4REBS Bits
7805 
7806 extern __at(0x0F18) __sfr PSMC4REBS;
7807 
7808 typedef struct
7809   {
7810   unsigned                      : 1;
7811   unsigned P4REBSC1             : 1;
7812   unsigned P4REBSC2             : 1;
7813   unsigned P4REBSC3             : 1;
7814   unsigned P4REBSC4             : 1;
7815   unsigned                      : 1;
7816   unsigned                      : 1;
7817   unsigned P4REBSIN             : 1;
7818   } __PSMC4REBSbits_t;
7819 
7820 extern __at(0x0F18) volatile __PSMC4REBSbits_t PSMC4REBSbits;
7821 
7822 #define _P4REBSC1               0x02
7823 #define _P4REBSC2               0x04
7824 #define _P4REBSC3               0x08
7825 #define _P4REBSC4               0x10
7826 #define _P4REBSIN               0x80
7827 
7828 //==============================================================================
7829 
7830 
7831 //==============================================================================
7832 //        PSMC4FEBS Bits
7833 
7834 extern __at(0x0F19) __sfr PSMC4FEBS;
7835 
7836 typedef struct
7837   {
7838   unsigned                      : 1;
7839   unsigned P4FEBSC1             : 1;
7840   unsigned P4FEBSC2             : 1;
7841   unsigned P4FEBSC3             : 1;
7842   unsigned P4FEBSC4             : 1;
7843   unsigned                      : 1;
7844   unsigned                      : 1;
7845   unsigned P4FEBSIN             : 1;
7846   } __PSMC4FEBSbits_t;
7847 
7848 extern __at(0x0F19) volatile __PSMC4FEBSbits_t PSMC4FEBSbits;
7849 
7850 #define _P4FEBSC1               0x02
7851 #define _P4FEBSC2               0x04
7852 #define _P4FEBSC3               0x08
7853 #define _P4FEBSC4               0x10
7854 #define _P4FEBSIN               0x80
7855 
7856 //==============================================================================
7857 
7858 
7859 //==============================================================================
7860 //        PSMC4PHS Bits
7861 
7862 extern __at(0x0F1A) __sfr PSMC4PHS;
7863 
7864 typedef struct
7865   {
7866   unsigned P4PHST               : 1;
7867   unsigned P4PHSC1              : 1;
7868   unsigned P4PHSC2              : 1;
7869   unsigned P4PHSC3              : 1;
7870   unsigned P4PHSC4              : 1;
7871   unsigned                      : 1;
7872   unsigned                      : 1;
7873   unsigned P4PHSIN              : 1;
7874   } __PSMC4PHSbits_t;
7875 
7876 extern __at(0x0F1A) volatile __PSMC4PHSbits_t PSMC4PHSbits;
7877 
7878 #define _P4PHST                 0x01
7879 #define _P4PHSC1                0x02
7880 #define _P4PHSC2                0x04
7881 #define _P4PHSC3                0x08
7882 #define _P4PHSC4                0x10
7883 #define _P4PHSIN                0x80
7884 
7885 //==============================================================================
7886 
7887 
7888 //==============================================================================
7889 //        PSMC4DCS Bits
7890 
7891 extern __at(0x0F1B) __sfr PSMC4DCS;
7892 
7893 typedef struct
7894   {
7895   unsigned P4DCST               : 1;
7896   unsigned P4DCSC1              : 1;
7897   unsigned P4DCSC2              : 1;
7898   unsigned P4DCSC3              : 1;
7899   unsigned P4DCSC4              : 1;
7900   unsigned                      : 1;
7901   unsigned                      : 1;
7902   unsigned P4DCSIN              : 1;
7903   } __PSMC4DCSbits_t;
7904 
7905 extern __at(0x0F1B) volatile __PSMC4DCSbits_t PSMC4DCSbits;
7906 
7907 #define _P4DCST                 0x01
7908 #define _P4DCSC1                0x02
7909 #define _P4DCSC2                0x04
7910 #define _P4DCSC3                0x08
7911 #define _P4DCSC4                0x10
7912 #define _P4DCSIN                0x80
7913 
7914 //==============================================================================
7915 
7916 
7917 //==============================================================================
7918 //        PSMC4PRS Bits
7919 
7920 extern __at(0x0F1C) __sfr PSMC4PRS;
7921 
7922 typedef struct
7923   {
7924   unsigned P4PRST               : 1;
7925   unsigned P4PRSC1              : 1;
7926   unsigned P4PRSC2              : 1;
7927   unsigned P4PRSC3              : 1;
7928   unsigned P4PRSC4              : 1;
7929   unsigned                      : 1;
7930   unsigned                      : 1;
7931   unsigned P4PRSIN              : 1;
7932   } __PSMC4PRSbits_t;
7933 
7934 extern __at(0x0F1C) volatile __PSMC4PRSbits_t PSMC4PRSbits;
7935 
7936 #define _P4PRST                 0x01
7937 #define _P4PRSC1                0x02
7938 #define _P4PRSC2                0x04
7939 #define _P4PRSC3                0x08
7940 #define _P4PRSC4                0x10
7941 #define _P4PRSIN                0x80
7942 
7943 //==============================================================================
7944 
7945 
7946 //==============================================================================
7947 //        PSMC4ASDC Bits
7948 
7949 extern __at(0x0F1D) __sfr PSMC4ASDC;
7950 
7951 typedef struct
7952   {
7953   unsigned P4ASDOV              : 1;
7954   unsigned                      : 1;
7955   unsigned                      : 1;
7956   unsigned                      : 1;
7957   unsigned                      : 1;
7958   unsigned P4ARSEN              : 1;
7959   unsigned P4ASDEN              : 1;
7960   unsigned P4ASE                : 1;
7961   } __PSMC4ASDCbits_t;
7962 
7963 extern __at(0x0F1D) volatile __PSMC4ASDCbits_t PSMC4ASDCbits;
7964 
7965 #define _P4ASDOV                0x01
7966 #define _P4ARSEN                0x20
7967 #define _P4ASDEN                0x40
7968 #define _P4ASE                  0x80
7969 
7970 //==============================================================================
7971 
7972 
7973 //==============================================================================
7974 //        PSMC4ASDL Bits
7975 
7976 extern __at(0x0F1E) __sfr PSMC4ASDL;
7977 
7978 typedef struct
7979   {
7980   unsigned P4ASDLA              : 1;
7981   unsigned P4ASDLB              : 1;
7982   unsigned                      : 1;
7983   unsigned                      : 1;
7984   unsigned                      : 1;
7985   unsigned                      : 1;
7986   unsigned                      : 1;
7987   unsigned                      : 1;
7988   } __PSMC4ASDLbits_t;
7989 
7990 extern __at(0x0F1E) volatile __PSMC4ASDLbits_t PSMC4ASDLbits;
7991 
7992 #define _P4ASDLA                0x01
7993 #define _P4ASDLB                0x02
7994 
7995 //==============================================================================
7996 
7997 
7998 //==============================================================================
7999 //        PSMC4ASDS Bits
8000 
8001 extern __at(0x0F1F) __sfr PSMC4ASDS;
8002 
8003 typedef struct
8004   {
8005   unsigned                      : 1;
8006   unsigned P4ASDSC1             : 1;
8007   unsigned P4ASDSC2             : 1;
8008   unsigned P4ASDSC3             : 1;
8009   unsigned P4ASDSC4             : 1;
8010   unsigned                      : 1;
8011   unsigned                      : 1;
8012   unsigned P4ASDSIN             : 1;
8013   } __PSMC4ASDSbits_t;
8014 
8015 extern __at(0x0F1F) volatile __PSMC4ASDSbits_t PSMC4ASDSbits;
8016 
8017 #define _P4ASDSC1               0x02
8018 #define _P4ASDSC2               0x04
8019 #define _P4ASDSC3               0x08
8020 #define _P4ASDSC4               0x10
8021 #define _P4ASDSIN               0x80
8022 
8023 //==============================================================================
8024 
8025 
8026 //==============================================================================
8027 //        PSMC4INT Bits
8028 
8029 extern __at(0x0F20) __sfr PSMC4INT;
8030 
8031 typedef struct
8032   {
8033   unsigned P4TPRIF              : 1;
8034   unsigned P4TDCIF              : 1;
8035   unsigned P4TPHIF              : 1;
8036   unsigned P4TOVIF              : 1;
8037   unsigned P4TPRIE              : 1;
8038   unsigned P4TDCIE              : 1;
8039   unsigned P4TPHIE              : 1;
8040   unsigned P4TOVIE              : 1;
8041   } __PSMC4INTbits_t;
8042 
8043 extern __at(0x0F20) volatile __PSMC4INTbits_t PSMC4INTbits;
8044 
8045 #define _P4TPRIF                0x01
8046 #define _P4TDCIF                0x02
8047 #define _P4TPHIF                0x04
8048 #define _P4TOVIF                0x08
8049 #define _P4TPRIE                0x10
8050 #define _P4TDCIE                0x20
8051 #define _P4TPHIE                0x40
8052 #define _P4TOVIE                0x80
8053 
8054 //==============================================================================
8055 
8056 extern __at(0x0F21) __sfr PSMC4PH;
8057 
8058 //==============================================================================
8059 //        PSMC4PHL Bits
8060 
8061 extern __at(0x0F21) __sfr PSMC4PHL;
8062 
8063 typedef struct
8064   {
8065   unsigned PSMC4PH0             : 1;
8066   unsigned PSMC4PH1             : 1;
8067   unsigned PSMC4PH2             : 1;
8068   unsigned PSMC4PH3             : 1;
8069   unsigned PSMC4PH4             : 1;
8070   unsigned PSMC4PH5             : 1;
8071   unsigned PSMC4PH6             : 1;
8072   unsigned PSMC4PH7             : 1;
8073   } __PSMC4PHLbits_t;
8074 
8075 extern __at(0x0F21) volatile __PSMC4PHLbits_t PSMC4PHLbits;
8076 
8077 #define _PSMC4PH0               0x01
8078 #define _PSMC4PH1               0x02
8079 #define _PSMC4PH2               0x04
8080 #define _PSMC4PH3               0x08
8081 #define _PSMC4PH4               0x10
8082 #define _PSMC4PH5               0x20
8083 #define _PSMC4PH6               0x40
8084 #define _PSMC4PH7               0x80
8085 
8086 //==============================================================================
8087 
8088 
8089 //==============================================================================
8090 //        PSMC4PHH Bits
8091 
8092 extern __at(0x0F22) __sfr PSMC4PHH;
8093 
8094 typedef struct
8095   {
8096   unsigned PSMC4PH8             : 1;
8097   unsigned PSMC4PH9             : 1;
8098   unsigned PSMC4PH10            : 1;
8099   unsigned PSMC4PH11            : 1;
8100   unsigned PSMC4PH12            : 1;
8101   unsigned PSMC4PH13            : 1;
8102   unsigned PSMC4PH14            : 1;
8103   unsigned PSMC4PH15            : 1;
8104   } __PSMC4PHHbits_t;
8105 
8106 extern __at(0x0F22) volatile __PSMC4PHHbits_t PSMC4PHHbits;
8107 
8108 #define _PSMC4PH8               0x01
8109 #define _PSMC4PH9               0x02
8110 #define _PSMC4PH10              0x04
8111 #define _PSMC4PH11              0x08
8112 #define _PSMC4PH12              0x10
8113 #define _PSMC4PH13              0x20
8114 #define _PSMC4PH14              0x40
8115 #define _PSMC4PH15              0x80
8116 
8117 //==============================================================================
8118 
8119 extern __at(0x0F23) __sfr PSMC4DC;
8120 
8121 //==============================================================================
8122 //        PSMC4DCL Bits
8123 
8124 extern __at(0x0F23) __sfr PSMC4DCL;
8125 
8126 typedef struct
8127   {
8128   unsigned PSMC4DC0             : 1;
8129   unsigned PSMC4DC1             : 1;
8130   unsigned PSMC4DC2             : 1;
8131   unsigned PSMC4DC3             : 1;
8132   unsigned PSMC4DC4             : 1;
8133   unsigned PSMC4DC5             : 1;
8134   unsigned PSMC4DC6             : 1;
8135   unsigned PSMC4DC7             : 1;
8136   } __PSMC4DCLbits_t;
8137 
8138 extern __at(0x0F23) volatile __PSMC4DCLbits_t PSMC4DCLbits;
8139 
8140 #define _PSMC4DC0               0x01
8141 #define _PSMC4DC1               0x02
8142 #define _PSMC4DC2               0x04
8143 #define _PSMC4DC3               0x08
8144 #define _PSMC4DC4               0x10
8145 #define _PSMC4DC5               0x20
8146 #define _PSMC4DC6               0x40
8147 #define _PSMC4DC7               0x80
8148 
8149 //==============================================================================
8150 
8151 
8152 //==============================================================================
8153 //        PSMC4DCH Bits
8154 
8155 extern __at(0x0F24) __sfr PSMC4DCH;
8156 
8157 typedef struct
8158   {
8159   unsigned PSMC4DC8             : 1;
8160   unsigned PSMC4DC9             : 1;
8161   unsigned PSMC4DC10            : 1;
8162   unsigned PSMC4DC11            : 1;
8163   unsigned PSMC4DC12            : 1;
8164   unsigned PSMC4DC13            : 1;
8165   unsigned PSMC4DC14            : 1;
8166   unsigned PSMC4DC15            : 1;
8167   } __PSMC4DCHbits_t;
8168 
8169 extern __at(0x0F24) volatile __PSMC4DCHbits_t PSMC4DCHbits;
8170 
8171 #define _PSMC4DC8               0x01
8172 #define _PSMC4DC9               0x02
8173 #define _PSMC4DC10              0x04
8174 #define _PSMC4DC11              0x08
8175 #define _PSMC4DC12              0x10
8176 #define _PSMC4DC13              0x20
8177 #define _PSMC4DC14              0x40
8178 #define _PSMC4DC15              0x80
8179 
8180 //==============================================================================
8181 
8182 extern __at(0x0F25) __sfr PSMC4PR;
8183 
8184 //==============================================================================
8185 //        PSMC4PRL Bits
8186 
8187 extern __at(0x0F25) __sfr PSMC4PRL;
8188 
8189 typedef struct
8190   {
8191   unsigned PSMC4PR0             : 1;
8192   unsigned PSMC4PR1             : 1;
8193   unsigned PSMC4PR2             : 1;
8194   unsigned PSMC4PR3             : 1;
8195   unsigned PSMC4PR4             : 1;
8196   unsigned PSMC4PR5             : 1;
8197   unsigned PSMC4PR6             : 1;
8198   unsigned PSMC4PR7             : 1;
8199   } __PSMC4PRLbits_t;
8200 
8201 extern __at(0x0F25) volatile __PSMC4PRLbits_t PSMC4PRLbits;
8202 
8203 #define _PSMC4PR0               0x01
8204 #define _PSMC4PR1               0x02
8205 #define _PSMC4PR2               0x04
8206 #define _PSMC4PR3               0x08
8207 #define _PSMC4PR4               0x10
8208 #define _PSMC4PR5               0x20
8209 #define _PSMC4PR6               0x40
8210 #define _PSMC4PR7               0x80
8211 
8212 //==============================================================================
8213 
8214 
8215 //==============================================================================
8216 //        PSMC4PRH Bits
8217 
8218 extern __at(0x0F26) __sfr PSMC4PRH;
8219 
8220 typedef struct
8221   {
8222   unsigned PSMC4PR8             : 1;
8223   unsigned PSMC4PR9             : 1;
8224   unsigned PSMC4PR10            : 1;
8225   unsigned PSMC4PR11            : 1;
8226   unsigned PSMC4PR12            : 1;
8227   unsigned PSMC4PR13            : 1;
8228   unsigned PSMC4PR14            : 1;
8229   unsigned PSMC4PR15            : 1;
8230   } __PSMC4PRHbits_t;
8231 
8232 extern __at(0x0F26) volatile __PSMC4PRHbits_t PSMC4PRHbits;
8233 
8234 #define _PSMC4PR8               0x01
8235 #define _PSMC4PR9               0x02
8236 #define _PSMC4PR10              0x04
8237 #define _PSMC4PR11              0x08
8238 #define _PSMC4PR12              0x10
8239 #define _PSMC4PR13              0x20
8240 #define _PSMC4PR14              0x40
8241 #define _PSMC4PR15              0x80
8242 
8243 //==============================================================================
8244 
8245 extern __at(0x0F27) __sfr PSMC4TMR;
8246 
8247 //==============================================================================
8248 //        PSMC4TMRL Bits
8249 
8250 extern __at(0x0F27) __sfr PSMC4TMRL;
8251 
8252 typedef struct
8253   {
8254   unsigned PSMC4TMR0            : 1;
8255   unsigned PSMC4TMR1            : 1;
8256   unsigned PSMC4TMR2            : 1;
8257   unsigned PSMC4TMR3            : 1;
8258   unsigned PSMC4TMR4            : 1;
8259   unsigned PSMC4TMR5            : 1;
8260   unsigned PSMC4TMR6            : 1;
8261   unsigned PSMC4TMR7            : 1;
8262   } __PSMC4TMRLbits_t;
8263 
8264 extern __at(0x0F27) volatile __PSMC4TMRLbits_t PSMC4TMRLbits;
8265 
8266 #define _PSMC4TMR0              0x01
8267 #define _PSMC4TMR1              0x02
8268 #define _PSMC4TMR2              0x04
8269 #define _PSMC4TMR3              0x08
8270 #define _PSMC4TMR4              0x10
8271 #define _PSMC4TMR5              0x20
8272 #define _PSMC4TMR6              0x40
8273 #define _PSMC4TMR7              0x80
8274 
8275 //==============================================================================
8276 
8277 
8278 //==============================================================================
8279 //        PSMC4TMRH Bits
8280 
8281 extern __at(0x0F28) __sfr PSMC4TMRH;
8282 
8283 typedef struct
8284   {
8285   unsigned PSMC4TMR8            : 1;
8286   unsigned PSMC4TMR9            : 1;
8287   unsigned PSMC4TMR10           : 1;
8288   unsigned PSMC4TMR11           : 1;
8289   unsigned PSMC4TMR12           : 1;
8290   unsigned PSMC4TMR13           : 1;
8291   unsigned PSMC4TMR14           : 1;
8292   unsigned PSMC4TMR15           : 1;
8293   } __PSMC4TMRHbits_t;
8294 
8295 extern __at(0x0F28) volatile __PSMC4TMRHbits_t PSMC4TMRHbits;
8296 
8297 #define _PSMC4TMR8              0x01
8298 #define _PSMC4TMR9              0x02
8299 #define _PSMC4TMR10             0x04
8300 #define _PSMC4TMR11             0x08
8301 #define _PSMC4TMR12             0x10
8302 #define _PSMC4TMR13             0x20
8303 #define _PSMC4TMR14             0x40
8304 #define _PSMC4TMR15             0x80
8305 
8306 //==============================================================================
8307 
8308 
8309 //==============================================================================
8310 //        PSMC4DBR Bits
8311 
8312 extern __at(0x0F29) __sfr PSMC4DBR;
8313 
8314 typedef struct
8315   {
8316   unsigned PSMC4DBR0            : 1;
8317   unsigned PSMC4DBR1            : 1;
8318   unsigned PSMC4DBR2            : 1;
8319   unsigned PSMC4DBR3            : 1;
8320   unsigned PSMC4DBR4            : 1;
8321   unsigned PSMC4DBR5            : 1;
8322   unsigned PSMC4DBR6            : 1;
8323   unsigned PSMC4DBR7            : 1;
8324   } __PSMC4DBRbits_t;
8325 
8326 extern __at(0x0F29) volatile __PSMC4DBRbits_t PSMC4DBRbits;
8327 
8328 #define _PSMC4DBR0              0x01
8329 #define _PSMC4DBR1              0x02
8330 #define _PSMC4DBR2              0x04
8331 #define _PSMC4DBR3              0x08
8332 #define _PSMC4DBR4              0x10
8333 #define _PSMC4DBR5              0x20
8334 #define _PSMC4DBR6              0x40
8335 #define _PSMC4DBR7              0x80
8336 
8337 //==============================================================================
8338 
8339 
8340 //==============================================================================
8341 //        PSMC4DBF Bits
8342 
8343 extern __at(0x0F2A) __sfr PSMC4DBF;
8344 
8345 typedef struct
8346   {
8347   unsigned PSMC4DBF0            : 1;
8348   unsigned PSMC4DBF1            : 1;
8349   unsigned PSMC4DBF2            : 1;
8350   unsigned PSMC4DBF3            : 1;
8351   unsigned PSMC4DBF4            : 1;
8352   unsigned PSMC4DBF5            : 1;
8353   unsigned PSMC4DBF6            : 1;
8354   unsigned PSMC4DBF7            : 1;
8355   } __PSMC4DBFbits_t;
8356 
8357 extern __at(0x0F2A) volatile __PSMC4DBFbits_t PSMC4DBFbits;
8358 
8359 #define _PSMC4DBF0              0x01
8360 #define _PSMC4DBF1              0x02
8361 #define _PSMC4DBF2              0x04
8362 #define _PSMC4DBF3              0x08
8363 #define _PSMC4DBF4              0x10
8364 #define _PSMC4DBF5              0x20
8365 #define _PSMC4DBF6              0x40
8366 #define _PSMC4DBF7              0x80
8367 
8368 //==============================================================================
8369 
8370 
8371 //==============================================================================
8372 //        PSMC4BLKR Bits
8373 
8374 extern __at(0x0F2B) __sfr PSMC4BLKR;
8375 
8376 typedef struct
8377   {
8378   unsigned PSMC4BLKR0           : 1;
8379   unsigned PSMC4BLKR1           : 1;
8380   unsigned PSMC4BLKR2           : 1;
8381   unsigned PSMC4BLKR3           : 1;
8382   unsigned PSMC4BLKR4           : 1;
8383   unsigned PSMC4BLKR5           : 1;
8384   unsigned PSMC4BLKR6           : 1;
8385   unsigned PSMC4BLKR7           : 1;
8386   } __PSMC4BLKRbits_t;
8387 
8388 extern __at(0x0F2B) volatile __PSMC4BLKRbits_t PSMC4BLKRbits;
8389 
8390 #define _PSMC4BLKR0             0x01
8391 #define _PSMC4BLKR1             0x02
8392 #define _PSMC4BLKR2             0x04
8393 #define _PSMC4BLKR3             0x08
8394 #define _PSMC4BLKR4             0x10
8395 #define _PSMC4BLKR5             0x20
8396 #define _PSMC4BLKR6             0x40
8397 #define _PSMC4BLKR7             0x80
8398 
8399 //==============================================================================
8400 
8401 
8402 //==============================================================================
8403 //        PSMC4BLKF Bits
8404 
8405 extern __at(0x0F2C) __sfr PSMC4BLKF;
8406 
8407 typedef struct
8408   {
8409   unsigned PSMC4BLKF0           : 1;
8410   unsigned PSMC4BLKF1           : 1;
8411   unsigned PSMC4BLKF2           : 1;
8412   unsigned PSMC4BLKF3           : 1;
8413   unsigned PSMC4BLKF4           : 1;
8414   unsigned PSMC4BLKF5           : 1;
8415   unsigned PSMC4BLKF6           : 1;
8416   unsigned PSMC4BLKF7           : 1;
8417   } __PSMC4BLKFbits_t;
8418 
8419 extern __at(0x0F2C) volatile __PSMC4BLKFbits_t PSMC4BLKFbits;
8420 
8421 #define _PSMC4BLKF0             0x01
8422 #define _PSMC4BLKF1             0x02
8423 #define _PSMC4BLKF2             0x04
8424 #define _PSMC4BLKF3             0x08
8425 #define _PSMC4BLKF4             0x10
8426 #define _PSMC4BLKF5             0x20
8427 #define _PSMC4BLKF6             0x40
8428 #define _PSMC4BLKF7             0x80
8429 
8430 //==============================================================================
8431 
8432 
8433 //==============================================================================
8434 //        PSMC4FFA Bits
8435 
8436 extern __at(0x0F2D) __sfr PSMC4FFA;
8437 
8438 typedef union
8439   {
8440   struct
8441     {
8442     unsigned PSMC4FFA0          : 1;
8443     unsigned PSMC4FFA1          : 1;
8444     unsigned PSMC4FFA2          : 1;
8445     unsigned PSMC4FFA3          : 1;
8446     unsigned                    : 1;
8447     unsigned                    : 1;
8448     unsigned                    : 1;
8449     unsigned                    : 1;
8450     };
8451 
8452   struct
8453     {
8454     unsigned PSMC4FFA           : 4;
8455     unsigned                    : 4;
8456     };
8457   } __PSMC4FFAbits_t;
8458 
8459 extern __at(0x0F2D) volatile __PSMC4FFAbits_t PSMC4FFAbits;
8460 
8461 #define _PSMC4FFA0              0x01
8462 #define _PSMC4FFA1              0x02
8463 #define _PSMC4FFA2              0x04
8464 #define _PSMC4FFA3              0x08
8465 
8466 //==============================================================================
8467 
8468 
8469 //==============================================================================
8470 //        PSMC4STR0 Bits
8471 
8472 extern __at(0x0F2E) __sfr PSMC4STR0;
8473 
8474 typedef struct
8475   {
8476   unsigned P4STRA               : 1;
8477   unsigned P4STRB               : 1;
8478   unsigned                      : 1;
8479   unsigned                      : 1;
8480   unsigned                      : 1;
8481   unsigned                      : 1;
8482   unsigned                      : 1;
8483   unsigned                      : 1;
8484   } __PSMC4STR0bits_t;
8485 
8486 extern __at(0x0F2E) volatile __PSMC4STR0bits_t PSMC4STR0bits;
8487 
8488 #define _P4STRA                 0x01
8489 #define _P4STRB                 0x02
8490 
8491 //==============================================================================
8492 
8493 
8494 //==============================================================================
8495 //        PSMC4STR1 Bits
8496 
8497 extern __at(0x0F2F) __sfr PSMC4STR1;
8498 
8499 typedef struct
8500   {
8501   unsigned P4HSMEN              : 1;
8502   unsigned P4LSMEN              : 1;
8503   unsigned                      : 1;
8504   unsigned                      : 1;
8505   unsigned                      : 1;
8506   unsigned                      : 1;
8507   unsigned                      : 1;
8508   unsigned P4SSYNC              : 1;
8509   } __PSMC4STR1bits_t;
8510 
8511 extern __at(0x0F2F) volatile __PSMC4STR1bits_t PSMC4STR1bits;
8512 
8513 #define _P4HSMEN                0x01
8514 #define _P4LSMEN                0x02
8515 #define _P4SSYNC                0x80
8516 
8517 //==============================================================================
8518 
8519 
8520 //==============================================================================
8521 //        STATUS_SHAD Bits
8522 
8523 extern __at(0x0FE4) __sfr STATUS_SHAD;
8524 
8525 typedef struct
8526   {
8527   unsigned C_SHAD               : 1;
8528   unsigned DC_SHAD              : 1;
8529   unsigned Z_SHAD               : 1;
8530   unsigned                      : 1;
8531   unsigned                      : 1;
8532   unsigned                      : 1;
8533   unsigned                      : 1;
8534   unsigned                      : 1;
8535   } __STATUS_SHADbits_t;
8536 
8537 extern __at(0x0FE4) volatile __STATUS_SHADbits_t STATUS_SHADbits;
8538 
8539 #define _C_SHAD                 0x01
8540 #define _DC_SHAD                0x02
8541 #define _Z_SHAD                 0x04
8542 
8543 //==============================================================================
8544 
8545 extern __at(0x0FE5) __sfr WREG_SHAD;
8546 extern __at(0x0FE6) __sfr BSR_SHAD;
8547 extern __at(0x0FE7) __sfr PCLATH_SHAD;
8548 extern __at(0x0FE8) __sfr FSR0L_SHAD;
8549 extern __at(0x0FE9) __sfr FSR0H_SHAD;
8550 extern __at(0x0FEA) __sfr FSR1L_SHAD;
8551 extern __at(0x0FEB) __sfr FSR1H_SHAD;
8552 extern __at(0x0FED) __sfr STKPTR;
8553 extern __at(0x0FEE) __sfr TOSL;
8554 extern __at(0x0FEF) __sfr TOSH;
8555 
8556 //==============================================================================
8557 //
8558 //        Configuration Bits
8559 //
8560 //==============================================================================
8561 
8562 #define _CONFIG1                0x8007
8563 #define _CONFIG2                0x8008
8564 
8565 //----------------------------- CONFIG1 Options -------------------------------
8566 
8567 #define _FOSC_LP                0x3FF8  // LP Oscillator, Low-power crystal connected between OSC1 and OSC2 pins.
8568 #define _FOSC_XT                0x3FF9  // XT Oscillator, Crystal/resonator connected between OSC1 and OSC2 pins.
8569 #define _FOSC_HS                0x3FFA  // HS Oscillator, High-speed crystal/resonator connected between OSC1 and OSC2 pins.
8570 #define _FOSC_EXTRC             0x3FFB  // EXTRC oscillator: External RC circuit connected to CLKIN pin.
8571 #define _FOSC_INTOSC            0x3FFC  // INTOSC oscillator: I/O function on CLKIN pin.
8572 #define _FOSC_ECL               0x3FFD  // ECL, External Clock, Low Power Mode (0-0.5 MHz): device clock supplied to CLKIN pin.
8573 #define _FOSC_ECM               0x3FFE  // ECM, External Clock, Medium Power Mode (0.5-4 MHz): device clock supplied to CLKIN pin.
8574 #define _FOSC_ECH               0x3FFF  // ECH, External Clock, High Power Mode (4-32 MHz): device clock supplied to CLKIN pin.
8575 #define _WDTE_OFF               0x3FE7  // WDT disabled.
8576 #define _WDTE_SWDTEN            0x3FEF  // WDT controlled by the SWDTEN bit in the WDTCON register.
8577 #define _WDTE_NSLEEP            0x3FF7  // WDT enabled while running and disabled in Sleep.
8578 #define _WDTE_ON                0x3FFF  // WDT enabled.
8579 #define _PWRTE_ON               0x3FDF  // PWRT enabled.
8580 #define _PWRTE_OFF              0x3FFF  // PWRT disabled.
8581 #define _MCLRE_OFF              0x3FBF  // MCLR/VPP pin function is digital input.
8582 #define _MCLRE_ON               0x3FFF  // MCLR/VPP pin function is MCLR.
8583 #define _CP_ON                  0x3F7F  // Program memory code protection is enabled.
8584 #define _CP_OFF                 0x3FFF  // Program memory code protection is disabled.
8585 #define _CPD_ON                 0x3EFF  // Data memory code protection is enabled.
8586 #define _CPD_OFF                0x3FFF  // Data memory code protection is disabled.
8587 #define _BOREN_OFF              0x39FF  // Brown-out Reset disabled.
8588 #define _BOREN_SBODEN           0x3BFF  // Brown-out Reset controlled by the SBOREN bit in the BORCON register.
8589 #define _BOREN_NSLEEP           0x3DFF  // Brown-out Reset enabled while running and disabled in Sleep.
8590 #define _BOREN_ON               0x3FFF  // Brown-out Reset enabled.
8591 #define _CLKOUTEN_ON            0x37FF  // CLKOUT function is enabled on the CLKOUT pin.
8592 #define _CLKOUTEN_OFF           0x3FFF  // CLKOUT function is disabled. I/O or oscillator function on the CLKOUT pin.
8593 #define _IESO_OFF               0x2FFF  // Internal/External Switchover mode is disabled.
8594 #define _IESO_ON                0x3FFF  // Internal/External Switchover mode is enabled.
8595 #define _FCMEN_OFF              0x1FFF  // Fail-Safe Clock Monitor is disabled.
8596 #define _FCMEN_ON               0x3FFF  // Fail-Safe Clock Monitor is enabled.
8597 
8598 //----------------------------- CONFIG2 Options -------------------------------
8599 
8600 #define _WRT_ALL                0x3FFC  // 000h to 7FFh write protected, no addresses may be modified by EECON control.
8601 #define _WRT_HALF               0x3FFD  // 000h to FFFh write protected, 1000h to 1FFFh may be modified by EECON control.
8602 #define _WRT_BOOT               0x3FFE  // 000h to 1FFh write protected, 200h to 1FFFh may be modified by EECON control.
8603 #define _WRT_OFF                0x3FFF  // Write protection off.
8604 #define _VCAPEN_ON              0x3FDF  // Vcap functionality is enabled on RA6 (Vddcore is connected to the pad).
8605 #define _VCAPEN_OFF             0x3FFF  // Vcap functionality is disabled on RA6.
8606 #define _PLLEN_OFF              0x3EFF  // 4x PLL disabled.
8607 #define _PLLEN_ON               0x3FFF  // 4x PLL enabled.
8608 #define _STVREN_OFF             0x3DFF  // Stack Overflow or Underflow will not cause a Reset.
8609 #define _STVREN_ON              0x3FFF  // Stack Overflow or Underflow will cause a Reset.
8610 #define _BORV_HI                0x3BFF  // Brown-out Reset Voltage (Vbor), high trip point selected.
8611 #define _BORV_LO                0x3FFF  // Brown-out Reset Voltage (Vbor), low trip point selected.
8612 #define _LPBOR_ON               0x37FF  // Low power brown-out is enabled.
8613 #define _LPBOR_OFF              0x3FFF  // Low power brown-out is disabled.
8614 #define _DEBUG_ON               0x2FFF  // In-Circuit Debugger enabled, ICSPCLK and ICSPDAT are dedicated to the debugger.
8615 #define _DEBUG_OFF              0x3FFF  // In-Circuit Debugger disabled, ICSPCLK and ICSPDAT are general purpose I/O pins.
8616 #define _LVP_OFF                0x1FFF  // High-voltage on MCLR/VPP must be used for programming.
8617 #define _LVP_ON                 0x3FFF  // Low-voltage programming enabled.
8618 
8619 //==============================================================================
8620 
8621 #define _DEVID1                 0x8006
8622 
8623 #define _IDLOC0                 0x8000
8624 #define _IDLOC1                 0x8001
8625 #define _IDLOC2                 0x8002
8626 #define _IDLOC3                 0x8003
8627 
8628 //==============================================================================
8629 
8630 #ifndef NO_BIT_DEFINES
8631 
8632 #define ADON                    ADCON0bits.ADON                 // bit 0
8633 #define GO_NOT_DONE             ADCON0bits.GO_NOT_DONE          // bit 1, shadows bit in ADCON0bits
8634 #define ADGO                    ADCON0bits.ADGO                 // bit 1, shadows bit in ADCON0bits
8635 #define GO                      ADCON0bits.GO                   // bit 1, shadows bit in ADCON0bits
8636 #define DONE                    ADCON0bits.DONE                 // bit 1, shadows bit in ADCON0bits
8637 #define CHS0                    ADCON0bits.CHS0                 // bit 2
8638 #define CHS1                    ADCON0bits.CHS1                 // bit 3
8639 #define CHS2                    ADCON0bits.CHS2                 // bit 4
8640 #define CHS3                    ADCON0bits.CHS3                 // bit 5
8641 #define CHS4                    ADCON0bits.CHS4                 // bit 6
8642 #define ADRMD                   ADCON0bits.ADRMD                // bit 7
8643 
8644 #define ADPREF0                 ADCON1bits.ADPREF0              // bit 0
8645 #define ADPREF1                 ADCON1bits.ADPREF1              // bit 1
8646 #define ADNREF                  ADCON1bits.ADNREF               // bit 2
8647 #define ADCS0                   ADCON1bits.ADCS0                // bit 4
8648 #define ADCS1                   ADCON1bits.ADCS1                // bit 5
8649 #define ADCS2                   ADCON1bits.ADCS2                // bit 6
8650 #define ADFM                    ADCON1bits.ADFM                 // bit 7
8651 
8652 #define CHSN0                   ADCON2bits.CHSN0                // bit 0
8653 #define CHSN1                   ADCON2bits.CHSN1                // bit 1
8654 #define CHSN2                   ADCON2bits.CHSN2                // bit 2
8655 #define CHSN3                   ADCON2bits.CHSN3                // bit 3
8656 #define TRIGSEL0                ADCON2bits.TRIGSEL0             // bit 4
8657 #define TRIGSEL1                ADCON2bits.TRIGSEL1             // bit 5
8658 #define TRIGSEL2                ADCON2bits.TRIGSEL2             // bit 6
8659 #define TRIGSEL3                ADCON2bits.TRIGSEL3             // bit 7
8660 
8661 #define ANSA0                   ANSELAbits.ANSA0                // bit 0
8662 #define ANSA1                   ANSELAbits.ANSA1                // bit 1
8663 #define ANSA2                   ANSELAbits.ANSA2                // bit 2
8664 #define ANSA3                   ANSELAbits.ANSA3                // bit 3
8665 #define ANSA4                   ANSELAbits.ANSA4                // bit 4
8666 #define ANSA5                   ANSELAbits.ANSA5                // bit 5
8667 #define ANSA7                   ANSELAbits.ANSA7                // bit 7
8668 
8669 #define ANSB0                   ANSELBbits.ANSB0                // bit 0
8670 #define ANSB1                   ANSELBbits.ANSB1                // bit 1
8671 #define ANSB2                   ANSELBbits.ANSB2                // bit 2
8672 #define ANSB3                   ANSELBbits.ANSB3                // bit 3
8673 #define ANSB4                   ANSELBbits.ANSB4                // bit 4
8674 #define ANSB5                   ANSELBbits.ANSB5                // bit 5
8675 #define ANSB6                   ANSELBbits.ANSB6                // bit 6
8676 
8677 #define ANSC0                   ANSELCbits.ANSC0                // bit 0
8678 #define ANSC1                   ANSELCbits.ANSC1                // bit 1
8679 #define ANSC2                   ANSELCbits.ANSC2                // bit 2
8680 #define ANSC3                   ANSELCbits.ANSC3                // bit 3
8681 #define ANSC4                   ANSELCbits.ANSC4                // bit 4
8682 #define ANSC5                   ANSELCbits.ANSC5                // bit 5
8683 #define ANSC6                   ANSELCbits.ANSC6                // bit 6
8684 #define ANSC7                   ANSELCbits.ANSC7                // bit 7
8685 
8686 #define CCP2SEL                 APFCONbits.CCP2SEL              // bit 0
8687 #define RXSEL                   APFCONbits.RXSEL                // bit 1
8688 #define TXSEL                   APFCONbits.TXSEL                // bit 2
8689 #define SDISEL                  APFCONbits.SDISEL               // bit 3
8690 #define SCKSEL                  APFCONbits.SCKSEL               // bit 4
8691 #define SDOSEL                  APFCONbits.SDOSEL               // bit 5
8692 #define CCP1SEL                 APFCONbits.CCP1SEL              // bit 6
8693 #define C2OUTSEL                APFCONbits.C2OUTSEL             // bit 7
8694 
8695 #define CCP3SEL                 APFCON2bits.CCP3SEL             // bit 0
8696 
8697 #define ABDEN                   BAUD1CONbits.ABDEN              // bit 0
8698 #define WUE                     BAUD1CONbits.WUE                // bit 1
8699 #define BRG16                   BAUD1CONbits.BRG16              // bit 3
8700 #define SCKP                    BAUD1CONbits.SCKP               // bit 4
8701 #define RCIDL                   BAUD1CONbits.RCIDL              // bit 6
8702 #define ABDOVF                  BAUD1CONbits.ABDOVF             // bit 7
8703 
8704 #define BORRDY                  BORCONbits.BORRDY               // bit 0
8705 #define BORFS                   BORCONbits.BORFS                // bit 6
8706 #define SBOREN                  BORCONbits.SBOREN               // bit 7
8707 
8708 #define BSR0                    BSRbits.BSR0                    // bit 0
8709 #define BSR1                    BSRbits.BSR1                    // bit 1
8710 #define BSR2                    BSRbits.BSR2                    // bit 2
8711 #define BSR3                    BSRbits.BSR3                    // bit 3
8712 #define BSR4                    BSRbits.BSR4                    // bit 4
8713 
8714 #define CCP1M0                  CCP1CONbits.CCP1M0              // bit 0
8715 #define CCP1M1                  CCP1CONbits.CCP1M1              // bit 1
8716 #define CCP1M2                  CCP1CONbits.CCP1M2              // bit 2
8717 #define CCP1M3                  CCP1CONbits.CCP1M3              // bit 3
8718 #define DC1B0                   CCP1CONbits.DC1B0               // bit 4
8719 #define DC1B1                   CCP1CONbits.DC1B1               // bit 5
8720 
8721 #define CCP2M0                  CCP2CONbits.CCP2M0              // bit 0
8722 #define CCP2M1                  CCP2CONbits.CCP2M1              // bit 1
8723 #define CCP2M2                  CCP2CONbits.CCP2M2              // bit 2
8724 #define CCP2M3                  CCP2CONbits.CCP2M3              // bit 3
8725 #define DC2B0                   CCP2CONbits.DC2B0               // bit 4
8726 #define DC2B1                   CCP2CONbits.DC2B1               // bit 5
8727 
8728 #define CCP3M0                  CCP3CONbits.CCP3M0              // bit 0
8729 #define CCP3M1                  CCP3CONbits.CCP3M1              // bit 1
8730 #define CCP3M2                  CCP3CONbits.CCP3M2              // bit 2
8731 #define CCP3M3                  CCP3CONbits.CCP3M3              // bit 3
8732 #define DC3B0                   CCP3CONbits.DC3B0               // bit 4
8733 #define DC3B1                   CCP3CONbits.DC3B1               // bit 5
8734 
8735 #define CLKRDIV0                CLKRCONbits.CLKRDIV0            // bit 0
8736 #define CLKRDIV1                CLKRCONbits.CLKRDIV1            // bit 1
8737 #define CLKRDIV2                CLKRCONbits.CLKRDIV2            // bit 2
8738 #define CLKRDC0                 CLKRCONbits.CLKRDC0             // bit 3
8739 #define CLKRDC1                 CLKRCONbits.CLKRDC1             // bit 4
8740 #define CLKRSLR                 CLKRCONbits.CLKRSLR             // bit 5
8741 #define CLKROE                  CLKRCONbits.CLKROE              // bit 6
8742 #define CLKREN                  CLKRCONbits.CLKREN              // bit 7
8743 
8744 #define C1SYNC                  CM1CON0bits.C1SYNC              // bit 0
8745 #define C1HYS                   CM1CON0bits.C1HYS               // bit 1
8746 #define C1SP                    CM1CON0bits.C1SP                // bit 2
8747 #define C1ZLF                   CM1CON0bits.C1ZLF               // bit 3
8748 #define C1POL                   CM1CON0bits.C1POL               // bit 4
8749 #define C1OE                    CM1CON0bits.C1OE                // bit 5
8750 #define C1OUT                   CM1CON0bits.C1OUT               // bit 6
8751 #define C1ON                    CM1CON0bits.C1ON                // bit 7
8752 
8753 #define C1NCH0                  CM1CON1bits.C1NCH0              // bit 0
8754 #define C1NCH1                  CM1CON1bits.C1NCH1              // bit 1
8755 #define C1NCH2                  CM1CON1bits.C1NCH2              // bit 2
8756 #define C1PCH0                  CM1CON1bits.C1PCH0              // bit 3
8757 #define C1PCH1                  CM1CON1bits.C1PCH1              // bit 4
8758 #define C1PCH2                  CM1CON1bits.C1PCH2              // bit 5
8759 #define C1INTN                  CM1CON1bits.C1INTN              // bit 6
8760 #define C1INTP                  CM1CON1bits.C1INTP              // bit 7
8761 
8762 #define C2SYNC                  CM2CON0bits.C2SYNC              // bit 0
8763 #define C2HYS                   CM2CON0bits.C2HYS               // bit 1
8764 #define C2SP                    CM2CON0bits.C2SP                // bit 2
8765 #define C2ZLF                   CM2CON0bits.C2ZLF               // bit 3
8766 #define C2POL                   CM2CON0bits.C2POL               // bit 4
8767 #define C2OE                    CM2CON0bits.C2OE                // bit 5
8768 #define C2OUT                   CM2CON0bits.C2OUT               // bit 6
8769 #define C2ON                    CM2CON0bits.C2ON                // bit 7
8770 
8771 #define C2NCH0                  CM2CON1bits.C2NCH0              // bit 0
8772 #define C2NCH1                  CM2CON1bits.C2NCH1              // bit 1
8773 #define C2NCH2                  CM2CON1bits.C2NCH2              // bit 2
8774 #define C2PCH0                  CM2CON1bits.C2PCH0              // bit 3
8775 #define C2PCH1                  CM2CON1bits.C2PCH1              // bit 4
8776 #define C2PCH2                  CM2CON1bits.C2PCH2              // bit 5
8777 #define C2INTN                  CM2CON1bits.C2INTN              // bit 6
8778 #define C2INTP                  CM2CON1bits.C2INTP              // bit 7
8779 
8780 #define C3SYNC                  CM3CON0bits.C3SYNC              // bit 0
8781 #define C3HYS                   CM3CON0bits.C3HYS               // bit 1
8782 #define C3SP                    CM3CON0bits.C3SP                // bit 2
8783 #define C3ZLF                   CM3CON0bits.C3ZLF               // bit 3
8784 #define C3POL                   CM3CON0bits.C3POL               // bit 4
8785 #define C3OE                    CM3CON0bits.C3OE                // bit 5
8786 #define C3OUT                   CM3CON0bits.C3OUT               // bit 6
8787 #define C3ON                    CM3CON0bits.C3ON                // bit 7
8788 
8789 #define C3NCH0                  CM3CON1bits.C3NCH0              // bit 0
8790 #define C3NCH1                  CM3CON1bits.C3NCH1              // bit 1
8791 #define C3NCH2                  CM3CON1bits.C3NCH2              // bit 2
8792 #define C3PCH0                  CM3CON1bits.C3PCH0              // bit 3
8793 #define C3PCH1                  CM3CON1bits.C3PCH1              // bit 4
8794 #define C3PCH2                  CM3CON1bits.C3PCH2              // bit 5
8795 #define C3INTN                  CM3CON1bits.C3INTN              // bit 6
8796 #define C3INTP                  CM3CON1bits.C3INTP              // bit 7
8797 
8798 #define C4SYNC                  CM4CON0bits.C4SYNC              // bit 0
8799 #define C4HYS                   CM4CON0bits.C4HYS               // bit 1
8800 #define C4SP                    CM4CON0bits.C4SP                // bit 2
8801 #define C4ZLF                   CM4CON0bits.C4ZLF               // bit 3
8802 #define C4POL                   CM4CON0bits.C4POL               // bit 4
8803 #define C4OE                    CM4CON0bits.C4OE                // bit 5
8804 #define C4OUT                   CM4CON0bits.C4OUT               // bit 6
8805 #define C4ON                    CM4CON0bits.C4ON                // bit 7
8806 
8807 #define C4NCH0                  CM4CON1bits.C4NCH0              // bit 0
8808 #define C4NCH1                  CM4CON1bits.C4NCH1              // bit 1
8809 #define C4NCH2                  CM4CON1bits.C4NCH2              // bit 2
8810 #define C4PCH0                  CM4CON1bits.C4PCH0              // bit 3
8811 #define C4PCH1                  CM4CON1bits.C4PCH1              // bit 4
8812 #define C4PCH2                  CM4CON1bits.C4PCH2              // bit 5
8813 #define C4INTN                  CM4CON1bits.C4INTN              // bit 6
8814 #define C4INTP                  CM4CON1bits.C4INTP              // bit 7
8815 
8816 #define MC1OUT                  CMOUTbits.MC1OUT                // bit 0
8817 #define MC2OUT                  CMOUTbits.MC2OUT                // bit 1
8818 #define MC3OUT                  CMOUTbits.MC3OUT                // bit 2
8819 #define MC4OUT                  CMOUTbits.MC4OUT                // bit 3
8820 
8821 #define DAC1NSS                 DAC1CON0bits.DAC1NSS            // bit 0, shadows bit in DAC1CON0bits
8822 #define DACNSS                  DAC1CON0bits.DACNSS             // bit 0, shadows bit in DAC1CON0bits
8823 #define DAC1PSS0                DAC1CON0bits.DAC1PSS0           // bit 2, shadows bit in DAC1CON0bits
8824 #define DACPSS0                 DAC1CON0bits.DACPSS0            // bit 2, shadows bit in DAC1CON0bits
8825 #define DAC1PSS1                DAC1CON0bits.DAC1PSS1           // bit 3, shadows bit in DAC1CON0bits
8826 #define DACPSS1                 DAC1CON0bits.DACPSS1            // bit 3, shadows bit in DAC1CON0bits
8827 #define DAC1OE2                 DAC1CON0bits.DAC1OE2            // bit 4, shadows bit in DAC1CON0bits
8828 #define DACOE0                  DAC1CON0bits.DACOE0             // bit 4, shadows bit in DAC1CON0bits
8829 #define DAC1OE1                 DAC1CON0bits.DAC1OE1            // bit 5, shadows bit in DAC1CON0bits
8830 #define DACOE1                  DAC1CON0bits.DACOE1             // bit 5, shadows bit in DAC1CON0bits
8831 #define DAC1EN                  DAC1CON0bits.DAC1EN             // bit 7, shadows bit in DAC1CON0bits
8832 #define DACEN                   DAC1CON0bits.DACEN              // bit 7, shadows bit in DAC1CON0bits
8833 
8834 #define DAC1R0                  DAC1CON1bits.DAC1R0             // bit 0, shadows bit in DAC1CON1bits
8835 #define DACR0                   DAC1CON1bits.DACR0              // bit 0, shadows bit in DAC1CON1bits
8836 #define DAC1R1                  DAC1CON1bits.DAC1R1             // bit 1, shadows bit in DAC1CON1bits
8837 #define DACR1                   DAC1CON1bits.DACR1              // bit 1, shadows bit in DAC1CON1bits
8838 #define DAC1R2                  DAC1CON1bits.DAC1R2             // bit 2, shadows bit in DAC1CON1bits
8839 #define DACR2                   DAC1CON1bits.DACR2              // bit 2, shadows bit in DAC1CON1bits
8840 #define DAC1R3                  DAC1CON1bits.DAC1R3             // bit 3, shadows bit in DAC1CON1bits
8841 #define DACR3                   DAC1CON1bits.DACR3              // bit 3, shadows bit in DAC1CON1bits
8842 #define DAC1R4                  DAC1CON1bits.DAC1R4             // bit 4, shadows bit in DAC1CON1bits
8843 #define DACR4                   DAC1CON1bits.DACR4              // bit 4, shadows bit in DAC1CON1bits
8844 #define DAC1R5                  DAC1CON1bits.DAC1R5             // bit 5, shadows bit in DAC1CON1bits
8845 #define DACR5                   DAC1CON1bits.DACR5              // bit 5, shadows bit in DAC1CON1bits
8846 #define DAC1R6                  DAC1CON1bits.DAC1R6             // bit 6, shadows bit in DAC1CON1bits
8847 #define DACR6                   DAC1CON1bits.DACR6              // bit 6, shadows bit in DAC1CON1bits
8848 #define DAC1R7                  DAC1CON1bits.DAC1R7             // bit 7, shadows bit in DAC1CON1bits
8849 #define DACR7                   DAC1CON1bits.DACR7              // bit 7, shadows bit in DAC1CON1bits
8850 
8851 #define DAC2OE2                 DAC2CON0bits.DAC2OE2            // bit 4
8852 #define DAC2OE1                 DAC2CON0bits.DAC2OE1            // bit 5
8853 #define DAC2EN                  DAC2CON0bits.DAC2EN             // bit 7
8854 
8855 #define DAC3OE2                 DAC3CON0bits.DAC3OE2            // bit 4
8856 #define DAC3OE1                 DAC3CON0bits.DAC3OE1            // bit 5
8857 #define DAC3EN                  DAC3CON0bits.DAC3EN             // bit 7
8858 
8859 #define DAC4OE2                 DAC4CON0bits.DAC4OE2            // bit 4
8860 #define DAC4OE1                 DAC4CON0bits.DAC4OE1            // bit 5
8861 #define DAC4EN                  DAC4CON0bits.DAC4EN             // bit 7
8862 
8863 #define RD                      EECON1bits.RD                   // bit 0
8864 #define WR                      EECON1bits.WR                   // bit 1
8865 #define WREN                    EECON1bits.WREN                 // bit 2
8866 #define WRERR                   EECON1bits.WRERR                // bit 3
8867 #define FREE                    EECON1bits.FREE                 // bit 4
8868 #define LWLO                    EECON1bits.LWLO                 // bit 5
8869 #define CFGS                    EECON1bits.CFGS                 // bit 6
8870 #define EEPGD                   EECON1bits.EEPGD                // bit 7
8871 
8872 #define ADFVR0                  FVRCONbits.ADFVR0               // bit 0
8873 #define ADFVR1                  FVRCONbits.ADFVR1               // bit 1
8874 #define CDAFVR0                 FVRCONbits.CDAFVR0              // bit 2
8875 #define CDAFVR1                 FVRCONbits.CDAFVR1              // bit 3
8876 #define TSRNG                   FVRCONbits.TSRNG                // bit 4
8877 #define TSEN                    FVRCONbits.TSEN                 // bit 5
8878 #define FVRRDY                  FVRCONbits.FVRRDY               // bit 6
8879 #define FVREN                   FVRCONbits.FVREN                // bit 7
8880 
8881 #define INLVLA0                 INLVLAbits.INLVLA0              // bit 0
8882 #define INLVLA1                 INLVLAbits.INLVLA1              // bit 1
8883 #define INLVLA2                 INLVLAbits.INLVLA2              // bit 2
8884 #define INLVLA3                 INLVLAbits.INLVLA3              // bit 3
8885 #define INLVLA4                 INLVLAbits.INLVLA4              // bit 4
8886 #define INLVLA5                 INLVLAbits.INLVLA5              // bit 5
8887 #define INLVLA6                 INLVLAbits.INLVLA6              // bit 6
8888 #define INLVLA7                 INLVLAbits.INLVLA7              // bit 7
8889 
8890 #define INLVLB0                 INLVLBbits.INLVLB0              // bit 0
8891 #define INLVLB1                 INLVLBbits.INLVLB1              // bit 1
8892 #define INLVLB2                 INLVLBbits.INLVLB2              // bit 2
8893 #define INLVLB3                 INLVLBbits.INLVLB3              // bit 3
8894 #define INLVLB4                 INLVLBbits.INLVLB4              // bit 4
8895 #define INLVLB5                 INLVLBbits.INLVLB5              // bit 5
8896 #define INLVLB6                 INLVLBbits.INLVLB6              // bit 6
8897 #define INLVLB7                 INLVLBbits.INLVLB7              // bit 7
8898 
8899 #define INLVLC0                 INLVLCbits.INLVLC0              // bit 0
8900 #define INLVLC1                 INLVLCbits.INLVLC1              // bit 1
8901 #define INLVLC2                 INLVLCbits.INLVLC2              // bit 2
8902 #define INLVLC3                 INLVLCbits.INLVLC3              // bit 3
8903 #define INLVLC4                 INLVLCbits.INLVLC4              // bit 4
8904 #define INLVLC5                 INLVLCbits.INLVLC5              // bit 5
8905 #define INLVLC6                 INLVLCbits.INLVLC6              // bit 6
8906 #define INLVLC7                 INLVLCbits.INLVLC7              // bit 7
8907 
8908 #define INLVLE3                 INLVLEbits.INLVLE3              // bit 3
8909 
8910 #define IOCIF                   INTCONbits.IOCIF                // bit 0
8911 #define INTF                    INTCONbits.INTF                 // bit 1
8912 #define TMR0IF                  INTCONbits.TMR0IF               // bit 2, shadows bit in INTCONbits
8913 #define T0IF                    INTCONbits.T0IF                 // bit 2, shadows bit in INTCONbits
8914 #define IOCIE                   INTCONbits.IOCIE                // bit 3
8915 #define INTE                    INTCONbits.INTE                 // bit 4
8916 #define TMR0IE                  INTCONbits.TMR0IE               // bit 5, shadows bit in INTCONbits
8917 #define T0IE                    INTCONbits.T0IE                 // bit 5, shadows bit in INTCONbits
8918 #define PEIE                    INTCONbits.PEIE                 // bit 6
8919 #define GIE                     INTCONbits.GIE                  // bit 7
8920 
8921 #define IOCAF0                  IOCAFbits.IOCAF0                // bit 0
8922 #define IOCAF1                  IOCAFbits.IOCAF1                // bit 1
8923 #define IOCAF2                  IOCAFbits.IOCAF2                // bit 2
8924 #define IOCAF3                  IOCAFbits.IOCAF3                // bit 3
8925 #define IOCAF4                  IOCAFbits.IOCAF4                // bit 4
8926 #define IOCAF5                  IOCAFbits.IOCAF5                // bit 5
8927 #define IOCAF6                  IOCAFbits.IOCAF6                // bit 6
8928 #define IOCAF7                  IOCAFbits.IOCAF7                // bit 7
8929 
8930 #define IOCAN0                  IOCANbits.IOCAN0                // bit 0
8931 #define IOCAN1                  IOCANbits.IOCAN1                // bit 1
8932 #define IOCAN2                  IOCANbits.IOCAN2                // bit 2
8933 #define IOCAN3                  IOCANbits.IOCAN3                // bit 3
8934 #define IOCAN4                  IOCANbits.IOCAN4                // bit 4
8935 #define IOCAN5                  IOCANbits.IOCAN5                // bit 5
8936 #define IOCAN6                  IOCANbits.IOCAN6                // bit 6
8937 #define IOCAN7                  IOCANbits.IOCAN7                // bit 7
8938 
8939 #define IOCAP0                  IOCAPbits.IOCAP0                // bit 0
8940 #define IOCAP1                  IOCAPbits.IOCAP1                // bit 1
8941 #define IOCAP2                  IOCAPbits.IOCAP2                // bit 2
8942 #define IOCAP3                  IOCAPbits.IOCAP3                // bit 3
8943 #define IOCAP4                  IOCAPbits.IOCAP4                // bit 4
8944 #define IOCAP5                  IOCAPbits.IOCAP5                // bit 5
8945 #define IOCAP6                  IOCAPbits.IOCAP6                // bit 6
8946 #define IOCAP7                  IOCAPbits.IOCAP7                // bit 7
8947 
8948 #define IOCBF0                  IOCBFbits.IOCBF0                // bit 0
8949 #define IOCBF1                  IOCBFbits.IOCBF1                // bit 1
8950 #define IOCBF2                  IOCBFbits.IOCBF2                // bit 2
8951 #define IOCBF3                  IOCBFbits.IOCBF3                // bit 3
8952 #define IOCBF4                  IOCBFbits.IOCBF4                // bit 4
8953 #define IOCBF5                  IOCBFbits.IOCBF5                // bit 5
8954 #define IOCBF6                  IOCBFbits.IOCBF6                // bit 6
8955 #define IOCBF7                  IOCBFbits.IOCBF7                // bit 7
8956 
8957 #define IOCBN0                  IOCBNbits.IOCBN0                // bit 0
8958 #define IOCBN1                  IOCBNbits.IOCBN1                // bit 1
8959 #define IOCBN2                  IOCBNbits.IOCBN2                // bit 2
8960 #define IOCBN3                  IOCBNbits.IOCBN3                // bit 3
8961 #define IOCBN4                  IOCBNbits.IOCBN4                // bit 4
8962 #define IOCBN5                  IOCBNbits.IOCBN5                // bit 5
8963 #define IOCBN6                  IOCBNbits.IOCBN6                // bit 6
8964 #define IOCBN7                  IOCBNbits.IOCBN7                // bit 7
8965 
8966 #define IOCBP0                  IOCBPbits.IOCBP0                // bit 0
8967 #define IOCBP1                  IOCBPbits.IOCBP1                // bit 1
8968 #define IOCBP2                  IOCBPbits.IOCBP2                // bit 2
8969 #define IOCBP3                  IOCBPbits.IOCBP3                // bit 3
8970 #define IOCBP4                  IOCBPbits.IOCBP4                // bit 4
8971 #define IOCBP5                  IOCBPbits.IOCBP5                // bit 5
8972 #define IOCBP6                  IOCBPbits.IOCBP6                // bit 6
8973 #define IOCBP7                  IOCBPbits.IOCBP7                // bit 7
8974 
8975 #define IOCCF0                  IOCCFbits.IOCCF0                // bit 0
8976 #define IOCCF1                  IOCCFbits.IOCCF1                // bit 1
8977 #define IOCCF2                  IOCCFbits.IOCCF2                // bit 2
8978 #define IOCCF3                  IOCCFbits.IOCCF3                // bit 3
8979 #define IOCCF4                  IOCCFbits.IOCCF4                // bit 4
8980 #define IOCCF5                  IOCCFbits.IOCCF5                // bit 5
8981 #define IOCCF6                  IOCCFbits.IOCCF6                // bit 6
8982 #define IOCCF7                  IOCCFbits.IOCCF7                // bit 7
8983 
8984 #define IOCCN0                  IOCCNbits.IOCCN0                // bit 0
8985 #define IOCCN1                  IOCCNbits.IOCCN1                // bit 1
8986 #define IOCCN2                  IOCCNbits.IOCCN2                // bit 2
8987 #define IOCCN3                  IOCCNbits.IOCCN3                // bit 3
8988 #define IOCCN4                  IOCCNbits.IOCCN4                // bit 4
8989 #define IOCCN5                  IOCCNbits.IOCCN5                // bit 5
8990 #define IOCCN6                  IOCCNbits.IOCCN6                // bit 6
8991 #define IOCCN7                  IOCCNbits.IOCCN7                // bit 7
8992 
8993 #define IOCCP0                  IOCCPbits.IOCCP0                // bit 0
8994 #define IOCCP1                  IOCCPbits.IOCCP1                // bit 1
8995 #define IOCCP2                  IOCCPbits.IOCCP2                // bit 2
8996 #define IOCCP3                  IOCCPbits.IOCCP3                // bit 3
8997 #define IOCCP4                  IOCCPbits.IOCCP4                // bit 4
8998 #define IOCCP5                  IOCCPbits.IOCCP5                // bit 5
8999 #define IOCCP6                  IOCCPbits.IOCCP6                // bit 6
9000 #define IOCCP7                  IOCCPbits.IOCCP7                // bit 7
9001 
9002 #define IOCEF3                  IOCEFbits.IOCEF3                // bit 3
9003 
9004 #define IOCEN3                  IOCENbits.IOCEN3                // bit 3
9005 
9006 #define IOCEP3                  IOCEPbits.IOCEP3                // bit 3
9007 
9008 #define LATA0                   LATAbits.LATA0                  // bit 0
9009 #define LATA1                   LATAbits.LATA1                  // bit 1
9010 #define LATA2                   LATAbits.LATA2                  // bit 2
9011 #define LATA3                   LATAbits.LATA3                  // bit 3
9012 #define LATA4                   LATAbits.LATA4                  // bit 4
9013 #define LATA5                   LATAbits.LATA5                  // bit 5
9014 #define LATA6                   LATAbits.LATA6                  // bit 6
9015 #define LATA7                   LATAbits.LATA7                  // bit 7
9016 
9017 #define LATB0                   LATBbits.LATB0                  // bit 0
9018 #define LATB1                   LATBbits.LATB1                  // bit 1
9019 #define LATB2                   LATBbits.LATB2                  // bit 2
9020 #define LATB3                   LATBbits.LATB3                  // bit 3
9021 #define LATB4                   LATBbits.LATB4                  // bit 4
9022 #define LATB5                   LATBbits.LATB5                  // bit 5
9023 #define LATB6                   LATBbits.LATB6                  // bit 6
9024 #define LATB7                   LATBbits.LATB7                  // bit 7
9025 
9026 #define LATC0                   LATCbits.LATC0                  // bit 0
9027 #define LATC1                   LATCbits.LATC1                  // bit 1
9028 #define LATC2                   LATCbits.LATC2                  // bit 2
9029 #define LATC3                   LATCbits.LATC3                  // bit 3
9030 #define LATC4                   LATCbits.LATC4                  // bit 4
9031 #define LATC5                   LATCbits.LATC5                  // bit 5
9032 #define LATC6                   LATCbits.LATC6                  // bit 6
9033 #define LATC7                   LATCbits.LATC7                  // bit 7
9034 
9035 #define ODCONA0                 ODCONAbits.ODCONA0              // bit 0
9036 #define ODCONA1                 ODCONAbits.ODCONA1              // bit 1
9037 #define ODCONA2                 ODCONAbits.ODCONA2              // bit 2
9038 #define ODCONA3                 ODCONAbits.ODCONA3              // bit 3
9039 #define ODCONA4                 ODCONAbits.ODCONA4              // bit 4
9040 #define ODCONA5                 ODCONAbits.ODCONA5              // bit 5
9041 #define ODCONA6                 ODCONAbits.ODCONA6              // bit 6
9042 #define ODCONA7                 ODCONAbits.ODCONA7              // bit 7
9043 
9044 #define ODCONB0                 ODCONBbits.ODCONB0              // bit 0
9045 #define ODCONB1                 ODCONBbits.ODCONB1              // bit 1
9046 #define ODCONB2                 ODCONBbits.ODCONB2              // bit 2
9047 #define ODCONB3                 ODCONBbits.ODCONB3              // bit 3
9048 #define ODCONB4                 ODCONBbits.ODCONB4              // bit 4
9049 #define ODCONB5                 ODCONBbits.ODCONB5              // bit 5
9050 #define ODCONB6                 ODCONBbits.ODCONB6              // bit 6
9051 #define ODCONB7                 ODCONBbits.ODCONB7              // bit 7
9052 
9053 #define ODCONC0                 ODCONCbits.ODCONC0              // bit 0
9054 #define ODCONC1                 ODCONCbits.ODCONC1              // bit 1
9055 #define ODCONC2                 ODCONCbits.ODCONC2              // bit 2
9056 #define ODCONC3                 ODCONCbits.ODCONC3              // bit 3
9057 #define ODCONC4                 ODCONCbits.ODCONC4              // bit 4
9058 #define ODCONC5                 ODCONCbits.ODCONC5              // bit 5
9059 #define ODCONC6                 ODCONCbits.ODCONC6              // bit 6
9060 #define ODCONC7                 ODCONCbits.ODCONC7              // bit 7
9061 
9062 #define OPA1PCH0                OPA1CONbits.OPA1PCH0            // bit 0, shadows bit in OPA1CONbits
9063 #define PCH0                    OPA1CONbits.PCH0                // bit 0, shadows bit in OPA1CONbits
9064 #define OPA1PCH1                OPA1CONbits.OPA1PCH1            // bit 1, shadows bit in OPA1CONbits
9065 #define PCH1                    OPA1CONbits.PCH1                // bit 1, shadows bit in OPA1CONbits
9066 #define OPA1PCH2                OPA1CONbits.OPA1PCH2            // bit 2, shadows bit in OPA1CONbits
9067 #define PCH2                    OPA1CONbits.PCH2                // bit 2, shadows bit in OPA1CONbits
9068 #define OPA1SP                  OPA1CONbits.OPA1SP              // bit 6, shadows bit in OPA1CONbits
9069 #define SP                      OPA1CONbits.SP                  // bit 6, shadows bit in OPA1CONbits
9070 #define OPA1EN                  OPA1CONbits.OPA1EN              // bit 7, shadows bit in OPA1CONbits
9071 #define EN                      OPA1CONbits.EN                  // bit 7, shadows bit in OPA1CONbits
9072 
9073 #define PS0                     OPTION_REGbits.PS0              // bit 0
9074 #define PS1                     OPTION_REGbits.PS1              // bit 1
9075 #define PS2                     OPTION_REGbits.PS2              // bit 2
9076 #define PSA                     OPTION_REGbits.PSA              // bit 3
9077 #define TMR0SE                  OPTION_REGbits.TMR0SE           // bit 4, shadows bit in OPTION_REGbits
9078 #define T0SE                    OPTION_REGbits.T0SE             // bit 4, shadows bit in OPTION_REGbits
9079 #define TMR0CS                  OPTION_REGbits.TMR0CS           // bit 5, shadows bit in OPTION_REGbits
9080 #define T0CS                    OPTION_REGbits.T0CS             // bit 5, shadows bit in OPTION_REGbits
9081 #define INTEDG                  OPTION_REGbits.INTEDG           // bit 6
9082 #define NOT_WPUEN               OPTION_REGbits.NOT_WPUEN        // bit 7
9083 
9084 #define SCS0                    OSCCONbits.SCS0                 // bit 0
9085 #define SCS1                    OSCCONbits.SCS1                 // bit 1
9086 #define IRCF0                   OSCCONbits.IRCF0                // bit 3
9087 #define IRCF1                   OSCCONbits.IRCF1                // bit 4
9088 #define IRCF2                   OSCCONbits.IRCF2                // bit 5
9089 #define IRCF3                   OSCCONbits.IRCF3                // bit 6
9090 #define SPLLEN                  OSCCONbits.SPLLEN               // bit 7
9091 
9092 #define HFIOFS                  OSCSTATbits.HFIOFS              // bit 0
9093 #define LFIOFR                  OSCSTATbits.LFIOFR              // bit 1
9094 #define MFIOFR                  OSCSTATbits.MFIOFR              // bit 2
9095 #define HFIOFL                  OSCSTATbits.HFIOFL              // bit 3
9096 #define HFIOFR                  OSCSTATbits.HFIOFR              // bit 4
9097 #define OSTS                    OSCSTATbits.OSTS                // bit 5
9098 #define PLLR                    OSCSTATbits.PLLR                // bit 6
9099 #define T1OSCR                  OSCSTATbits.T1OSCR              // bit 7
9100 
9101 #define TUN0                    OSCTUNEbits.TUN0                // bit 0
9102 #define TUN1                    OSCTUNEbits.TUN1                // bit 1
9103 #define TUN2                    OSCTUNEbits.TUN2                // bit 2
9104 #define TUN3                    OSCTUNEbits.TUN3                // bit 3
9105 #define TUN4                    OSCTUNEbits.TUN4                // bit 4
9106 #define TUN5                    OSCTUNEbits.TUN5                // bit 5
9107 
9108 #define NOT_BOR                 PCONbits.NOT_BOR                // bit 0
9109 #define NOT_POR                 PCONbits.NOT_POR                // bit 1
9110 #define NOT_RI                  PCONbits.NOT_RI                 // bit 2
9111 #define NOT_RMCLR               PCONbits.NOT_RMCLR              // bit 3
9112 #define NOT_RWDT                PCONbits.NOT_RWDT               // bit 4
9113 #define STKUNF                  PCONbits.STKUNF                 // bit 6
9114 #define STKOVF                  PCONbits.STKOVF                 // bit 7
9115 
9116 #define TMR1IE                  PIE1bits.TMR1IE                 // bit 0
9117 #define TMR2IE                  PIE1bits.TMR2IE                 // bit 1
9118 #define CCP1IE                  PIE1bits.CCP1IE                 // bit 2
9119 #define SSP1IE                  PIE1bits.SSP1IE                 // bit 3
9120 #define TXIE                    PIE1bits.TXIE                   // bit 4
9121 #define RCIE                    PIE1bits.RCIE                   // bit 5
9122 #define ADIE                    PIE1bits.ADIE                   // bit 6
9123 #define TMR1GIE                 PIE1bits.TMR1GIE                // bit 7
9124 
9125 #define CCP2IE                  PIE2bits.CCP2IE                 // bit 0
9126 #define C3IE                    PIE2bits.C3IE                   // bit 1
9127 #define C4IE                    PIE2bits.C4IE                   // bit 2
9128 #define BCL1IE                  PIE2bits.BCL1IE                 // bit 3
9129 #define EEIE                    PIE2bits.EEIE                   // bit 4
9130 #define C1IE                    PIE2bits.C1IE                   // bit 5
9131 #define C2IE                    PIE2bits.C2IE                   // bit 6
9132 #define OSFIE                   PIE2bits.OSFIE                  // bit 7
9133 
9134 #define CCP3IE                  PIE3bits.CCP3IE                 // bit 4
9135 
9136 #define PSMC1SIE                PIE4bits.PSMC1SIE               // bit 0
9137 #define PSMC2SIE                PIE4bits.PSMC2SIE               // bit 1
9138 #define PSMC3SIE                PIE4bits.PSMC3SIE               // bit 2
9139 #define PSMC4SIE                PIE4bits.PSMC4SIE               // bit 3
9140 #define PSMC1TIE                PIE4bits.PSMC1TIE               // bit 4
9141 #define PSMC2TIE                PIE4bits.PSMC2TIE               // bit 5
9142 #define PSMC3TIE                PIE4bits.PSMC3TIE               // bit 6, shadows bit in PIE4bits
9143 #define PMSC3TIE                PIE4bits.PMSC3TIE               // bit 6, shadows bit in PIE4bits
9144 #define PSMC4TIE                PIE4bits.PSMC4TIE               // bit 7
9145 
9146 #define TMR1IF                  PIR1bits.TMR1IF                 // bit 0
9147 #define TMR2IF                  PIR1bits.TMR2IF                 // bit 1
9148 #define CCP1IF                  PIR1bits.CCP1IF                 // bit 2
9149 #define SSP1IF                  PIR1bits.SSP1IF                 // bit 3
9150 #define TXIF                    PIR1bits.TXIF                   // bit 4
9151 #define RCIF                    PIR1bits.RCIF                   // bit 5
9152 #define ADIF                    PIR1bits.ADIF                   // bit 6
9153 #define TMR1GIF                 PIR1bits.TMR1GIF                // bit 7
9154 
9155 #define CCP2IF                  PIR2bits.CCP2IF                 // bit 0
9156 #define C3IF                    PIR2bits.C3IF                   // bit 1
9157 #define C4IF                    PIR2bits.C4IF                   // bit 2
9158 #define BCL1IF                  PIR2bits.BCL1IF                 // bit 3
9159 #define EEIF                    PIR2bits.EEIF                   // bit 4
9160 #define C1IF                    PIR2bits.C1IF                   // bit 5
9161 #define C2IF                    PIR2bits.C2IF                   // bit 6
9162 #define OSFIF                   PIR2bits.OSFIF                  // bit 7
9163 
9164 #define CCP3IF                  PIR3bits.CCP3IF                 // bit 4
9165 
9166 #define PSMC1SIF                PIR4bits.PSMC1SIF               // bit 0
9167 #define PSMC2SIF                PIR4bits.PSMC2SIF               // bit 1
9168 #define PSMC3SIF                PIR4bits.PSMC3SIF               // bit 2
9169 #define PSMC4SIF                PIR4bits.PSMC4SIF               // bit 3
9170 #define PSMC1TIF                PIR4bits.PSMC1TIF               // bit 4
9171 #define PSMC2TIF                PIR4bits.PSMC2TIF               // bit 5
9172 #define PSMC3TIF                PIR4bits.PSMC3TIF               // bit 6
9173 #define PSMC4TIF                PIR4bits.PSMC4TIF               // bit 7
9174 
9175 #define RA0                     PORTAbits.RA0                   // bit 0
9176 #define RA1                     PORTAbits.RA1                   // bit 1
9177 #define RA2                     PORTAbits.RA2                   // bit 2
9178 #define RA3                     PORTAbits.RA3                   // bit 3
9179 #define RA4                     PORTAbits.RA4                   // bit 4
9180 #define RA5                     PORTAbits.RA5                   // bit 5
9181 #define RA6                     PORTAbits.RA6                   // bit 6
9182 #define RA7                     PORTAbits.RA7                   // bit 7
9183 
9184 #define RB0                     PORTBbits.RB0                   // bit 0
9185 #define RB1                     PORTBbits.RB1                   // bit 1
9186 #define RB2                     PORTBbits.RB2                   // bit 2
9187 #define RB3                     PORTBbits.RB3                   // bit 3
9188 #define RB4                     PORTBbits.RB4                   // bit 4
9189 #define RB5                     PORTBbits.RB5                   // bit 5
9190 #define RB6                     PORTBbits.RB6                   // bit 6
9191 #define RB7                     PORTBbits.RB7                   // bit 7
9192 
9193 #define RC0                     PORTCbits.RC0                   // bit 0
9194 #define RC1                     PORTCbits.RC1                   // bit 1
9195 #define RC2                     PORTCbits.RC2                   // bit 2
9196 #define RC3                     PORTCbits.RC3                   // bit 3
9197 #define RC4                     PORTCbits.RC4                   // bit 4
9198 #define RC5                     PORTCbits.RC5                   // bit 5
9199 #define RC6                     PORTCbits.RC6                   // bit 6
9200 #define RC7                     PORTCbits.RC7                   // bit 7
9201 
9202 #define RE3                     PORTEbits.RE3                   // bit 3
9203 
9204 #define P1ASDOV                 PSMC1ASDCbits.P1ASDOV           // bit 0
9205 #define P1ARSEN                 PSMC1ASDCbits.P1ARSEN           // bit 5
9206 #define P1ASDEN                 PSMC1ASDCbits.P1ASDEN           // bit 6
9207 #define P1ASE                   PSMC1ASDCbits.P1ASE             // bit 7
9208 
9209 #define P1ASDLA                 PSMC1ASDLbits.P1ASDLA           // bit 0
9210 #define P1ASDLB                 PSMC1ASDLbits.P1ASDLB           // bit 1
9211 #define P1ASDLC                 PSMC1ASDLbits.P1ASDLC           // bit 2
9212 #define P1ASDLD                 PSMC1ASDLbits.P1ASDLD           // bit 3
9213 #define P1ASDLE                 PSMC1ASDLbits.P1ASDLE           // bit 4
9214 #define P1ASDLF                 PSMC1ASDLbits.P1ASDLF           // bit 5
9215 
9216 #define P1ASDSC1                PSMC1ASDSbits.P1ASDSC1          // bit 1
9217 #define P1ASDSC2                PSMC1ASDSbits.P1ASDSC2          // bit 2
9218 #define P1ASDSC3                PSMC1ASDSbits.P1ASDSC3          // bit 3
9219 #define P1ASDSC4                PSMC1ASDSbits.P1ASDSC4          // bit 4
9220 #define P1ASDSIN                PSMC1ASDSbits.P1ASDSIN          // bit 7
9221 
9222 #define PSMC1BLKF0              PSMC1BLKFbits.PSMC1BLKF0        // bit 0
9223 #define PSMC1BLKF1              PSMC1BLKFbits.PSMC1BLKF1        // bit 1
9224 #define PSMC1BLKF2              PSMC1BLKFbits.PSMC1BLKF2        // bit 2
9225 #define PSMC1BLKF3              PSMC1BLKFbits.PSMC1BLKF3        // bit 3
9226 #define PSMC1BLKF4              PSMC1BLKFbits.PSMC1BLKF4        // bit 4
9227 #define PSMC1BLKF5              PSMC1BLKFbits.PSMC1BLKF5        // bit 5
9228 #define PSMC1BLKF6              PSMC1BLKFbits.PSMC1BLKF6        // bit 6
9229 #define PSMC1BLKF7              PSMC1BLKFbits.PSMC1BLKF7        // bit 7
9230 
9231 #define PSMC1BLKR0              PSMC1BLKRbits.PSMC1BLKR0        // bit 0
9232 #define PSMC1BLKR1              PSMC1BLKRbits.PSMC1BLKR1        // bit 1
9233 #define PSMC1BLKR2              PSMC1BLKRbits.PSMC1BLKR2        // bit 2
9234 #define PSMC1BLKR3              PSMC1BLKRbits.PSMC1BLKR3        // bit 3
9235 #define PSMC1BLKR4              PSMC1BLKRbits.PSMC1BLKR4        // bit 4
9236 #define PSMC1BLKR5              PSMC1BLKRbits.PSMC1BLKR5        // bit 5
9237 #define PSMC1BLKR6              PSMC1BLKRbits.PSMC1BLKR6        // bit 6
9238 #define PSMC1BLKR7              PSMC1BLKRbits.PSMC1BLKR7        // bit 7
9239 
9240 #define P1REBM0                 PSMC1BLNKbits.P1REBM0           // bit 0
9241 #define P1REBM1                 PSMC1BLNKbits.P1REBM1           // bit 1
9242 #define P1FEBM0                 PSMC1BLNKbits.P1FEBM0           // bit 4
9243 #define P1FEBM1                 PSMC1BLNKbits.P1FEBM1           // bit 5
9244 
9245 #define P1CSRC0                 PSMC1CLKbits.P1CSRC0            // bit 0
9246 #define P1CSRC1                 PSMC1CLKbits.P1CSRC1            // bit 1
9247 #define P1CPRE0                 PSMC1CLKbits.P1CPRE0            // bit 4
9248 #define P1CPRE1                 PSMC1CLKbits.P1CPRE1            // bit 5
9249 
9250 #define P1MODE0                 PSMC1CONbits.P1MODE0            // bit 0
9251 #define P1MODE1                 PSMC1CONbits.P1MODE1            // bit 1
9252 #define P1MODE2                 PSMC1CONbits.P1MODE2            // bit 2
9253 #define P1MODE3                 PSMC1CONbits.P1MODE3            // bit 3
9254 #define P1DBRE                  PSMC1CONbits.P1DBRE             // bit 4
9255 #define P1DBFE                  PSMC1CONbits.P1DBFE             // bit 5
9256 #define PSMC1LD                 PSMC1CONbits.PSMC1LD            // bit 6
9257 #define PSMC1EN                 PSMC1CONbits.PSMC1EN            // bit 7
9258 
9259 #define PSMC1DBF0               PSMC1DBFbits.PSMC1DBF0          // bit 0
9260 #define PSMC1DBF1               PSMC1DBFbits.PSMC1DBF1          // bit 1
9261 #define PSMC1DBF2               PSMC1DBFbits.PSMC1DBF2          // bit 2
9262 #define PSMC1DBF3               PSMC1DBFbits.PSMC1DBF3          // bit 3
9263 #define PSMC1DBF4               PSMC1DBFbits.PSMC1DBF4          // bit 4
9264 #define PSMC1DBF5               PSMC1DBFbits.PSMC1DBF5          // bit 5
9265 #define PSMC1DBF6               PSMC1DBFbits.PSMC1DBF6          // bit 6
9266 #define PSMC1DBF7               PSMC1DBFbits.PSMC1DBF7          // bit 7
9267 
9268 #define PSMC1DBR0               PSMC1DBRbits.PSMC1DBR0          // bit 0
9269 #define PSMC1DBR1               PSMC1DBRbits.PSMC1DBR1          // bit 1
9270 #define PSMC1DBR2               PSMC1DBRbits.PSMC1DBR2          // bit 2
9271 #define PSMC1DBR3               PSMC1DBRbits.PSMC1DBR3          // bit 3
9272 #define PSMC1DBR4               PSMC1DBRbits.PSMC1DBR4          // bit 4
9273 #define PSMC1DBR5               PSMC1DBRbits.PSMC1DBR5          // bit 5
9274 #define PSMC1DBR6               PSMC1DBRbits.PSMC1DBR6          // bit 6
9275 #define PSMC1DBR7               PSMC1DBRbits.PSMC1DBR7          // bit 7
9276 
9277 #define PSMC1DC8                PSMC1DCHbits.PSMC1DC8           // bit 0
9278 #define PSMC1DC9                PSMC1DCHbits.PSMC1DC9           // bit 1
9279 #define PSMC1DC10               PSMC1DCHbits.PSMC1DC10          // bit 2
9280 #define PSMC1DC11               PSMC1DCHbits.PSMC1DC11          // bit 3
9281 #define PSMC1DC12               PSMC1DCHbits.PSMC1DC12          // bit 4
9282 #define PSMC1DC13               PSMC1DCHbits.PSMC1DC13          // bit 5
9283 #define PSMC1DC14               PSMC1DCHbits.PSMC1DC14          // bit 6
9284 #define PSMC1DC15               PSMC1DCHbits.PSMC1DC15          // bit 7
9285 
9286 #define PSMC1DC0                PSMC1DCLbits.PSMC1DC0           // bit 0
9287 #define PSMC1DC1                PSMC1DCLbits.PSMC1DC1           // bit 1
9288 #define PSMC1DC2                PSMC1DCLbits.PSMC1DC2           // bit 2
9289 #define PSMC1DC3                PSMC1DCLbits.PSMC1DC3           // bit 3
9290 #define PSMC1DC4                PSMC1DCLbits.PSMC1DC4           // bit 4
9291 #define PSMC1DC5                PSMC1DCLbits.PSMC1DC5           // bit 5
9292 #define PSMC1DC6                PSMC1DCLbits.PSMC1DC6           // bit 6
9293 #define PSMC1DC7                PSMC1DCLbits.PSMC1DC7           // bit 7
9294 
9295 #define P1DCST                  PSMC1DCSbits.P1DCST             // bit 0
9296 #define P1DCSC1                 PSMC1DCSbits.P1DCSC1            // bit 1
9297 #define P1DCSC2                 PSMC1DCSbits.P1DCSC2            // bit 2
9298 #define P1DCSC3                 PSMC1DCSbits.P1DCSC3            // bit 3
9299 #define P1DCSC4                 PSMC1DCSbits.P1DCSC4            // bit 4
9300 #define P1DCSIN                 PSMC1DCSbits.P1DCSIN            // bit 7
9301 
9302 #define P1FEBSC1                PSMC1FEBSbits.P1FEBSC1          // bit 1
9303 #define P1FEBSC2                PSMC1FEBSbits.P1FEBSC2          // bit 2
9304 #define P1FEBSC3                PSMC1FEBSbits.P1FEBSC3          // bit 3
9305 #define P1FEBSC4                PSMC1FEBSbits.P1FEBSC4          // bit 4
9306 #define P1FEBSIN                PSMC1FEBSbits.P1FEBSIN          // bit 7
9307 
9308 #define PSMC1FFA0               PSMC1FFAbits.PSMC1FFA0          // bit 0
9309 #define PSMC1FFA1               PSMC1FFAbits.PSMC1FFA1          // bit 1
9310 #define PSMC1FFA2               PSMC1FFAbits.PSMC1FFA2          // bit 2
9311 #define PSMC1FFA3               PSMC1FFAbits.PSMC1FFA3          // bit 3
9312 
9313 #define P1TPRIF                 PSMC1INTbits.P1TPRIF            // bit 0
9314 #define P1TDCIF                 PSMC1INTbits.P1TDCIF            // bit 1
9315 #define P1TPHIF                 PSMC1INTbits.P1TPHIF            // bit 2
9316 #define P1TOVIF                 PSMC1INTbits.P1TOVIF            // bit 3
9317 #define P1TPRIE                 PSMC1INTbits.P1TPRIE            // bit 4
9318 #define P1TDCIE                 PSMC1INTbits.P1TDCIE            // bit 5
9319 #define P1TPHIE                 PSMC1INTbits.P1TPHIE            // bit 6
9320 #define P1TOVIE                 PSMC1INTbits.P1TOVIE            // bit 7
9321 
9322 #define P1MSRC0                 PSMC1MDLbits.P1MSRC0            // bit 0
9323 #define P1MSRC1                 PSMC1MDLbits.P1MSRC1            // bit 1
9324 #define P1MSRC2                 PSMC1MDLbits.P1MSRC2            // bit 2
9325 #define P1MSRC3                 PSMC1MDLbits.P1MSRC3            // bit 3
9326 #define P1MDLBIT                PSMC1MDLbits.P1MDLBIT           // bit 5
9327 #define P1MDLPOL                PSMC1MDLbits.P1MDLPOL           // bit 6
9328 #define P1MDLEN                 PSMC1MDLbits.P1MDLEN            // bit 7
9329 
9330 #define P1OEA                   PSMC1OENbits.P1OEA              // bit 0
9331 #define P1OEB                   PSMC1OENbits.P1OEB              // bit 1
9332 #define P1OEC                   PSMC1OENbits.P1OEC              // bit 2
9333 #define P1OED                   PSMC1OENbits.P1OED              // bit 3
9334 #define P1OEE                   PSMC1OENbits.P1OEE              // bit 4
9335 #define P1OEF                   PSMC1OENbits.P1OEF              // bit 5
9336 
9337 #define PSMC1PH8                PSMC1PHHbits.PSMC1PH8           // bit 0
9338 #define PSMC1PH9                PSMC1PHHbits.PSMC1PH9           // bit 1
9339 #define PSMC1PH10               PSMC1PHHbits.PSMC1PH10          // bit 2
9340 #define PSMC1PH11               PSMC1PHHbits.PSMC1PH11          // bit 3
9341 #define PSMC1PH12               PSMC1PHHbits.PSMC1PH12          // bit 4
9342 #define PSMC1PH13               PSMC1PHHbits.PSMC1PH13          // bit 5
9343 #define PSMC1PH14               PSMC1PHHbits.PSMC1PH14          // bit 6
9344 #define PSMC1PH15               PSMC1PHHbits.PSMC1PH15          // bit 7
9345 
9346 #define PSMC1PH0                PSMC1PHLbits.PSMC1PH0           // bit 0
9347 #define PSMC1PH1                PSMC1PHLbits.PSMC1PH1           // bit 1
9348 #define PSMC1PH2                PSMC1PHLbits.PSMC1PH2           // bit 2
9349 #define PSMC1PH3                PSMC1PHLbits.PSMC1PH3           // bit 3
9350 #define PSMC1PH4                PSMC1PHLbits.PSMC1PH4           // bit 4
9351 #define PSMC1PH5                PSMC1PHLbits.PSMC1PH5           // bit 5
9352 #define PSMC1PH6                PSMC1PHLbits.PSMC1PH6           // bit 6
9353 #define PSMC1PH7                PSMC1PHLbits.PSMC1PH7           // bit 7
9354 
9355 #define P1PHST                  PSMC1PHSbits.P1PHST             // bit 0
9356 #define P1PHSC1                 PSMC1PHSbits.P1PHSC1            // bit 1
9357 #define P1PHSC2                 PSMC1PHSbits.P1PHSC2            // bit 2
9358 #define P1PHSC3                 PSMC1PHSbits.P1PHSC3            // bit 3
9359 #define P1PHSC4                 PSMC1PHSbits.P1PHSC4            // bit 4
9360 #define P1PHSIN                 PSMC1PHSbits.P1PHSIN            // bit 7
9361 
9362 #define P1POLA                  PSMC1POLbits.P1POLA             // bit 0
9363 #define P1POLB                  PSMC1POLbits.P1POLB             // bit 1
9364 #define P1POLC                  PSMC1POLbits.P1POLC             // bit 2
9365 #define P1POLD                  PSMC1POLbits.P1POLD             // bit 3
9366 #define P1POLE                  PSMC1POLbits.P1POLE             // bit 4
9367 #define P1POLF                  PSMC1POLbits.P1POLF             // bit 5
9368 #define P1INPOL                 PSMC1POLbits.P1INPOL            // bit 6
9369 
9370 #define PSMC1PR8                PSMC1PRHbits.PSMC1PR8           // bit 0
9371 #define PSMC1PR9                PSMC1PRHbits.PSMC1PR9           // bit 1
9372 #define PSMC1PR10               PSMC1PRHbits.PSMC1PR10          // bit 2
9373 #define PSMC1PR11               PSMC1PRHbits.PSMC1PR11          // bit 3
9374 #define PSMC1PR12               PSMC1PRHbits.PSMC1PR12          // bit 4
9375 #define PSMC1PR13               PSMC1PRHbits.PSMC1PR13          // bit 5
9376 #define PSMC1PR14               PSMC1PRHbits.PSMC1PR14          // bit 6
9377 #define PSMC1PR15               PSMC1PRHbits.PSMC1PR15          // bit 7
9378 
9379 #define PSMC1PR0                PSMC1PRLbits.PSMC1PR0           // bit 0
9380 #define PSMC1PR1                PSMC1PRLbits.PSMC1PR1           // bit 1
9381 #define PSMC1PR2                PSMC1PRLbits.PSMC1PR2           // bit 2
9382 #define PSMC1PR3                PSMC1PRLbits.PSMC1PR3           // bit 3
9383 #define PSMC1PR4                PSMC1PRLbits.PSMC1PR4           // bit 4
9384 #define PSMC1PR5                PSMC1PRLbits.PSMC1PR5           // bit 5
9385 #define PSMC1PR6                PSMC1PRLbits.PSMC1PR6           // bit 6
9386 #define PSMC1PR7                PSMC1PRLbits.PSMC1PR7           // bit 7
9387 
9388 #define P1PRST                  PSMC1PRSbits.P1PRST             // bit 0
9389 #define P1PRSC1                 PSMC1PRSbits.P1PRSC1            // bit 1
9390 #define P1PRSC2                 PSMC1PRSbits.P1PRSC2            // bit 2
9391 #define P1PRSC3                 PSMC1PRSbits.P1PRSC3            // bit 3
9392 #define P1PRSC4                 PSMC1PRSbits.P1PRSC4            // bit 4
9393 #define P1PRSIN                 PSMC1PRSbits.P1PRSIN            // bit 7
9394 
9395 #define P1REBSC1                PSMC1REBSbits.P1REBSC1          // bit 1
9396 #define P1REBSC2                PSMC1REBSbits.P1REBSC2          // bit 2
9397 #define P1REBSC3                PSMC1REBSbits.P1REBSC3          // bit 3
9398 #define P1REBSC4                PSMC1REBSbits.P1REBSC4          // bit 4
9399 #define P1REBSIN                PSMC1REBSbits.P1REBSIN          // bit 7
9400 
9401 #define P1STRA                  PSMC1STR0bits.P1STRA            // bit 0
9402 #define P1STRB                  PSMC1STR0bits.P1STRB            // bit 1
9403 #define P1STRC                  PSMC1STR0bits.P1STRC            // bit 2
9404 #define P1STRD                  PSMC1STR0bits.P1STRD            // bit 3
9405 #define P1STRE                  PSMC1STR0bits.P1STRE            // bit 4
9406 #define P1STRF                  PSMC1STR0bits.P1STRF            // bit 5
9407 
9408 #define P1HSMEN                 PSMC1STR1bits.P1HSMEN           // bit 0
9409 #define P1LSMEN                 PSMC1STR1bits.P1LSMEN           // bit 1
9410 #define P1SSYNC                 PSMC1STR1bits.P1SSYNC           // bit 7
9411 
9412 #define P1SYNC0                 PSMC1SYNCbits.P1SYNC0           // bit 0
9413 #define P1SYNC1                 PSMC1SYNCbits.P1SYNC1           // bit 1
9414 #define P1SYNC2                 PSMC1SYNCbits.P1SYNC2           // bit 2
9415 #define P1DCPOL                 PSMC1SYNCbits.P1DCPOL           // bit 5
9416 #define P1PRPOL                 PSMC1SYNCbits.P1PRPOL           // bit 6
9417 #define P1POFST                 PSMC1SYNCbits.P1POFST           // bit 7
9418 
9419 #define PSMC1TMR8               PSMC1TMRHbits.PSMC1TMR8         // bit 0
9420 #define PSMC1TMR9               PSMC1TMRHbits.PSMC1TMR9         // bit 1
9421 #define PSMC1TMR10              PSMC1TMRHbits.PSMC1TMR10        // bit 2
9422 #define PSMC1TMR11              PSMC1TMRHbits.PSMC1TMR11        // bit 3
9423 #define PSMC1TMR12              PSMC1TMRHbits.PSMC1TMR12        // bit 4
9424 #define PSMC1TMR13              PSMC1TMRHbits.PSMC1TMR13        // bit 5
9425 #define PSMC1TMR14              PSMC1TMRHbits.PSMC1TMR14        // bit 6
9426 #define PSMC1TMR15              PSMC1TMRHbits.PSMC1TMR15        // bit 7
9427 
9428 #define PSMC1TMR0               PSMC1TMRLbits.PSMC1TMR0         // bit 0
9429 #define PSMC1TMR1               PSMC1TMRLbits.PSMC1TMR1         // bit 1
9430 #define PSMC1TMR2               PSMC1TMRLbits.PSMC1TMR2         // bit 2
9431 #define PSMC1TMR3               PSMC1TMRLbits.PSMC1TMR3         // bit 3
9432 #define PSMC1TMR4               PSMC1TMRLbits.PSMC1TMR4         // bit 4
9433 #define PSMC1TMR5               PSMC1TMRLbits.PSMC1TMR5         // bit 5
9434 #define PSMC1TMR6               PSMC1TMRLbits.PSMC1TMR6         // bit 6
9435 #define PSMC1TMR7               PSMC1TMRLbits.PSMC1TMR7         // bit 7
9436 
9437 #define P2ASDOV                 PSMC2ASDCbits.P2ASDOV           // bit 0
9438 #define P2ARSEN                 PSMC2ASDCbits.P2ARSEN           // bit 5
9439 #define P2ASDEN                 PSMC2ASDCbits.P2ASDEN           // bit 6
9440 #define P2ASE                   PSMC2ASDCbits.P2ASE             // bit 7
9441 
9442 #define P2ASDLA                 PSMC2ASDLbits.P2ASDLA           // bit 0
9443 #define P2ASDLB                 PSMC2ASDLbits.P2ASDLB           // bit 1
9444 
9445 #define P2ASDSC1                PSMC2ASDSbits.P2ASDSC1          // bit 1
9446 #define P2ASDSC2                PSMC2ASDSbits.P2ASDSC2          // bit 2
9447 #define P2ASDSC3                PSMC2ASDSbits.P2ASDSC3          // bit 3
9448 #define P2ASDSC4                PSMC2ASDSbits.P2ASDSC4          // bit 4
9449 #define P2ASDSIN                PSMC2ASDSbits.P2ASDSIN          // bit 7
9450 
9451 #define PSMC2BLKF0              PSMC2BLKFbits.PSMC2BLKF0        // bit 0
9452 #define PSMC2BLKF1              PSMC2BLKFbits.PSMC2BLKF1        // bit 1
9453 #define PSMC2BLKF2              PSMC2BLKFbits.PSMC2BLKF2        // bit 2
9454 #define PSMC2BLKF3              PSMC2BLKFbits.PSMC2BLKF3        // bit 3
9455 #define PSMC2BLKF4              PSMC2BLKFbits.PSMC2BLKF4        // bit 4
9456 #define PSMC2BLKF5              PSMC2BLKFbits.PSMC2BLKF5        // bit 5
9457 #define PSMC2BLKF6              PSMC2BLKFbits.PSMC2BLKF6        // bit 6
9458 #define PSMC2BLKF7              PSMC2BLKFbits.PSMC2BLKF7        // bit 7
9459 
9460 #define PSMC2BLKR0              PSMC2BLKRbits.PSMC2BLKR0        // bit 0
9461 #define PSMC2BLKR1              PSMC2BLKRbits.PSMC2BLKR1        // bit 1
9462 #define PSMC2BLKR2              PSMC2BLKRbits.PSMC2BLKR2        // bit 2
9463 #define PSMC2BLKR3              PSMC2BLKRbits.PSMC2BLKR3        // bit 3
9464 #define PSMC2BLKR4              PSMC2BLKRbits.PSMC2BLKR4        // bit 4
9465 #define PSMC2BLKR5              PSMC2BLKRbits.PSMC2BLKR5        // bit 5
9466 #define PSMC2BLKR6              PSMC2BLKRbits.PSMC2BLKR6        // bit 6
9467 #define PSMC2BLKR7              PSMC2BLKRbits.PSMC2BLKR7        // bit 7
9468 
9469 #define P2REBM0                 PSMC2BLNKbits.P2REBM0           // bit 0
9470 #define P2REBM1                 PSMC2BLNKbits.P2REBM1           // bit 1
9471 #define P2FEBM0                 PSMC2BLNKbits.P2FEBM0           // bit 4
9472 #define P2FEBM1                 PSMC2BLNKbits.P2FEBM1           // bit 5
9473 
9474 #define P2CSRC0                 PSMC2CLKbits.P2CSRC0            // bit 0
9475 #define P2CSRC1                 PSMC2CLKbits.P2CSRC1            // bit 1
9476 #define P2CPRE0                 PSMC2CLKbits.P2CPRE0            // bit 4
9477 #define P2CPRE1                 PSMC2CLKbits.P2CPRE1            // bit 5
9478 
9479 #define P2MODE0                 PSMC2CONbits.P2MODE0            // bit 0
9480 #define P2MODE1                 PSMC2CONbits.P2MODE1            // bit 1
9481 #define P2MODE2                 PSMC2CONbits.P2MODE2            // bit 2
9482 #define P2MODE3                 PSMC2CONbits.P2MODE3            // bit 3
9483 #define P2DBRE                  PSMC2CONbits.P2DBRE             // bit 4
9484 #define P2DBFE                  PSMC2CONbits.P2DBFE             // bit 5
9485 #define PSMC2LD                 PSMC2CONbits.PSMC2LD            // bit 6
9486 #define PSMC2EN                 PSMC2CONbits.PSMC2EN            // bit 7
9487 
9488 #define PSMC2DBF0               PSMC2DBFbits.PSMC2DBF0          // bit 0
9489 #define PSMC2DBF1               PSMC2DBFbits.PSMC2DBF1          // bit 1
9490 #define PSMC2DBF2               PSMC2DBFbits.PSMC2DBF2          // bit 2
9491 #define PSMC2DBF3               PSMC2DBFbits.PSMC2DBF3          // bit 3
9492 #define PSMC2DBF4               PSMC2DBFbits.PSMC2DBF4          // bit 4
9493 #define PSMC2DBF5               PSMC2DBFbits.PSMC2DBF5          // bit 5
9494 #define PSMC2DBF6               PSMC2DBFbits.PSMC2DBF6          // bit 6
9495 #define PSMC2DBF7               PSMC2DBFbits.PSMC2DBF7          // bit 7
9496 
9497 #define PSMC2DBR0               PSMC2DBRbits.PSMC2DBR0          // bit 0
9498 #define PSMC2DBR1               PSMC2DBRbits.PSMC2DBR1          // bit 1
9499 #define PSMC2DBR2               PSMC2DBRbits.PSMC2DBR2          // bit 2
9500 #define PSMC2DBR3               PSMC2DBRbits.PSMC2DBR3          // bit 3
9501 #define PSMC2DBR4               PSMC2DBRbits.PSMC2DBR4          // bit 4
9502 #define PSMC2DBR5               PSMC2DBRbits.PSMC2DBR5          // bit 5
9503 #define PSMC2DBR6               PSMC2DBRbits.PSMC2DBR6          // bit 6
9504 #define PSMC2DBR7               PSMC2DBRbits.PSMC2DBR7          // bit 7
9505 
9506 #define PSMC2DC8                PSMC2DCHbits.PSMC2DC8           // bit 0
9507 #define PSMC2DC9                PSMC2DCHbits.PSMC2DC9           // bit 1
9508 #define PSMC2DC10               PSMC2DCHbits.PSMC2DC10          // bit 2
9509 #define PSMC2DC11               PSMC2DCHbits.PSMC2DC11          // bit 3
9510 #define PSMC2DC12               PSMC2DCHbits.PSMC2DC12          // bit 4
9511 #define PSMC2DC13               PSMC2DCHbits.PSMC2DC13          // bit 5
9512 #define PSMC2DC14               PSMC2DCHbits.PSMC2DC14          // bit 6
9513 #define PSMC2DC15               PSMC2DCHbits.PSMC2DC15          // bit 7
9514 
9515 #define PSMC2DC0                PSMC2DCLbits.PSMC2DC0           // bit 0
9516 #define PSMC2DC1                PSMC2DCLbits.PSMC2DC1           // bit 1
9517 #define PSMC2DC2                PSMC2DCLbits.PSMC2DC2           // bit 2
9518 #define PSMC2DC3                PSMC2DCLbits.PSMC2DC3           // bit 3
9519 #define PSMC2DC4                PSMC2DCLbits.PSMC2DC4           // bit 4
9520 #define PSMC2DC5                PSMC2DCLbits.PSMC2DC5           // bit 5
9521 #define PSMC2DC6                PSMC2DCLbits.PSMC2DC6           // bit 6
9522 #define PSMC2DC7                PSMC2DCLbits.PSMC2DC7           // bit 7
9523 
9524 #define P2DCST                  PSMC2DCSbits.P2DCST             // bit 0
9525 #define P2DCSC1                 PSMC2DCSbits.P2DCSC1            // bit 1
9526 #define P2DCSC2                 PSMC2DCSbits.P2DCSC2            // bit 2
9527 #define P2DCSC3                 PSMC2DCSbits.P2DCSC3            // bit 3
9528 #define P2DCSC4                 PSMC2DCSbits.P2DCSC4            // bit 4
9529 #define P2DCSIN                 PSMC2DCSbits.P2DCSIN            // bit 7
9530 
9531 #define P2FEBSC1                PSMC2FEBSbits.P2FEBSC1          // bit 1
9532 #define P2FEBSC2                PSMC2FEBSbits.P2FEBSC2          // bit 2
9533 #define P2FEBSC3                PSMC2FEBSbits.P2FEBSC3          // bit 3
9534 #define P2FEBSC4                PSMC2FEBSbits.P2FEBSC4          // bit 4
9535 #define P2FEBSIN                PSMC2FEBSbits.P2FEBSIN          // bit 7
9536 
9537 #define PSMC2FFA0               PSMC2FFAbits.PSMC2FFA0          // bit 0
9538 #define PSMC2FFA1               PSMC2FFAbits.PSMC2FFA1          // bit 1
9539 #define PSMC2FFA2               PSMC2FFAbits.PSMC2FFA2          // bit 2
9540 #define PSMC2FFA3               PSMC2FFAbits.PSMC2FFA3          // bit 3
9541 
9542 #define P2TPRIF                 PSMC2INTbits.P2TPRIF            // bit 0
9543 #define P2TDCIF                 PSMC2INTbits.P2TDCIF            // bit 1
9544 #define P2TPHIF                 PSMC2INTbits.P2TPHIF            // bit 2
9545 #define P2TOVIF                 PSMC2INTbits.P2TOVIF            // bit 3
9546 #define P2TPRIE                 PSMC2INTbits.P2TPRIE            // bit 4
9547 #define P2TDCIE                 PSMC2INTbits.P2TDCIE            // bit 5
9548 #define P2TPHIE                 PSMC2INTbits.P2TPHIE            // bit 6
9549 #define P2TOVIE                 PSMC2INTbits.P2TOVIE            // bit 7
9550 
9551 #define P2MSRC0                 PSMC2MDLbits.P2MSRC0            // bit 0
9552 #define P2MSRC1                 PSMC2MDLbits.P2MSRC1            // bit 1
9553 #define P2MSRC2                 PSMC2MDLbits.P2MSRC2            // bit 2
9554 #define P2MSRC3                 PSMC2MDLbits.P2MSRC3            // bit 3
9555 #define P2MDLBIT                PSMC2MDLbits.P2MDLBIT           // bit 5
9556 #define P2MDLPOL                PSMC2MDLbits.P2MDLPOL           // bit 6
9557 #define P2MDLEN                 PSMC2MDLbits.P2MDLEN            // bit 7
9558 
9559 #define P2OEA                   PSMC2OENbits.P2OEA              // bit 0
9560 #define P2OEB                   PSMC2OENbits.P2OEB              // bit 1
9561 
9562 #define PSMC2PH8                PSMC2PHHbits.PSMC2PH8           // bit 0
9563 #define PSMC2PH9                PSMC2PHHbits.PSMC2PH9           // bit 1
9564 #define PSMC2PH10               PSMC2PHHbits.PSMC2PH10          // bit 2
9565 #define PSMC2PH11               PSMC2PHHbits.PSMC2PH11          // bit 3
9566 #define PSMC2PH12               PSMC2PHHbits.PSMC2PH12          // bit 4
9567 #define PSMC2PH13               PSMC2PHHbits.PSMC2PH13          // bit 5
9568 #define PSMC2PH14               PSMC2PHHbits.PSMC2PH14          // bit 6
9569 #define PSMC2PH15               PSMC2PHHbits.PSMC2PH15          // bit 7
9570 
9571 #define PSMC2PH0                PSMC2PHLbits.PSMC2PH0           // bit 0
9572 #define PSMC2PH1                PSMC2PHLbits.PSMC2PH1           // bit 1
9573 #define PSMC2PH2                PSMC2PHLbits.PSMC2PH2           // bit 2
9574 #define PSMC2PH3                PSMC2PHLbits.PSMC2PH3           // bit 3
9575 #define PSMC2PH4                PSMC2PHLbits.PSMC2PH4           // bit 4
9576 #define PSMC2PH5                PSMC2PHLbits.PSMC2PH5           // bit 5
9577 #define PSMC2PH6                PSMC2PHLbits.PSMC2PH6           // bit 6
9578 #define PSMC2PH7                PSMC2PHLbits.PSMC2PH7           // bit 7
9579 
9580 #define P2PHST                  PSMC2PHSbits.P2PHST             // bit 0
9581 #define P2PHSC1                 PSMC2PHSbits.P2PHSC1            // bit 1
9582 #define P2PHSC2                 PSMC2PHSbits.P2PHSC2            // bit 2
9583 #define P2PHSC3                 PSMC2PHSbits.P2PHSC3            // bit 3
9584 #define P2PHSC4                 PSMC2PHSbits.P2PHSC4            // bit 4
9585 #define P2PHSIN                 PSMC2PHSbits.P2PHSIN            // bit 7
9586 
9587 #define P2POLA                  PSMC2POLbits.P2POLA             // bit 0
9588 #define P2POLB                  PSMC2POLbits.P2POLB             // bit 1
9589 #define P2INPOL                 PSMC2POLbits.P2INPOL            // bit 6
9590 
9591 #define PSMC2PR8                PSMC2PRHbits.PSMC2PR8           // bit 0
9592 #define PSMC2PR9                PSMC2PRHbits.PSMC2PR9           // bit 1
9593 #define PSMC2PR10               PSMC2PRHbits.PSMC2PR10          // bit 2
9594 #define PSMC2PR11               PSMC2PRHbits.PSMC2PR11          // bit 3
9595 #define PSMC2PR12               PSMC2PRHbits.PSMC2PR12          // bit 4
9596 #define PSMC2PR13               PSMC2PRHbits.PSMC2PR13          // bit 5
9597 #define PSMC2PR14               PSMC2PRHbits.PSMC2PR14          // bit 6
9598 #define PSMC2PR15               PSMC2PRHbits.PSMC2PR15          // bit 7
9599 
9600 #define PSMC2PR0                PSMC2PRLbits.PSMC2PR0           // bit 0
9601 #define PSMC2PR1                PSMC2PRLbits.PSMC2PR1           // bit 1
9602 #define PSMC2PR2                PSMC2PRLbits.PSMC2PR2           // bit 2
9603 #define PSMC2PR3                PSMC2PRLbits.PSMC2PR3           // bit 3
9604 #define PSMC2PR4                PSMC2PRLbits.PSMC2PR4           // bit 4
9605 #define PSMC2PR5                PSMC2PRLbits.PSMC2PR5           // bit 5
9606 #define PSMC2PR6                PSMC2PRLbits.PSMC2PR6           // bit 6
9607 #define PSMC2PR7                PSMC2PRLbits.PSMC2PR7           // bit 7
9608 
9609 #define P2PRST                  PSMC2PRSbits.P2PRST             // bit 0
9610 #define P2PRSC1                 PSMC2PRSbits.P2PRSC1            // bit 1
9611 #define P2PRSC2                 PSMC2PRSbits.P2PRSC2            // bit 2
9612 #define P2PRSC3                 PSMC2PRSbits.P2PRSC3            // bit 3
9613 #define P2PRSC4                 PSMC2PRSbits.P2PRSC4            // bit 4
9614 #define P2PRSIN                 PSMC2PRSbits.P2PRSIN            // bit 7
9615 
9616 #define P2REBSC1                PSMC2REBSbits.P2REBSC1          // bit 1
9617 #define P2REBSC2                PSMC2REBSbits.P2REBSC2          // bit 2
9618 #define P2REBSC3                PSMC2REBSbits.P2REBSC3          // bit 3
9619 #define P2REBSC4                PSMC2REBSbits.P2REBSC4          // bit 4
9620 #define P2REBSIN                PSMC2REBSbits.P2REBSIN          // bit 7
9621 
9622 #define P2STRA                  PSMC2STR0bits.P2STRA            // bit 0
9623 #define P2STRB                  PSMC2STR0bits.P2STRB            // bit 1
9624 
9625 #define P2HSMEN                 PSMC2STR1bits.P2HSMEN           // bit 0
9626 #define P2LSMEN                 PSMC2STR1bits.P2LSMEN           // bit 1
9627 #define P2SSYNC                 PSMC2STR1bits.P2SSYNC           // bit 7
9628 
9629 #define P2SYNC0                 PSMC2SYNCbits.P2SYNC0           // bit 0
9630 #define P2SYNC1                 PSMC2SYNCbits.P2SYNC1           // bit 1
9631 #define P2SYNC2                 PSMC2SYNCbits.P2SYNC2           // bit 2
9632 #define P2DCPOL                 PSMC2SYNCbits.P2DCPOL           // bit 5
9633 #define P2PRPOL                 PSMC2SYNCbits.P2PRPOL           // bit 6
9634 #define P2POFST                 PSMC2SYNCbits.P2POFST           // bit 7
9635 
9636 #define PSMC2TMR8               PSMC2TMRHbits.PSMC2TMR8         // bit 0
9637 #define PSMC2TMR9               PSMC2TMRHbits.PSMC2TMR9         // bit 1
9638 #define PSMC2TMR10              PSMC2TMRHbits.PSMC2TMR10        // bit 2
9639 #define PSMC2TMR11              PSMC2TMRHbits.PSMC2TMR11        // bit 3
9640 #define PSMC2TMR12              PSMC2TMRHbits.PSMC2TMR12        // bit 4
9641 #define PSMC2TMR13              PSMC2TMRHbits.PSMC2TMR13        // bit 5
9642 #define PSMC2TMR14              PSMC2TMRHbits.PSMC2TMR14        // bit 6
9643 #define PSMC2TMR15              PSMC2TMRHbits.PSMC2TMR15        // bit 7
9644 
9645 #define PSMC2TMR0               PSMC2TMRLbits.PSMC2TMR0         // bit 0
9646 #define PSMC2TMR1               PSMC2TMRLbits.PSMC2TMR1         // bit 1
9647 #define PSMC2TMR2               PSMC2TMRLbits.PSMC2TMR2         // bit 2
9648 #define PSMC2TMR3               PSMC2TMRLbits.PSMC2TMR3         // bit 3
9649 #define PSMC2TMR4               PSMC2TMRLbits.PSMC2TMR4         // bit 4
9650 #define PSMC2TMR5               PSMC2TMRLbits.PSMC2TMR5         // bit 5
9651 #define PSMC2TMR6               PSMC2TMRLbits.PSMC2TMR6         // bit 6
9652 #define PSMC2TMR7               PSMC2TMRLbits.PSMC2TMR7         // bit 7
9653 
9654 #define P3ASDOV                 PSMC3ASDCbits.P3ASDOV           // bit 0
9655 #define P3ARSEN                 PSMC3ASDCbits.P3ARSEN           // bit 5
9656 #define P3ASDEN                 PSMC3ASDCbits.P3ASDEN           // bit 6
9657 #define P3ASE                   PSMC3ASDCbits.P3ASE             // bit 7
9658 
9659 #define P3ASDLA                 PSMC3ASDLbits.P3ASDLA           // bit 0
9660 #define P3ASDLB                 PSMC3ASDLbits.P3ASDLB           // bit 1
9661 
9662 #define P3ASDSC1                PSMC3ASDSbits.P3ASDSC1          // bit 1
9663 #define P3ASDSC2                PSMC3ASDSbits.P3ASDSC2          // bit 2
9664 #define P3ASDSC3                PSMC3ASDSbits.P3ASDSC3          // bit 3
9665 #define P3ASDSC4                PSMC3ASDSbits.P3ASDSC4          // bit 4
9666 #define P3ASDSIN                PSMC3ASDSbits.P3ASDSIN          // bit 7
9667 
9668 #define PSMC3BLKF0              PSMC3BLKFbits.PSMC3BLKF0        // bit 0
9669 #define PSMC3BLKF1              PSMC3BLKFbits.PSMC3BLKF1        // bit 1
9670 #define PSMC3BLKF2              PSMC3BLKFbits.PSMC3BLKF2        // bit 2
9671 #define PSMC3BLKF3              PSMC3BLKFbits.PSMC3BLKF3        // bit 3
9672 #define PSMC3BLKF4              PSMC3BLKFbits.PSMC3BLKF4        // bit 4
9673 #define PSMC3BLKF5              PSMC3BLKFbits.PSMC3BLKF5        // bit 5
9674 #define PSMC3BLKF6              PSMC3BLKFbits.PSMC3BLKF6        // bit 6
9675 #define PSMC3BLKF7              PSMC3BLKFbits.PSMC3BLKF7        // bit 7
9676 
9677 #define PSMC3BLKR0              PSMC3BLKRbits.PSMC3BLKR0        // bit 0
9678 #define PSMC3BLKR1              PSMC3BLKRbits.PSMC3BLKR1        // bit 1
9679 #define PSMC3BLKR2              PSMC3BLKRbits.PSMC3BLKR2        // bit 2
9680 #define PSMC3BLKR3              PSMC3BLKRbits.PSMC3BLKR3        // bit 3
9681 #define PSMC3BLKR4              PSMC3BLKRbits.PSMC3BLKR4        // bit 4
9682 #define PSMC3BLKR5              PSMC3BLKRbits.PSMC3BLKR5        // bit 5
9683 #define PSMC3BLKR6              PSMC3BLKRbits.PSMC3BLKR6        // bit 6
9684 #define PSMC3BLKR7              PSMC3BLKRbits.PSMC3BLKR7        // bit 7
9685 
9686 #define P3REBM0                 PSMC3BLNKbits.P3REBM0           // bit 0
9687 #define P3REBM1                 PSMC3BLNKbits.P3REBM1           // bit 1
9688 #define P3FEBM0                 PSMC3BLNKbits.P3FEBM0           // bit 4
9689 #define P3FEBM1                 PSMC3BLNKbits.P3FEBM1           // bit 5
9690 
9691 #define P3CSRC0                 PSMC3CLKbits.P3CSRC0            // bit 0
9692 #define P3CSRC1                 PSMC3CLKbits.P3CSRC1            // bit 1
9693 #define P3CPRE0                 PSMC3CLKbits.P3CPRE0            // bit 4
9694 #define P3CPRE1                 PSMC3CLKbits.P3CPRE1            // bit 5
9695 
9696 #define P3MODE0                 PSMC3CONbits.P3MODE0            // bit 0
9697 #define P3MODE1                 PSMC3CONbits.P3MODE1            // bit 1
9698 #define P3MODE2                 PSMC3CONbits.P3MODE2            // bit 2
9699 #define P3MODE3                 PSMC3CONbits.P3MODE3            // bit 3
9700 #define P3DBRE                  PSMC3CONbits.P3DBRE             // bit 4
9701 #define P3DBFE                  PSMC3CONbits.P3DBFE             // bit 5
9702 #define PSMC3LD                 PSMC3CONbits.PSMC3LD            // bit 6
9703 #define PSMC3EN                 PSMC3CONbits.PSMC3EN            // bit 7
9704 
9705 #define PSMC3DBF0               PSMC3DBFbits.PSMC3DBF0          // bit 0
9706 #define PSMC3DBF1               PSMC3DBFbits.PSMC3DBF1          // bit 1
9707 #define PSMC3DBF2               PSMC3DBFbits.PSMC3DBF2          // bit 2
9708 #define PSMC3DBF3               PSMC3DBFbits.PSMC3DBF3          // bit 3
9709 #define PSMC3DBF4               PSMC3DBFbits.PSMC3DBF4          // bit 4
9710 #define PSMC3DBF5               PSMC3DBFbits.PSMC3DBF5          // bit 5
9711 #define PSMC3DBF6               PSMC3DBFbits.PSMC3DBF6          // bit 6
9712 #define PSMC3DBF7               PSMC3DBFbits.PSMC3DBF7          // bit 7
9713 
9714 #define PSMC3DBR0               PSMC3DBRbits.PSMC3DBR0          // bit 0
9715 #define PSMC3DBR1               PSMC3DBRbits.PSMC3DBR1          // bit 1
9716 #define PSMC3DBR2               PSMC3DBRbits.PSMC3DBR2          // bit 2
9717 #define PSMC3DBR3               PSMC3DBRbits.PSMC3DBR3          // bit 3
9718 #define PSMC3DBR4               PSMC3DBRbits.PSMC3DBR4          // bit 4
9719 #define PSMC3DBR5               PSMC3DBRbits.PSMC3DBR5          // bit 5
9720 #define PSMC3DBR6               PSMC3DBRbits.PSMC3DBR6          // bit 6
9721 #define PSMC3DBR7               PSMC3DBRbits.PSMC3DBR7          // bit 7
9722 
9723 #define PSMC3DC8                PSMC3DCHbits.PSMC3DC8           // bit 0
9724 #define PSMC3DC9                PSMC3DCHbits.PSMC3DC9           // bit 1
9725 #define PSMC3DC10               PSMC3DCHbits.PSMC3DC10          // bit 2
9726 #define PSMC3DC11               PSMC3DCHbits.PSMC3DC11          // bit 3
9727 #define PSMC3DC12               PSMC3DCHbits.PSMC3DC12          // bit 4
9728 #define PSMC3DC13               PSMC3DCHbits.PSMC3DC13          // bit 5
9729 #define PSMC3DC14               PSMC3DCHbits.PSMC3DC14          // bit 6
9730 #define PSMC3DC15               PSMC3DCHbits.PSMC3DC15          // bit 7
9731 
9732 #define PSMC3DC0                PSMC3DCLbits.PSMC3DC0           // bit 0
9733 #define PSMC3DC1                PSMC3DCLbits.PSMC3DC1           // bit 1
9734 #define PSMC3DC2                PSMC3DCLbits.PSMC3DC2           // bit 2
9735 #define PSMC3DC3                PSMC3DCLbits.PSMC3DC3           // bit 3
9736 #define PSMC3DC4                PSMC3DCLbits.PSMC3DC4           // bit 4
9737 #define PSMC3DC5                PSMC3DCLbits.PSMC3DC5           // bit 5
9738 #define PSMC3DC6                PSMC3DCLbits.PSMC3DC6           // bit 6
9739 #define PSMC3DC7                PSMC3DCLbits.PSMC3DC7           // bit 7
9740 
9741 #define P3DCST                  PSMC3DCSbits.P3DCST             // bit 0
9742 #define P3DCSC1                 PSMC3DCSbits.P3DCSC1            // bit 1
9743 #define P3DCSC2                 PSMC3DCSbits.P3DCSC2            // bit 2
9744 #define P3DCSC3                 PSMC3DCSbits.P3DCSC3            // bit 3
9745 #define P3DCSC4                 PSMC3DCSbits.P3DCSC4            // bit 4
9746 #define P3DCSIN                 PSMC3DCSbits.P3DCSIN            // bit 7
9747 
9748 #define P3FEBSC1                PSMC3FEBSbits.P3FEBSC1          // bit 1
9749 #define P3FEBSC2                PSMC3FEBSbits.P3FEBSC2          // bit 2
9750 #define P3FEBSC3                PSMC3FEBSbits.P3FEBSC3          // bit 3
9751 #define P3FEBSC4                PSMC3FEBSbits.P3FEBSC4          // bit 4
9752 #define P3FEBSIN                PSMC3FEBSbits.P3FEBSIN          // bit 7
9753 
9754 #define PSMC3FFA0               PSMC3FFAbits.PSMC3FFA0          // bit 0
9755 #define PSMC3FFA1               PSMC3FFAbits.PSMC3FFA1          // bit 1
9756 #define PSMC3FFA2               PSMC3FFAbits.PSMC3FFA2          // bit 2
9757 #define PSMC3FFA3               PSMC3FFAbits.PSMC3FFA3          // bit 3
9758 
9759 #define P3TPRIF                 PSMC3INTbits.P3TPRIF            // bit 0
9760 #define P3TDCIF                 PSMC3INTbits.P3TDCIF            // bit 1
9761 #define P3TPHIF                 PSMC3INTbits.P3TPHIF            // bit 2
9762 #define P3TOVIF                 PSMC3INTbits.P3TOVIF            // bit 3
9763 #define P3TPRIE                 PSMC3INTbits.P3TPRIE            // bit 4
9764 #define P3TDCIE                 PSMC3INTbits.P3TDCIE            // bit 5
9765 #define P3TPHIE                 PSMC3INTbits.P3TPHIE            // bit 6
9766 #define P3TOVIE                 PSMC3INTbits.P3TOVIE            // bit 7
9767 
9768 #define P3MSRC0                 PSMC3MDLbits.P3MSRC0            // bit 0
9769 #define P3MSRC1                 PSMC3MDLbits.P3MSRC1            // bit 1
9770 #define P3MSRC2                 PSMC3MDLbits.P3MSRC2            // bit 2
9771 #define P3MSRC3                 PSMC3MDLbits.P3MSRC3            // bit 3
9772 #define P3MDLBIT                PSMC3MDLbits.P3MDLBIT           // bit 5
9773 #define P3MDLPOL                PSMC3MDLbits.P3MDLPOL           // bit 6
9774 #define P3MDLEN                 PSMC3MDLbits.P3MDLEN            // bit 7
9775 
9776 #define P3OEA                   PSMC3OENbits.P3OEA              // bit 0
9777 #define P3OEB                   PSMC3OENbits.P3OEB              // bit 1
9778 
9779 #define PSMC3PH8                PSMC3PHHbits.PSMC3PH8           // bit 0
9780 #define PSMC3PH9                PSMC3PHHbits.PSMC3PH9           // bit 1
9781 #define PSMC3PH10               PSMC3PHHbits.PSMC3PH10          // bit 2
9782 #define PSMC3PH11               PSMC3PHHbits.PSMC3PH11          // bit 3
9783 #define PSMC3PH12               PSMC3PHHbits.PSMC3PH12          // bit 4
9784 #define PSMC3PH13               PSMC3PHHbits.PSMC3PH13          // bit 5
9785 #define PSMC3PH14               PSMC3PHHbits.PSMC3PH14          // bit 6
9786 #define PSMC3PH15               PSMC3PHHbits.PSMC3PH15          // bit 7
9787 
9788 #define PSMC3PH0                PSMC3PHLbits.PSMC3PH0           // bit 0
9789 #define PSMC3PH1                PSMC3PHLbits.PSMC3PH1           // bit 1
9790 #define PSMC3PH2                PSMC3PHLbits.PSMC3PH2           // bit 2
9791 #define PSMC3PH3                PSMC3PHLbits.PSMC3PH3           // bit 3
9792 #define PSMC3PH4                PSMC3PHLbits.PSMC3PH4           // bit 4
9793 #define PSMC3PH5                PSMC3PHLbits.PSMC3PH5           // bit 5
9794 #define PSMC3PH6                PSMC3PHLbits.PSMC3PH6           // bit 6
9795 #define PSMC3PH7                PSMC3PHLbits.PSMC3PH7           // bit 7
9796 
9797 #define P3PHST                  PSMC3PHSbits.P3PHST             // bit 0
9798 #define P3PHSC1                 PSMC3PHSbits.P3PHSC1            // bit 1
9799 #define P3PHSC2                 PSMC3PHSbits.P3PHSC2            // bit 2
9800 #define P3PHSC3                 PSMC3PHSbits.P3PHSC3            // bit 3
9801 #define P3PHSC4                 PSMC3PHSbits.P3PHSC4            // bit 4
9802 #define P3PHSIN                 PSMC3PHSbits.P3PHSIN            // bit 7
9803 
9804 #define P3POLA                  PSMC3POLbits.P3POLA             // bit 0
9805 #define P3POLB                  PSMC3POLbits.P3POLB             // bit 1
9806 #define P3INPOL                 PSMC3POLbits.P3INPOL            // bit 6
9807 
9808 #define PSMC3PR8                PSMC3PRHbits.PSMC3PR8           // bit 0
9809 #define PSMC3PR9                PSMC3PRHbits.PSMC3PR9           // bit 1
9810 #define PSMC3PR10               PSMC3PRHbits.PSMC3PR10          // bit 2
9811 #define PSMC3PR11               PSMC3PRHbits.PSMC3PR11          // bit 3
9812 #define PSMC3PR12               PSMC3PRHbits.PSMC3PR12          // bit 4
9813 #define PSMC3PR13               PSMC3PRHbits.PSMC3PR13          // bit 5
9814 #define PSMC3PR14               PSMC3PRHbits.PSMC3PR14          // bit 6
9815 #define PSMC3PR15               PSMC3PRHbits.PSMC3PR15          // bit 7
9816 
9817 #define PSMC3PR0                PSMC3PRLbits.PSMC3PR0           // bit 0
9818 #define PSMC3PR1                PSMC3PRLbits.PSMC3PR1           // bit 1
9819 #define PSMC3PR2                PSMC3PRLbits.PSMC3PR2           // bit 2
9820 #define PSMC3PR3                PSMC3PRLbits.PSMC3PR3           // bit 3
9821 #define PSMC3PR4                PSMC3PRLbits.PSMC3PR4           // bit 4
9822 #define PSMC3PR5                PSMC3PRLbits.PSMC3PR5           // bit 5
9823 #define PSMC3PR6                PSMC3PRLbits.PSMC3PR6           // bit 6
9824 #define PSMC3PR7                PSMC3PRLbits.PSMC3PR7           // bit 7
9825 
9826 #define P3PRST                  PSMC3PRSbits.P3PRST             // bit 0
9827 #define P3PRSC1                 PSMC3PRSbits.P3PRSC1            // bit 1
9828 #define P3PRSC2                 PSMC3PRSbits.P3PRSC2            // bit 2
9829 #define P3PRSC3                 PSMC3PRSbits.P3PRSC3            // bit 3
9830 #define P3PRSC4                 PSMC3PRSbits.P3PRSC4            // bit 4
9831 #define P3PRSIN                 PSMC3PRSbits.P3PRSIN            // bit 7
9832 
9833 #define P3REBSC1                PSMC3REBSbits.P3REBSC1          // bit 1
9834 #define P3REBSC2                PSMC3REBSbits.P3REBSC2          // bit 2
9835 #define P3REBSC3                PSMC3REBSbits.P3REBSC3          // bit 3
9836 #define P3REBSC4                PSMC3REBSbits.P3REBSC4          // bit 4
9837 #define P3REBSIN                PSMC3REBSbits.P3REBSIN          // bit 7
9838 
9839 #define P3STRA                  PSMC3STR0bits.P3STRA            // bit 0
9840 #define P3STRB                  PSMC3STR0bits.P3STRB            // bit 1
9841 
9842 #define P3HSMEN                 PSMC3STR1bits.P3HSMEN           // bit 0
9843 #define P3LSMEN                 PSMC3STR1bits.P3LSMEN           // bit 1
9844 #define P3SSYNC                 PSMC3STR1bits.P3SSYNC           // bit 7
9845 
9846 #define P3SYNC0                 PSMC3SYNCbits.P3SYNC0           // bit 0
9847 #define P3SYNC1                 PSMC3SYNCbits.P3SYNC1           // bit 1
9848 #define P3SYNC2                 PSMC3SYNCbits.P3SYNC2           // bit 2
9849 #define P3DCPOL                 PSMC3SYNCbits.P3DCPOL           // bit 5
9850 #define P3PRPOL                 PSMC3SYNCbits.P3PRPOL           // bit 6
9851 #define P3POFST                 PSMC3SYNCbits.P3POFST           // bit 7
9852 
9853 #define PSMC3TMR8               PSMC3TMRHbits.PSMC3TMR8         // bit 0
9854 #define PSMC3TMR9               PSMC3TMRHbits.PSMC3TMR9         // bit 1
9855 #define PSMC3TMR10              PSMC3TMRHbits.PSMC3TMR10        // bit 2
9856 #define PSMC3TMR11              PSMC3TMRHbits.PSMC3TMR11        // bit 3
9857 #define PSMC3TMR12              PSMC3TMRHbits.PSMC3TMR12        // bit 4
9858 #define PSMC3TMR13              PSMC3TMRHbits.PSMC3TMR13        // bit 5
9859 #define PSMC3TMR14              PSMC3TMRHbits.PSMC3TMR14        // bit 6
9860 #define PSMC3TMR15              PSMC3TMRHbits.PSMC3TMR15        // bit 7
9861 
9862 #define PSMC3TMR0               PSMC3TMRLbits.PSMC3TMR0         // bit 0
9863 #define PSMC3TMR1               PSMC3TMRLbits.PSMC3TMR1         // bit 1
9864 #define PSMC3TMR2               PSMC3TMRLbits.PSMC3TMR2         // bit 2
9865 #define PSMC3TMR3               PSMC3TMRLbits.PSMC3TMR3         // bit 3
9866 #define PSMC3TMR4               PSMC3TMRLbits.PSMC3TMR4         // bit 4
9867 #define PSMC3TMR5               PSMC3TMRLbits.PSMC3TMR5         // bit 5
9868 #define PSMC3TMR6               PSMC3TMRLbits.PSMC3TMR6         // bit 6
9869 #define PSMC3TMR7               PSMC3TMRLbits.PSMC3TMR7         // bit 7
9870 
9871 #define P4ASDOV                 PSMC4ASDCbits.P4ASDOV           // bit 0
9872 #define P4ARSEN                 PSMC4ASDCbits.P4ARSEN           // bit 5
9873 #define P4ASDEN                 PSMC4ASDCbits.P4ASDEN           // bit 6
9874 #define P4ASE                   PSMC4ASDCbits.P4ASE             // bit 7
9875 
9876 #define P4ASDLA                 PSMC4ASDLbits.P4ASDLA           // bit 0
9877 #define P4ASDLB                 PSMC4ASDLbits.P4ASDLB           // bit 1
9878 
9879 #define P4ASDSC1                PSMC4ASDSbits.P4ASDSC1          // bit 1
9880 #define P4ASDSC2                PSMC4ASDSbits.P4ASDSC2          // bit 2
9881 #define P4ASDSC3                PSMC4ASDSbits.P4ASDSC3          // bit 3
9882 #define P4ASDSC4                PSMC4ASDSbits.P4ASDSC4          // bit 4
9883 #define P4ASDSIN                PSMC4ASDSbits.P4ASDSIN          // bit 7
9884 
9885 #define PSMC4BLKF0              PSMC4BLKFbits.PSMC4BLKF0        // bit 0
9886 #define PSMC4BLKF1              PSMC4BLKFbits.PSMC4BLKF1        // bit 1
9887 #define PSMC4BLKF2              PSMC4BLKFbits.PSMC4BLKF2        // bit 2
9888 #define PSMC4BLKF3              PSMC4BLKFbits.PSMC4BLKF3        // bit 3
9889 #define PSMC4BLKF4              PSMC4BLKFbits.PSMC4BLKF4        // bit 4
9890 #define PSMC4BLKF5              PSMC4BLKFbits.PSMC4BLKF5        // bit 5
9891 #define PSMC4BLKF6              PSMC4BLKFbits.PSMC4BLKF6        // bit 6
9892 #define PSMC4BLKF7              PSMC4BLKFbits.PSMC4BLKF7        // bit 7
9893 
9894 #define PSMC4BLKR0              PSMC4BLKRbits.PSMC4BLKR0        // bit 0
9895 #define PSMC4BLKR1              PSMC4BLKRbits.PSMC4BLKR1        // bit 1
9896 #define PSMC4BLKR2              PSMC4BLKRbits.PSMC4BLKR2        // bit 2
9897 #define PSMC4BLKR3              PSMC4BLKRbits.PSMC4BLKR3        // bit 3
9898 #define PSMC4BLKR4              PSMC4BLKRbits.PSMC4BLKR4        // bit 4
9899 #define PSMC4BLKR5              PSMC4BLKRbits.PSMC4BLKR5        // bit 5
9900 #define PSMC4BLKR6              PSMC4BLKRbits.PSMC4BLKR6        // bit 6
9901 #define PSMC4BLKR7              PSMC4BLKRbits.PSMC4BLKR7        // bit 7
9902 
9903 #define P4REBM0                 PSMC4BLNKbits.P4REBM0           // bit 0
9904 #define P4REBM1                 PSMC4BLNKbits.P4REBM1           // bit 1
9905 #define P4FEBM0                 PSMC4BLNKbits.P4FEBM0           // bit 4
9906 #define P4FEBM1                 PSMC4BLNKbits.P4FEBM1           // bit 5
9907 
9908 #define P4CSRC0                 PSMC4CLKbits.P4CSRC0            // bit 0
9909 #define P4CSRC1                 PSMC4CLKbits.P4CSRC1            // bit 1
9910 #define P4CPRE0                 PSMC4CLKbits.P4CPRE0            // bit 4
9911 #define P4CPRE1                 PSMC4CLKbits.P4CPRE1            // bit 5
9912 
9913 #define P4MODE0                 PSMC4CONbits.P4MODE0            // bit 0
9914 #define P4MODE1                 PSMC4CONbits.P4MODE1            // bit 1
9915 #define P4MODE2                 PSMC4CONbits.P4MODE2            // bit 2
9916 #define P4MODE3                 PSMC4CONbits.P4MODE3            // bit 3
9917 #define P4DBRE                  PSMC4CONbits.P4DBRE             // bit 4
9918 #define P4DBFE                  PSMC4CONbits.P4DBFE             // bit 5
9919 #define PSMC4LD                 PSMC4CONbits.PSMC4LD            // bit 6
9920 #define PSMC4EN                 PSMC4CONbits.PSMC4EN            // bit 7
9921 
9922 #define PSMC4DBF0               PSMC4DBFbits.PSMC4DBF0          // bit 0
9923 #define PSMC4DBF1               PSMC4DBFbits.PSMC4DBF1          // bit 1
9924 #define PSMC4DBF2               PSMC4DBFbits.PSMC4DBF2          // bit 2
9925 #define PSMC4DBF3               PSMC4DBFbits.PSMC4DBF3          // bit 3
9926 #define PSMC4DBF4               PSMC4DBFbits.PSMC4DBF4          // bit 4
9927 #define PSMC4DBF5               PSMC4DBFbits.PSMC4DBF5          // bit 5
9928 #define PSMC4DBF6               PSMC4DBFbits.PSMC4DBF6          // bit 6
9929 #define PSMC4DBF7               PSMC4DBFbits.PSMC4DBF7          // bit 7
9930 
9931 #define PSMC4DBR0               PSMC4DBRbits.PSMC4DBR0          // bit 0
9932 #define PSMC4DBR1               PSMC4DBRbits.PSMC4DBR1          // bit 1
9933 #define PSMC4DBR2               PSMC4DBRbits.PSMC4DBR2          // bit 2
9934 #define PSMC4DBR3               PSMC4DBRbits.PSMC4DBR3          // bit 3
9935 #define PSMC4DBR4               PSMC4DBRbits.PSMC4DBR4          // bit 4
9936 #define PSMC4DBR5               PSMC4DBRbits.PSMC4DBR5          // bit 5
9937 #define PSMC4DBR6               PSMC4DBRbits.PSMC4DBR6          // bit 6
9938 #define PSMC4DBR7               PSMC4DBRbits.PSMC4DBR7          // bit 7
9939 
9940 #define PSMC4DC8                PSMC4DCHbits.PSMC4DC8           // bit 0
9941 #define PSMC4DC9                PSMC4DCHbits.PSMC4DC9           // bit 1
9942 #define PSMC4DC10               PSMC4DCHbits.PSMC4DC10          // bit 2
9943 #define PSMC4DC11               PSMC4DCHbits.PSMC4DC11          // bit 3
9944 #define PSMC4DC12               PSMC4DCHbits.PSMC4DC12          // bit 4
9945 #define PSMC4DC13               PSMC4DCHbits.PSMC4DC13          // bit 5
9946 #define PSMC4DC14               PSMC4DCHbits.PSMC4DC14          // bit 6
9947 #define PSMC4DC15               PSMC4DCHbits.PSMC4DC15          // bit 7
9948 
9949 #define PSMC4DC0                PSMC4DCLbits.PSMC4DC0           // bit 0
9950 #define PSMC4DC1                PSMC4DCLbits.PSMC4DC1           // bit 1
9951 #define PSMC4DC2                PSMC4DCLbits.PSMC4DC2           // bit 2
9952 #define PSMC4DC3                PSMC4DCLbits.PSMC4DC3           // bit 3
9953 #define PSMC4DC4                PSMC4DCLbits.PSMC4DC4           // bit 4
9954 #define PSMC4DC5                PSMC4DCLbits.PSMC4DC5           // bit 5
9955 #define PSMC4DC6                PSMC4DCLbits.PSMC4DC6           // bit 6
9956 #define PSMC4DC7                PSMC4DCLbits.PSMC4DC7           // bit 7
9957 
9958 #define P4DCST                  PSMC4DCSbits.P4DCST             // bit 0
9959 #define P4DCSC1                 PSMC4DCSbits.P4DCSC1            // bit 1
9960 #define P4DCSC2                 PSMC4DCSbits.P4DCSC2            // bit 2
9961 #define P4DCSC3                 PSMC4DCSbits.P4DCSC3            // bit 3
9962 #define P4DCSC4                 PSMC4DCSbits.P4DCSC4            // bit 4
9963 #define P4DCSIN                 PSMC4DCSbits.P4DCSIN            // bit 7
9964 
9965 #define P4FEBSC1                PSMC4FEBSbits.P4FEBSC1          // bit 1
9966 #define P4FEBSC2                PSMC4FEBSbits.P4FEBSC2          // bit 2
9967 #define P4FEBSC3                PSMC4FEBSbits.P4FEBSC3          // bit 3
9968 #define P4FEBSC4                PSMC4FEBSbits.P4FEBSC4          // bit 4
9969 #define P4FEBSIN                PSMC4FEBSbits.P4FEBSIN          // bit 7
9970 
9971 #define PSMC4FFA0               PSMC4FFAbits.PSMC4FFA0          // bit 0
9972 #define PSMC4FFA1               PSMC4FFAbits.PSMC4FFA1          // bit 1
9973 #define PSMC4FFA2               PSMC4FFAbits.PSMC4FFA2          // bit 2
9974 #define PSMC4FFA3               PSMC4FFAbits.PSMC4FFA3          // bit 3
9975 
9976 #define P4TPRIF                 PSMC4INTbits.P4TPRIF            // bit 0
9977 #define P4TDCIF                 PSMC4INTbits.P4TDCIF            // bit 1
9978 #define P4TPHIF                 PSMC4INTbits.P4TPHIF            // bit 2
9979 #define P4TOVIF                 PSMC4INTbits.P4TOVIF            // bit 3
9980 #define P4TPRIE                 PSMC4INTbits.P4TPRIE            // bit 4
9981 #define P4TDCIE                 PSMC4INTbits.P4TDCIE            // bit 5
9982 #define P4TPHIE                 PSMC4INTbits.P4TPHIE            // bit 6
9983 #define P4TOVIE                 PSMC4INTbits.P4TOVIE            // bit 7
9984 
9985 #define P4MSRC0                 PSMC4MDLbits.P4MSRC0            // bit 0
9986 #define P4MSRC1                 PSMC4MDLbits.P4MSRC1            // bit 1
9987 #define P4MSRC2                 PSMC4MDLbits.P4MSRC2            // bit 2
9988 #define P4MSRC3                 PSMC4MDLbits.P4MSRC3            // bit 3
9989 #define P4MDLBIT                PSMC4MDLbits.P4MDLBIT           // bit 5
9990 #define P4MDLPOL                PSMC4MDLbits.P4MDLPOL           // bit 6
9991 #define P4MDLEN                 PSMC4MDLbits.P4MDLEN            // bit 7
9992 
9993 #define P4OEA                   PSMC4OENbits.P4OEA              // bit 0
9994 #define P4OEB                   PSMC4OENbits.P4OEB              // bit 1
9995 
9996 #define PSMC4PH8                PSMC4PHHbits.PSMC4PH8           // bit 0
9997 #define PSMC4PH9                PSMC4PHHbits.PSMC4PH9           // bit 1
9998 #define PSMC4PH10               PSMC4PHHbits.PSMC4PH10          // bit 2
9999 #define PSMC4PH11               PSMC4PHHbits.PSMC4PH11          // bit 3
10000 #define PSMC4PH12               PSMC4PHHbits.PSMC4PH12          // bit 4
10001 #define PSMC4PH13               PSMC4PHHbits.PSMC4PH13          // bit 5
10002 #define PSMC4PH14               PSMC4PHHbits.PSMC4PH14          // bit 6
10003 #define PSMC4PH15               PSMC4PHHbits.PSMC4PH15          // bit 7
10004 
10005 #define PSMC4PH0                PSMC4PHLbits.PSMC4PH0           // bit 0
10006 #define PSMC4PH1                PSMC4PHLbits.PSMC4PH1           // bit 1
10007 #define PSMC4PH2                PSMC4PHLbits.PSMC4PH2           // bit 2
10008 #define PSMC4PH3                PSMC4PHLbits.PSMC4PH3           // bit 3
10009 #define PSMC4PH4                PSMC4PHLbits.PSMC4PH4           // bit 4
10010 #define PSMC4PH5                PSMC4PHLbits.PSMC4PH5           // bit 5
10011 #define PSMC4PH6                PSMC4PHLbits.PSMC4PH6           // bit 6
10012 #define PSMC4PH7                PSMC4PHLbits.PSMC4PH7           // bit 7
10013 
10014 #define P4PHST                  PSMC4PHSbits.P4PHST             // bit 0
10015 #define P4PHSC1                 PSMC4PHSbits.P4PHSC1            // bit 1
10016 #define P4PHSC2                 PSMC4PHSbits.P4PHSC2            // bit 2
10017 #define P4PHSC3                 PSMC4PHSbits.P4PHSC3            // bit 3
10018 #define P4PHSC4                 PSMC4PHSbits.P4PHSC4            // bit 4
10019 #define P4PHSIN                 PSMC4PHSbits.P4PHSIN            // bit 7
10020 
10021 #define P4POLA                  PSMC4POLbits.P4POLA             // bit 0
10022 #define P4POLB                  PSMC4POLbits.P4POLB             // bit 1
10023 #define P4INPOL                 PSMC4POLbits.P4INPOL            // bit 6
10024 
10025 #define PSMC4PR8                PSMC4PRHbits.PSMC4PR8           // bit 0
10026 #define PSMC4PR9                PSMC4PRHbits.PSMC4PR9           // bit 1
10027 #define PSMC4PR10               PSMC4PRHbits.PSMC4PR10          // bit 2
10028 #define PSMC4PR11               PSMC4PRHbits.PSMC4PR11          // bit 3
10029 #define PSMC4PR12               PSMC4PRHbits.PSMC4PR12          // bit 4
10030 #define PSMC4PR13               PSMC4PRHbits.PSMC4PR13          // bit 5
10031 #define PSMC4PR14               PSMC4PRHbits.PSMC4PR14          // bit 6
10032 #define PSMC4PR15               PSMC4PRHbits.PSMC4PR15          // bit 7
10033 
10034 #define PSMC4PR0                PSMC4PRLbits.PSMC4PR0           // bit 0
10035 #define PSMC4PR1                PSMC4PRLbits.PSMC4PR1           // bit 1
10036 #define PSMC4PR2                PSMC4PRLbits.PSMC4PR2           // bit 2
10037 #define PSMC4PR3                PSMC4PRLbits.PSMC4PR3           // bit 3
10038 #define PSMC4PR4                PSMC4PRLbits.PSMC4PR4           // bit 4
10039 #define PSMC4PR5                PSMC4PRLbits.PSMC4PR5           // bit 5
10040 #define PSMC4PR6                PSMC4PRLbits.PSMC4PR6           // bit 6
10041 #define PSMC4PR7                PSMC4PRLbits.PSMC4PR7           // bit 7
10042 
10043 #define P4PRST                  PSMC4PRSbits.P4PRST             // bit 0
10044 #define P4PRSC1                 PSMC4PRSbits.P4PRSC1            // bit 1
10045 #define P4PRSC2                 PSMC4PRSbits.P4PRSC2            // bit 2
10046 #define P4PRSC3                 PSMC4PRSbits.P4PRSC3            // bit 3
10047 #define P4PRSC4                 PSMC4PRSbits.P4PRSC4            // bit 4
10048 #define P4PRSIN                 PSMC4PRSbits.P4PRSIN            // bit 7
10049 
10050 #define P4REBSC1                PSMC4REBSbits.P4REBSC1          // bit 1
10051 #define P4REBSC2                PSMC4REBSbits.P4REBSC2          // bit 2
10052 #define P4REBSC3                PSMC4REBSbits.P4REBSC3          // bit 3
10053 #define P4REBSC4                PSMC4REBSbits.P4REBSC4          // bit 4
10054 #define P4REBSIN                PSMC4REBSbits.P4REBSIN          // bit 7
10055 
10056 #define P4STRA                  PSMC4STR0bits.P4STRA            // bit 0
10057 #define P4STRB                  PSMC4STR0bits.P4STRB            // bit 1
10058 
10059 #define P4HSMEN                 PSMC4STR1bits.P4HSMEN           // bit 0
10060 #define P4LSMEN                 PSMC4STR1bits.P4LSMEN           // bit 1
10061 #define P4SSYNC                 PSMC4STR1bits.P4SSYNC           // bit 7
10062 
10063 #define P4SYNC0                 PSMC4SYNCbits.P4SYNC0           // bit 0
10064 #define P4SYNC1                 PSMC4SYNCbits.P4SYNC1           // bit 1
10065 #define P4SYNC2                 PSMC4SYNCbits.P4SYNC2           // bit 2
10066 #define P4DCPOL                 PSMC4SYNCbits.P4DCPOL           // bit 5
10067 #define P4PRPOL                 PSMC4SYNCbits.P4PRPOL           // bit 6
10068 #define P4POFST                 PSMC4SYNCbits.P4POFST           // bit 7
10069 
10070 #define PSMC4TMR8               PSMC4TMRHbits.PSMC4TMR8         // bit 0
10071 #define PSMC4TMR9               PSMC4TMRHbits.PSMC4TMR9         // bit 1
10072 #define PSMC4TMR10              PSMC4TMRHbits.PSMC4TMR10        // bit 2
10073 #define PSMC4TMR11              PSMC4TMRHbits.PSMC4TMR11        // bit 3
10074 #define PSMC4TMR12              PSMC4TMRHbits.PSMC4TMR12        // bit 4
10075 #define PSMC4TMR13              PSMC4TMRHbits.PSMC4TMR13        // bit 5
10076 #define PSMC4TMR14              PSMC4TMRHbits.PSMC4TMR14        // bit 6
10077 #define PSMC4TMR15              PSMC4TMRHbits.PSMC4TMR15        // bit 7
10078 
10079 #define PSMC4TMR0               PSMC4TMRLbits.PSMC4TMR0         // bit 0
10080 #define PSMC4TMR1               PSMC4TMRLbits.PSMC4TMR1         // bit 1
10081 #define PSMC4TMR2               PSMC4TMRLbits.PSMC4TMR2         // bit 2
10082 #define PSMC4TMR3               PSMC4TMRLbits.PSMC4TMR3         // bit 3
10083 #define PSMC4TMR4               PSMC4TMRLbits.PSMC4TMR4         // bit 4
10084 #define PSMC4TMR5               PSMC4TMRLbits.PSMC4TMR5         // bit 5
10085 #define PSMC4TMR6               PSMC4TMRLbits.PSMC4TMR6         // bit 6
10086 #define PSMC4TMR7               PSMC4TMRLbits.PSMC4TMR7         // bit 7
10087 
10088 #define RX9D                    RC1STAbits.RX9D                 // bit 0
10089 #define OERR                    RC1STAbits.OERR                 // bit 1
10090 #define FERR                    RC1STAbits.FERR                 // bit 2
10091 #define ADDEN                   RC1STAbits.ADDEN                // bit 3
10092 #define CREN                    RC1STAbits.CREN                 // bit 4
10093 #define SREN                    RC1STAbits.SREN                 // bit 5
10094 #define RX9                     RC1STAbits.RX9                  // bit 6
10095 #define SPEN                    RC1STAbits.SPEN                 // bit 7
10096 
10097 #define SLRCONA0                SLRCONAbits.SLRCONA0            // bit 0
10098 #define SLRCONA1                SLRCONAbits.SLRCONA1            // bit 1
10099 #define SLRCONA2                SLRCONAbits.SLRCONA2            // bit 2
10100 #define SLRCONA3                SLRCONAbits.SLRCONA3            // bit 3
10101 #define SLRCONA4                SLRCONAbits.SLRCONA4            // bit 4
10102 #define SLRCONA5                SLRCONAbits.SLRCONA5            // bit 5
10103 #define SLRCONA6                SLRCONAbits.SLRCONA6            // bit 6
10104 #define SLRCONA7                SLRCONAbits.SLRCONA7            // bit 7
10105 
10106 #define SLRCONB0                SLRCONBbits.SLRCONB0            // bit 0
10107 #define SLRCONB1                SLRCONBbits.SLRCONB1            // bit 1
10108 #define SLRCONB2                SLRCONBbits.SLRCONB2            // bit 2
10109 #define SLRCONB3                SLRCONBbits.SLRCONB3            // bit 3
10110 #define SLRCONB4                SLRCONBbits.SLRCONB4            // bit 4
10111 #define SLRCONB5                SLRCONBbits.SLRCONB5            // bit 5
10112 #define SLRCONB6                SLRCONBbits.SLRCONB6            // bit 6
10113 #define SLRCONB7                SLRCONBbits.SLRCONB7            // bit 7
10114 
10115 #define SLRCONC0                SLRCONCbits.SLRCONC0            // bit 0
10116 #define SLRCONC1                SLRCONCbits.SLRCONC1            // bit 1
10117 #define SLRCONC2                SLRCONCbits.SLRCONC2            // bit 2
10118 #define SLRCONC3                SLRCONCbits.SLRCONC3            // bit 3
10119 #define SLRCONC4                SLRCONCbits.SLRCONC4            // bit 4
10120 #define SLRCONC5                SLRCONCbits.SLRCONC5            // bit 5
10121 #define SLRCONC6                SLRCONCbits.SLRCONC6            // bit 6
10122 #define SLRCONC7                SLRCONCbits.SLRCONC7            // bit 7
10123 
10124 #define SSP1ADD0                SSP1ADDbits.SSP1ADD0            // bit 0, shadows bit in SSP1ADDbits
10125 #define ADD0                    SSP1ADDbits.ADD0                // bit 0, shadows bit in SSP1ADDbits
10126 #define SSP1ADD1                SSP1ADDbits.SSP1ADD1            // bit 1, shadows bit in SSP1ADDbits
10127 #define ADD1                    SSP1ADDbits.ADD1                // bit 1, shadows bit in SSP1ADDbits
10128 #define SSP1ADD2                SSP1ADDbits.SSP1ADD2            // bit 2, shadows bit in SSP1ADDbits
10129 #define ADD2                    SSP1ADDbits.ADD2                // bit 2, shadows bit in SSP1ADDbits
10130 #define SSP1ADD3                SSP1ADDbits.SSP1ADD3            // bit 3, shadows bit in SSP1ADDbits
10131 #define ADD3                    SSP1ADDbits.ADD3                // bit 3, shadows bit in SSP1ADDbits
10132 #define SSP1ADD4                SSP1ADDbits.SSP1ADD4            // bit 4, shadows bit in SSP1ADDbits
10133 #define ADD4                    SSP1ADDbits.ADD4                // bit 4, shadows bit in SSP1ADDbits
10134 #define SSP1ADD5                SSP1ADDbits.SSP1ADD5            // bit 5, shadows bit in SSP1ADDbits
10135 #define ADD5                    SSP1ADDbits.ADD5                // bit 5, shadows bit in SSP1ADDbits
10136 #define SSP1ADD6                SSP1ADDbits.SSP1ADD6            // bit 6, shadows bit in SSP1ADDbits
10137 #define ADD6                    SSP1ADDbits.ADD6                // bit 6, shadows bit in SSP1ADDbits
10138 #define SSP1ADD7                SSP1ADDbits.SSP1ADD7            // bit 7, shadows bit in SSP1ADDbits
10139 #define ADD7                    SSP1ADDbits.ADD7                // bit 7, shadows bit in SSP1ADDbits
10140 
10141 #define SSP1BUF0                SSP1BUFbits.SSP1BUF0            // bit 0, shadows bit in SSP1BUFbits
10142 #define BUF0                    SSP1BUFbits.BUF0                // bit 0, shadows bit in SSP1BUFbits
10143 #define SSP1BUF1                SSP1BUFbits.SSP1BUF1            // bit 1, shadows bit in SSP1BUFbits
10144 #define BUF1                    SSP1BUFbits.BUF1                // bit 1, shadows bit in SSP1BUFbits
10145 #define SSP1BUF2                SSP1BUFbits.SSP1BUF2            // bit 2, shadows bit in SSP1BUFbits
10146 #define BUF2                    SSP1BUFbits.BUF2                // bit 2, shadows bit in SSP1BUFbits
10147 #define SSP1BUF3                SSP1BUFbits.SSP1BUF3            // bit 3, shadows bit in SSP1BUFbits
10148 #define BUF3                    SSP1BUFbits.BUF3                // bit 3, shadows bit in SSP1BUFbits
10149 #define SSP1BUF4                SSP1BUFbits.SSP1BUF4            // bit 4, shadows bit in SSP1BUFbits
10150 #define BUF4                    SSP1BUFbits.BUF4                // bit 4, shadows bit in SSP1BUFbits
10151 #define SSP1BUF5                SSP1BUFbits.SSP1BUF5            // bit 5, shadows bit in SSP1BUFbits
10152 #define BUF5                    SSP1BUFbits.BUF5                // bit 5, shadows bit in SSP1BUFbits
10153 #define SSP1BUF6                SSP1BUFbits.SSP1BUF6            // bit 6, shadows bit in SSP1BUFbits
10154 #define BUF6                    SSP1BUFbits.BUF6                // bit 6, shadows bit in SSP1BUFbits
10155 #define SSP1BUF7                SSP1BUFbits.SSP1BUF7            // bit 7, shadows bit in SSP1BUFbits
10156 #define BUF7                    SSP1BUFbits.BUF7                // bit 7, shadows bit in SSP1BUFbits
10157 
10158 #define SSPM0                   SSP1CONbits.SSPM0               // bit 0
10159 #define SSPM1                   SSP1CONbits.SSPM1               // bit 1
10160 #define SSPM2                   SSP1CONbits.SSPM2               // bit 2
10161 #define SSPM3                   SSP1CONbits.SSPM3               // bit 3
10162 #define CKP                     SSP1CONbits.CKP                 // bit 4
10163 #define SSPEN                   SSP1CONbits.SSPEN               // bit 5
10164 #define SSPOV                   SSP1CONbits.SSPOV               // bit 6
10165 #define WCOL                    SSP1CONbits.WCOL                // bit 7
10166 
10167 #define SEN                     SSP1CON2bits.SEN                // bit 0
10168 #define RSEN                    SSP1CON2bits.RSEN               // bit 1
10169 #define PEN                     SSP1CON2bits.PEN                // bit 2
10170 #define RCEN                    SSP1CON2bits.RCEN               // bit 3
10171 #define ACKEN                   SSP1CON2bits.ACKEN              // bit 4
10172 #define ACKDT                   SSP1CON2bits.ACKDT              // bit 5
10173 #define ACKSTAT                 SSP1CON2bits.ACKSTAT            // bit 6
10174 #define GCEN                    SSP1CON2bits.GCEN               // bit 7
10175 
10176 #define DHEN                    SSP1CON3bits.DHEN               // bit 0
10177 #define AHEN                    SSP1CON3bits.AHEN               // bit 1
10178 #define SBCDE                   SSP1CON3bits.SBCDE              // bit 2
10179 #define SDAHT                   SSP1CON3bits.SDAHT              // bit 3
10180 #define BOEN                    SSP1CON3bits.BOEN               // bit 4
10181 #define SCIE                    SSP1CON3bits.SCIE               // bit 5
10182 #define PCIE                    SSP1CON3bits.PCIE               // bit 6
10183 #define ACKTIM                  SSP1CON3bits.ACKTIM             // bit 7
10184 
10185 #define SSP1MSK0                SSP1MSKbits.SSP1MSK0            // bit 0, shadows bit in SSP1MSKbits
10186 #define MSK0                    SSP1MSKbits.MSK0                // bit 0, shadows bit in SSP1MSKbits
10187 #define SSP1MSK1                SSP1MSKbits.SSP1MSK1            // bit 1, shadows bit in SSP1MSKbits
10188 #define MSK1                    SSP1MSKbits.MSK1                // bit 1, shadows bit in SSP1MSKbits
10189 #define SSP1MSK2                SSP1MSKbits.SSP1MSK2            // bit 2, shadows bit in SSP1MSKbits
10190 #define MSK2                    SSP1MSKbits.MSK2                // bit 2, shadows bit in SSP1MSKbits
10191 #define SSP1MSK3                SSP1MSKbits.SSP1MSK3            // bit 3, shadows bit in SSP1MSKbits
10192 #define MSK3                    SSP1MSKbits.MSK3                // bit 3, shadows bit in SSP1MSKbits
10193 #define SSP1MSK4                SSP1MSKbits.SSP1MSK4            // bit 4, shadows bit in SSP1MSKbits
10194 #define MSK4                    SSP1MSKbits.MSK4                // bit 4, shadows bit in SSP1MSKbits
10195 #define SSP1MSK5                SSP1MSKbits.SSP1MSK5            // bit 5, shadows bit in SSP1MSKbits
10196 #define MSK5                    SSP1MSKbits.MSK5                // bit 5, shadows bit in SSP1MSKbits
10197 #define SSP1MSK6                SSP1MSKbits.SSP1MSK6            // bit 6, shadows bit in SSP1MSKbits
10198 #define MSK6                    SSP1MSKbits.MSK6                // bit 6, shadows bit in SSP1MSKbits
10199 #define SSP1MSK7                SSP1MSKbits.SSP1MSK7            // bit 7, shadows bit in SSP1MSKbits
10200 #define MSK7                    SSP1MSKbits.MSK7                // bit 7, shadows bit in SSP1MSKbits
10201 
10202 #define BF                      SSP1STATbits.BF                 // bit 0
10203 #define UA                      SSP1STATbits.UA                 // bit 1
10204 #define R_NOT_W                 SSP1STATbits.R_NOT_W            // bit 2
10205 #define S                       SSP1STATbits.S                  // bit 3
10206 #define P                       SSP1STATbits.P                  // bit 4
10207 #define D_NOT_A                 SSP1STATbits.D_NOT_A            // bit 5
10208 #define CKE                     SSP1STATbits.CKE                // bit 6
10209 #define SMP                     SSP1STATbits.SMP                // bit 7
10210 
10211 #define C                       STATUSbits.C                    // bit 0
10212 #define DC                      STATUSbits.DC                   // bit 1
10213 #define Z                       STATUSbits.Z                    // bit 2
10214 #define NOT_PD                  STATUSbits.NOT_PD               // bit 3
10215 #define NOT_TO                  STATUSbits.NOT_TO               // bit 4
10216 
10217 #define C_SHAD                  STATUS_SHADbits.C_SHAD          // bit 0
10218 #define DC_SHAD                 STATUS_SHADbits.DC_SHAD         // bit 1
10219 #define Z_SHAD                  STATUS_SHADbits.Z_SHAD          // bit 2
10220 
10221 #define TMR1ON                  T1CONbits.TMR1ON                // bit 0
10222 #define NOT_T1SYNC              T1CONbits.NOT_T1SYNC            // bit 2
10223 #define T1OSCEN                 T1CONbits.T1OSCEN               // bit 3
10224 #define T1CKPS0                 T1CONbits.T1CKPS0               // bit 4
10225 #define T1CKPS1                 T1CONbits.T1CKPS1               // bit 5
10226 #define TMR1CS0                 T1CONbits.TMR1CS0               // bit 6
10227 #define TMR1CS1                 T1CONbits.TMR1CS1               // bit 7
10228 
10229 #define T1GSS0                  T1GCONbits.T1GSS0               // bit 0
10230 #define T1GSS1                  T1GCONbits.T1GSS1               // bit 1
10231 #define T1GVAL                  T1GCONbits.T1GVAL               // bit 2
10232 #define T1GGO                   T1GCONbits.T1GGO                // bit 3
10233 #define T1GSPM                  T1GCONbits.T1GSPM               // bit 4
10234 #define T1GTM                   T1GCONbits.T1GTM                // bit 5
10235 #define T1GPOL                  T1GCONbits.T1GPOL               // bit 6
10236 #define TMR1GE                  T1GCONbits.TMR1GE               // bit 7
10237 
10238 #define T2CKPS0                 T2CONbits.T2CKPS0               // bit 0
10239 #define T2CKPS1                 T2CONbits.T2CKPS1               // bit 1
10240 #define TMR2ON                  T2CONbits.TMR2ON                // bit 2
10241 #define T2OUTPS0                T2CONbits.T2OUTPS0              // bit 3
10242 #define T2OUTPS1                T2CONbits.T2OUTPS1              // bit 4
10243 #define T2OUTPS2                T2CONbits.T2OUTPS2              // bit 5
10244 #define T2OUTPS3                T2CONbits.T2OUTPS3              // bit 6
10245 
10246 #define TRISA0                  TRISAbits.TRISA0                // bit 0
10247 #define TRISA1                  TRISAbits.TRISA1                // bit 1
10248 #define TRISA2                  TRISAbits.TRISA2                // bit 2
10249 #define TRISA3                  TRISAbits.TRISA3                // bit 3
10250 #define TRISA4                  TRISAbits.TRISA4                // bit 4
10251 #define TRISA5                  TRISAbits.TRISA5                // bit 5
10252 #define TRISA6                  TRISAbits.TRISA6                // bit 6
10253 #define TRISA7                  TRISAbits.TRISA7                // bit 7
10254 
10255 #define TRISB0                  TRISBbits.TRISB0                // bit 0
10256 #define TRISB1                  TRISBbits.TRISB1                // bit 1
10257 #define TRISB2                  TRISBbits.TRISB2                // bit 2
10258 #define TRISB3                  TRISBbits.TRISB3                // bit 3
10259 #define TRISB4                  TRISBbits.TRISB4                // bit 4
10260 #define TRISB5                  TRISBbits.TRISB5                // bit 5
10261 #define TRISB6                  TRISBbits.TRISB6                // bit 6
10262 #define TRISB7                  TRISBbits.TRISB7                // bit 7
10263 
10264 #define TRISC0                  TRISCbits.TRISC0                // bit 0
10265 #define TRISC1                  TRISCbits.TRISC1                // bit 1
10266 #define TRISC2                  TRISCbits.TRISC2                // bit 2
10267 #define TRISC3                  TRISCbits.TRISC3                // bit 3
10268 #define TRISC4                  TRISCbits.TRISC4                // bit 4
10269 #define TRISC5                  TRISCbits.TRISC5                // bit 5
10270 #define TRISC6                  TRISCbits.TRISC6                // bit 6
10271 #define TRISC7                  TRISCbits.TRISC7                // bit 7
10272 
10273 #define TRISE3                  TRISEbits.TRISE3                // bit 3
10274 
10275 #define TX9D                    TX1STAbits.TX9D                 // bit 0
10276 #define TRMT                    TX1STAbits.TRMT                 // bit 1
10277 #define BRGH                    TX1STAbits.BRGH                 // bit 2
10278 #define SENDB                   TX1STAbits.SENDB                // bit 3
10279 #define SYNC                    TX1STAbits.SYNC                 // bit 4
10280 #define TXEN                    TX1STAbits.TXEN                 // bit 5
10281 #define TX9                     TX1STAbits.TX9                  // bit 6
10282 #define CSRC                    TX1STAbits.CSRC                 // bit 7
10283 
10284 #define VREGPM                  VREGCONbits.VREGPM              // bit 1
10285 
10286 #define SWDTEN                  WDTCONbits.SWDTEN               // bit 0
10287 #define WDTPS0                  WDTCONbits.WDTPS0               // bit 1
10288 #define WDTPS1                  WDTCONbits.WDTPS1               // bit 2
10289 #define WDTPS2                  WDTCONbits.WDTPS2               // bit 3
10290 #define WDTPS3                  WDTCONbits.WDTPS3               // bit 4
10291 #define WDTPS4                  WDTCONbits.WDTPS4               // bit 5
10292 
10293 #define WPUA0                   WPUAbits.WPUA0                  // bit 0
10294 #define WPUA1                   WPUAbits.WPUA1                  // bit 1
10295 #define WPUA2                   WPUAbits.WPUA2                  // bit 2
10296 #define WPUA3                   WPUAbits.WPUA3                  // bit 3
10297 #define WPUA4                   WPUAbits.WPUA4                  // bit 4
10298 #define WPUA5                   WPUAbits.WPUA5                  // bit 5
10299 #define WPUA6                   WPUAbits.WPUA6                  // bit 6
10300 #define WPUA7                   WPUAbits.WPUA7                  // bit 7
10301 
10302 #define WPUB0                   WPUBbits.WPUB0                  // bit 0
10303 #define WPUB1                   WPUBbits.WPUB1                  // bit 1
10304 #define WPUB2                   WPUBbits.WPUB2                  // bit 2
10305 #define WPUB3                   WPUBbits.WPUB3                  // bit 3
10306 #define WPUB4                   WPUBbits.WPUB4                  // bit 4
10307 #define WPUB5                   WPUBbits.WPUB5                  // bit 5
10308 #define WPUB6                   WPUBbits.WPUB6                  // bit 6
10309 #define WPUB7                   WPUBbits.WPUB7                  // bit 7
10310 
10311 #define WPUC0                   WPUCbits.WPUC0                  // bit 0
10312 #define WPUC1                   WPUCbits.WPUC1                  // bit 1
10313 #define WPUC2                   WPUCbits.WPUC2                  // bit 2
10314 #define WPUC3                   WPUCbits.WPUC3                  // bit 3
10315 #define WPUC4                   WPUCbits.WPUC4                  // bit 4
10316 #define WPUC5                   WPUCbits.WPUC5                  // bit 5
10317 #define WPUC6                   WPUCbits.WPUC6                  // bit 6
10318 #define WPUC7                   WPUCbits.WPUC7                  // bit 7
10319 
10320 #define WPUE3                   WPUEbits.WPUE3                  // bit 3
10321 
10322 #endif // #ifndef NO_BIT_DEFINES
10323 
10324 #endif // #ifndef __PIC16F1788_H__
10325