Hackfix and re-enable strtoull and wcstoull, see bug #3798.
[sdcc.git] / sdcc / device / non-free / include / pic16 / pic18f8585.h
blob3770ca38a6d715cf258f71d6cc2d7dcb2cc16ded
1 /*
2 * This declarations of the PIC18F8585 MCU.
4 * This file is part of the GNU PIC library for SDCC, originally
5 * created by Molnar Karoly <molnarkaroly@users.sf.net> 2016.
7 * This file is generated automatically by the cinc2h.pl, 2016-04-13 17:23:52 UTC.
9 * SDCC is licensed under the GNU Public license (GPL) v2. Note that
10 * this license covers the code to the compiler and other executables,
11 * but explicitly does not cover any code or objects generated by sdcc.
13 * For pic device libraries and header files which are derived from
14 * Microchip header (.inc) and linker script (.lkr) files Microchip
15 * requires that "The header files should state that they are only to be
16 * used with authentic Microchip devices" which makes them incompatible
17 * with the GPL. Pic device libraries and header files are located at
18 * non-free/lib and non-free/include directories respectively.
19 * Sdcc should be run with the --use-non-free command line option in
20 * order to include non-free header files and libraries.
22 * See http://sdcc.sourceforge.net/ for the latest information on sdcc.
25 #ifndef __PIC18F8585_H__
26 #define __PIC18F8585_H__
28 //==============================================================================
30 //==============================================================================
32 // Register Definitions
34 //==============================================================================
37 //==============================================================================
38 // RXF6SIDH Bits
40 extern __at(0x0D60) __sfr RXF6SIDH;
42 typedef struct
44 unsigned SID3 : 1;
45 unsigned SID4 : 1;
46 unsigned SID5 : 1;
47 unsigned SID6 : 1;
48 unsigned SID7 : 1;
49 unsigned SID8 : 1;
50 unsigned SID9 : 1;
51 unsigned SID10 : 1;
52 } __RXF6SIDHbits_t;
54 extern __at(0x0D60) volatile __RXF6SIDHbits_t RXF6SIDHbits;
56 #define _RXF6SIDH_SID3 0x01
57 #define _RXF6SIDH_SID4 0x02
58 #define _RXF6SIDH_SID5 0x04
59 #define _RXF6SIDH_SID6 0x08
60 #define _RXF6SIDH_SID7 0x10
61 #define _RXF6SIDH_SID8 0x20
62 #define _RXF6SIDH_SID9 0x40
63 #define _RXF6SIDH_SID10 0x80
65 //==============================================================================
68 //==============================================================================
69 // RXF6SIDL Bits
71 extern __at(0x0D61) __sfr RXF6SIDL;
73 typedef union
75 struct
77 unsigned EID16 : 1;
78 unsigned EID17 : 1;
79 unsigned : 1;
80 unsigned EXIDEN : 1;
81 unsigned : 1;
82 unsigned SID0 : 1;
83 unsigned SID1 : 1;
84 unsigned SID2 : 1;
87 struct
89 unsigned : 1;
90 unsigned : 1;
91 unsigned : 1;
92 unsigned EXIDE : 1;
93 unsigned : 1;
94 unsigned : 1;
95 unsigned : 1;
96 unsigned : 1;
99 struct
101 unsigned : 5;
102 unsigned SID : 3;
104 } __RXF6SIDLbits_t;
106 extern __at(0x0D61) volatile __RXF6SIDLbits_t RXF6SIDLbits;
108 #define _RXF6SIDL_EID16 0x01
109 #define _RXF6SIDL_EID17 0x02
110 #define _RXF6SIDL_EXIDEN 0x08
111 #define _RXF6SIDL_EXIDE 0x08
112 #define _RXF6SIDL_SID0 0x20
113 #define _RXF6SIDL_SID1 0x40
114 #define _RXF6SIDL_SID2 0x80
116 //==============================================================================
119 //==============================================================================
120 // RXF6EIDH Bits
122 extern __at(0x0D62) __sfr RXF6EIDH;
124 typedef struct
126 unsigned EID8 : 1;
127 unsigned EID9 : 1;
128 unsigned EID10 : 1;
129 unsigned EID11 : 1;
130 unsigned EID12 : 1;
131 unsigned EID13 : 1;
132 unsigned EID14 : 1;
133 unsigned EID15 : 1;
134 } __RXF6EIDHbits_t;
136 extern __at(0x0D62) volatile __RXF6EIDHbits_t RXF6EIDHbits;
138 #define _RXF6EIDH_EID8 0x01
139 #define _RXF6EIDH_EID9 0x02
140 #define _RXF6EIDH_EID10 0x04
141 #define _RXF6EIDH_EID11 0x08
142 #define _RXF6EIDH_EID12 0x10
143 #define _RXF6EIDH_EID13 0x20
144 #define _RXF6EIDH_EID14 0x40
145 #define _RXF6EIDH_EID15 0x80
147 //==============================================================================
150 //==============================================================================
151 // RXF6EIDL Bits
153 extern __at(0x0D63) __sfr RXF6EIDL;
155 typedef struct
157 unsigned EID0 : 1;
158 unsigned EID1 : 1;
159 unsigned EID2 : 1;
160 unsigned EID3 : 1;
161 unsigned EID4 : 1;
162 unsigned EID5 : 1;
163 unsigned EID6 : 1;
164 unsigned EID7 : 1;
165 } __RXF6EIDLbits_t;
167 extern __at(0x0D63) volatile __RXF6EIDLbits_t RXF6EIDLbits;
169 #define _RXF6EIDL_EID0 0x01
170 #define _RXF6EIDL_EID1 0x02
171 #define _RXF6EIDL_EID2 0x04
172 #define _RXF6EIDL_EID3 0x08
173 #define _RXF6EIDL_EID4 0x10
174 #define _RXF6EIDL_EID5 0x20
175 #define _RXF6EIDL_EID6 0x40
176 #define _RXF6EIDL_EID7 0x80
178 //==============================================================================
181 //==============================================================================
182 // RXF7SIDH Bits
184 extern __at(0x0D64) __sfr RXF7SIDH;
186 typedef struct
188 unsigned SID3 : 1;
189 unsigned SID4 : 1;
190 unsigned SID5 : 1;
191 unsigned SID6 : 1;
192 unsigned SID7 : 1;
193 unsigned SID8 : 1;
194 unsigned SID9 : 1;
195 unsigned SID10 : 1;
196 } __RXF7SIDHbits_t;
198 extern __at(0x0D64) volatile __RXF7SIDHbits_t RXF7SIDHbits;
200 #define _RXF7SIDH_SID3 0x01
201 #define _RXF7SIDH_SID4 0x02
202 #define _RXF7SIDH_SID5 0x04
203 #define _RXF7SIDH_SID6 0x08
204 #define _RXF7SIDH_SID7 0x10
205 #define _RXF7SIDH_SID8 0x20
206 #define _RXF7SIDH_SID9 0x40
207 #define _RXF7SIDH_SID10 0x80
209 //==============================================================================
212 //==============================================================================
213 // RXF7SIDL Bits
215 extern __at(0x0D65) __sfr RXF7SIDL;
217 typedef union
219 struct
221 unsigned EID16 : 1;
222 unsigned EID17 : 1;
223 unsigned : 1;
224 unsigned EXIDEN : 1;
225 unsigned : 1;
226 unsigned SID0 : 1;
227 unsigned SID1 : 1;
228 unsigned SID2 : 1;
231 struct
233 unsigned : 1;
234 unsigned : 1;
235 unsigned : 1;
236 unsigned EXIDE : 1;
237 unsigned : 1;
238 unsigned : 1;
239 unsigned : 1;
240 unsigned : 1;
243 struct
245 unsigned : 5;
246 unsigned SID : 3;
248 } __RXF7SIDLbits_t;
250 extern __at(0x0D65) volatile __RXF7SIDLbits_t RXF7SIDLbits;
252 #define _RXF7SIDL_EID16 0x01
253 #define _RXF7SIDL_EID17 0x02
254 #define _RXF7SIDL_EXIDEN 0x08
255 #define _RXF7SIDL_EXIDE 0x08
256 #define _RXF7SIDL_SID0 0x20
257 #define _RXF7SIDL_SID1 0x40
258 #define _RXF7SIDL_SID2 0x80
260 //==============================================================================
263 //==============================================================================
264 // RXF7EIDH Bits
266 extern __at(0x0D66) __sfr RXF7EIDH;
268 typedef struct
270 unsigned EID8 : 1;
271 unsigned EID9 : 1;
272 unsigned EID10 : 1;
273 unsigned EID11 : 1;
274 unsigned EID12 : 1;
275 unsigned EID13 : 1;
276 unsigned EID14 : 1;
277 unsigned EID15 : 1;
278 } __RXF7EIDHbits_t;
280 extern __at(0x0D66) volatile __RXF7EIDHbits_t RXF7EIDHbits;
282 #define _RXF7EIDH_EID8 0x01
283 #define _RXF7EIDH_EID9 0x02
284 #define _RXF7EIDH_EID10 0x04
285 #define _RXF7EIDH_EID11 0x08
286 #define _RXF7EIDH_EID12 0x10
287 #define _RXF7EIDH_EID13 0x20
288 #define _RXF7EIDH_EID14 0x40
289 #define _RXF7EIDH_EID15 0x80
291 //==============================================================================
294 //==============================================================================
295 // RXF7EIDL Bits
297 extern __at(0x0D67) __sfr RXF7EIDL;
299 typedef struct
301 unsigned EID0 : 1;
302 unsigned EID1 : 1;
303 unsigned EID2 : 1;
304 unsigned EID3 : 1;
305 unsigned EID4 : 1;
306 unsigned EID5 : 1;
307 unsigned EID6 : 1;
308 unsigned EID7 : 1;
309 } __RXF7EIDLbits_t;
311 extern __at(0x0D67) volatile __RXF7EIDLbits_t RXF7EIDLbits;
313 #define _RXF7EIDL_EID0 0x01
314 #define _RXF7EIDL_EID1 0x02
315 #define _RXF7EIDL_EID2 0x04
316 #define _RXF7EIDL_EID3 0x08
317 #define _RXF7EIDL_EID4 0x10
318 #define _RXF7EIDL_EID5 0x20
319 #define _RXF7EIDL_EID6 0x40
320 #define _RXF7EIDL_EID7 0x80
322 //==============================================================================
325 //==============================================================================
326 // RXF8SIDH Bits
328 extern __at(0x0D68) __sfr RXF8SIDH;
330 typedef struct
332 unsigned SID3 : 1;
333 unsigned SID4 : 1;
334 unsigned SID5 : 1;
335 unsigned SID6 : 1;
336 unsigned SID7 : 1;
337 unsigned SID8 : 1;
338 unsigned SID9 : 1;
339 unsigned SID10 : 1;
340 } __RXF8SIDHbits_t;
342 extern __at(0x0D68) volatile __RXF8SIDHbits_t RXF8SIDHbits;
344 #define _RXF8SIDH_SID3 0x01
345 #define _RXF8SIDH_SID4 0x02
346 #define _RXF8SIDH_SID5 0x04
347 #define _RXF8SIDH_SID6 0x08
348 #define _RXF8SIDH_SID7 0x10
349 #define _RXF8SIDH_SID8 0x20
350 #define _RXF8SIDH_SID9 0x40
351 #define _RXF8SIDH_SID10 0x80
353 //==============================================================================
356 //==============================================================================
357 // RXF8SIDL Bits
359 extern __at(0x0D69) __sfr RXF8SIDL;
361 typedef union
363 struct
365 unsigned EID16 : 1;
366 unsigned EID17 : 1;
367 unsigned : 1;
368 unsigned EXIDEN : 1;
369 unsigned : 1;
370 unsigned SID0 : 1;
371 unsigned SID1 : 1;
372 unsigned SID2 : 1;
375 struct
377 unsigned : 1;
378 unsigned : 1;
379 unsigned : 1;
380 unsigned EXIDE : 1;
381 unsigned : 1;
382 unsigned : 1;
383 unsigned : 1;
384 unsigned : 1;
387 struct
389 unsigned : 5;
390 unsigned SID : 3;
392 } __RXF8SIDLbits_t;
394 extern __at(0x0D69) volatile __RXF8SIDLbits_t RXF8SIDLbits;
396 #define _RXF8SIDL_EID16 0x01
397 #define _RXF8SIDL_EID17 0x02
398 #define _RXF8SIDL_EXIDEN 0x08
399 #define _RXF8SIDL_EXIDE 0x08
400 #define _RXF8SIDL_SID0 0x20
401 #define _RXF8SIDL_SID1 0x40
402 #define _RXF8SIDL_SID2 0x80
404 //==============================================================================
407 //==============================================================================
408 // RXF8EIDH Bits
410 extern __at(0x0D6A) __sfr RXF8EIDH;
412 typedef struct
414 unsigned EID8 : 1;
415 unsigned EID9 : 1;
416 unsigned EID10 : 1;
417 unsigned EID11 : 1;
418 unsigned EID12 : 1;
419 unsigned EID13 : 1;
420 unsigned EID14 : 1;
421 unsigned EID15 : 1;
422 } __RXF8EIDHbits_t;
424 extern __at(0x0D6A) volatile __RXF8EIDHbits_t RXF8EIDHbits;
426 #define _RXF8EIDH_EID8 0x01
427 #define _RXF8EIDH_EID9 0x02
428 #define _RXF8EIDH_EID10 0x04
429 #define _RXF8EIDH_EID11 0x08
430 #define _RXF8EIDH_EID12 0x10
431 #define _RXF8EIDH_EID13 0x20
432 #define _RXF8EIDH_EID14 0x40
433 #define _RXF8EIDH_EID15 0x80
435 //==============================================================================
438 //==============================================================================
439 // RXF8EIDL Bits
441 extern __at(0x0D6B) __sfr RXF8EIDL;
443 typedef struct
445 unsigned EID0 : 1;
446 unsigned EID1 : 1;
447 unsigned EID2 : 1;
448 unsigned EID3 : 1;
449 unsigned EID4 : 1;
450 unsigned EID5 : 1;
451 unsigned EID6 : 1;
452 unsigned EID7 : 1;
453 } __RXF8EIDLbits_t;
455 extern __at(0x0D6B) volatile __RXF8EIDLbits_t RXF8EIDLbits;
457 #define _RXF8EIDL_EID0 0x01
458 #define _RXF8EIDL_EID1 0x02
459 #define _RXF8EIDL_EID2 0x04
460 #define _RXF8EIDL_EID3 0x08
461 #define _RXF8EIDL_EID4 0x10
462 #define _RXF8EIDL_EID5 0x20
463 #define _RXF8EIDL_EID6 0x40
464 #define _RXF8EIDL_EID7 0x80
466 //==============================================================================
469 //==============================================================================
470 // RXF9SIDH Bits
472 extern __at(0x0D70) __sfr RXF9SIDH;
474 typedef struct
476 unsigned SID3 : 1;
477 unsigned SID4 : 1;
478 unsigned SID5 : 1;
479 unsigned SID6 : 1;
480 unsigned SID7 : 1;
481 unsigned SID8 : 1;
482 unsigned SID9 : 1;
483 unsigned SID10 : 1;
484 } __RXF9SIDHbits_t;
486 extern __at(0x0D70) volatile __RXF9SIDHbits_t RXF9SIDHbits;
488 #define _RXF9SIDH_SID3 0x01
489 #define _RXF9SIDH_SID4 0x02
490 #define _RXF9SIDH_SID5 0x04
491 #define _RXF9SIDH_SID6 0x08
492 #define _RXF9SIDH_SID7 0x10
493 #define _RXF9SIDH_SID8 0x20
494 #define _RXF9SIDH_SID9 0x40
495 #define _RXF9SIDH_SID10 0x80
497 //==============================================================================
500 //==============================================================================
501 // RXF9SIDL Bits
503 extern __at(0x0D71) __sfr RXF9SIDL;
505 typedef union
507 struct
509 unsigned EID16 : 1;
510 unsigned EID17 : 1;
511 unsigned : 1;
512 unsigned EXIDEN : 1;
513 unsigned : 1;
514 unsigned SID0 : 1;
515 unsigned SID1 : 1;
516 unsigned SID2 : 1;
519 struct
521 unsigned : 1;
522 unsigned : 1;
523 unsigned : 1;
524 unsigned EXIDE : 1;
525 unsigned : 1;
526 unsigned : 1;
527 unsigned : 1;
528 unsigned : 1;
531 struct
533 unsigned : 5;
534 unsigned SID : 3;
536 } __RXF9SIDLbits_t;
538 extern __at(0x0D71) volatile __RXF9SIDLbits_t RXF9SIDLbits;
540 #define _RXF9SIDL_EID16 0x01
541 #define _RXF9SIDL_EID17 0x02
542 #define _RXF9SIDL_EXIDEN 0x08
543 #define _RXF9SIDL_EXIDE 0x08
544 #define _RXF9SIDL_SID0 0x20
545 #define _RXF9SIDL_SID1 0x40
546 #define _RXF9SIDL_SID2 0x80
548 //==============================================================================
551 //==============================================================================
552 // RXF9EIDH Bits
554 extern __at(0x0D72) __sfr RXF9EIDH;
556 typedef struct
558 unsigned EID8 : 1;
559 unsigned EID9 : 1;
560 unsigned EID10 : 1;
561 unsigned EID11 : 1;
562 unsigned EID12 : 1;
563 unsigned EID13 : 1;
564 unsigned EID14 : 1;
565 unsigned EID15 : 1;
566 } __RXF9EIDHbits_t;
568 extern __at(0x0D72) volatile __RXF9EIDHbits_t RXF9EIDHbits;
570 #define _RXF9EIDH_EID8 0x01
571 #define _RXF9EIDH_EID9 0x02
572 #define _RXF9EIDH_EID10 0x04
573 #define _RXF9EIDH_EID11 0x08
574 #define _RXF9EIDH_EID12 0x10
575 #define _RXF9EIDH_EID13 0x20
576 #define _RXF9EIDH_EID14 0x40
577 #define _RXF9EIDH_EID15 0x80
579 //==============================================================================
582 //==============================================================================
583 // RXF9EIDL Bits
585 extern __at(0x0D73) __sfr RXF9EIDL;
587 typedef struct
589 unsigned EID0 : 1;
590 unsigned EID1 : 1;
591 unsigned EID2 : 1;
592 unsigned EID3 : 1;
593 unsigned EID4 : 1;
594 unsigned EID5 : 1;
595 unsigned EID6 : 1;
596 unsigned EID7 : 1;
597 } __RXF9EIDLbits_t;
599 extern __at(0x0D73) volatile __RXF9EIDLbits_t RXF9EIDLbits;
601 #define _RXF9EIDL_EID0 0x01
602 #define _RXF9EIDL_EID1 0x02
603 #define _RXF9EIDL_EID2 0x04
604 #define _RXF9EIDL_EID3 0x08
605 #define _RXF9EIDL_EID4 0x10
606 #define _RXF9EIDL_EID5 0x20
607 #define _RXF9EIDL_EID6 0x40
608 #define _RXF9EIDL_EID7 0x80
610 //==============================================================================
613 //==============================================================================
614 // RXF10SIDH Bits
616 extern __at(0x0D74) __sfr RXF10SIDH;
618 typedef struct
620 unsigned SID3 : 1;
621 unsigned SID4 : 1;
622 unsigned SID5 : 1;
623 unsigned SID6 : 1;
624 unsigned SID7 : 1;
625 unsigned SID8 : 1;
626 unsigned SID9 : 1;
627 unsigned SID10 : 1;
628 } __RXF10SIDHbits_t;
630 extern __at(0x0D74) volatile __RXF10SIDHbits_t RXF10SIDHbits;
632 #define _RXF10SIDH_SID3 0x01
633 #define _RXF10SIDH_SID4 0x02
634 #define _RXF10SIDH_SID5 0x04
635 #define _RXF10SIDH_SID6 0x08
636 #define _RXF10SIDH_SID7 0x10
637 #define _RXF10SIDH_SID8 0x20
638 #define _RXF10SIDH_SID9 0x40
639 #define _RXF10SIDH_SID10 0x80
641 //==============================================================================
644 //==============================================================================
645 // RXF10SIDL Bits
647 extern __at(0x0D75) __sfr RXF10SIDL;
649 typedef union
651 struct
653 unsigned EID16 : 1;
654 unsigned EID17 : 1;
655 unsigned : 1;
656 unsigned EXIDEN : 1;
657 unsigned : 1;
658 unsigned SID0 : 1;
659 unsigned SID1 : 1;
660 unsigned SID2 : 1;
663 struct
665 unsigned : 1;
666 unsigned : 1;
667 unsigned : 1;
668 unsigned EXIDE : 1;
669 unsigned : 1;
670 unsigned : 1;
671 unsigned : 1;
672 unsigned : 1;
675 struct
677 unsigned : 5;
678 unsigned SID : 3;
680 } __RXF10SIDLbits_t;
682 extern __at(0x0D75) volatile __RXF10SIDLbits_t RXF10SIDLbits;
684 #define _RXF10SIDL_EID16 0x01
685 #define _RXF10SIDL_EID17 0x02
686 #define _RXF10SIDL_EXIDEN 0x08
687 #define _RXF10SIDL_EXIDE 0x08
688 #define _RXF10SIDL_SID0 0x20
689 #define _RXF10SIDL_SID1 0x40
690 #define _RXF10SIDL_SID2 0x80
692 //==============================================================================
695 //==============================================================================
696 // RXF10EIDH Bits
698 extern __at(0x0D76) __sfr RXF10EIDH;
700 typedef struct
702 unsigned EID8 : 1;
703 unsigned EID9 : 1;
704 unsigned EID10 : 1;
705 unsigned EID11 : 1;
706 unsigned EID12 : 1;
707 unsigned EID13 : 1;
708 unsigned EID14 : 1;
709 unsigned EID15 : 1;
710 } __RXF10EIDHbits_t;
712 extern __at(0x0D76) volatile __RXF10EIDHbits_t RXF10EIDHbits;
714 #define _RXF10EIDH_EID8 0x01
715 #define _RXF10EIDH_EID9 0x02
716 #define _RXF10EIDH_EID10 0x04
717 #define _RXF10EIDH_EID11 0x08
718 #define _RXF10EIDH_EID12 0x10
719 #define _RXF10EIDH_EID13 0x20
720 #define _RXF10EIDH_EID14 0x40
721 #define _RXF10EIDH_EID15 0x80
723 //==============================================================================
726 //==============================================================================
727 // RXF10EIDL Bits
729 extern __at(0x0D77) __sfr RXF10EIDL;
731 typedef struct
733 unsigned EID0 : 1;
734 unsigned EID1 : 1;
735 unsigned EID2 : 1;
736 unsigned EID3 : 1;
737 unsigned EID4 : 1;
738 unsigned EID5 : 1;
739 unsigned EID6 : 1;
740 unsigned EID7 : 1;
741 } __RXF10EIDLbits_t;
743 extern __at(0x0D77) volatile __RXF10EIDLbits_t RXF10EIDLbits;
745 #define _RXF10EIDL_EID0 0x01
746 #define _RXF10EIDL_EID1 0x02
747 #define _RXF10EIDL_EID2 0x04
748 #define _RXF10EIDL_EID3 0x08
749 #define _RXF10EIDL_EID4 0x10
750 #define _RXF10EIDL_EID5 0x20
751 #define _RXF10EIDL_EID6 0x40
752 #define _RXF10EIDL_EID7 0x80
754 //==============================================================================
757 //==============================================================================
758 // RXF11SIDH Bits
760 extern __at(0x0D78) __sfr RXF11SIDH;
762 typedef struct
764 unsigned SID3 : 1;
765 unsigned SID4 : 1;
766 unsigned SID5 : 1;
767 unsigned SID6 : 1;
768 unsigned SID7 : 1;
769 unsigned SID8 : 1;
770 unsigned SID9 : 1;
771 unsigned SID10 : 1;
772 } __RXF11SIDHbits_t;
774 extern __at(0x0D78) volatile __RXF11SIDHbits_t RXF11SIDHbits;
776 #define _RXF11SIDH_SID3 0x01
777 #define _RXF11SIDH_SID4 0x02
778 #define _RXF11SIDH_SID5 0x04
779 #define _RXF11SIDH_SID6 0x08
780 #define _RXF11SIDH_SID7 0x10
781 #define _RXF11SIDH_SID8 0x20
782 #define _RXF11SIDH_SID9 0x40
783 #define _RXF11SIDH_SID10 0x80
785 //==============================================================================
788 //==============================================================================
789 // RXF11SIDL Bits
791 extern __at(0x0D79) __sfr RXF11SIDL;
793 typedef union
795 struct
797 unsigned EID16 : 1;
798 unsigned EID17 : 1;
799 unsigned : 1;
800 unsigned EXIDEN : 1;
801 unsigned : 1;
802 unsigned SID0 : 1;
803 unsigned SID1 : 1;
804 unsigned SID2 : 1;
807 struct
809 unsigned : 1;
810 unsigned : 1;
811 unsigned : 1;
812 unsigned EXIDE : 1;
813 unsigned : 1;
814 unsigned : 1;
815 unsigned : 1;
816 unsigned : 1;
819 struct
821 unsigned : 5;
822 unsigned SID : 3;
824 } __RXF11SIDLbits_t;
826 extern __at(0x0D79) volatile __RXF11SIDLbits_t RXF11SIDLbits;
828 #define _RXF11SIDL_EID16 0x01
829 #define _RXF11SIDL_EID17 0x02
830 #define _RXF11SIDL_EXIDEN 0x08
831 #define _RXF11SIDL_EXIDE 0x08
832 #define _RXF11SIDL_SID0 0x20
833 #define _RXF11SIDL_SID1 0x40
834 #define _RXF11SIDL_SID2 0x80
836 //==============================================================================
839 //==============================================================================
840 // RXF11EIDH Bits
842 extern __at(0x0D7A) __sfr RXF11EIDH;
844 typedef struct
846 unsigned EID8 : 1;
847 unsigned EID9 : 1;
848 unsigned EID10 : 1;
849 unsigned EID11 : 1;
850 unsigned EID12 : 1;
851 unsigned EID13 : 1;
852 unsigned EID14 : 1;
853 unsigned EID15 : 1;
854 } __RXF11EIDHbits_t;
856 extern __at(0x0D7A) volatile __RXF11EIDHbits_t RXF11EIDHbits;
858 #define _RXF11EIDH_EID8 0x01
859 #define _RXF11EIDH_EID9 0x02
860 #define _RXF11EIDH_EID10 0x04
861 #define _RXF11EIDH_EID11 0x08
862 #define _RXF11EIDH_EID12 0x10
863 #define _RXF11EIDH_EID13 0x20
864 #define _RXF11EIDH_EID14 0x40
865 #define _RXF11EIDH_EID15 0x80
867 //==============================================================================
870 //==============================================================================
871 // RXF11EIDL Bits
873 extern __at(0x0D7B) __sfr RXF11EIDL;
875 typedef struct
877 unsigned EID0 : 1;
878 unsigned EID1 : 1;
879 unsigned EID2 : 1;
880 unsigned EID3 : 1;
881 unsigned EID4 : 1;
882 unsigned EID5 : 1;
883 unsigned EID6 : 1;
884 unsigned EID7 : 1;
885 } __RXF11EIDLbits_t;
887 extern __at(0x0D7B) volatile __RXF11EIDLbits_t RXF11EIDLbits;
889 #define _RXF11EIDL_EID0 0x01
890 #define _RXF11EIDL_EID1 0x02
891 #define _RXF11EIDL_EID2 0x04
892 #define _RXF11EIDL_EID3 0x08
893 #define _RXF11EIDL_EID4 0x10
894 #define _RXF11EIDL_EID5 0x20
895 #define _RXF11EIDL_EID6 0x40
896 #define _RXF11EIDL_EID7 0x80
898 //==============================================================================
901 //==============================================================================
902 // RXF12SIDH Bits
904 extern __at(0x0D80) __sfr RXF12SIDH;
906 typedef struct
908 unsigned SID3 : 1;
909 unsigned SID4 : 1;
910 unsigned SID5 : 1;
911 unsigned SID6 : 1;
912 unsigned SID7 : 1;
913 unsigned SID8 : 1;
914 unsigned SID9 : 1;
915 unsigned SID10 : 1;
916 } __RXF12SIDHbits_t;
918 extern __at(0x0D80) volatile __RXF12SIDHbits_t RXF12SIDHbits;
920 #define _RXF12SIDH_SID3 0x01
921 #define _RXF12SIDH_SID4 0x02
922 #define _RXF12SIDH_SID5 0x04
923 #define _RXF12SIDH_SID6 0x08
924 #define _RXF12SIDH_SID7 0x10
925 #define _RXF12SIDH_SID8 0x20
926 #define _RXF12SIDH_SID9 0x40
927 #define _RXF12SIDH_SID10 0x80
929 //==============================================================================
932 //==============================================================================
933 // RXF12SIDL Bits
935 extern __at(0x0D81) __sfr RXF12SIDL;
937 typedef union
939 struct
941 unsigned EID16 : 1;
942 unsigned EID17 : 1;
943 unsigned : 1;
944 unsigned EXIDEN : 1;
945 unsigned : 1;
946 unsigned SID0 : 1;
947 unsigned SID1 : 1;
948 unsigned SID2 : 1;
951 struct
953 unsigned : 1;
954 unsigned : 1;
955 unsigned : 1;
956 unsigned EXIDE : 1;
957 unsigned : 1;
958 unsigned : 1;
959 unsigned : 1;
960 unsigned : 1;
963 struct
965 unsigned : 5;
966 unsigned SID : 3;
968 } __RXF12SIDLbits_t;
970 extern __at(0x0D81) volatile __RXF12SIDLbits_t RXF12SIDLbits;
972 #define _RXF12SIDL_EID16 0x01
973 #define _RXF12SIDL_EID17 0x02
974 #define _RXF12SIDL_EXIDEN 0x08
975 #define _RXF12SIDL_EXIDE 0x08
976 #define _RXF12SIDL_SID0 0x20
977 #define _RXF12SIDL_SID1 0x40
978 #define _RXF12SIDL_SID2 0x80
980 //==============================================================================
983 //==============================================================================
984 // RXF12EIDH Bits
986 extern __at(0x0D82) __sfr RXF12EIDH;
988 typedef struct
990 unsigned EID8 : 1;
991 unsigned EID9 : 1;
992 unsigned EID10 : 1;
993 unsigned EID11 : 1;
994 unsigned EID12 : 1;
995 unsigned EID13 : 1;
996 unsigned EID14 : 1;
997 unsigned EID15 : 1;
998 } __RXF12EIDHbits_t;
1000 extern __at(0x0D82) volatile __RXF12EIDHbits_t RXF12EIDHbits;
1002 #define _RXF12EIDH_EID8 0x01
1003 #define _RXF12EIDH_EID9 0x02
1004 #define _RXF12EIDH_EID10 0x04
1005 #define _RXF12EIDH_EID11 0x08
1006 #define _RXF12EIDH_EID12 0x10
1007 #define _RXF12EIDH_EID13 0x20
1008 #define _RXF12EIDH_EID14 0x40
1009 #define _RXF12EIDH_EID15 0x80
1011 //==============================================================================
1014 //==============================================================================
1015 // RXF12EIDL Bits
1017 extern __at(0x0D83) __sfr RXF12EIDL;
1019 typedef struct
1021 unsigned EID0 : 1;
1022 unsigned EID1 : 1;
1023 unsigned EID2 : 1;
1024 unsigned EID3 : 1;
1025 unsigned EID4 : 1;
1026 unsigned EID5 : 1;
1027 unsigned EID6 : 1;
1028 unsigned EID7 : 1;
1029 } __RXF12EIDLbits_t;
1031 extern __at(0x0D83) volatile __RXF12EIDLbits_t RXF12EIDLbits;
1033 #define _RXF12EIDL_EID0 0x01
1034 #define _RXF12EIDL_EID1 0x02
1035 #define _RXF12EIDL_EID2 0x04
1036 #define _RXF12EIDL_EID3 0x08
1037 #define _RXF12EIDL_EID4 0x10
1038 #define _RXF12EIDL_EID5 0x20
1039 #define _RXF12EIDL_EID6 0x40
1040 #define _RXF12EIDL_EID7 0x80
1042 //==============================================================================
1045 //==============================================================================
1046 // RXF13SIDH Bits
1048 extern __at(0x0D84) __sfr RXF13SIDH;
1050 typedef struct
1052 unsigned SID3 : 1;
1053 unsigned SID4 : 1;
1054 unsigned SID5 : 1;
1055 unsigned SID6 : 1;
1056 unsigned SID7 : 1;
1057 unsigned SID8 : 1;
1058 unsigned SID9 : 1;
1059 unsigned SID10 : 1;
1060 } __RXF13SIDHbits_t;
1062 extern __at(0x0D84) volatile __RXF13SIDHbits_t RXF13SIDHbits;
1064 #define _RXF13SIDH_SID3 0x01
1065 #define _RXF13SIDH_SID4 0x02
1066 #define _RXF13SIDH_SID5 0x04
1067 #define _RXF13SIDH_SID6 0x08
1068 #define _RXF13SIDH_SID7 0x10
1069 #define _RXF13SIDH_SID8 0x20
1070 #define _RXF13SIDH_SID9 0x40
1071 #define _RXF13SIDH_SID10 0x80
1073 //==============================================================================
1076 //==============================================================================
1077 // RXF13SIDL Bits
1079 extern __at(0x0D85) __sfr RXF13SIDL;
1081 typedef union
1083 struct
1085 unsigned EID16 : 1;
1086 unsigned EID17 : 1;
1087 unsigned : 1;
1088 unsigned EXIDEN : 1;
1089 unsigned : 1;
1090 unsigned SID0 : 1;
1091 unsigned SID1 : 1;
1092 unsigned SID2 : 1;
1095 struct
1097 unsigned : 1;
1098 unsigned : 1;
1099 unsigned : 1;
1100 unsigned EXIDE : 1;
1101 unsigned : 1;
1102 unsigned : 1;
1103 unsigned : 1;
1104 unsigned : 1;
1107 struct
1109 unsigned : 5;
1110 unsigned SID : 3;
1112 } __RXF13SIDLbits_t;
1114 extern __at(0x0D85) volatile __RXF13SIDLbits_t RXF13SIDLbits;
1116 #define _RXF13SIDL_EID16 0x01
1117 #define _RXF13SIDL_EID17 0x02
1118 #define _RXF13SIDL_EXIDEN 0x08
1119 #define _RXF13SIDL_EXIDE 0x08
1120 #define _RXF13SIDL_SID0 0x20
1121 #define _RXF13SIDL_SID1 0x40
1122 #define _RXF13SIDL_SID2 0x80
1124 //==============================================================================
1127 //==============================================================================
1128 // RXF13EIDH Bits
1130 extern __at(0x0D86) __sfr RXF13EIDH;
1132 typedef struct
1134 unsigned EID8 : 1;
1135 unsigned EID9 : 1;
1136 unsigned EID10 : 1;
1137 unsigned EID11 : 1;
1138 unsigned EID12 : 1;
1139 unsigned EID13 : 1;
1140 unsigned EID14 : 1;
1141 unsigned EID15 : 1;
1142 } __RXF13EIDHbits_t;
1144 extern __at(0x0D86) volatile __RXF13EIDHbits_t RXF13EIDHbits;
1146 #define _RXF13EIDH_EID8 0x01
1147 #define _RXF13EIDH_EID9 0x02
1148 #define _RXF13EIDH_EID10 0x04
1149 #define _RXF13EIDH_EID11 0x08
1150 #define _RXF13EIDH_EID12 0x10
1151 #define _RXF13EIDH_EID13 0x20
1152 #define _RXF13EIDH_EID14 0x40
1153 #define _RXF13EIDH_EID15 0x80
1155 //==============================================================================
1158 //==============================================================================
1159 // RXF13EIDL Bits
1161 extern __at(0x0D87) __sfr RXF13EIDL;
1163 typedef struct
1165 unsigned EID0 : 1;
1166 unsigned EID1 : 1;
1167 unsigned EID2 : 1;
1168 unsigned EID3 : 1;
1169 unsigned EID4 : 1;
1170 unsigned EID5 : 1;
1171 unsigned EID6 : 1;
1172 unsigned EID7 : 1;
1173 } __RXF13EIDLbits_t;
1175 extern __at(0x0D87) volatile __RXF13EIDLbits_t RXF13EIDLbits;
1177 #define _RXF13EIDL_EID0 0x01
1178 #define _RXF13EIDL_EID1 0x02
1179 #define _RXF13EIDL_EID2 0x04
1180 #define _RXF13EIDL_EID3 0x08
1181 #define _RXF13EIDL_EID4 0x10
1182 #define _RXF13EIDL_EID5 0x20
1183 #define _RXF13EIDL_EID6 0x40
1184 #define _RXF13EIDL_EID7 0x80
1186 //==============================================================================
1189 //==============================================================================
1190 // RXF14SIDH Bits
1192 extern __at(0x0D88) __sfr RXF14SIDH;
1194 typedef struct
1196 unsigned SID3 : 1;
1197 unsigned SID4 : 1;
1198 unsigned SID5 : 1;
1199 unsigned SID6 : 1;
1200 unsigned SID7 : 1;
1201 unsigned SID8 : 1;
1202 unsigned SID9 : 1;
1203 unsigned SID10 : 1;
1204 } __RXF14SIDHbits_t;
1206 extern __at(0x0D88) volatile __RXF14SIDHbits_t RXF14SIDHbits;
1208 #define _RXF14SIDH_SID3 0x01
1209 #define _RXF14SIDH_SID4 0x02
1210 #define _RXF14SIDH_SID5 0x04
1211 #define _RXF14SIDH_SID6 0x08
1212 #define _RXF14SIDH_SID7 0x10
1213 #define _RXF14SIDH_SID8 0x20
1214 #define _RXF14SIDH_SID9 0x40
1215 #define _RXF14SIDH_SID10 0x80
1217 //==============================================================================
1220 //==============================================================================
1221 // RXF14SIDL Bits
1223 extern __at(0x0D89) __sfr RXF14SIDL;
1225 typedef union
1227 struct
1229 unsigned EID16 : 1;
1230 unsigned EID17 : 1;
1231 unsigned : 1;
1232 unsigned EXIDEN : 1;
1233 unsigned : 1;
1234 unsigned SID0 : 1;
1235 unsigned SID1 : 1;
1236 unsigned SID2 : 1;
1239 struct
1241 unsigned : 1;
1242 unsigned : 1;
1243 unsigned : 1;
1244 unsigned EXIDE : 1;
1245 unsigned : 1;
1246 unsigned : 1;
1247 unsigned : 1;
1248 unsigned : 1;
1251 struct
1253 unsigned : 5;
1254 unsigned SID : 3;
1256 } __RXF14SIDLbits_t;
1258 extern __at(0x0D89) volatile __RXF14SIDLbits_t RXF14SIDLbits;
1260 #define _RXF14SIDL_EID16 0x01
1261 #define _RXF14SIDL_EID17 0x02
1262 #define _RXF14SIDL_EXIDEN 0x08
1263 #define _RXF14SIDL_EXIDE 0x08
1264 #define _RXF14SIDL_SID0 0x20
1265 #define _RXF14SIDL_SID1 0x40
1266 #define _RXF14SIDL_SID2 0x80
1268 //==============================================================================
1271 //==============================================================================
1272 // RXF14EIDH Bits
1274 extern __at(0x0D8A) __sfr RXF14EIDH;
1276 typedef struct
1278 unsigned EID8 : 1;
1279 unsigned EID9 : 1;
1280 unsigned EID10 : 1;
1281 unsigned EID11 : 1;
1282 unsigned EID12 : 1;
1283 unsigned EID13 : 1;
1284 unsigned EID14 : 1;
1285 unsigned EID15 : 1;
1286 } __RXF14EIDHbits_t;
1288 extern __at(0x0D8A) volatile __RXF14EIDHbits_t RXF14EIDHbits;
1290 #define _RXF14EIDH_EID8 0x01
1291 #define _RXF14EIDH_EID9 0x02
1292 #define _RXF14EIDH_EID10 0x04
1293 #define _RXF14EIDH_EID11 0x08
1294 #define _RXF14EIDH_EID12 0x10
1295 #define _RXF14EIDH_EID13 0x20
1296 #define _RXF14EIDH_EID14 0x40
1297 #define _RXF14EIDH_EID15 0x80
1299 //==============================================================================
1302 //==============================================================================
1303 // RXF14EIDL Bits
1305 extern __at(0x0D8B) __sfr RXF14EIDL;
1307 typedef struct
1309 unsigned EID0 : 1;
1310 unsigned EID1 : 1;
1311 unsigned EID2 : 1;
1312 unsigned EID3 : 1;
1313 unsigned EID4 : 1;
1314 unsigned EID5 : 1;
1315 unsigned EID6 : 1;
1316 unsigned EID7 : 1;
1317 } __RXF14EIDLbits_t;
1319 extern __at(0x0D8B) volatile __RXF14EIDLbits_t RXF14EIDLbits;
1321 #define _RXF14EIDL_EID0 0x01
1322 #define _RXF14EIDL_EID1 0x02
1323 #define _RXF14EIDL_EID2 0x04
1324 #define _RXF14EIDL_EID3 0x08
1325 #define _RXF14EIDL_EID4 0x10
1326 #define _RXF14EIDL_EID5 0x20
1327 #define _RXF14EIDL_EID6 0x40
1328 #define _RXF14EIDL_EID7 0x80
1330 //==============================================================================
1333 //==============================================================================
1334 // RXF15SIDH Bits
1336 extern __at(0x0D90) __sfr RXF15SIDH;
1338 typedef struct
1340 unsigned SID3 : 1;
1341 unsigned SID4 : 1;
1342 unsigned SID5 : 1;
1343 unsigned SID6 : 1;
1344 unsigned SID7 : 1;
1345 unsigned SID8 : 1;
1346 unsigned SID9 : 1;
1347 unsigned SID10 : 1;
1348 } __RXF15SIDHbits_t;
1350 extern __at(0x0D90) volatile __RXF15SIDHbits_t RXF15SIDHbits;
1352 #define _RXF15SIDH_SID3 0x01
1353 #define _RXF15SIDH_SID4 0x02
1354 #define _RXF15SIDH_SID5 0x04
1355 #define _RXF15SIDH_SID6 0x08
1356 #define _RXF15SIDH_SID7 0x10
1357 #define _RXF15SIDH_SID8 0x20
1358 #define _RXF15SIDH_SID9 0x40
1359 #define _RXF15SIDH_SID10 0x80
1361 //==============================================================================
1364 //==============================================================================
1365 // RXF15SIDL Bits
1367 extern __at(0x0D91) __sfr RXF15SIDL;
1369 typedef union
1371 struct
1373 unsigned EID16 : 1;
1374 unsigned EID17 : 1;
1375 unsigned : 1;
1376 unsigned EXIDEN : 1;
1377 unsigned : 1;
1378 unsigned SID0 : 1;
1379 unsigned SID1 : 1;
1380 unsigned SID2 : 1;
1383 struct
1385 unsigned : 1;
1386 unsigned : 1;
1387 unsigned : 1;
1388 unsigned EXIDE : 1;
1389 unsigned : 1;
1390 unsigned : 1;
1391 unsigned : 1;
1392 unsigned : 1;
1395 struct
1397 unsigned : 5;
1398 unsigned SID : 3;
1400 } __RXF15SIDLbits_t;
1402 extern __at(0x0D91) volatile __RXF15SIDLbits_t RXF15SIDLbits;
1404 #define _RXF15SIDL_EID16 0x01
1405 #define _RXF15SIDL_EID17 0x02
1406 #define _RXF15SIDL_EXIDEN 0x08
1407 #define _RXF15SIDL_EXIDE 0x08
1408 #define _RXF15SIDL_SID0 0x20
1409 #define _RXF15SIDL_SID1 0x40
1410 #define _RXF15SIDL_SID2 0x80
1412 //==============================================================================
1415 //==============================================================================
1416 // RXF15EIDH Bits
1418 extern __at(0x0D92) __sfr RXF15EIDH;
1420 typedef struct
1422 unsigned EID8 : 1;
1423 unsigned EID9 : 1;
1424 unsigned EID10 : 1;
1425 unsigned EID11 : 1;
1426 unsigned EID12 : 1;
1427 unsigned EID13 : 1;
1428 unsigned EID14 : 1;
1429 unsigned EID15 : 1;
1430 } __RXF15EIDHbits_t;
1432 extern __at(0x0D92) volatile __RXF15EIDHbits_t RXF15EIDHbits;
1434 #define _RXF15EIDH_EID8 0x01
1435 #define _RXF15EIDH_EID9 0x02
1436 #define _RXF15EIDH_EID10 0x04
1437 #define _RXF15EIDH_EID11 0x08
1438 #define _RXF15EIDH_EID12 0x10
1439 #define _RXF15EIDH_EID13 0x20
1440 #define _RXF15EIDH_EID14 0x40
1441 #define _RXF15EIDH_EID15 0x80
1443 //==============================================================================
1446 //==============================================================================
1447 // RXF15EIDL Bits
1449 extern __at(0x0D93) __sfr RXF15EIDL;
1451 typedef struct
1453 unsigned EID0 : 1;
1454 unsigned EID1 : 1;
1455 unsigned EID2 : 1;
1456 unsigned EID3 : 1;
1457 unsigned EID4 : 1;
1458 unsigned EID5 : 1;
1459 unsigned EID6 : 1;
1460 unsigned EID7 : 1;
1461 } __RXF15EIDLbits_t;
1463 extern __at(0x0D93) volatile __RXF15EIDLbits_t RXF15EIDLbits;
1465 #define _RXF15EIDL_EID0 0x01
1466 #define _RXF15EIDL_EID1 0x02
1467 #define _RXF15EIDL_EID2 0x04
1468 #define _RXF15EIDL_EID3 0x08
1469 #define _RXF15EIDL_EID4 0x10
1470 #define _RXF15EIDL_EID5 0x20
1471 #define _RXF15EIDL_EID6 0x40
1472 #define _RXF15EIDL_EID7 0x80
1474 //==============================================================================
1477 //==============================================================================
1478 // RXFCON0 Bits
1480 extern __at(0x0DD4) __sfr RXFCON0;
1482 typedef struct
1484 unsigned RXF0EN : 1;
1485 unsigned RXF1EN : 1;
1486 unsigned RXF2EN : 1;
1487 unsigned RXF3EN : 1;
1488 unsigned RXF4EN : 1;
1489 unsigned RXF5EN : 1;
1490 unsigned RXF6EN : 1;
1491 unsigned RXF7EN : 1;
1492 } __RXFCON0bits_t;
1494 extern __at(0x0DD4) volatile __RXFCON0bits_t RXFCON0bits;
1496 #define _RXF0EN 0x01
1497 #define _RXF1EN 0x02
1498 #define _RXF2EN 0x04
1499 #define _RXF3EN 0x08
1500 #define _RXF4EN 0x10
1501 #define _RXF5EN 0x20
1502 #define _RXF6EN 0x40
1503 #define _RXF7EN 0x80
1505 //==============================================================================
1508 //==============================================================================
1509 // RXFCON1 Bits
1511 extern __at(0x0DD5) __sfr RXFCON1;
1513 typedef struct
1515 unsigned RXF8EN : 1;
1516 unsigned RXF9EN : 1;
1517 unsigned RXF10EN : 1;
1518 unsigned RXF11EN : 1;
1519 unsigned RXF12EN : 1;
1520 unsigned RXF13EN : 1;
1521 unsigned RXF14EN : 1;
1522 unsigned RXF15EN : 1;
1523 } __RXFCON1bits_t;
1525 extern __at(0x0DD5) volatile __RXFCON1bits_t RXFCON1bits;
1527 #define _RXF8EN 0x01
1528 #define _RXF9EN 0x02
1529 #define _RXF10EN 0x04
1530 #define _RXF11EN 0x08
1531 #define _RXF12EN 0x10
1532 #define _RXF13EN 0x20
1533 #define _RXF14EN 0x40
1534 #define _RXF15EN 0x80
1536 //==============================================================================
1539 //==============================================================================
1540 // SDFLC Bits
1542 extern __at(0x0DD8) __sfr SDFLC;
1544 typedef union
1546 struct
1548 unsigned DFLC0 : 1;
1549 unsigned DFLC1 : 1;
1550 unsigned DFLC2 : 1;
1551 unsigned DFLC3 : 1;
1552 unsigned DFLC4 : 1;
1553 unsigned : 1;
1554 unsigned : 1;
1555 unsigned : 1;
1558 struct
1560 unsigned DFLC : 5;
1561 unsigned : 3;
1563 } __SDFLCbits_t;
1565 extern __at(0x0DD8) volatile __SDFLCbits_t SDFLCbits;
1567 #define _DFLC0 0x01
1568 #define _DFLC1 0x02
1569 #define _DFLC2 0x04
1570 #define _DFLC3 0x08
1571 #define _DFLC4 0x10
1573 //==============================================================================
1576 //==============================================================================
1577 // RXFBCON0 Bits
1579 extern __at(0x0DE0) __sfr RXFBCON0;
1581 typedef union
1583 struct
1585 unsigned F0BP_0 : 1;
1586 unsigned F0BP_1 : 1;
1587 unsigned F0BP_2 : 1;
1588 unsigned F0BP_3 : 1;
1589 unsigned F1BP_0 : 1;
1590 unsigned F1BP_1 : 1;
1591 unsigned F1BP_2 : 1;
1592 unsigned F1BP_3 : 1;
1595 struct
1597 unsigned F0BP_ : 4;
1598 unsigned : 4;
1601 struct
1603 unsigned : 4;
1604 unsigned F1BP_ : 4;
1606 } __RXFBCON0bits_t;
1608 extern __at(0x0DE0) volatile __RXFBCON0bits_t RXFBCON0bits;
1610 #define _F0BP_0 0x01
1611 #define _F0BP_1 0x02
1612 #define _F0BP_2 0x04
1613 #define _F0BP_3 0x08
1614 #define _F1BP_0 0x10
1615 #define _F1BP_1 0x20
1616 #define _F1BP_2 0x40
1617 #define _F1BP_3 0x80
1619 //==============================================================================
1622 //==============================================================================
1623 // RXFBCON1 Bits
1625 extern __at(0x0DE1) __sfr RXFBCON1;
1627 typedef union
1629 struct
1631 unsigned F2BP_0 : 1;
1632 unsigned F2BP_1 : 1;
1633 unsigned F2BP_2 : 1;
1634 unsigned F2BP_3 : 1;
1635 unsigned F3BP_0 : 1;
1636 unsigned F3BP_1 : 1;
1637 unsigned F3BP_2 : 1;
1638 unsigned F3BP_3 : 1;
1641 struct
1643 unsigned F2BP_ : 4;
1644 unsigned : 4;
1647 struct
1649 unsigned : 4;
1650 unsigned F3BP_ : 4;
1652 } __RXFBCON1bits_t;
1654 extern __at(0x0DE1) volatile __RXFBCON1bits_t RXFBCON1bits;
1656 #define _F2BP_0 0x01
1657 #define _F2BP_1 0x02
1658 #define _F2BP_2 0x04
1659 #define _F2BP_3 0x08
1660 #define _F3BP_0 0x10
1661 #define _F3BP_1 0x20
1662 #define _F3BP_2 0x40
1663 #define _F3BP_3 0x80
1665 //==============================================================================
1668 //==============================================================================
1669 // RXFBCON2 Bits
1671 extern __at(0x0DE2) __sfr RXFBCON2;
1673 typedef union
1675 struct
1677 unsigned F4BP_0 : 1;
1678 unsigned F4BP_1 : 1;
1679 unsigned F4BP_2 : 1;
1680 unsigned F4BP_3 : 1;
1681 unsigned F5BP_0 : 1;
1682 unsigned F5BP_1 : 1;
1683 unsigned F5BP_2 : 1;
1684 unsigned F5BP_3 : 1;
1687 struct
1689 unsigned F4BP_ : 4;
1690 unsigned : 4;
1693 struct
1695 unsigned : 4;
1696 unsigned F5BP_ : 4;
1698 } __RXFBCON2bits_t;
1700 extern __at(0x0DE2) volatile __RXFBCON2bits_t RXFBCON2bits;
1702 #define _F4BP_0 0x01
1703 #define _F4BP_1 0x02
1704 #define _F4BP_2 0x04
1705 #define _F4BP_3 0x08
1706 #define _F5BP_0 0x10
1707 #define _F5BP_1 0x20
1708 #define _F5BP_2 0x40
1709 #define _F5BP_3 0x80
1711 //==============================================================================
1714 //==============================================================================
1715 // RXFBCON3 Bits
1717 extern __at(0x0DE3) __sfr RXFBCON3;
1719 typedef union
1721 struct
1723 unsigned F6BP_0 : 1;
1724 unsigned F6BP_1 : 1;
1725 unsigned F6BP_2 : 1;
1726 unsigned F6BP_3 : 1;
1727 unsigned F7BP_0 : 1;
1728 unsigned F7BP_1 : 1;
1729 unsigned F7BP_2 : 1;
1730 unsigned F7BP_3 : 1;
1733 struct
1735 unsigned F6BP_ : 4;
1736 unsigned : 4;
1739 struct
1741 unsigned : 4;
1742 unsigned F7BP_ : 4;
1744 } __RXFBCON3bits_t;
1746 extern __at(0x0DE3) volatile __RXFBCON3bits_t RXFBCON3bits;
1748 #define _F6BP_0 0x01
1749 #define _F6BP_1 0x02
1750 #define _F6BP_2 0x04
1751 #define _F6BP_3 0x08
1752 #define _F7BP_0 0x10
1753 #define _F7BP_1 0x20
1754 #define _F7BP_2 0x40
1755 #define _F7BP_3 0x80
1757 //==============================================================================
1760 //==============================================================================
1761 // RXFBCON4 Bits
1763 extern __at(0x0DE4) __sfr RXFBCON4;
1765 typedef union
1767 struct
1769 unsigned F8BP_0 : 1;
1770 unsigned F8BP_1 : 1;
1771 unsigned F8BP_2 : 1;
1772 unsigned F8BP_3 : 1;
1773 unsigned F9BP_0 : 1;
1774 unsigned F9BP_1 : 1;
1775 unsigned F9BP_2 : 1;
1776 unsigned F9BP_3 : 1;
1779 struct
1781 unsigned F8BP_ : 4;
1782 unsigned : 4;
1785 struct
1787 unsigned : 4;
1788 unsigned F9BP_ : 4;
1790 } __RXFBCON4bits_t;
1792 extern __at(0x0DE4) volatile __RXFBCON4bits_t RXFBCON4bits;
1794 #define _F8BP_0 0x01
1795 #define _F8BP_1 0x02
1796 #define _F8BP_2 0x04
1797 #define _F8BP_3 0x08
1798 #define _F9BP_0 0x10
1799 #define _F9BP_1 0x20
1800 #define _F9BP_2 0x40
1801 #define _F9BP_3 0x80
1803 //==============================================================================
1806 //==============================================================================
1807 // RXFBCON5 Bits
1809 extern __at(0x0DE5) __sfr RXFBCON5;
1811 typedef union
1813 struct
1815 unsigned F10BP_0 : 1;
1816 unsigned F10BP_1 : 1;
1817 unsigned F10BP_2 : 1;
1818 unsigned F10BP_3 : 1;
1819 unsigned F11BP_0 : 1;
1820 unsigned F11BP_1 : 1;
1821 unsigned F11BP_2 : 1;
1822 unsigned F11BP_3 : 1;
1825 struct
1827 unsigned F10BP_ : 4;
1828 unsigned : 4;
1831 struct
1833 unsigned : 4;
1834 unsigned F11BP_ : 4;
1836 } __RXFBCON5bits_t;
1838 extern __at(0x0DE5) volatile __RXFBCON5bits_t RXFBCON5bits;
1840 #define _F10BP_0 0x01
1841 #define _F10BP_1 0x02
1842 #define _F10BP_2 0x04
1843 #define _F10BP_3 0x08
1844 #define _F11BP_0 0x10
1845 #define _F11BP_1 0x20
1846 #define _F11BP_2 0x40
1847 #define _F11BP_3 0x80
1849 //==============================================================================
1852 //==============================================================================
1853 // RXFBCON6 Bits
1855 extern __at(0x0DE6) __sfr RXFBCON6;
1857 typedef union
1859 struct
1861 unsigned F12BP_0 : 1;
1862 unsigned F12BP_1 : 1;
1863 unsigned F12BP_2 : 1;
1864 unsigned F12BP_3 : 1;
1865 unsigned F13BP_0 : 1;
1866 unsigned F13BP_1 : 1;
1867 unsigned F13BP_2 : 1;
1868 unsigned F13BP_3 : 1;
1871 struct
1873 unsigned F12BP_ : 4;
1874 unsigned : 4;
1877 struct
1879 unsigned : 4;
1880 unsigned F13BP_ : 4;
1882 } __RXFBCON6bits_t;
1884 extern __at(0x0DE6) volatile __RXFBCON6bits_t RXFBCON6bits;
1886 #define _F12BP_0 0x01
1887 #define _F12BP_1 0x02
1888 #define _F12BP_2 0x04
1889 #define _F12BP_3 0x08
1890 #define _F13BP_0 0x10
1891 #define _F13BP_1 0x20
1892 #define _F13BP_2 0x40
1893 #define _F13BP_3 0x80
1895 //==============================================================================
1898 //==============================================================================
1899 // RXFBCON7 Bits
1901 extern __at(0x0DE7) __sfr RXFBCON7;
1903 typedef union
1905 struct
1907 unsigned F14BP_0 : 1;
1908 unsigned F14BP_1 : 1;
1909 unsigned F14BP_2 : 1;
1910 unsigned F14BP_3 : 1;
1911 unsigned F15BP_0 : 1;
1912 unsigned F15BP_1 : 1;
1913 unsigned F15BP_2 : 1;
1914 unsigned F15BP_3 : 1;
1917 struct
1919 unsigned F14BP_ : 4;
1920 unsigned : 4;
1923 struct
1925 unsigned : 4;
1926 unsigned F15BP_ : 4;
1928 } __RXFBCON7bits_t;
1930 extern __at(0x0DE7) volatile __RXFBCON7bits_t RXFBCON7bits;
1932 #define _F14BP_0 0x01
1933 #define _F14BP_1 0x02
1934 #define _F14BP_2 0x04
1935 #define _F14BP_3 0x08
1936 #define _F15BP_0 0x10
1937 #define _F15BP_1 0x20
1938 #define _F15BP_2 0x40
1939 #define _F15BP_3 0x80
1941 //==============================================================================
1944 //==============================================================================
1945 // MSEL0 Bits
1947 extern __at(0x0DF0) __sfr MSEL0;
1949 typedef union
1951 struct
1953 unsigned FIL0_0 : 1;
1954 unsigned FIL0_1 : 1;
1955 unsigned FIL1_0 : 1;
1956 unsigned FIL1_1 : 1;
1957 unsigned FIL2_0 : 1;
1958 unsigned FIL2_1 : 1;
1959 unsigned FIL3_0 : 1;
1960 unsigned FIL3_1 : 1;
1963 struct
1965 unsigned FIL0_ : 2;
1966 unsigned : 6;
1969 struct
1971 unsigned : 2;
1972 unsigned FIL1_ : 2;
1973 unsigned : 4;
1976 struct
1978 unsigned : 4;
1979 unsigned FIL2_ : 2;
1980 unsigned : 2;
1983 struct
1985 unsigned : 6;
1986 unsigned FIL3_ : 2;
1988 } __MSEL0bits_t;
1990 extern __at(0x0DF0) volatile __MSEL0bits_t MSEL0bits;
1992 #define _FIL0_0 0x01
1993 #define _FIL0_1 0x02
1994 #define _FIL1_0 0x04
1995 #define _FIL1_1 0x08
1996 #define _FIL2_0 0x10
1997 #define _FIL2_1 0x20
1998 #define _FIL3_0 0x40
1999 #define _FIL3_1 0x80
2001 //==============================================================================
2004 //==============================================================================
2005 // MSEL1 Bits
2007 extern __at(0x0DF1) __sfr MSEL1;
2009 typedef union
2011 struct
2013 unsigned FIL4_0 : 1;
2014 unsigned FIL4_1 : 1;
2015 unsigned FIL5_0 : 1;
2016 unsigned FIL5_1 : 1;
2017 unsigned FIL6_0 : 1;
2018 unsigned FIL6_1 : 1;
2019 unsigned FIL7_0 : 1;
2020 unsigned FIL7_1 : 1;
2023 struct
2025 unsigned FIL4_ : 2;
2026 unsigned : 6;
2029 struct
2031 unsigned : 2;
2032 unsigned FIL5_ : 2;
2033 unsigned : 4;
2036 struct
2038 unsigned : 4;
2039 unsigned FIL6_ : 2;
2040 unsigned : 2;
2043 struct
2045 unsigned : 6;
2046 unsigned FIL7_ : 2;
2048 } __MSEL1bits_t;
2050 extern __at(0x0DF1) volatile __MSEL1bits_t MSEL1bits;
2052 #define _FIL4_0 0x01
2053 #define _FIL4_1 0x02
2054 #define _FIL5_0 0x04
2055 #define _FIL5_1 0x08
2056 #define _FIL6_0 0x10
2057 #define _FIL6_1 0x20
2058 #define _FIL7_0 0x40
2059 #define _FIL7_1 0x80
2061 //==============================================================================
2064 //==============================================================================
2065 // MSEL2 Bits
2067 extern __at(0x0DF2) __sfr MSEL2;
2069 typedef union
2071 struct
2073 unsigned FIL8_0 : 1;
2074 unsigned FIL8_1 : 1;
2075 unsigned FIL9_0 : 1;
2076 unsigned FIL9_1 : 1;
2077 unsigned FIL10_0 : 1;
2078 unsigned FIL10_1 : 1;
2079 unsigned FIL11_0 : 1;
2080 unsigned FIL11_1 : 1;
2083 struct
2085 unsigned FIL8_ : 2;
2086 unsigned : 6;
2089 struct
2091 unsigned : 2;
2092 unsigned FIL9_ : 2;
2093 unsigned : 4;
2096 struct
2098 unsigned : 4;
2099 unsigned FIL10_ : 2;
2100 unsigned : 2;
2103 struct
2105 unsigned : 6;
2106 unsigned FIL11_ : 2;
2108 } __MSEL2bits_t;
2110 extern __at(0x0DF2) volatile __MSEL2bits_t MSEL2bits;
2112 #define _FIL8_0 0x01
2113 #define _FIL8_1 0x02
2114 #define _FIL9_0 0x04
2115 #define _FIL9_1 0x08
2116 #define _FIL10_0 0x10
2117 #define _FIL10_1 0x20
2118 #define _FIL11_0 0x40
2119 #define _FIL11_1 0x80
2121 //==============================================================================
2124 //==============================================================================
2125 // MSEL3 Bits
2127 extern __at(0x0DF3) __sfr MSEL3;
2129 typedef union
2131 struct
2133 unsigned FIL12_0 : 1;
2134 unsigned FIL12_1 : 1;
2135 unsigned FIL13_0 : 1;
2136 unsigned FIL13_1 : 1;
2137 unsigned FIL14_0 : 1;
2138 unsigned FIL14_1 : 1;
2139 unsigned FIL15_0 : 1;
2140 unsigned FIL15_1 : 1;
2143 struct
2145 unsigned FIL12_ : 2;
2146 unsigned : 6;
2149 struct
2151 unsigned : 2;
2152 unsigned FIL13_ : 2;
2153 unsigned : 4;
2156 struct
2158 unsigned : 4;
2159 unsigned FIL14_ : 2;
2160 unsigned : 2;
2163 struct
2165 unsigned : 6;
2166 unsigned FIL15_ : 2;
2168 } __MSEL3bits_t;
2170 extern __at(0x0DF3) volatile __MSEL3bits_t MSEL3bits;
2172 #define _FIL12_0 0x01
2173 #define _FIL12_1 0x02
2174 #define _FIL13_0 0x04
2175 #define _FIL13_1 0x08
2176 #define _FIL14_0 0x10
2177 #define _FIL14_1 0x20
2178 #define _FIL15_0 0x40
2179 #define _FIL15_1 0x80
2181 //==============================================================================
2184 //==============================================================================
2185 // BSEL0 Bits
2187 extern __at(0x0DF8) __sfr BSEL0;
2189 typedef struct
2191 unsigned : 1;
2192 unsigned : 1;
2193 unsigned B0TXEN : 1;
2194 unsigned B1TXEN : 1;
2195 unsigned B2TXEN : 1;
2196 unsigned B3TXEN : 1;
2197 unsigned B4TXEN : 1;
2198 unsigned B5TXEN : 1;
2199 } __BSEL0bits_t;
2201 extern __at(0x0DF8) volatile __BSEL0bits_t BSEL0bits;
2203 #define _B0TXEN 0x04
2204 #define _B1TXEN 0x08
2205 #define _B2TXEN 0x10
2206 #define _B3TXEN 0x20
2207 #define _B4TXEN 0x40
2208 #define _B5TXEN 0x80
2210 //==============================================================================
2213 //==============================================================================
2214 // BIE0 Bits
2216 extern __at(0x0DFA) __sfr BIE0;
2218 typedef struct
2220 unsigned RXB0IE : 1;
2221 unsigned RXB1IE : 1;
2222 unsigned B0IE : 1;
2223 unsigned B1IE : 1;
2224 unsigned B2IE : 1;
2225 unsigned B3IE : 1;
2226 unsigned B4IE : 1;
2227 unsigned B5IE : 1;
2228 } __BIE0bits_t;
2230 extern __at(0x0DFA) volatile __BIE0bits_t BIE0bits;
2232 #define _RXB0IE 0x01
2233 #define _RXB1IE 0x02
2234 #define _B0IE 0x04
2235 #define _B1IE 0x08
2236 #define _B2IE 0x10
2237 #define _B3IE 0x20
2238 #define _B4IE 0x40
2239 #define _B5IE 0x80
2241 //==============================================================================
2244 //==============================================================================
2245 // TXBIE Bits
2247 extern __at(0x0DFC) __sfr TXBIE;
2249 typedef struct
2251 unsigned : 1;
2252 unsigned : 1;
2253 unsigned TXB0IE : 1;
2254 unsigned TXB1IE : 1;
2255 unsigned TXB2IE : 1;
2256 unsigned : 1;
2257 unsigned : 1;
2258 unsigned : 1;
2259 } __TXBIEbits_t;
2261 extern __at(0x0DFC) volatile __TXBIEbits_t TXBIEbits;
2263 #define _TXBIE_TXB0IE 0x04
2264 #define _TXBIE_TXB1IE 0x08
2265 #define _TXBIE_TXB2IE 0x10
2267 //==============================================================================
2270 //==============================================================================
2271 // B0CON Bits
2273 extern __at(0x0E20) __sfr B0CON;
2275 typedef union
2277 struct
2279 unsigned FILHIT0_TXPRI0 : 1;
2280 unsigned FILHIT1_TXPRI1 : 1;
2281 unsigned FILHIT2_RTREN : 1;
2282 unsigned FILHIT3_TXREQ : 1;
2283 unsigned FILHIT4_TXERR : 1;
2284 unsigned RXRTRRO_TXLARB : 1;
2285 unsigned RXM1_TXABT : 1;
2286 unsigned RXFUL_TXBIF : 1;
2289 struct
2291 unsigned FILHIT0 : 1;
2292 unsigned FILHIT1 : 1;
2293 unsigned FILHIT2 : 1;
2294 unsigned FILHIT3 : 1;
2295 unsigned FILHIT4 : 1;
2296 unsigned RTRRO : 1;
2297 unsigned RXM1 : 1;
2298 unsigned RXFUL : 1;
2301 struct
2303 unsigned TXPRI0 : 1;
2304 unsigned TXPRI1 : 1;
2305 unsigned RTREN : 1;
2306 unsigned TXREQ : 1;
2307 unsigned TXERR : 1;
2308 unsigned TXLARB : 1;
2309 unsigned TXABT : 1;
2310 unsigned TXBIF : 1;
2313 struct
2315 unsigned : 1;
2316 unsigned : 1;
2317 unsigned : 1;
2318 unsigned : 1;
2319 unsigned : 1;
2320 unsigned RTRRO_TXLARB : 1;
2321 unsigned : 1;
2322 unsigned : 1;
2325 struct
2327 unsigned FILHIT : 5;
2328 unsigned : 3;
2331 struct
2333 unsigned TXPRI : 2;
2334 unsigned : 6;
2336 } __B0CONbits_t;
2338 extern __at(0x0E20) volatile __B0CONbits_t B0CONbits;
2340 #define _FILHIT0_TXPRI0 0x01
2341 #define _FILHIT0 0x01
2342 #define _TXPRI0 0x01
2343 #define _FILHIT1_TXPRI1 0x02
2344 #define _FILHIT1 0x02
2345 #define _TXPRI1 0x02
2346 #define _FILHIT2_RTREN 0x04
2347 #define _FILHIT2 0x04
2348 #define _RTREN 0x04
2349 #define _FILHIT3_TXREQ 0x08
2350 #define _FILHIT3 0x08
2351 #define _TXREQ 0x08
2352 #define _FILHIT4_TXERR 0x10
2353 #define _FILHIT4 0x10
2354 #define _TXERR 0x10
2355 #define _RXRTRRO_TXLARB 0x20
2356 #define _RTRRO 0x20
2357 #define _TXLARB 0x20
2358 #define _RTRRO_TXLARB 0x20
2359 #define _RXM1_TXABT 0x40
2360 #define _RXM1 0x40
2361 #define _TXABT 0x40
2362 #define _RXFUL_TXBIF 0x80
2363 #define _RXFUL 0x80
2364 #define _TXBIF 0x80
2366 //==============================================================================
2369 //==============================================================================
2370 // B0SIDH Bits
2372 extern __at(0x0E21) __sfr B0SIDH;
2374 typedef struct
2376 unsigned SID3 : 1;
2377 unsigned SID4 : 1;
2378 unsigned SID5 : 1;
2379 unsigned SID6 : 1;
2380 unsigned SID7 : 1;
2381 unsigned SID8 : 1;
2382 unsigned SID9 : 1;
2383 unsigned SID10 : 1;
2384 } __B0SIDHbits_t;
2386 extern __at(0x0E21) volatile __B0SIDHbits_t B0SIDHbits;
2388 #define _SID3 0x01
2389 #define _SID4 0x02
2390 #define _SID5 0x04
2391 #define _SID6 0x08
2392 #define _SID7 0x10
2393 #define _SID8 0x20
2394 #define _SID9 0x40
2395 #define _SID10 0x80
2397 //==============================================================================
2400 //==============================================================================
2401 // B0SIDL Bits
2403 extern __at(0x0E22) __sfr B0SIDL;
2405 typedef union
2407 struct
2409 unsigned EID16 : 1;
2410 unsigned EID17 : 1;
2411 unsigned : 1;
2412 unsigned EXID : 1;
2413 unsigned SRR : 1;
2414 unsigned SID0 : 1;
2415 unsigned SID1 : 1;
2416 unsigned SID2 : 1;
2419 struct
2421 unsigned : 1;
2422 unsigned : 1;
2423 unsigned : 1;
2424 unsigned EXIDE : 1;
2425 unsigned : 1;
2426 unsigned : 1;
2427 unsigned : 1;
2428 unsigned : 1;
2431 struct
2433 unsigned : 5;
2434 unsigned SID : 3;
2436 } __B0SIDLbits_t;
2438 extern __at(0x0E22) volatile __B0SIDLbits_t B0SIDLbits;
2440 #define _EID16 0x01
2441 #define _EID17 0x02
2442 #define _EXID 0x08
2443 #define _EXIDE 0x08
2444 #define _SRR 0x10
2445 #define _SID0 0x20
2446 #define _SID1 0x40
2447 #define _SID2 0x80
2449 //==============================================================================
2452 //==============================================================================
2453 // B0EIDH Bits
2455 extern __at(0x0E23) __sfr B0EIDH;
2457 typedef struct
2459 unsigned EID8 : 1;
2460 unsigned EID9 : 1;
2461 unsigned EID10 : 1;
2462 unsigned EID11 : 1;
2463 unsigned EID12 : 1;
2464 unsigned EID13 : 1;
2465 unsigned EID14 : 1;
2466 unsigned EID15 : 1;
2467 } __B0EIDHbits_t;
2469 extern __at(0x0E23) volatile __B0EIDHbits_t B0EIDHbits;
2471 #define _EID8 0x01
2472 #define _EID9 0x02
2473 #define _EID10 0x04
2474 #define _EID11 0x08
2475 #define _EID12 0x10
2476 #define _EID13 0x20
2477 #define _EID14 0x40
2478 #define _EID15 0x80
2480 //==============================================================================
2483 //==============================================================================
2484 // B0EIDL Bits
2486 extern __at(0x0E24) __sfr B0EIDL;
2488 typedef struct
2490 unsigned EID0 : 1;
2491 unsigned EID1 : 1;
2492 unsigned EID2 : 1;
2493 unsigned EID3 : 1;
2494 unsigned EID4 : 1;
2495 unsigned EID5 : 1;
2496 unsigned EID6 : 1;
2497 unsigned EID7 : 1;
2498 } __B0EIDLbits_t;
2500 extern __at(0x0E24) volatile __B0EIDLbits_t B0EIDLbits;
2502 #define _EID0 0x01
2503 #define _EID1 0x02
2504 #define _EID2 0x04
2505 #define _EID3 0x08
2506 #define _EID4 0x10
2507 #define _EID5 0x20
2508 #define _EID6 0x40
2509 #define _EID7 0x80
2511 //==============================================================================
2514 //==============================================================================
2515 // B0DLC Bits
2517 extern __at(0x0E25) __sfr B0DLC;
2519 typedef union
2521 struct
2523 unsigned DLC0 : 1;
2524 unsigned DLC1 : 1;
2525 unsigned DLC2 : 1;
2526 unsigned DLC3 : 1;
2527 unsigned RB0 : 1;
2528 unsigned RB1 : 1;
2529 unsigned RXRTR : 1;
2530 unsigned : 1;
2533 struct
2535 unsigned : 1;
2536 unsigned : 1;
2537 unsigned : 1;
2538 unsigned : 1;
2539 unsigned RESRB0 : 1;
2540 unsigned RESRB1 : 1;
2541 unsigned TXRTR : 1;
2542 unsigned : 1;
2545 struct
2547 unsigned DLC : 4;
2548 unsigned : 4;
2551 struct
2553 unsigned : 4;
2554 unsigned RESRB : 2;
2555 unsigned : 2;
2558 struct
2560 unsigned : 4;
2561 unsigned RB : 2;
2562 unsigned : 2;
2564 } __B0DLCbits_t;
2566 extern __at(0x0E25) volatile __B0DLCbits_t B0DLCbits;
2568 #define _DLC0 0x01
2569 #define _DLC1 0x02
2570 #define _DLC2 0x04
2571 #define _DLC3 0x08
2572 #define _RB0 0x10
2573 #define _RESRB0 0x10
2574 #define _RB1 0x20
2575 #define _RESRB1 0x20
2576 #define _RXRTR 0x40
2577 #define _TXRTR 0x40
2579 //==============================================================================
2582 //==============================================================================
2583 // B0D0 Bits
2585 extern __at(0x0E26) __sfr B0D0;
2587 typedef struct
2589 unsigned B0D00 : 1;
2590 unsigned B0D01 : 1;
2591 unsigned B0D02 : 1;
2592 unsigned B0D03 : 1;
2593 unsigned B0D04 : 1;
2594 unsigned B0D05 : 1;
2595 unsigned B0D06 : 1;
2596 unsigned B0D07 : 1;
2597 } __B0D0bits_t;
2599 extern __at(0x0E26) volatile __B0D0bits_t B0D0bits;
2601 #define _B0D00 0x01
2602 #define _B0D01 0x02
2603 #define _B0D02 0x04
2604 #define _B0D03 0x08
2605 #define _B0D04 0x10
2606 #define _B0D05 0x20
2607 #define _B0D06 0x40
2608 #define _B0D07 0x80
2610 //==============================================================================
2613 //==============================================================================
2614 // B0D1 Bits
2616 extern __at(0x0E27) __sfr B0D1;
2618 typedef struct
2620 unsigned B0D10 : 1;
2621 unsigned B0D11 : 1;
2622 unsigned B0D12 : 1;
2623 unsigned B0D13 : 1;
2624 unsigned B0D14 : 1;
2625 unsigned B0D15 : 1;
2626 unsigned B0D16 : 1;
2627 unsigned B0D17 : 1;
2628 } __B0D1bits_t;
2630 extern __at(0x0E27) volatile __B0D1bits_t B0D1bits;
2632 #define _B0D10 0x01
2633 #define _B0D11 0x02
2634 #define _B0D12 0x04
2635 #define _B0D13 0x08
2636 #define _B0D14 0x10
2637 #define _B0D15 0x20
2638 #define _B0D16 0x40
2639 #define _B0D17 0x80
2641 //==============================================================================
2644 //==============================================================================
2645 // B0D2 Bits
2647 extern __at(0x0E28) __sfr B0D2;
2649 typedef struct
2651 unsigned B0D20 : 1;
2652 unsigned B0D21 : 1;
2653 unsigned B0D22 : 1;
2654 unsigned B0D23 : 1;
2655 unsigned B0D24 : 1;
2656 unsigned B0D25 : 1;
2657 unsigned B0D26 : 1;
2658 unsigned B0D27 : 1;
2659 } __B0D2bits_t;
2661 extern __at(0x0E28) volatile __B0D2bits_t B0D2bits;
2663 #define _B0D20 0x01
2664 #define _B0D21 0x02
2665 #define _B0D22 0x04
2666 #define _B0D23 0x08
2667 #define _B0D24 0x10
2668 #define _B0D25 0x20
2669 #define _B0D26 0x40
2670 #define _B0D27 0x80
2672 //==============================================================================
2675 //==============================================================================
2676 // B0D3 Bits
2678 extern __at(0x0E29) __sfr B0D3;
2680 typedef struct
2682 unsigned B0D30 : 1;
2683 unsigned B0D31 : 1;
2684 unsigned B0D32 : 1;
2685 unsigned B0D33 : 1;
2686 unsigned B0D34 : 1;
2687 unsigned B0D35 : 1;
2688 unsigned B0D36 : 1;
2689 unsigned B0D37 : 1;
2690 } __B0D3bits_t;
2692 extern __at(0x0E29) volatile __B0D3bits_t B0D3bits;
2694 #define _B0D30 0x01
2695 #define _B0D31 0x02
2696 #define _B0D32 0x04
2697 #define _B0D33 0x08
2698 #define _B0D34 0x10
2699 #define _B0D35 0x20
2700 #define _B0D36 0x40
2701 #define _B0D37 0x80
2703 //==============================================================================
2706 //==============================================================================
2707 // B0D4 Bits
2709 extern __at(0x0E2A) __sfr B0D4;
2711 typedef struct
2713 unsigned B0D40 : 1;
2714 unsigned B0D41 : 1;
2715 unsigned B0D42 : 1;
2716 unsigned B0D43 : 1;
2717 unsigned B0D44 : 1;
2718 unsigned B0D45 : 1;
2719 unsigned B0D46 : 1;
2720 unsigned B0D47 : 1;
2721 } __B0D4bits_t;
2723 extern __at(0x0E2A) volatile __B0D4bits_t B0D4bits;
2725 #define _B0D40 0x01
2726 #define _B0D41 0x02
2727 #define _B0D42 0x04
2728 #define _B0D43 0x08
2729 #define _B0D44 0x10
2730 #define _B0D45 0x20
2731 #define _B0D46 0x40
2732 #define _B0D47 0x80
2734 //==============================================================================
2737 //==============================================================================
2738 // B0D5 Bits
2740 extern __at(0x0E2B) __sfr B0D5;
2742 typedef struct
2744 unsigned B0D50 : 1;
2745 unsigned B0D51 : 1;
2746 unsigned B0D52 : 1;
2747 unsigned B0D53 : 1;
2748 unsigned B0D54 : 1;
2749 unsigned B0D55 : 1;
2750 unsigned B0D56 : 1;
2751 unsigned B0D57 : 1;
2752 } __B0D5bits_t;
2754 extern __at(0x0E2B) volatile __B0D5bits_t B0D5bits;
2756 #define _B0D50 0x01
2757 #define _B0D51 0x02
2758 #define _B0D52 0x04
2759 #define _B0D53 0x08
2760 #define _B0D54 0x10
2761 #define _B0D55 0x20
2762 #define _B0D56 0x40
2763 #define _B0D57 0x80
2765 //==============================================================================
2768 //==============================================================================
2769 // B0D6 Bits
2771 extern __at(0x0E2C) __sfr B0D6;
2773 typedef struct
2775 unsigned B0D60 : 1;
2776 unsigned B0D61 : 1;
2777 unsigned B0D62 : 1;
2778 unsigned B0D63 : 1;
2779 unsigned B0D64 : 1;
2780 unsigned B0D65 : 1;
2781 unsigned B0D66 : 1;
2782 unsigned B0D67 : 1;
2783 } __B0D6bits_t;
2785 extern __at(0x0E2C) volatile __B0D6bits_t B0D6bits;
2787 #define _B0D60 0x01
2788 #define _B0D61 0x02
2789 #define _B0D62 0x04
2790 #define _B0D63 0x08
2791 #define _B0D64 0x10
2792 #define _B0D65 0x20
2793 #define _B0D66 0x40
2794 #define _B0D67 0x80
2796 //==============================================================================
2799 //==============================================================================
2800 // B0D7 Bits
2802 extern __at(0x0E2D) __sfr B0D7;
2804 typedef struct
2806 unsigned B0D70 : 1;
2807 unsigned B0D71 : 1;
2808 unsigned B0D72 : 1;
2809 unsigned B0D73 : 1;
2810 unsigned B0D74 : 1;
2811 unsigned B0D75 : 1;
2812 unsigned B0D76 : 1;
2813 unsigned B0D77 : 1;
2814 } __B0D7bits_t;
2816 extern __at(0x0E2D) volatile __B0D7bits_t B0D7bits;
2818 #define _B0D70 0x01
2819 #define _B0D71 0x02
2820 #define _B0D72 0x04
2821 #define _B0D73 0x08
2822 #define _B0D74 0x10
2823 #define _B0D75 0x20
2824 #define _B0D76 0x40
2825 #define _B0D77 0x80
2827 //==============================================================================
2830 //==============================================================================
2831 // CANSTAT_RO9 Bits
2833 extern __at(0x0E2E) __sfr CANSTAT_RO9;
2835 typedef union
2837 struct
2839 unsigned EICODE0 : 1;
2840 unsigned EICODE1_ICODE0 : 1;
2841 unsigned EICODE2_ICODE1 : 1;
2842 unsigned EICODE3_ICODE2 : 1;
2843 unsigned EICODE4 : 1;
2844 unsigned OPMODE0 : 1;
2845 unsigned OPMODE1 : 1;
2846 unsigned OPMODE2 : 1;
2849 struct
2851 unsigned : 5;
2852 unsigned OPMODE : 3;
2854 } __CANSTAT_RO9bits_t;
2856 extern __at(0x0E2E) volatile __CANSTAT_RO9bits_t CANSTAT_RO9bits;
2858 #define _CANSTAT_RO9_EICODE0 0x01
2859 #define _CANSTAT_RO9_EICODE1_ICODE0 0x02
2860 #define _CANSTAT_RO9_EICODE2_ICODE1 0x04
2861 #define _CANSTAT_RO9_EICODE3_ICODE2 0x08
2862 #define _CANSTAT_RO9_EICODE4 0x10
2863 #define _CANSTAT_RO9_OPMODE0 0x20
2864 #define _CANSTAT_RO9_OPMODE1 0x40
2865 #define _CANSTAT_RO9_OPMODE2 0x80
2867 //==============================================================================
2870 //==============================================================================
2871 // CANCON_RO9 Bits
2873 extern __at(0x0E2F) __sfr CANCON_RO9;
2875 typedef union
2877 struct
2879 unsigned FP0 : 1;
2880 unsigned WIN0_FP1 : 1;
2881 unsigned WIN1_FP2 : 1;
2882 unsigned WIN2_FP3 : 1;
2883 unsigned ABAT : 1;
2884 unsigned REQOP0 : 1;
2885 unsigned REQOP1 : 1;
2886 unsigned REQOP2 : 1;
2889 struct
2891 unsigned : 5;
2892 unsigned REQOP : 3;
2894 } __CANCON_RO9bits_t;
2896 extern __at(0x0E2F) volatile __CANCON_RO9bits_t CANCON_RO9bits;
2898 #define _CANCON_RO9_FP0 0x01
2899 #define _CANCON_RO9_WIN0_FP1 0x02
2900 #define _CANCON_RO9_WIN1_FP2 0x04
2901 #define _CANCON_RO9_WIN2_FP3 0x08
2902 #define _CANCON_RO9_ABAT 0x10
2903 #define _CANCON_RO9_REQOP0 0x20
2904 #define _CANCON_RO9_REQOP1 0x40
2905 #define _CANCON_RO9_REQOP2 0x80
2907 //==============================================================================
2910 //==============================================================================
2911 // B1CON Bits
2913 extern __at(0x0E30) __sfr B1CON;
2915 typedef union
2917 struct
2919 unsigned FILHIT0_TXPRI0 : 1;
2920 unsigned FILHIT1_TXPRI1 : 1;
2921 unsigned FILHIT2_RTREN : 1;
2922 unsigned FILHIT3_TXREQ : 1;
2923 unsigned FILHIT4_TXERR : 1;
2924 unsigned RTRRO_TXLARB : 1;
2925 unsigned RXM1_TXABT : 1;
2926 unsigned RXFUL_TXBIF : 1;
2929 struct
2931 unsigned FILHIT0 : 1;
2932 unsigned FILHIT1 : 1;
2933 unsigned FILHIT2 : 1;
2934 unsigned FILHIT3 : 1;
2935 unsigned FILHIT4 : 1;
2936 unsigned RTRRO : 1;
2937 unsigned RXM1 : 1;
2938 unsigned RXFUL : 1;
2941 struct
2943 unsigned TXPRI0 : 1;
2944 unsigned TXPRI1 : 1;
2945 unsigned RTREN : 1;
2946 unsigned TXREQ : 1;
2947 unsigned TXERR : 1;
2948 unsigned TXLARB : 1;
2949 unsigned TXABT : 1;
2950 unsigned TXBIF : 1;
2953 struct
2955 unsigned TXPRI : 2;
2956 unsigned : 6;
2959 struct
2961 unsigned FILHIT : 5;
2962 unsigned : 3;
2964 } __B1CONbits_t;
2966 extern __at(0x0E30) volatile __B1CONbits_t B1CONbits;
2968 #define _B1CON_FILHIT0_TXPRI0 0x01
2969 #define _B1CON_FILHIT0 0x01
2970 #define _B1CON_TXPRI0 0x01
2971 #define _B1CON_FILHIT1_TXPRI1 0x02
2972 #define _B1CON_FILHIT1 0x02
2973 #define _B1CON_TXPRI1 0x02
2974 #define _B1CON_FILHIT2_RTREN 0x04
2975 #define _B1CON_FILHIT2 0x04
2976 #define _B1CON_RTREN 0x04
2977 #define _B1CON_FILHIT3_TXREQ 0x08
2978 #define _B1CON_FILHIT3 0x08
2979 #define _B1CON_TXREQ 0x08
2980 #define _B1CON_FILHIT4_TXERR 0x10
2981 #define _B1CON_FILHIT4 0x10
2982 #define _B1CON_TXERR 0x10
2983 #define _B1CON_RTRRO_TXLARB 0x20
2984 #define _B1CON_RTRRO 0x20
2985 #define _B1CON_TXLARB 0x20
2986 #define _B1CON_RXM1_TXABT 0x40
2987 #define _B1CON_RXM1 0x40
2988 #define _B1CON_TXABT 0x40
2989 #define _B1CON_RXFUL_TXBIF 0x80
2990 #define _B1CON_RXFUL 0x80
2991 #define _B1CON_TXBIF 0x80
2993 //==============================================================================
2996 //==============================================================================
2997 // B1SIDH Bits
2999 extern __at(0x0E31) __sfr B1SIDH;
3001 typedef struct
3003 unsigned SID3 : 1;
3004 unsigned SID4 : 1;
3005 unsigned SID5 : 1;
3006 unsigned SID6 : 1;
3007 unsigned SID7 : 1;
3008 unsigned SID8 : 1;
3009 unsigned SID9 : 1;
3010 unsigned SID10 : 1;
3011 } __B1SIDHbits_t;
3013 extern __at(0x0E31) volatile __B1SIDHbits_t B1SIDHbits;
3015 #define _B1SIDH_SID3 0x01
3016 #define _B1SIDH_SID4 0x02
3017 #define _B1SIDH_SID5 0x04
3018 #define _B1SIDH_SID6 0x08
3019 #define _B1SIDH_SID7 0x10
3020 #define _B1SIDH_SID8 0x20
3021 #define _B1SIDH_SID9 0x40
3022 #define _B1SIDH_SID10 0x80
3024 //==============================================================================
3027 //==============================================================================
3028 // B1SIDL Bits
3030 extern __at(0x0E32) __sfr B1SIDL;
3032 typedef union
3034 struct
3036 unsigned EID16 : 1;
3037 unsigned EID17 : 1;
3038 unsigned : 1;
3039 unsigned EXID : 1;
3040 unsigned SRR : 1;
3041 unsigned SID0 : 1;
3042 unsigned SID1 : 1;
3043 unsigned SID2 : 1;
3046 struct
3048 unsigned : 1;
3049 unsigned : 1;
3050 unsigned : 1;
3051 unsigned EXIDE : 1;
3052 unsigned : 1;
3053 unsigned : 1;
3054 unsigned : 1;
3055 unsigned : 1;
3058 struct
3060 unsigned : 5;
3061 unsigned SID : 3;
3063 } __B1SIDLbits_t;
3065 extern __at(0x0E32) volatile __B1SIDLbits_t B1SIDLbits;
3067 #define _B1SIDL_EID16 0x01
3068 #define _B1SIDL_EID17 0x02
3069 #define _B1SIDL_EXID 0x08
3070 #define _B1SIDL_EXIDE 0x08
3071 #define _B1SIDL_SRR 0x10
3072 #define _B1SIDL_SID0 0x20
3073 #define _B1SIDL_SID1 0x40
3074 #define _B1SIDL_SID2 0x80
3076 //==============================================================================
3079 //==============================================================================
3080 // B1EIDH Bits
3082 extern __at(0x0E33) __sfr B1EIDH;
3084 typedef struct
3086 unsigned EID8 : 1;
3087 unsigned EID9 : 1;
3088 unsigned EID10 : 1;
3089 unsigned EID11 : 1;
3090 unsigned EID12 : 1;
3091 unsigned EID13 : 1;
3092 unsigned EID14 : 1;
3093 unsigned EID15 : 1;
3094 } __B1EIDHbits_t;
3096 extern __at(0x0E33) volatile __B1EIDHbits_t B1EIDHbits;
3098 #define _B1EIDH_EID8 0x01
3099 #define _B1EIDH_EID9 0x02
3100 #define _B1EIDH_EID10 0x04
3101 #define _B1EIDH_EID11 0x08
3102 #define _B1EIDH_EID12 0x10
3103 #define _B1EIDH_EID13 0x20
3104 #define _B1EIDH_EID14 0x40
3105 #define _B1EIDH_EID15 0x80
3107 //==============================================================================
3110 //==============================================================================
3111 // B1EIDL Bits
3113 extern __at(0x0E34) __sfr B1EIDL;
3115 typedef struct
3117 unsigned EID0 : 1;
3118 unsigned EID1 : 1;
3119 unsigned EID2 : 1;
3120 unsigned EID3 : 1;
3121 unsigned EID4 : 1;
3122 unsigned EID5 : 1;
3123 unsigned EID6 : 1;
3124 unsigned EID7 : 1;
3125 } __B1EIDLbits_t;
3127 extern __at(0x0E34) volatile __B1EIDLbits_t B1EIDLbits;
3129 #define _B1EIDL_EID0 0x01
3130 #define _B1EIDL_EID1 0x02
3131 #define _B1EIDL_EID2 0x04
3132 #define _B1EIDL_EID3 0x08
3133 #define _B1EIDL_EID4 0x10
3134 #define _B1EIDL_EID5 0x20
3135 #define _B1EIDL_EID6 0x40
3136 #define _B1EIDL_EID7 0x80
3138 //==============================================================================
3141 //==============================================================================
3142 // B1DLC Bits
3144 extern __at(0x0E35) __sfr B1DLC;
3146 typedef union
3148 struct
3150 unsigned DLC0 : 1;
3151 unsigned DLC1 : 1;
3152 unsigned DLC2 : 1;
3153 unsigned DLC3 : 1;
3154 unsigned RB0 : 1;
3155 unsigned RB1 : 1;
3156 unsigned RXRTR : 1;
3157 unsigned : 1;
3160 struct
3162 unsigned : 1;
3163 unsigned : 1;
3164 unsigned : 1;
3165 unsigned : 1;
3166 unsigned RESRB0 : 1;
3167 unsigned RESRB1 : 1;
3168 unsigned TXRTR : 1;
3169 unsigned : 1;
3172 struct
3174 unsigned DLC : 4;
3175 unsigned : 4;
3178 struct
3180 unsigned : 4;
3181 unsigned RESRB : 2;
3182 unsigned : 2;
3185 struct
3187 unsigned : 4;
3188 unsigned RB : 2;
3189 unsigned : 2;
3191 } __B1DLCbits_t;
3193 extern __at(0x0E35) volatile __B1DLCbits_t B1DLCbits;
3195 #define _B1DLC_DLC0 0x01
3196 #define _B1DLC_DLC1 0x02
3197 #define _B1DLC_DLC2 0x04
3198 #define _B1DLC_DLC3 0x08
3199 #define _B1DLC_RB0 0x10
3200 #define _B1DLC_RESRB0 0x10
3201 #define _B1DLC_RB1 0x20
3202 #define _B1DLC_RESRB1 0x20
3203 #define _B1DLC_RXRTR 0x40
3204 #define _B1DLC_TXRTR 0x40
3206 //==============================================================================
3209 //==============================================================================
3210 // B1D0 Bits
3212 extern __at(0x0E36) __sfr B1D0;
3214 typedef struct
3216 unsigned B1D00 : 1;
3217 unsigned B1D01 : 1;
3218 unsigned B1D02 : 1;
3219 unsigned B1D03 : 1;
3220 unsigned B1D04 : 1;
3221 unsigned B1D05 : 1;
3222 unsigned B1D06 : 1;
3223 unsigned B1D07 : 1;
3224 } __B1D0bits_t;
3226 extern __at(0x0E36) volatile __B1D0bits_t B1D0bits;
3228 #define _B1D00 0x01
3229 #define _B1D01 0x02
3230 #define _B1D02 0x04
3231 #define _B1D03 0x08
3232 #define _B1D04 0x10
3233 #define _B1D05 0x20
3234 #define _B1D06 0x40
3235 #define _B1D07 0x80
3237 //==============================================================================
3240 //==============================================================================
3241 // B1D1 Bits
3243 extern __at(0x0E37) __sfr B1D1;
3245 typedef struct
3247 unsigned B1D10 : 1;
3248 unsigned B1D11 : 1;
3249 unsigned B1D12 : 1;
3250 unsigned B1D13 : 1;
3251 unsigned B1D14 : 1;
3252 unsigned B1D15 : 1;
3253 unsigned B1D16 : 1;
3254 unsigned B1D17 : 1;
3255 } __B1D1bits_t;
3257 extern __at(0x0E37) volatile __B1D1bits_t B1D1bits;
3259 #define _B1D10 0x01
3260 #define _B1D11 0x02
3261 #define _B1D12 0x04
3262 #define _B1D13 0x08
3263 #define _B1D14 0x10
3264 #define _B1D15 0x20
3265 #define _B1D16 0x40
3266 #define _B1D17 0x80
3268 //==============================================================================
3271 //==============================================================================
3272 // B1D2 Bits
3274 extern __at(0x0E38) __sfr B1D2;
3276 typedef struct
3278 unsigned B1D20 : 1;
3279 unsigned B1D21 : 1;
3280 unsigned B1D22 : 1;
3281 unsigned B1D23 : 1;
3282 unsigned B1D24 : 1;
3283 unsigned B1D25 : 1;
3284 unsigned B1D26 : 1;
3285 unsigned B1D27 : 1;
3286 } __B1D2bits_t;
3288 extern __at(0x0E38) volatile __B1D2bits_t B1D2bits;
3290 #define _B1D20 0x01
3291 #define _B1D21 0x02
3292 #define _B1D22 0x04
3293 #define _B1D23 0x08
3294 #define _B1D24 0x10
3295 #define _B1D25 0x20
3296 #define _B1D26 0x40
3297 #define _B1D27 0x80
3299 //==============================================================================
3302 //==============================================================================
3303 // B1D3 Bits
3305 extern __at(0x0E39) __sfr B1D3;
3307 typedef struct
3309 unsigned B1D30 : 1;
3310 unsigned B1D31 : 1;
3311 unsigned B1D32 : 1;
3312 unsigned B1D33 : 1;
3313 unsigned B1D34 : 1;
3314 unsigned B1D35 : 1;
3315 unsigned B1D36 : 1;
3316 unsigned B1D37 : 1;
3317 } __B1D3bits_t;
3319 extern __at(0x0E39) volatile __B1D3bits_t B1D3bits;
3321 #define _B1D30 0x01
3322 #define _B1D31 0x02
3323 #define _B1D32 0x04
3324 #define _B1D33 0x08
3325 #define _B1D34 0x10
3326 #define _B1D35 0x20
3327 #define _B1D36 0x40
3328 #define _B1D37 0x80
3330 //==============================================================================
3333 //==============================================================================
3334 // B1D4 Bits
3336 extern __at(0x0E3A) __sfr B1D4;
3338 typedef struct
3340 unsigned B1D40 : 1;
3341 unsigned B1D41 : 1;
3342 unsigned B1D42 : 1;
3343 unsigned B1D43 : 1;
3344 unsigned B1D44 : 1;
3345 unsigned B1D45 : 1;
3346 unsigned B1D46 : 1;
3347 unsigned B1D47 : 1;
3348 } __B1D4bits_t;
3350 extern __at(0x0E3A) volatile __B1D4bits_t B1D4bits;
3352 #define _B1D40 0x01
3353 #define _B1D41 0x02
3354 #define _B1D42 0x04
3355 #define _B1D43 0x08
3356 #define _B1D44 0x10
3357 #define _B1D45 0x20
3358 #define _B1D46 0x40
3359 #define _B1D47 0x80
3361 //==============================================================================
3364 //==============================================================================
3365 // B1D5 Bits
3367 extern __at(0x0E3B) __sfr B1D5;
3369 typedef struct
3371 unsigned B1D50 : 1;
3372 unsigned B1D51 : 1;
3373 unsigned B1D52 : 1;
3374 unsigned B1D53 : 1;
3375 unsigned B1D54 : 1;
3376 unsigned B1D55 : 1;
3377 unsigned B1D56 : 1;
3378 unsigned B1D57 : 1;
3379 } __B1D5bits_t;
3381 extern __at(0x0E3B) volatile __B1D5bits_t B1D5bits;
3383 #define _B1D50 0x01
3384 #define _B1D51 0x02
3385 #define _B1D52 0x04
3386 #define _B1D53 0x08
3387 #define _B1D54 0x10
3388 #define _B1D55 0x20
3389 #define _B1D56 0x40
3390 #define _B1D57 0x80
3392 //==============================================================================
3395 //==============================================================================
3396 // B1D6 Bits
3398 extern __at(0x0E3C) __sfr B1D6;
3400 typedef struct
3402 unsigned B1D60 : 1;
3403 unsigned B1D61 : 1;
3404 unsigned B1D62 : 1;
3405 unsigned B1D63 : 1;
3406 unsigned B1D64 : 1;
3407 unsigned B1D65 : 1;
3408 unsigned B1D66 : 1;
3409 unsigned B1D67 : 1;
3410 } __B1D6bits_t;
3412 extern __at(0x0E3C) volatile __B1D6bits_t B1D6bits;
3414 #define _B1D60 0x01
3415 #define _B1D61 0x02
3416 #define _B1D62 0x04
3417 #define _B1D63 0x08
3418 #define _B1D64 0x10
3419 #define _B1D65 0x20
3420 #define _B1D66 0x40
3421 #define _B1D67 0x80
3423 //==============================================================================
3426 //==============================================================================
3427 // B1D7 Bits
3429 extern __at(0x0E3D) __sfr B1D7;
3431 typedef struct
3433 unsigned B1D70 : 1;
3434 unsigned B1D71 : 1;
3435 unsigned B1D72 : 1;
3436 unsigned B1D73 : 1;
3437 unsigned B1D74 : 1;
3438 unsigned B1D75 : 1;
3439 unsigned B1D76 : 1;
3440 unsigned B1D77 : 1;
3441 } __B1D7bits_t;
3443 extern __at(0x0E3D) volatile __B1D7bits_t B1D7bits;
3445 #define _B1D70 0x01
3446 #define _B1D71 0x02
3447 #define _B1D72 0x04
3448 #define _B1D73 0x08
3449 #define _B1D74 0x10
3450 #define _B1D75 0x20
3451 #define _B1D76 0x40
3452 #define _B1D77 0x80
3454 //==============================================================================
3457 //==============================================================================
3458 // CANSTAT_RO8 Bits
3460 extern __at(0x0E3E) __sfr CANSTAT_RO8;
3462 typedef union
3464 struct
3466 unsigned EICODE0 : 1;
3467 unsigned EICODE1_ICODE0 : 1;
3468 unsigned EICODE2_ICODE1 : 1;
3469 unsigned EICODE3_ICODE2 : 1;
3470 unsigned EICODE4 : 1;
3471 unsigned OPMODE0 : 1;
3472 unsigned OPMODE1 : 1;
3473 unsigned OPMODE2 : 1;
3476 struct
3478 unsigned : 5;
3479 unsigned OPMODE : 3;
3481 } __CANSTAT_RO8bits_t;
3483 extern __at(0x0E3E) volatile __CANSTAT_RO8bits_t CANSTAT_RO8bits;
3485 #define _CANSTAT_RO8_EICODE0 0x01
3486 #define _CANSTAT_RO8_EICODE1_ICODE0 0x02
3487 #define _CANSTAT_RO8_EICODE2_ICODE1 0x04
3488 #define _CANSTAT_RO8_EICODE3_ICODE2 0x08
3489 #define _CANSTAT_RO8_EICODE4 0x10
3490 #define _CANSTAT_RO8_OPMODE0 0x20
3491 #define _CANSTAT_RO8_OPMODE1 0x40
3492 #define _CANSTAT_RO8_OPMODE2 0x80
3494 //==============================================================================
3497 //==============================================================================
3498 // CANCON_RO8 Bits
3500 extern __at(0x0E3F) __sfr CANCON_RO8;
3502 typedef union
3504 struct
3506 unsigned FP0 : 1;
3507 unsigned WIN0_FP1 : 1;
3508 unsigned WIN1_FP2 : 1;
3509 unsigned WIN2_FP3 : 1;
3510 unsigned ABAT : 1;
3511 unsigned REQOP0 : 1;
3512 unsigned REQOP1 : 1;
3513 unsigned REQOP2 : 1;
3516 struct
3518 unsigned : 5;
3519 unsigned REQOP : 3;
3521 } __CANCON_RO8bits_t;
3523 extern __at(0x0E3F) volatile __CANCON_RO8bits_t CANCON_RO8bits;
3525 #define _CANCON_RO8_FP0 0x01
3526 #define _CANCON_RO8_WIN0_FP1 0x02
3527 #define _CANCON_RO8_WIN1_FP2 0x04
3528 #define _CANCON_RO8_WIN2_FP3 0x08
3529 #define _CANCON_RO8_ABAT 0x10
3530 #define _CANCON_RO8_REQOP0 0x20
3531 #define _CANCON_RO8_REQOP1 0x40
3532 #define _CANCON_RO8_REQOP2 0x80
3534 //==============================================================================
3537 //==============================================================================
3538 // B2CON Bits
3540 extern __at(0x0E40) __sfr B2CON;
3542 typedef union
3544 struct
3546 unsigned FILHIT0_TXPRI0 : 1;
3547 unsigned FILHIT1_TXPRI1 : 1;
3548 unsigned FILHIT2_RTREN : 1;
3549 unsigned FILHIT3_TXREQ : 1;
3550 unsigned FILHIT4_TXERR : 1;
3551 unsigned RTRRO_TXLARB : 1;
3552 unsigned RXM1_TXABT : 1;
3553 unsigned RXFUL_TXBIF : 1;
3556 struct
3558 unsigned FILHIT0 : 1;
3559 unsigned FILHIT1 : 1;
3560 unsigned FILHIT2 : 1;
3561 unsigned FILHIT3 : 1;
3562 unsigned FILHIT4 : 1;
3563 unsigned RTRRO : 1;
3564 unsigned RXM1 : 1;
3565 unsigned RXFUL : 1;
3568 struct
3570 unsigned TXPRI0 : 1;
3571 unsigned TXPRI1 : 1;
3572 unsigned RTREN : 1;
3573 unsigned TXREQ : 1;
3574 unsigned TXERR : 1;
3575 unsigned TXLARB : 1;
3576 unsigned TXABT : 1;
3577 unsigned TXBIF : 1;
3580 struct
3582 unsigned FILHIT : 5;
3583 unsigned : 3;
3586 struct
3588 unsigned TXPRI : 2;
3589 unsigned : 6;
3591 } __B2CONbits_t;
3593 extern __at(0x0E40) volatile __B2CONbits_t B2CONbits;
3595 #define _B2CON_FILHIT0_TXPRI0 0x01
3596 #define _B2CON_FILHIT0 0x01
3597 #define _B2CON_TXPRI0 0x01
3598 #define _B2CON_FILHIT1_TXPRI1 0x02
3599 #define _B2CON_FILHIT1 0x02
3600 #define _B2CON_TXPRI1 0x02
3601 #define _B2CON_FILHIT2_RTREN 0x04
3602 #define _B2CON_FILHIT2 0x04
3603 #define _B2CON_RTREN 0x04
3604 #define _B2CON_FILHIT3_TXREQ 0x08
3605 #define _B2CON_FILHIT3 0x08
3606 #define _B2CON_TXREQ 0x08
3607 #define _B2CON_FILHIT4_TXERR 0x10
3608 #define _B2CON_FILHIT4 0x10
3609 #define _B2CON_TXERR 0x10
3610 #define _B2CON_RTRRO_TXLARB 0x20
3611 #define _B2CON_RTRRO 0x20
3612 #define _B2CON_TXLARB 0x20
3613 #define _B2CON_RXM1_TXABT 0x40
3614 #define _B2CON_RXM1 0x40
3615 #define _B2CON_TXABT 0x40
3616 #define _B2CON_RXFUL_TXBIF 0x80
3617 #define _B2CON_RXFUL 0x80
3618 #define _B2CON_TXBIF 0x80
3620 //==============================================================================
3623 //==============================================================================
3624 // B2SIDH Bits
3626 extern __at(0x0E41) __sfr B2SIDH;
3628 typedef struct
3630 unsigned SID3 : 1;
3631 unsigned SID4 : 1;
3632 unsigned SID5 : 1;
3633 unsigned SID6 : 1;
3634 unsigned SID7 : 1;
3635 unsigned SID8 : 1;
3636 unsigned SID9 : 1;
3637 unsigned SID10 : 1;
3638 } __B2SIDHbits_t;
3640 extern __at(0x0E41) volatile __B2SIDHbits_t B2SIDHbits;
3642 #define _B2SIDH_SID3 0x01
3643 #define _B2SIDH_SID4 0x02
3644 #define _B2SIDH_SID5 0x04
3645 #define _B2SIDH_SID6 0x08
3646 #define _B2SIDH_SID7 0x10
3647 #define _B2SIDH_SID8 0x20
3648 #define _B2SIDH_SID9 0x40
3649 #define _B2SIDH_SID10 0x80
3651 //==============================================================================
3654 //==============================================================================
3655 // B2SIDL Bits
3657 extern __at(0x0E42) __sfr B2SIDL;
3659 typedef union
3661 struct
3663 unsigned EID16 : 1;
3664 unsigned EID17 : 1;
3665 unsigned : 1;
3666 unsigned EXID : 1;
3667 unsigned SRR : 1;
3668 unsigned SID0 : 1;
3669 unsigned SID1 : 1;
3670 unsigned SID2 : 1;
3673 struct
3675 unsigned : 1;
3676 unsigned : 1;
3677 unsigned : 1;
3678 unsigned EXIDE : 1;
3679 unsigned : 1;
3680 unsigned : 1;
3681 unsigned : 1;
3682 unsigned : 1;
3685 struct
3687 unsigned : 5;
3688 unsigned SID : 3;
3690 } __B2SIDLbits_t;
3692 extern __at(0x0E42) volatile __B2SIDLbits_t B2SIDLbits;
3694 #define _B2SIDL_EID16 0x01
3695 #define _B2SIDL_EID17 0x02
3696 #define _B2SIDL_EXID 0x08
3697 #define _B2SIDL_EXIDE 0x08
3698 #define _B2SIDL_SRR 0x10
3699 #define _B2SIDL_SID0 0x20
3700 #define _B2SIDL_SID1 0x40
3701 #define _B2SIDL_SID2 0x80
3703 //==============================================================================
3706 //==============================================================================
3707 // B2EIDH Bits
3709 extern __at(0x0E43) __sfr B2EIDH;
3711 typedef struct
3713 unsigned EID8 : 1;
3714 unsigned EID9 : 1;
3715 unsigned EID10 : 1;
3716 unsigned EID11 : 1;
3717 unsigned EID12 : 1;
3718 unsigned EID13 : 1;
3719 unsigned EID14 : 1;
3720 unsigned EID15 : 1;
3721 } __B2EIDHbits_t;
3723 extern __at(0x0E43) volatile __B2EIDHbits_t B2EIDHbits;
3725 #define _B2EIDH_EID8 0x01
3726 #define _B2EIDH_EID9 0x02
3727 #define _B2EIDH_EID10 0x04
3728 #define _B2EIDH_EID11 0x08
3729 #define _B2EIDH_EID12 0x10
3730 #define _B2EIDH_EID13 0x20
3731 #define _B2EIDH_EID14 0x40
3732 #define _B2EIDH_EID15 0x80
3734 //==============================================================================
3737 //==============================================================================
3738 // B2EIDL Bits
3740 extern __at(0x0E44) __sfr B2EIDL;
3742 typedef struct
3744 unsigned EID0 : 1;
3745 unsigned EID1 : 1;
3746 unsigned EID2 : 1;
3747 unsigned EID3 : 1;
3748 unsigned EID4 : 1;
3749 unsigned EID5 : 1;
3750 unsigned EID6 : 1;
3751 unsigned EID7 : 1;
3752 } __B2EIDLbits_t;
3754 extern __at(0x0E44) volatile __B2EIDLbits_t B2EIDLbits;
3756 #define _B2EIDL_EID0 0x01
3757 #define _B2EIDL_EID1 0x02
3758 #define _B2EIDL_EID2 0x04
3759 #define _B2EIDL_EID3 0x08
3760 #define _B2EIDL_EID4 0x10
3761 #define _B2EIDL_EID5 0x20
3762 #define _B2EIDL_EID6 0x40
3763 #define _B2EIDL_EID7 0x80
3765 //==============================================================================
3768 //==============================================================================
3769 // B2DLC Bits
3771 extern __at(0x0E45) __sfr B2DLC;
3773 typedef union
3775 struct
3777 unsigned DLC0 : 1;
3778 unsigned DLC1 : 1;
3779 unsigned DLC2 : 1;
3780 unsigned DLC3 : 1;
3781 unsigned RB0 : 1;
3782 unsigned RB1 : 1;
3783 unsigned RXRTR : 1;
3784 unsigned : 1;
3787 struct
3789 unsigned : 1;
3790 unsigned : 1;
3791 unsigned : 1;
3792 unsigned : 1;
3793 unsigned RESRB0 : 1;
3794 unsigned RESRB1 : 1;
3795 unsigned TXRTR : 1;
3796 unsigned : 1;
3799 struct
3801 unsigned DLC : 4;
3802 unsigned : 4;
3805 struct
3807 unsigned : 4;
3808 unsigned RESRB : 2;
3809 unsigned : 2;
3812 struct
3814 unsigned : 4;
3815 unsigned RB : 2;
3816 unsigned : 2;
3818 } __B2DLCbits_t;
3820 extern __at(0x0E45) volatile __B2DLCbits_t B2DLCbits;
3822 #define _B2DLC_DLC0 0x01
3823 #define _B2DLC_DLC1 0x02
3824 #define _B2DLC_DLC2 0x04
3825 #define _B2DLC_DLC3 0x08
3826 #define _B2DLC_RB0 0x10
3827 #define _B2DLC_RESRB0 0x10
3828 #define _B2DLC_RB1 0x20
3829 #define _B2DLC_RESRB1 0x20
3830 #define _B2DLC_RXRTR 0x40
3831 #define _B2DLC_TXRTR 0x40
3833 //==============================================================================
3836 //==============================================================================
3837 // B2D0 Bits
3839 extern __at(0x0E46) __sfr B2D0;
3841 typedef struct
3843 unsigned B2D00 : 1;
3844 unsigned B2D01 : 1;
3845 unsigned B2D02 : 1;
3846 unsigned B2D03 : 1;
3847 unsigned B2D04 : 1;
3848 unsigned B2D05 : 1;
3849 unsigned B2D06 : 1;
3850 unsigned B2D07 : 1;
3851 } __B2D0bits_t;
3853 extern __at(0x0E46) volatile __B2D0bits_t B2D0bits;
3855 #define _B2D00 0x01
3856 #define _B2D01 0x02
3857 #define _B2D02 0x04
3858 #define _B2D03 0x08
3859 #define _B2D04 0x10
3860 #define _B2D05 0x20
3861 #define _B2D06 0x40
3862 #define _B2D07 0x80
3864 //==============================================================================
3867 //==============================================================================
3868 // B2D1 Bits
3870 extern __at(0x0E47) __sfr B2D1;
3872 typedef struct
3874 unsigned B2D10 : 1;
3875 unsigned B2D11 : 1;
3876 unsigned B2D12 : 1;
3877 unsigned B2D13 : 1;
3878 unsigned B2D14 : 1;
3879 unsigned B2D15 : 1;
3880 unsigned B2D16 : 1;
3881 unsigned B2D17 : 1;
3882 } __B2D1bits_t;
3884 extern __at(0x0E47) volatile __B2D1bits_t B2D1bits;
3886 #define _B2D10 0x01
3887 #define _B2D11 0x02
3888 #define _B2D12 0x04
3889 #define _B2D13 0x08
3890 #define _B2D14 0x10
3891 #define _B2D15 0x20
3892 #define _B2D16 0x40
3893 #define _B2D17 0x80
3895 //==============================================================================
3898 //==============================================================================
3899 // B2D2 Bits
3901 extern __at(0x0E48) __sfr B2D2;
3903 typedef struct
3905 unsigned B2D20 : 1;
3906 unsigned B2D21 : 1;
3907 unsigned B2D22 : 1;
3908 unsigned B2D23 : 1;
3909 unsigned B2D24 : 1;
3910 unsigned B2D25 : 1;
3911 unsigned B2D26 : 1;
3912 unsigned B2D27 : 1;
3913 } __B2D2bits_t;
3915 extern __at(0x0E48) volatile __B2D2bits_t B2D2bits;
3917 #define _B2D20 0x01
3918 #define _B2D21 0x02
3919 #define _B2D22 0x04
3920 #define _B2D23 0x08
3921 #define _B2D24 0x10
3922 #define _B2D25 0x20
3923 #define _B2D26 0x40
3924 #define _B2D27 0x80
3926 //==============================================================================
3929 //==============================================================================
3930 // B2D3 Bits
3932 extern __at(0x0E49) __sfr B2D3;
3934 typedef struct
3936 unsigned B2D30 : 1;
3937 unsigned B2D31 : 1;
3938 unsigned B2D32 : 1;
3939 unsigned B2D33 : 1;
3940 unsigned B2D34 : 1;
3941 unsigned B2D35 : 1;
3942 unsigned B2D36 : 1;
3943 unsigned B2D37 : 1;
3944 } __B2D3bits_t;
3946 extern __at(0x0E49) volatile __B2D3bits_t B2D3bits;
3948 #define _B2D30 0x01
3949 #define _B2D31 0x02
3950 #define _B2D32 0x04
3951 #define _B2D33 0x08
3952 #define _B2D34 0x10
3953 #define _B2D35 0x20
3954 #define _B2D36 0x40
3955 #define _B2D37 0x80
3957 //==============================================================================
3960 //==============================================================================
3961 // B2D4 Bits
3963 extern __at(0x0E4A) __sfr B2D4;
3965 typedef struct
3967 unsigned B2D40 : 1;
3968 unsigned B2D41 : 1;
3969 unsigned B2D42 : 1;
3970 unsigned B2D43 : 1;
3971 unsigned B2D44 : 1;
3972 unsigned B2D45 : 1;
3973 unsigned B2D46 : 1;
3974 unsigned B2D47 : 1;
3975 } __B2D4bits_t;
3977 extern __at(0x0E4A) volatile __B2D4bits_t B2D4bits;
3979 #define _B2D40 0x01
3980 #define _B2D41 0x02
3981 #define _B2D42 0x04
3982 #define _B2D43 0x08
3983 #define _B2D44 0x10
3984 #define _B2D45 0x20
3985 #define _B2D46 0x40
3986 #define _B2D47 0x80
3988 //==============================================================================
3991 //==============================================================================
3992 // B2D5 Bits
3994 extern __at(0x0E4B) __sfr B2D5;
3996 typedef struct
3998 unsigned B2D50 : 1;
3999 unsigned B2D51 : 1;
4000 unsigned B2D52 : 1;
4001 unsigned B2D53 : 1;
4002 unsigned B2D54 : 1;
4003 unsigned B2D55 : 1;
4004 unsigned B2D56 : 1;
4005 unsigned B2D57 : 1;
4006 } __B2D5bits_t;
4008 extern __at(0x0E4B) volatile __B2D5bits_t B2D5bits;
4010 #define _B2D50 0x01
4011 #define _B2D51 0x02
4012 #define _B2D52 0x04
4013 #define _B2D53 0x08
4014 #define _B2D54 0x10
4015 #define _B2D55 0x20
4016 #define _B2D56 0x40
4017 #define _B2D57 0x80
4019 //==============================================================================
4022 //==============================================================================
4023 // B2D6 Bits
4025 extern __at(0x0E4C) __sfr B2D6;
4027 typedef struct
4029 unsigned B2D60 : 1;
4030 unsigned B2D61 : 1;
4031 unsigned B2D62 : 1;
4032 unsigned B2D63 : 1;
4033 unsigned B2D64 : 1;
4034 unsigned B2D65 : 1;
4035 unsigned B2D66 : 1;
4036 unsigned B2D67 : 1;
4037 } __B2D6bits_t;
4039 extern __at(0x0E4C) volatile __B2D6bits_t B2D6bits;
4041 #define _B2D60 0x01
4042 #define _B2D61 0x02
4043 #define _B2D62 0x04
4044 #define _B2D63 0x08
4045 #define _B2D64 0x10
4046 #define _B2D65 0x20
4047 #define _B2D66 0x40
4048 #define _B2D67 0x80
4050 //==============================================================================
4053 //==============================================================================
4054 // B2D7 Bits
4056 extern __at(0x0E4D) __sfr B2D7;
4058 typedef struct
4060 unsigned B2D70 : 1;
4061 unsigned B2D71 : 1;
4062 unsigned B2D72 : 1;
4063 unsigned B2D73 : 1;
4064 unsigned B2D74 : 1;
4065 unsigned B2D75 : 1;
4066 unsigned B2D76 : 1;
4067 unsigned B2D77 : 1;
4068 } __B2D7bits_t;
4070 extern __at(0x0E4D) volatile __B2D7bits_t B2D7bits;
4072 #define _B2D70 0x01
4073 #define _B2D71 0x02
4074 #define _B2D72 0x04
4075 #define _B2D73 0x08
4076 #define _B2D74 0x10
4077 #define _B2D75 0x20
4078 #define _B2D76 0x40
4079 #define _B2D77 0x80
4081 //==============================================================================
4084 //==============================================================================
4085 // CANSTAT_RO7 Bits
4087 extern __at(0x0E4E) __sfr CANSTAT_RO7;
4089 typedef union
4091 struct
4093 unsigned EICODE0 : 1;
4094 unsigned EICODE1_ICODE0 : 1;
4095 unsigned EICODE2_ICODE1 : 1;
4096 unsigned EICODE3_ICODE2 : 1;
4097 unsigned EICODE4 : 1;
4098 unsigned OPMODE0 : 1;
4099 unsigned OPMODE1 : 1;
4100 unsigned OPMODE2 : 1;
4103 struct
4105 unsigned : 5;
4106 unsigned OPMODE : 3;
4108 } __CANSTAT_RO7bits_t;
4110 extern __at(0x0E4E) volatile __CANSTAT_RO7bits_t CANSTAT_RO7bits;
4112 #define _CANSTAT_RO7_EICODE0 0x01
4113 #define _CANSTAT_RO7_EICODE1_ICODE0 0x02
4114 #define _CANSTAT_RO7_EICODE2_ICODE1 0x04
4115 #define _CANSTAT_RO7_EICODE3_ICODE2 0x08
4116 #define _CANSTAT_RO7_EICODE4 0x10
4117 #define _CANSTAT_RO7_OPMODE0 0x20
4118 #define _CANSTAT_RO7_OPMODE1 0x40
4119 #define _CANSTAT_RO7_OPMODE2 0x80
4121 //==============================================================================
4124 //==============================================================================
4125 // CANCON_RO7 Bits
4127 extern __at(0x0E4F) __sfr CANCON_RO7;
4129 typedef union
4131 struct
4133 unsigned FP0 : 1;
4134 unsigned WIN0_FP1 : 1;
4135 unsigned WIN1_FP2 : 1;
4136 unsigned WIN2_FP3 : 1;
4137 unsigned ABAT : 1;
4138 unsigned REQOP0 : 1;
4139 unsigned REQOP1 : 1;
4140 unsigned REQOP2 : 1;
4143 struct
4145 unsigned : 5;
4146 unsigned REQOP : 3;
4148 } __CANCON_RO7bits_t;
4150 extern __at(0x0E4F) volatile __CANCON_RO7bits_t CANCON_RO7bits;
4152 #define _CANCON_RO7_FP0 0x01
4153 #define _CANCON_RO7_WIN0_FP1 0x02
4154 #define _CANCON_RO7_WIN1_FP2 0x04
4155 #define _CANCON_RO7_WIN2_FP3 0x08
4156 #define _CANCON_RO7_ABAT 0x10
4157 #define _CANCON_RO7_REQOP0 0x20
4158 #define _CANCON_RO7_REQOP1 0x40
4159 #define _CANCON_RO7_REQOP2 0x80
4161 //==============================================================================
4164 //==============================================================================
4165 // B3CON Bits
4167 extern __at(0x0E50) __sfr B3CON;
4169 typedef union
4171 struct
4173 unsigned FILHIT0_TXPRI0 : 1;
4174 unsigned FILHIT1_TXPRI1 : 1;
4175 unsigned FILHIT2_RTREN : 1;
4176 unsigned FILHIT3_TXREQ : 1;
4177 unsigned FILHIT4_TXERR : 1;
4178 unsigned RTRRO_TXLARB : 1;
4179 unsigned RXM1_TXABT : 1;
4180 unsigned RXFUL_TXBIF : 1;
4183 struct
4185 unsigned FILHIT0 : 1;
4186 unsigned FILHIT1 : 1;
4187 unsigned FILHIT2 : 1;
4188 unsigned FILHIT3 : 1;
4189 unsigned FILHIT4 : 1;
4190 unsigned RTRRO : 1;
4191 unsigned RXM1 : 1;
4192 unsigned RXFUL : 1;
4195 struct
4197 unsigned TXPRI0 : 1;
4198 unsigned TXPRI1 : 1;
4199 unsigned RTREN : 1;
4200 unsigned TXREQ : 1;
4201 unsigned TXERR : 1;
4202 unsigned TXLARB : 1;
4203 unsigned TXABT : 1;
4204 unsigned TXBIF : 1;
4207 struct
4209 unsigned TXPRI : 2;
4210 unsigned : 6;
4213 struct
4215 unsigned FILHIT : 5;
4216 unsigned : 3;
4218 } __B3CONbits_t;
4220 extern __at(0x0E50) volatile __B3CONbits_t B3CONbits;
4222 #define _B3CON_FILHIT0_TXPRI0 0x01
4223 #define _B3CON_FILHIT0 0x01
4224 #define _B3CON_TXPRI0 0x01
4225 #define _B3CON_FILHIT1_TXPRI1 0x02
4226 #define _B3CON_FILHIT1 0x02
4227 #define _B3CON_TXPRI1 0x02
4228 #define _B3CON_FILHIT2_RTREN 0x04
4229 #define _B3CON_FILHIT2 0x04
4230 #define _B3CON_RTREN 0x04
4231 #define _B3CON_FILHIT3_TXREQ 0x08
4232 #define _B3CON_FILHIT3 0x08
4233 #define _B3CON_TXREQ 0x08
4234 #define _B3CON_FILHIT4_TXERR 0x10
4235 #define _B3CON_FILHIT4 0x10
4236 #define _B3CON_TXERR 0x10
4237 #define _B3CON_RTRRO_TXLARB 0x20
4238 #define _B3CON_RTRRO 0x20
4239 #define _B3CON_TXLARB 0x20
4240 #define _B3CON_RXM1_TXABT 0x40
4241 #define _B3CON_RXM1 0x40
4242 #define _B3CON_TXABT 0x40
4243 #define _B3CON_RXFUL_TXBIF 0x80
4244 #define _B3CON_RXFUL 0x80
4245 #define _B3CON_TXBIF 0x80
4247 //==============================================================================
4250 //==============================================================================
4251 // B3SIDH Bits
4253 extern __at(0x0E51) __sfr B3SIDH;
4255 typedef struct
4257 unsigned SID3 : 1;
4258 unsigned SID4 : 1;
4259 unsigned SID5 : 1;
4260 unsigned SID6 : 1;
4261 unsigned SID7 : 1;
4262 unsigned SID8 : 1;
4263 unsigned SID9 : 1;
4264 unsigned SID10 : 1;
4265 } __B3SIDHbits_t;
4267 extern __at(0x0E51) volatile __B3SIDHbits_t B3SIDHbits;
4269 #define _B3SIDH_SID3 0x01
4270 #define _B3SIDH_SID4 0x02
4271 #define _B3SIDH_SID5 0x04
4272 #define _B3SIDH_SID6 0x08
4273 #define _B3SIDH_SID7 0x10
4274 #define _B3SIDH_SID8 0x20
4275 #define _B3SIDH_SID9 0x40
4276 #define _B3SIDH_SID10 0x80
4278 //==============================================================================
4281 //==============================================================================
4282 // B3SIDL Bits
4284 extern __at(0x0E52) __sfr B3SIDL;
4286 typedef union
4288 struct
4290 unsigned EID16 : 1;
4291 unsigned EID17 : 1;
4292 unsigned : 1;
4293 unsigned EXID : 1;
4294 unsigned SRR : 1;
4295 unsigned SID0 : 1;
4296 unsigned SID1 : 1;
4297 unsigned SID2 : 1;
4300 struct
4302 unsigned : 1;
4303 unsigned : 1;
4304 unsigned : 1;
4305 unsigned EXIDE : 1;
4306 unsigned : 1;
4307 unsigned : 1;
4308 unsigned : 1;
4309 unsigned : 1;
4312 struct
4314 unsigned : 5;
4315 unsigned SID : 3;
4317 } __B3SIDLbits_t;
4319 extern __at(0x0E52) volatile __B3SIDLbits_t B3SIDLbits;
4321 #define _B3SIDL_EID16 0x01
4322 #define _B3SIDL_EID17 0x02
4323 #define _B3SIDL_EXID 0x08
4324 #define _B3SIDL_EXIDE 0x08
4325 #define _B3SIDL_SRR 0x10
4326 #define _B3SIDL_SID0 0x20
4327 #define _B3SIDL_SID1 0x40
4328 #define _B3SIDL_SID2 0x80
4330 //==============================================================================
4333 //==============================================================================
4334 // B3EIDH Bits
4336 extern __at(0x0E53) __sfr B3EIDH;
4338 typedef struct
4340 unsigned EID8 : 1;
4341 unsigned EID9 : 1;
4342 unsigned EID10 : 1;
4343 unsigned EID11 : 1;
4344 unsigned EID12 : 1;
4345 unsigned EID13 : 1;
4346 unsigned EID14 : 1;
4347 unsigned EID15 : 1;
4348 } __B3EIDHbits_t;
4350 extern __at(0x0E53) volatile __B3EIDHbits_t B3EIDHbits;
4352 #define _B3EIDH_EID8 0x01
4353 #define _B3EIDH_EID9 0x02
4354 #define _B3EIDH_EID10 0x04
4355 #define _B3EIDH_EID11 0x08
4356 #define _B3EIDH_EID12 0x10
4357 #define _B3EIDH_EID13 0x20
4358 #define _B3EIDH_EID14 0x40
4359 #define _B3EIDH_EID15 0x80
4361 //==============================================================================
4364 //==============================================================================
4365 // B3EIDL Bits
4367 extern __at(0x0E54) __sfr B3EIDL;
4369 typedef struct
4371 unsigned EID0 : 1;
4372 unsigned EID1 : 1;
4373 unsigned EID2 : 1;
4374 unsigned EID3 : 1;
4375 unsigned EID4 : 1;
4376 unsigned EID5 : 1;
4377 unsigned EID6 : 1;
4378 unsigned EID7 : 1;
4379 } __B3EIDLbits_t;
4381 extern __at(0x0E54) volatile __B3EIDLbits_t B3EIDLbits;
4383 #define _B3EIDL_EID0 0x01
4384 #define _B3EIDL_EID1 0x02
4385 #define _B3EIDL_EID2 0x04
4386 #define _B3EIDL_EID3 0x08
4387 #define _B3EIDL_EID4 0x10
4388 #define _B3EIDL_EID5 0x20
4389 #define _B3EIDL_EID6 0x40
4390 #define _B3EIDL_EID7 0x80
4392 //==============================================================================
4395 //==============================================================================
4396 // B3DLC Bits
4398 extern __at(0x0E55) __sfr B3DLC;
4400 typedef union
4402 struct
4404 unsigned DLC0 : 1;
4405 unsigned DLC1 : 1;
4406 unsigned DLC2 : 1;
4407 unsigned DLC3 : 1;
4408 unsigned RB0 : 1;
4409 unsigned RB1 : 1;
4410 unsigned RXRTR : 1;
4411 unsigned : 1;
4414 struct
4416 unsigned : 1;
4417 unsigned : 1;
4418 unsigned : 1;
4419 unsigned : 1;
4420 unsigned RESRB0 : 1;
4421 unsigned RESRB1 : 1;
4422 unsigned TXRTR : 1;
4423 unsigned : 1;
4426 struct
4428 unsigned DLC : 4;
4429 unsigned : 4;
4432 struct
4434 unsigned : 4;
4435 unsigned RB : 2;
4436 unsigned : 2;
4439 struct
4441 unsigned : 4;
4442 unsigned RESRB : 2;
4443 unsigned : 2;
4445 } __B3DLCbits_t;
4447 extern __at(0x0E55) volatile __B3DLCbits_t B3DLCbits;
4449 #define _B3DLC_DLC0 0x01
4450 #define _B3DLC_DLC1 0x02
4451 #define _B3DLC_DLC2 0x04
4452 #define _B3DLC_DLC3 0x08
4453 #define _B3DLC_RB0 0x10
4454 #define _B3DLC_RESRB0 0x10
4455 #define _B3DLC_RB1 0x20
4456 #define _B3DLC_RESRB1 0x20
4457 #define _B3DLC_RXRTR 0x40
4458 #define _B3DLC_TXRTR 0x40
4460 //==============================================================================
4463 //==============================================================================
4464 // B3D0 Bits
4466 extern __at(0x0E56) __sfr B3D0;
4468 typedef struct
4470 unsigned B3D00 : 1;
4471 unsigned B3D01 : 1;
4472 unsigned B3D02 : 1;
4473 unsigned B3D03 : 1;
4474 unsigned B3D04 : 1;
4475 unsigned B3D05 : 1;
4476 unsigned B3D06 : 1;
4477 unsigned B3D07 : 1;
4478 } __B3D0bits_t;
4480 extern __at(0x0E56) volatile __B3D0bits_t B3D0bits;
4482 #define _B3D00 0x01
4483 #define _B3D01 0x02
4484 #define _B3D02 0x04
4485 #define _B3D03 0x08
4486 #define _B3D04 0x10
4487 #define _B3D05 0x20
4488 #define _B3D06 0x40
4489 #define _B3D07 0x80
4491 //==============================================================================
4494 //==============================================================================
4495 // B3D1 Bits
4497 extern __at(0x0E57) __sfr B3D1;
4499 typedef struct
4501 unsigned B3D10 : 1;
4502 unsigned B3D11 : 1;
4503 unsigned B3D12 : 1;
4504 unsigned B3D13 : 1;
4505 unsigned B3D14 : 1;
4506 unsigned B3D15 : 1;
4507 unsigned B3D16 : 1;
4508 unsigned B3D17 : 1;
4509 } __B3D1bits_t;
4511 extern __at(0x0E57) volatile __B3D1bits_t B3D1bits;
4513 #define _B3D10 0x01
4514 #define _B3D11 0x02
4515 #define _B3D12 0x04
4516 #define _B3D13 0x08
4517 #define _B3D14 0x10
4518 #define _B3D15 0x20
4519 #define _B3D16 0x40
4520 #define _B3D17 0x80
4522 //==============================================================================
4525 //==============================================================================
4526 // B3D2 Bits
4528 extern __at(0x0E58) __sfr B3D2;
4530 typedef struct
4532 unsigned B3D20 : 1;
4533 unsigned B3D21 : 1;
4534 unsigned B3D22 : 1;
4535 unsigned B3D23 : 1;
4536 unsigned B3D24 : 1;
4537 unsigned B3D25 : 1;
4538 unsigned B3D26 : 1;
4539 unsigned B3D27 : 1;
4540 } __B3D2bits_t;
4542 extern __at(0x0E58) volatile __B3D2bits_t B3D2bits;
4544 #define _B3D20 0x01
4545 #define _B3D21 0x02
4546 #define _B3D22 0x04
4547 #define _B3D23 0x08
4548 #define _B3D24 0x10
4549 #define _B3D25 0x20
4550 #define _B3D26 0x40
4551 #define _B3D27 0x80
4553 //==============================================================================
4556 //==============================================================================
4557 // B3D3 Bits
4559 extern __at(0x0E59) __sfr B3D3;
4561 typedef struct
4563 unsigned B3D30 : 1;
4564 unsigned B3D31 : 1;
4565 unsigned B3D32 : 1;
4566 unsigned B3D33 : 1;
4567 unsigned B3D34 : 1;
4568 unsigned B3D35 : 1;
4569 unsigned B3D36 : 1;
4570 unsigned B3D37 : 1;
4571 } __B3D3bits_t;
4573 extern __at(0x0E59) volatile __B3D3bits_t B3D3bits;
4575 #define _B3D30 0x01
4576 #define _B3D31 0x02
4577 #define _B3D32 0x04
4578 #define _B3D33 0x08
4579 #define _B3D34 0x10
4580 #define _B3D35 0x20
4581 #define _B3D36 0x40
4582 #define _B3D37 0x80
4584 //==============================================================================
4587 //==============================================================================
4588 // B3D4 Bits
4590 extern __at(0x0E5A) __sfr B3D4;
4592 typedef struct
4594 unsigned B3D40 : 1;
4595 unsigned B3D41 : 1;
4596 unsigned B3D42 : 1;
4597 unsigned B3D43 : 1;
4598 unsigned B3D44 : 1;
4599 unsigned B3D45 : 1;
4600 unsigned B3D46 : 1;
4601 unsigned B3D47 : 1;
4602 } __B3D4bits_t;
4604 extern __at(0x0E5A) volatile __B3D4bits_t B3D4bits;
4606 #define _B3D40 0x01
4607 #define _B3D41 0x02
4608 #define _B3D42 0x04
4609 #define _B3D43 0x08
4610 #define _B3D44 0x10
4611 #define _B3D45 0x20
4612 #define _B3D46 0x40
4613 #define _B3D47 0x80
4615 //==============================================================================
4618 //==============================================================================
4619 // B3D5 Bits
4621 extern __at(0x0E5B) __sfr B3D5;
4623 typedef struct
4625 unsigned B3D50 : 1;
4626 unsigned B3D51 : 1;
4627 unsigned B3D52 : 1;
4628 unsigned B3D53 : 1;
4629 unsigned B3D54 : 1;
4630 unsigned B3D55 : 1;
4631 unsigned B3D56 : 1;
4632 unsigned B3D57 : 1;
4633 } __B3D5bits_t;
4635 extern __at(0x0E5B) volatile __B3D5bits_t B3D5bits;
4637 #define _B3D50 0x01
4638 #define _B3D51 0x02
4639 #define _B3D52 0x04
4640 #define _B3D53 0x08
4641 #define _B3D54 0x10
4642 #define _B3D55 0x20
4643 #define _B3D56 0x40
4644 #define _B3D57 0x80
4646 //==============================================================================
4649 //==============================================================================
4650 // B3D6 Bits
4652 extern __at(0x0E5C) __sfr B3D6;
4654 typedef struct
4656 unsigned B3D60 : 1;
4657 unsigned B3D61 : 1;
4658 unsigned B3D62 : 1;
4659 unsigned B3D63 : 1;
4660 unsigned B3D64 : 1;
4661 unsigned B3D65 : 1;
4662 unsigned B3D66 : 1;
4663 unsigned B3D67 : 1;
4664 } __B3D6bits_t;
4666 extern __at(0x0E5C) volatile __B3D6bits_t B3D6bits;
4668 #define _B3D60 0x01
4669 #define _B3D61 0x02
4670 #define _B3D62 0x04
4671 #define _B3D63 0x08
4672 #define _B3D64 0x10
4673 #define _B3D65 0x20
4674 #define _B3D66 0x40
4675 #define _B3D67 0x80
4677 //==============================================================================
4680 //==============================================================================
4681 // B3D7 Bits
4683 extern __at(0x0E5D) __sfr B3D7;
4685 typedef struct
4687 unsigned B3D70 : 1;
4688 unsigned B3D71 : 1;
4689 unsigned B3D72 : 1;
4690 unsigned B3D73 : 1;
4691 unsigned B3D74 : 1;
4692 unsigned B3D75 : 1;
4693 unsigned B3D76 : 1;
4694 unsigned B3D77 : 1;
4695 } __B3D7bits_t;
4697 extern __at(0x0E5D) volatile __B3D7bits_t B3D7bits;
4699 #define _B3D70 0x01
4700 #define _B3D71 0x02
4701 #define _B3D72 0x04
4702 #define _B3D73 0x08
4703 #define _B3D74 0x10
4704 #define _B3D75 0x20
4705 #define _B3D76 0x40
4706 #define _B3D77 0x80
4708 //==============================================================================
4711 //==============================================================================
4712 // CANSTAT_RO6 Bits
4714 extern __at(0x0E5E) __sfr CANSTAT_RO6;
4716 typedef union
4718 struct
4720 unsigned EICODE0 : 1;
4721 unsigned EICODE1_ICODE0 : 1;
4722 unsigned EICODE2_ICODE1 : 1;
4723 unsigned EICODE3_ICODE2 : 1;
4724 unsigned EICODE4 : 1;
4725 unsigned OPMODE0 : 1;
4726 unsigned OPMODE1 : 1;
4727 unsigned OPMODE2 : 1;
4730 struct
4732 unsigned : 5;
4733 unsigned OPMODE : 3;
4735 } __CANSTAT_RO6bits_t;
4737 extern __at(0x0E5E) volatile __CANSTAT_RO6bits_t CANSTAT_RO6bits;
4739 #define _CANSTAT_RO6_EICODE0 0x01
4740 #define _CANSTAT_RO6_EICODE1_ICODE0 0x02
4741 #define _CANSTAT_RO6_EICODE2_ICODE1 0x04
4742 #define _CANSTAT_RO6_EICODE3_ICODE2 0x08
4743 #define _CANSTAT_RO6_EICODE4 0x10
4744 #define _CANSTAT_RO6_OPMODE0 0x20
4745 #define _CANSTAT_RO6_OPMODE1 0x40
4746 #define _CANSTAT_RO6_OPMODE2 0x80
4748 //==============================================================================
4751 //==============================================================================
4752 // CANCON_RO6 Bits
4754 extern __at(0x0E5F) __sfr CANCON_RO6;
4756 typedef union
4758 struct
4760 unsigned FP0 : 1;
4761 unsigned WIN0_FP1 : 1;
4762 unsigned WIN1_FP2 : 1;
4763 unsigned WIN2_FP3 : 1;
4764 unsigned ABAT : 1;
4765 unsigned REQOP0 : 1;
4766 unsigned REQOP1 : 1;
4767 unsigned REQOP2 : 1;
4770 struct
4772 unsigned : 5;
4773 unsigned REQOP : 3;
4775 } __CANCON_RO6bits_t;
4777 extern __at(0x0E5F) volatile __CANCON_RO6bits_t CANCON_RO6bits;
4779 #define _CANCON_RO6_FP0 0x01
4780 #define _CANCON_RO6_WIN0_FP1 0x02
4781 #define _CANCON_RO6_WIN1_FP2 0x04
4782 #define _CANCON_RO6_WIN2_FP3 0x08
4783 #define _CANCON_RO6_ABAT 0x10
4784 #define _CANCON_RO6_REQOP0 0x20
4785 #define _CANCON_RO6_REQOP1 0x40
4786 #define _CANCON_RO6_REQOP2 0x80
4788 //==============================================================================
4791 //==============================================================================
4792 // B4CON Bits
4794 extern __at(0x0E60) __sfr B4CON;
4796 typedef union
4798 struct
4800 unsigned FILHIT0_TXPRI0 : 1;
4801 unsigned FILHIT1_TXPRI1 : 1;
4802 unsigned FILHIT2_RTREN : 1;
4803 unsigned FILHIT3_TXREQ : 1;
4804 unsigned FILHIT4_TXERR : 1;
4805 unsigned RTRRO_TXLARB : 1;
4806 unsigned RXM1_TXABT : 1;
4807 unsigned RXFUL_TXBIF : 1;
4810 struct
4812 unsigned FILHIT0 : 1;
4813 unsigned FILHIT1 : 1;
4814 unsigned FILHIT2 : 1;
4815 unsigned FILHIT3 : 1;
4816 unsigned FILHIT4 : 1;
4817 unsigned RTRRO : 1;
4818 unsigned RXM1 : 1;
4819 unsigned RXFUL : 1;
4822 struct
4824 unsigned TXPRI0 : 1;
4825 unsigned TXPRI1 : 1;
4826 unsigned RTREN : 1;
4827 unsigned TXREQ : 1;
4828 unsigned TXERR : 1;
4829 unsigned TXLARB : 1;
4830 unsigned TXABT : 1;
4831 unsigned TXBIF : 1;
4834 struct
4836 unsigned FILHIT : 5;
4837 unsigned : 3;
4840 struct
4842 unsigned TXPRI : 2;
4843 unsigned : 6;
4845 } __B4CONbits_t;
4847 extern __at(0x0E60) volatile __B4CONbits_t B4CONbits;
4849 #define _B4CON_FILHIT0_TXPRI0 0x01
4850 #define _B4CON_FILHIT0 0x01
4851 #define _B4CON_TXPRI0 0x01
4852 #define _B4CON_FILHIT1_TXPRI1 0x02
4853 #define _B4CON_FILHIT1 0x02
4854 #define _B4CON_TXPRI1 0x02
4855 #define _B4CON_FILHIT2_RTREN 0x04
4856 #define _B4CON_FILHIT2 0x04
4857 #define _B4CON_RTREN 0x04
4858 #define _B4CON_FILHIT3_TXREQ 0x08
4859 #define _B4CON_FILHIT3 0x08
4860 #define _B4CON_TXREQ 0x08
4861 #define _B4CON_FILHIT4_TXERR 0x10
4862 #define _B4CON_FILHIT4 0x10
4863 #define _B4CON_TXERR 0x10
4864 #define _B4CON_RTRRO_TXLARB 0x20
4865 #define _B4CON_RTRRO 0x20
4866 #define _B4CON_TXLARB 0x20
4867 #define _B4CON_RXM1_TXABT 0x40
4868 #define _B4CON_RXM1 0x40
4869 #define _B4CON_TXABT 0x40
4870 #define _B4CON_RXFUL_TXBIF 0x80
4871 #define _B4CON_RXFUL 0x80
4872 #define _B4CON_TXBIF 0x80
4874 //==============================================================================
4877 //==============================================================================
4878 // B4SIDH Bits
4880 extern __at(0x0E61) __sfr B4SIDH;
4882 typedef struct
4884 unsigned SID3 : 1;
4885 unsigned SID4 : 1;
4886 unsigned SID5 : 1;
4887 unsigned SID6 : 1;
4888 unsigned SID7 : 1;
4889 unsigned SID8 : 1;
4890 unsigned SID9 : 1;
4891 unsigned SID10 : 1;
4892 } __B4SIDHbits_t;
4894 extern __at(0x0E61) volatile __B4SIDHbits_t B4SIDHbits;
4896 #define _B4SIDH_SID3 0x01
4897 #define _B4SIDH_SID4 0x02
4898 #define _B4SIDH_SID5 0x04
4899 #define _B4SIDH_SID6 0x08
4900 #define _B4SIDH_SID7 0x10
4901 #define _B4SIDH_SID8 0x20
4902 #define _B4SIDH_SID9 0x40
4903 #define _B4SIDH_SID10 0x80
4905 //==============================================================================
4908 //==============================================================================
4909 // B4SIDL Bits
4911 extern __at(0x0E62) __sfr B4SIDL;
4913 typedef union
4915 struct
4917 unsigned EID16 : 1;
4918 unsigned EID17 : 1;
4919 unsigned : 1;
4920 unsigned EXID : 1;
4921 unsigned SRR : 1;
4922 unsigned SID0 : 1;
4923 unsigned SID1 : 1;
4924 unsigned SID2 : 1;
4927 struct
4929 unsigned : 1;
4930 unsigned : 1;
4931 unsigned : 1;
4932 unsigned EXIDE : 1;
4933 unsigned : 1;
4934 unsigned : 1;
4935 unsigned : 1;
4936 unsigned : 1;
4939 struct
4941 unsigned : 5;
4942 unsigned SID : 3;
4944 } __B4SIDLbits_t;
4946 extern __at(0x0E62) volatile __B4SIDLbits_t B4SIDLbits;
4948 #define _B4SIDL_EID16 0x01
4949 #define _B4SIDL_EID17 0x02
4950 #define _B4SIDL_EXID 0x08
4951 #define _B4SIDL_EXIDE 0x08
4952 #define _B4SIDL_SRR 0x10
4953 #define _B4SIDL_SID0 0x20
4954 #define _B4SIDL_SID1 0x40
4955 #define _B4SIDL_SID2 0x80
4957 //==============================================================================
4960 //==============================================================================
4961 // B4EIDH Bits
4963 extern __at(0x0E63) __sfr B4EIDH;
4965 typedef struct
4967 unsigned EID8 : 1;
4968 unsigned EID9 : 1;
4969 unsigned EID10 : 1;
4970 unsigned EID11 : 1;
4971 unsigned EID12 : 1;
4972 unsigned EID13 : 1;
4973 unsigned EID14 : 1;
4974 unsigned EID15 : 1;
4975 } __B4EIDHbits_t;
4977 extern __at(0x0E63) volatile __B4EIDHbits_t B4EIDHbits;
4979 #define _B4EIDH_EID8 0x01
4980 #define _B4EIDH_EID9 0x02
4981 #define _B4EIDH_EID10 0x04
4982 #define _B4EIDH_EID11 0x08
4983 #define _B4EIDH_EID12 0x10
4984 #define _B4EIDH_EID13 0x20
4985 #define _B4EIDH_EID14 0x40
4986 #define _B4EIDH_EID15 0x80
4988 //==============================================================================
4991 //==============================================================================
4992 // B4EIDL Bits
4994 extern __at(0x0E64) __sfr B4EIDL;
4996 typedef struct
4998 unsigned EID0 : 1;
4999 unsigned EID1 : 1;
5000 unsigned EID2 : 1;
5001 unsigned EID3 : 1;
5002 unsigned EID4 : 1;
5003 unsigned EID5 : 1;
5004 unsigned EID6 : 1;
5005 unsigned EID7 : 1;
5006 } __B4EIDLbits_t;
5008 extern __at(0x0E64) volatile __B4EIDLbits_t B4EIDLbits;
5010 #define _B4EIDL_EID0 0x01
5011 #define _B4EIDL_EID1 0x02
5012 #define _B4EIDL_EID2 0x04
5013 #define _B4EIDL_EID3 0x08
5014 #define _B4EIDL_EID4 0x10
5015 #define _B4EIDL_EID5 0x20
5016 #define _B4EIDL_EID6 0x40
5017 #define _B4EIDL_EID7 0x80
5019 //==============================================================================
5022 //==============================================================================
5023 // B4DLC Bits
5025 extern __at(0x0E65) __sfr B4DLC;
5027 typedef union
5029 struct
5031 unsigned DLC0 : 1;
5032 unsigned DLC1 : 1;
5033 unsigned DLC2 : 1;
5034 unsigned DLC3 : 1;
5035 unsigned RB0 : 1;
5036 unsigned RB1 : 1;
5037 unsigned RXRTR : 1;
5038 unsigned : 1;
5041 struct
5043 unsigned : 1;
5044 unsigned : 1;
5045 unsigned : 1;
5046 unsigned : 1;
5047 unsigned RESRB0 : 1;
5048 unsigned RESRB1 : 1;
5049 unsigned TXRTR : 1;
5050 unsigned : 1;
5053 struct
5055 unsigned DLC : 4;
5056 unsigned : 4;
5059 struct
5061 unsigned : 4;
5062 unsigned RB : 2;
5063 unsigned : 2;
5066 struct
5068 unsigned : 4;
5069 unsigned RESRB : 2;
5070 unsigned : 2;
5072 } __B4DLCbits_t;
5074 extern __at(0x0E65) volatile __B4DLCbits_t B4DLCbits;
5076 #define _B4DLC_DLC0 0x01
5077 #define _B4DLC_DLC1 0x02
5078 #define _B4DLC_DLC2 0x04
5079 #define _B4DLC_DLC3 0x08
5080 #define _B4DLC_RB0 0x10
5081 #define _B4DLC_RESRB0 0x10
5082 #define _B4DLC_RB1 0x20
5083 #define _B4DLC_RESRB1 0x20
5084 #define _B4DLC_RXRTR 0x40
5085 #define _B4DLC_TXRTR 0x40
5087 //==============================================================================
5090 //==============================================================================
5091 // B4D0 Bits
5093 extern __at(0x0E66) __sfr B4D0;
5095 typedef struct
5097 unsigned B4D00 : 1;
5098 unsigned B4D01 : 1;
5099 unsigned B4D02 : 1;
5100 unsigned B4D03 : 1;
5101 unsigned B4D04 : 1;
5102 unsigned B4D05 : 1;
5103 unsigned B4D06 : 1;
5104 unsigned B4D07 : 1;
5105 } __B4D0bits_t;
5107 extern __at(0x0E66) volatile __B4D0bits_t B4D0bits;
5109 #define _B4D00 0x01
5110 #define _B4D01 0x02
5111 #define _B4D02 0x04
5112 #define _B4D03 0x08
5113 #define _B4D04 0x10
5114 #define _B4D05 0x20
5115 #define _B4D06 0x40
5116 #define _B4D07 0x80
5118 //==============================================================================
5121 //==============================================================================
5122 // B4D1 Bits
5124 extern __at(0x0E67) __sfr B4D1;
5126 typedef struct
5128 unsigned B4D10 : 1;
5129 unsigned B4D11 : 1;
5130 unsigned B4D12 : 1;
5131 unsigned B4D13 : 1;
5132 unsigned B4D14 : 1;
5133 unsigned B4D15 : 1;
5134 unsigned B4D16 : 1;
5135 unsigned B4D17 : 1;
5136 } __B4D1bits_t;
5138 extern __at(0x0E67) volatile __B4D1bits_t B4D1bits;
5140 #define _B4D10 0x01
5141 #define _B4D11 0x02
5142 #define _B4D12 0x04
5143 #define _B4D13 0x08
5144 #define _B4D14 0x10
5145 #define _B4D15 0x20
5146 #define _B4D16 0x40
5147 #define _B4D17 0x80
5149 //==============================================================================
5152 //==============================================================================
5153 // B4D2 Bits
5155 extern __at(0x0E68) __sfr B4D2;
5157 typedef struct
5159 unsigned B4D20 : 1;
5160 unsigned B4D21 : 1;
5161 unsigned B4D22 : 1;
5162 unsigned B4D23 : 1;
5163 unsigned B4D24 : 1;
5164 unsigned B4D25 : 1;
5165 unsigned B4D26 : 1;
5166 unsigned B4D27 : 1;
5167 } __B4D2bits_t;
5169 extern __at(0x0E68) volatile __B4D2bits_t B4D2bits;
5171 #define _B4D20 0x01
5172 #define _B4D21 0x02
5173 #define _B4D22 0x04
5174 #define _B4D23 0x08
5175 #define _B4D24 0x10
5176 #define _B4D25 0x20
5177 #define _B4D26 0x40
5178 #define _B4D27 0x80
5180 //==============================================================================
5183 //==============================================================================
5184 // B4D3 Bits
5186 extern __at(0x0E69) __sfr B4D3;
5188 typedef struct
5190 unsigned B4D30 : 1;
5191 unsigned B4D31 : 1;
5192 unsigned B4D32 : 1;
5193 unsigned B4D33 : 1;
5194 unsigned B4D34 : 1;
5195 unsigned B4D35 : 1;
5196 unsigned B4D36 : 1;
5197 unsigned B4D37 : 1;
5198 } __B4D3bits_t;
5200 extern __at(0x0E69) volatile __B4D3bits_t B4D3bits;
5202 #define _B4D30 0x01
5203 #define _B4D31 0x02
5204 #define _B4D32 0x04
5205 #define _B4D33 0x08
5206 #define _B4D34 0x10
5207 #define _B4D35 0x20
5208 #define _B4D36 0x40
5209 #define _B4D37 0x80
5211 //==============================================================================
5214 //==============================================================================
5215 // B4D4 Bits
5217 extern __at(0x0E6A) __sfr B4D4;
5219 typedef struct
5221 unsigned B4D40 : 1;
5222 unsigned B4D41 : 1;
5223 unsigned B4D42 : 1;
5224 unsigned B4D43 : 1;
5225 unsigned B4D44 : 1;
5226 unsigned B4D45 : 1;
5227 unsigned B4D46 : 1;
5228 unsigned B4D47 : 1;
5229 } __B4D4bits_t;
5231 extern __at(0x0E6A) volatile __B4D4bits_t B4D4bits;
5233 #define _B4D40 0x01
5234 #define _B4D41 0x02
5235 #define _B4D42 0x04
5236 #define _B4D43 0x08
5237 #define _B4D44 0x10
5238 #define _B4D45 0x20
5239 #define _B4D46 0x40
5240 #define _B4D47 0x80
5242 //==============================================================================
5245 //==============================================================================
5246 // B4D5 Bits
5248 extern __at(0x0E6B) __sfr B4D5;
5250 typedef struct
5252 unsigned B4D50 : 1;
5253 unsigned B4D51 : 1;
5254 unsigned B4D52 : 1;
5255 unsigned B4D53 : 1;
5256 unsigned B4D54 : 1;
5257 unsigned B4D55 : 1;
5258 unsigned B4D56 : 1;
5259 unsigned B4D57 : 1;
5260 } __B4D5bits_t;
5262 extern __at(0x0E6B) volatile __B4D5bits_t B4D5bits;
5264 #define _B4D50 0x01
5265 #define _B4D51 0x02
5266 #define _B4D52 0x04
5267 #define _B4D53 0x08
5268 #define _B4D54 0x10
5269 #define _B4D55 0x20
5270 #define _B4D56 0x40
5271 #define _B4D57 0x80
5273 //==============================================================================
5276 //==============================================================================
5277 // B4D6 Bits
5279 extern __at(0x0E6C) __sfr B4D6;
5281 typedef struct
5283 unsigned B4D60 : 1;
5284 unsigned B4D61 : 1;
5285 unsigned B4D62 : 1;
5286 unsigned B4D63 : 1;
5287 unsigned B4D64 : 1;
5288 unsigned B4D65 : 1;
5289 unsigned B4D66 : 1;
5290 unsigned B4D67 : 1;
5291 } __B4D6bits_t;
5293 extern __at(0x0E6C) volatile __B4D6bits_t B4D6bits;
5295 #define _B4D60 0x01
5296 #define _B4D61 0x02
5297 #define _B4D62 0x04
5298 #define _B4D63 0x08
5299 #define _B4D64 0x10
5300 #define _B4D65 0x20
5301 #define _B4D66 0x40
5302 #define _B4D67 0x80
5304 //==============================================================================
5307 //==============================================================================
5308 // B4D7 Bits
5310 extern __at(0x0E6D) __sfr B4D7;
5312 typedef union
5314 struct
5316 unsigned B4D70 : 1;
5317 unsigned B4D71 : 1;
5318 unsigned B4D72 : 1;
5319 unsigned B4D73 : 1;
5320 unsigned B4D74 : 1;
5321 unsigned B4D75 : 1;
5322 unsigned B4D76 : 1;
5323 unsigned B4D77 : 1;
5326 struct
5328 unsigned : 1;
5329 unsigned : 1;
5330 unsigned : 1;
5331 unsigned : 1;
5332 unsigned : 1;
5333 unsigned : 1;
5334 unsigned : 1;
5335 unsigned B46D77 : 1;
5337 } __B4D7bits_t;
5339 extern __at(0x0E6D) volatile __B4D7bits_t B4D7bits;
5341 #define _B4D70 0x01
5342 #define _B4D71 0x02
5343 #define _B4D72 0x04
5344 #define _B4D73 0x08
5345 #define _B4D74 0x10
5346 #define _B4D75 0x20
5347 #define _B4D76 0x40
5348 #define _B4D77 0x80
5349 #define _B46D77 0x80
5351 //==============================================================================
5354 //==============================================================================
5355 // CANSTAT_RO5 Bits
5357 extern __at(0x0E6E) __sfr CANSTAT_RO5;
5359 typedef union
5361 struct
5363 unsigned EICODE0 : 1;
5364 unsigned EICODE1_ICODE0 : 1;
5365 unsigned EICODE2_ICODE1 : 1;
5366 unsigned EICODE3_ICODE2 : 1;
5367 unsigned EICODE4 : 1;
5368 unsigned OPMODE0 : 1;
5369 unsigned OPMODE1 : 1;
5370 unsigned OPMODE2 : 1;
5373 struct
5375 unsigned : 5;
5376 unsigned OPMODE : 3;
5378 } __CANSTAT_RO5bits_t;
5380 extern __at(0x0E6E) volatile __CANSTAT_RO5bits_t CANSTAT_RO5bits;
5382 #define _CANSTAT_RO5_EICODE0 0x01
5383 #define _CANSTAT_RO5_EICODE1_ICODE0 0x02
5384 #define _CANSTAT_RO5_EICODE2_ICODE1 0x04
5385 #define _CANSTAT_RO5_EICODE3_ICODE2 0x08
5386 #define _CANSTAT_RO5_EICODE4 0x10
5387 #define _CANSTAT_RO5_OPMODE0 0x20
5388 #define _CANSTAT_RO5_OPMODE1 0x40
5389 #define _CANSTAT_RO5_OPMODE2 0x80
5391 //==============================================================================
5394 //==============================================================================
5395 // CANCON_RO5 Bits
5397 extern __at(0x0E6F) __sfr CANCON_RO5;
5399 typedef union
5401 struct
5403 unsigned FP0 : 1;
5404 unsigned WIN0_FP1 : 1;
5405 unsigned WIN1_FP2 : 1;
5406 unsigned WIN2_FP3 : 1;
5407 unsigned ABAT : 1;
5408 unsigned REQOP0 : 1;
5409 unsigned REQOP1 : 1;
5410 unsigned REQOP2 : 1;
5413 struct
5415 unsigned : 5;
5416 unsigned REQOP : 3;
5418 } __CANCON_RO5bits_t;
5420 extern __at(0x0E6F) volatile __CANCON_RO5bits_t CANCON_RO5bits;
5422 #define _CANCON_RO5_FP0 0x01
5423 #define _CANCON_RO5_WIN0_FP1 0x02
5424 #define _CANCON_RO5_WIN1_FP2 0x04
5425 #define _CANCON_RO5_WIN2_FP3 0x08
5426 #define _CANCON_RO5_ABAT 0x10
5427 #define _CANCON_RO5_REQOP0 0x20
5428 #define _CANCON_RO5_REQOP1 0x40
5429 #define _CANCON_RO5_REQOP2 0x80
5431 //==============================================================================
5434 //==============================================================================
5435 // B5CON Bits
5437 extern __at(0x0E70) __sfr B5CON;
5439 typedef union
5441 struct
5443 unsigned FILHIT0_TXPRI0 : 1;
5444 unsigned FILHIT1_TXPRI1 : 1;
5445 unsigned FILHIT2_RTREN : 1;
5446 unsigned FILHIT3_TXREQ : 1;
5447 unsigned FILHIT4_TXERR : 1;
5448 unsigned RTRRO_TXLARB : 1;
5449 unsigned RXM1_TXABT : 1;
5450 unsigned RXFUL_TXBIF : 1;
5453 struct
5455 unsigned FILHIT0 : 1;
5456 unsigned FILHIT1 : 1;
5457 unsigned FILHIT2 : 1;
5458 unsigned FILHIT3 : 1;
5459 unsigned FILHIT4 : 1;
5460 unsigned RTRRO : 1;
5461 unsigned RXM1 : 1;
5462 unsigned RXFUL : 1;
5465 struct
5467 unsigned TXPRI0 : 1;
5468 unsigned TXPRI1 : 1;
5469 unsigned RTREN : 1;
5470 unsigned TXREQ : 1;
5471 unsigned TXERR : 1;
5472 unsigned TXLARB : 1;
5473 unsigned TXABT : 1;
5474 unsigned TXBIF : 1;
5477 struct
5479 unsigned TXPRI : 2;
5480 unsigned : 6;
5483 struct
5485 unsigned FILHIT : 5;
5486 unsigned : 3;
5488 } __B5CONbits_t;
5490 extern __at(0x0E70) volatile __B5CONbits_t B5CONbits;
5492 #define _B5CON_FILHIT0_TXPRI0 0x01
5493 #define _B5CON_FILHIT0 0x01
5494 #define _B5CON_TXPRI0 0x01
5495 #define _B5CON_FILHIT1_TXPRI1 0x02
5496 #define _B5CON_FILHIT1 0x02
5497 #define _B5CON_TXPRI1 0x02
5498 #define _B5CON_FILHIT2_RTREN 0x04
5499 #define _B5CON_FILHIT2 0x04
5500 #define _B5CON_RTREN 0x04
5501 #define _B5CON_FILHIT3_TXREQ 0x08
5502 #define _B5CON_FILHIT3 0x08
5503 #define _B5CON_TXREQ 0x08
5504 #define _B5CON_FILHIT4_TXERR 0x10
5505 #define _B5CON_FILHIT4 0x10
5506 #define _B5CON_TXERR 0x10
5507 #define _B5CON_RTRRO_TXLARB 0x20
5508 #define _B5CON_RTRRO 0x20
5509 #define _B5CON_TXLARB 0x20
5510 #define _B5CON_RXM1_TXABT 0x40
5511 #define _B5CON_RXM1 0x40
5512 #define _B5CON_TXABT 0x40
5513 #define _B5CON_RXFUL_TXBIF 0x80
5514 #define _B5CON_RXFUL 0x80
5515 #define _B5CON_TXBIF 0x80
5517 //==============================================================================
5520 //==============================================================================
5521 // B5SIDH Bits
5523 extern __at(0x0E71) __sfr B5SIDH;
5525 typedef struct
5527 unsigned SID3 : 1;
5528 unsigned SID4 : 1;
5529 unsigned SID5 : 1;
5530 unsigned SID6 : 1;
5531 unsigned SID7 : 1;
5532 unsigned SID8 : 1;
5533 unsigned SID9 : 1;
5534 unsigned SID10 : 1;
5535 } __B5SIDHbits_t;
5537 extern __at(0x0E71) volatile __B5SIDHbits_t B5SIDHbits;
5539 #define _B5SIDH_SID3 0x01
5540 #define _B5SIDH_SID4 0x02
5541 #define _B5SIDH_SID5 0x04
5542 #define _B5SIDH_SID6 0x08
5543 #define _B5SIDH_SID7 0x10
5544 #define _B5SIDH_SID8 0x20
5545 #define _B5SIDH_SID9 0x40
5546 #define _B5SIDH_SID10 0x80
5548 //==============================================================================
5551 //==============================================================================
5552 // B5SIDL Bits
5554 extern __at(0x0E72) __sfr B5SIDL;
5556 typedef union
5558 struct
5560 unsigned EID16 : 1;
5561 unsigned EID17 : 1;
5562 unsigned : 1;
5563 unsigned EXID : 1;
5564 unsigned SRR : 1;
5565 unsigned SID0 : 1;
5566 unsigned SID1 : 1;
5567 unsigned SID2 : 1;
5570 struct
5572 unsigned : 1;
5573 unsigned : 1;
5574 unsigned : 1;
5575 unsigned EXIDE : 1;
5576 unsigned : 1;
5577 unsigned : 1;
5578 unsigned : 1;
5579 unsigned : 1;
5582 struct
5584 unsigned : 5;
5585 unsigned SID : 3;
5587 } __B5SIDLbits_t;
5589 extern __at(0x0E72) volatile __B5SIDLbits_t B5SIDLbits;
5591 #define _B5SIDL_EID16 0x01
5592 #define _B5SIDL_EID17 0x02
5593 #define _B5SIDL_EXID 0x08
5594 #define _B5SIDL_EXIDE 0x08
5595 #define _B5SIDL_SRR 0x10
5596 #define _B5SIDL_SID0 0x20
5597 #define _B5SIDL_SID1 0x40
5598 #define _B5SIDL_SID2 0x80
5600 //==============================================================================
5603 //==============================================================================
5604 // B5EIDH Bits
5606 extern __at(0x0E73) __sfr B5EIDH;
5608 typedef struct
5610 unsigned EID8 : 1;
5611 unsigned EID9 : 1;
5612 unsigned EID10 : 1;
5613 unsigned EID11 : 1;
5614 unsigned EID12 : 1;
5615 unsigned EID13 : 1;
5616 unsigned EID14 : 1;
5617 unsigned EID15 : 1;
5618 } __B5EIDHbits_t;
5620 extern __at(0x0E73) volatile __B5EIDHbits_t B5EIDHbits;
5622 #define _B5EIDH_EID8 0x01
5623 #define _B5EIDH_EID9 0x02
5624 #define _B5EIDH_EID10 0x04
5625 #define _B5EIDH_EID11 0x08
5626 #define _B5EIDH_EID12 0x10
5627 #define _B5EIDH_EID13 0x20
5628 #define _B5EIDH_EID14 0x40
5629 #define _B5EIDH_EID15 0x80
5631 //==============================================================================
5634 //==============================================================================
5635 // B5EIDL Bits
5637 extern __at(0x0E74) __sfr B5EIDL;
5639 typedef struct
5641 unsigned EID0 : 1;
5642 unsigned EID1 : 1;
5643 unsigned EID2 : 1;
5644 unsigned EID3 : 1;
5645 unsigned EID4 : 1;
5646 unsigned EID5 : 1;
5647 unsigned EID6 : 1;
5648 unsigned EID7 : 1;
5649 } __B5EIDLbits_t;
5651 extern __at(0x0E74) volatile __B5EIDLbits_t B5EIDLbits;
5653 #define _B5EIDL_EID0 0x01
5654 #define _B5EIDL_EID1 0x02
5655 #define _B5EIDL_EID2 0x04
5656 #define _B5EIDL_EID3 0x08
5657 #define _B5EIDL_EID4 0x10
5658 #define _B5EIDL_EID5 0x20
5659 #define _B5EIDL_EID6 0x40
5660 #define _B5EIDL_EID7 0x80
5662 //==============================================================================
5665 //==============================================================================
5666 // B5DLC Bits
5668 extern __at(0x0E75) __sfr B5DLC;
5670 typedef union
5672 struct
5674 unsigned DLC0 : 1;
5675 unsigned DLC1 : 1;
5676 unsigned DLC2 : 1;
5677 unsigned DLC3 : 1;
5678 unsigned RB0 : 1;
5679 unsigned RB1 : 1;
5680 unsigned RXRTR : 1;
5681 unsigned : 1;
5684 struct
5686 unsigned : 1;
5687 unsigned : 1;
5688 unsigned : 1;
5689 unsigned : 1;
5690 unsigned RESRB0 : 1;
5691 unsigned RESRB1 : 1;
5692 unsigned : 1;
5693 unsigned : 1;
5696 struct
5698 unsigned DLC : 4;
5699 unsigned : 4;
5702 struct
5704 unsigned : 4;
5705 unsigned RESRB : 2;
5706 unsigned : 2;
5709 struct
5711 unsigned : 4;
5712 unsigned RB : 2;
5713 unsigned : 2;
5715 } __B5DLCbits_t;
5717 extern __at(0x0E75) volatile __B5DLCbits_t B5DLCbits;
5719 #define _B5DLC_DLC0 0x01
5720 #define _B5DLC_DLC1 0x02
5721 #define _B5DLC_DLC2 0x04
5722 #define _B5DLC_DLC3 0x08
5723 #define _B5DLC_RB0 0x10
5724 #define _B5DLC_RESRB0 0x10
5725 #define _B5DLC_RB1 0x20
5726 #define _B5DLC_RESRB1 0x20
5727 #define _B5DLC_RXRTR 0x40
5729 //==============================================================================
5732 //==============================================================================
5733 // B5D0 Bits
5735 extern __at(0x0E76) __sfr B5D0;
5737 typedef union
5739 struct
5741 unsigned B5D00 : 1;
5742 unsigned B5D01 : 1;
5743 unsigned B5D02 : 1;
5744 unsigned B5D03 : 1;
5745 unsigned B5D04 : 1;
5746 unsigned B5D05 : 1;
5747 unsigned B5D06 : 1;
5748 unsigned B5D07 : 1;
5751 struct
5753 unsigned : 1;
5754 unsigned : 1;
5755 unsigned : 1;
5756 unsigned : 1;
5757 unsigned : 1;
5758 unsigned : 1;
5759 unsigned : 1;
5760 unsigned B57D07 : 1;
5762 } __B5D0bits_t;
5764 extern __at(0x0E76) volatile __B5D0bits_t B5D0bits;
5766 #define _B5D00 0x01
5767 #define _B5D01 0x02
5768 #define _B5D02 0x04
5769 #define _B5D03 0x08
5770 #define _B5D04 0x10
5771 #define _B5D05 0x20
5772 #define _B5D06 0x40
5773 #define _B5D07 0x80
5774 #define _B57D07 0x80
5776 //==============================================================================
5779 //==============================================================================
5780 // B5D1 Bits
5782 extern __at(0x0E77) __sfr B5D1;
5784 typedef struct
5786 unsigned B5D10 : 1;
5787 unsigned B5D11 : 1;
5788 unsigned B5D12 : 1;
5789 unsigned B5D13 : 1;
5790 unsigned B5D14 : 1;
5791 unsigned B5D15 : 1;
5792 unsigned B5D16 : 1;
5793 unsigned B5D17 : 1;
5794 } __B5D1bits_t;
5796 extern __at(0x0E77) volatile __B5D1bits_t B5D1bits;
5798 #define _B5D10 0x01
5799 #define _B5D11 0x02
5800 #define _B5D12 0x04
5801 #define _B5D13 0x08
5802 #define _B5D14 0x10
5803 #define _B5D15 0x20
5804 #define _B5D16 0x40
5805 #define _B5D17 0x80
5807 //==============================================================================
5810 //==============================================================================
5811 // B5D2 Bits
5813 extern __at(0x0E78) __sfr B5D2;
5815 typedef union
5817 struct
5819 unsigned B5D20 : 1;
5820 unsigned B5D21 : 1;
5821 unsigned B5D22 : 1;
5822 unsigned B5D23 : 1;
5823 unsigned B5D24 : 1;
5824 unsigned B5D25 : 1;
5825 unsigned B5D26 : 1;
5826 unsigned B5D27 : 1;
5829 struct
5831 unsigned : 1;
5832 unsigned : 1;
5833 unsigned : 1;
5834 unsigned B57D23 : 1;
5835 unsigned : 1;
5836 unsigned : 1;
5837 unsigned : 1;
5838 unsigned : 1;
5840 } __B5D2bits_t;
5842 extern __at(0x0E78) volatile __B5D2bits_t B5D2bits;
5844 #define _B5D20 0x01
5845 #define _B5D21 0x02
5846 #define _B5D22 0x04
5847 #define _B5D23 0x08
5848 #define _B57D23 0x08
5849 #define _B5D24 0x10
5850 #define _B5D25 0x20
5851 #define _B5D26 0x40
5852 #define _B5D27 0x80
5854 //==============================================================================
5857 //==============================================================================
5858 // B5D3 Bits
5860 extern __at(0x0E79) __sfr B5D3;
5862 typedef struct
5864 unsigned B5D30 : 1;
5865 unsigned B5D31 : 1;
5866 unsigned B5D32 : 1;
5867 unsigned B5D33 : 1;
5868 unsigned B5D34 : 1;
5869 unsigned B5D35 : 1;
5870 unsigned B5D36 : 1;
5871 unsigned B5D37 : 1;
5872 } __B5D3bits_t;
5874 extern __at(0x0E79) volatile __B5D3bits_t B5D3bits;
5876 #define _B5D30 0x01
5877 #define _B5D31 0x02
5878 #define _B5D32 0x04
5879 #define _B5D33 0x08
5880 #define _B5D34 0x10
5881 #define _B5D35 0x20
5882 #define _B5D36 0x40
5883 #define _B5D37 0x80
5885 //==============================================================================
5888 //==============================================================================
5889 // B5D4 Bits
5891 extern __at(0x0E7A) __sfr B5D4;
5893 typedef struct
5895 unsigned B5D40 : 1;
5896 unsigned B5D41 : 1;
5897 unsigned B5D42 : 1;
5898 unsigned B5D43 : 1;
5899 unsigned B5D44 : 1;
5900 unsigned B5D45 : 1;
5901 unsigned B5D46 : 1;
5902 unsigned B5D47 : 1;
5903 } __B5D4bits_t;
5905 extern __at(0x0E7A) volatile __B5D4bits_t B5D4bits;
5907 #define _B5D40 0x01
5908 #define _B5D41 0x02
5909 #define _B5D42 0x04
5910 #define _B5D43 0x08
5911 #define _B5D44 0x10
5912 #define _B5D45 0x20
5913 #define _B5D46 0x40
5914 #define _B5D47 0x80
5916 //==============================================================================
5919 //==============================================================================
5920 // B5D5 Bits
5922 extern __at(0x0E7B) __sfr B5D5;
5924 typedef struct
5926 unsigned B5D50 : 1;
5927 unsigned B5D51 : 1;
5928 unsigned B5D52 : 1;
5929 unsigned B5D53 : 1;
5930 unsigned B5D54 : 1;
5931 unsigned B5D55 : 1;
5932 unsigned B5D56 : 1;
5933 unsigned B5D57 : 1;
5934 } __B5D5bits_t;
5936 extern __at(0x0E7B) volatile __B5D5bits_t B5D5bits;
5938 #define _B5D50 0x01
5939 #define _B5D51 0x02
5940 #define _B5D52 0x04
5941 #define _B5D53 0x08
5942 #define _B5D54 0x10
5943 #define _B5D55 0x20
5944 #define _B5D56 0x40
5945 #define _B5D57 0x80
5947 //==============================================================================
5950 //==============================================================================
5951 // B5D6 Bits
5953 extern __at(0x0E7C) __sfr B5D6;
5955 typedef struct
5957 unsigned B5D60 : 1;
5958 unsigned B5D61 : 1;
5959 unsigned B5D62 : 1;
5960 unsigned B5D63 : 1;
5961 unsigned B5D64 : 1;
5962 unsigned B5D65 : 1;
5963 unsigned B5D66 : 1;
5964 unsigned B5D67 : 1;
5965 } __B5D6bits_t;
5967 extern __at(0x0E7C) volatile __B5D6bits_t B5D6bits;
5969 #define _B5D60 0x01
5970 #define _B5D61 0x02
5971 #define _B5D62 0x04
5972 #define _B5D63 0x08
5973 #define _B5D64 0x10
5974 #define _B5D65 0x20
5975 #define _B5D66 0x40
5976 #define _B5D67 0x80
5978 //==============================================================================
5981 //==============================================================================
5982 // B5D7 Bits
5984 extern __at(0x0E7D) __sfr B5D7;
5986 typedef struct
5988 unsigned B5D70 : 1;
5989 unsigned B5D71 : 1;
5990 unsigned B5D72 : 1;
5991 unsigned B5D73 : 1;
5992 unsigned B5D74 : 1;
5993 unsigned B5D75 : 1;
5994 unsigned B5D76 : 1;
5995 unsigned B5D77 : 1;
5996 } __B5D7bits_t;
5998 extern __at(0x0E7D) volatile __B5D7bits_t B5D7bits;
6000 #define _B5D70 0x01
6001 #define _B5D71 0x02
6002 #define _B5D72 0x04
6003 #define _B5D73 0x08
6004 #define _B5D74 0x10
6005 #define _B5D75 0x20
6006 #define _B5D76 0x40
6007 #define _B5D77 0x80
6009 //==============================================================================
6012 //==============================================================================
6013 // CANSTAT_RO4 Bits
6015 extern __at(0x0E7E) __sfr CANSTAT_RO4;
6017 typedef union
6019 struct
6021 unsigned EICODE0 : 1;
6022 unsigned EICODE1_ICODE0 : 1;
6023 unsigned EICODE2_ICODE1 : 1;
6024 unsigned EICODE3_ICODE2 : 1;
6025 unsigned EICODE4 : 1;
6026 unsigned OPMODE0 : 1;
6027 unsigned OPMODE1 : 1;
6028 unsigned OPMODE2 : 1;
6031 struct
6033 unsigned : 5;
6034 unsigned OPMODE : 3;
6036 } __CANSTAT_RO4bits_t;
6038 extern __at(0x0E7E) volatile __CANSTAT_RO4bits_t CANSTAT_RO4bits;
6040 #define _CANSTAT_RO4_EICODE0 0x01
6041 #define _CANSTAT_RO4_EICODE1_ICODE0 0x02
6042 #define _CANSTAT_RO4_EICODE2_ICODE1 0x04
6043 #define _CANSTAT_RO4_EICODE3_ICODE2 0x08
6044 #define _CANSTAT_RO4_EICODE4 0x10
6045 #define _CANSTAT_RO4_OPMODE0 0x20
6046 #define _CANSTAT_RO4_OPMODE1 0x40
6047 #define _CANSTAT_RO4_OPMODE2 0x80
6049 //==============================================================================
6052 //==============================================================================
6053 // CANCON_RO4 Bits
6055 extern __at(0x0E7F) __sfr CANCON_RO4;
6057 typedef union
6059 struct
6061 unsigned FP0 : 1;
6062 unsigned WIN0_FP1 : 1;
6063 unsigned WIN1_FP2 : 1;
6064 unsigned WIN2_FP3 : 1;
6065 unsigned ABAT : 1;
6066 unsigned REQOP0 : 1;
6067 unsigned REQOP1 : 1;
6068 unsigned REQOP2 : 1;
6071 struct
6073 unsigned : 5;
6074 unsigned REQOP : 3;
6076 } __CANCON_RO4bits_t;
6078 extern __at(0x0E7F) volatile __CANCON_RO4bits_t CANCON_RO4bits;
6080 #define _CANCON_RO4_FP0 0x01
6081 #define _CANCON_RO4_WIN0_FP1 0x02
6082 #define _CANCON_RO4_WIN1_FP2 0x04
6083 #define _CANCON_RO4_WIN2_FP3 0x08
6084 #define _CANCON_RO4_ABAT 0x10
6085 #define _CANCON_RO4_REQOP0 0x20
6086 #define _CANCON_RO4_REQOP1 0x40
6087 #define _CANCON_RO4_REQOP2 0x80
6089 //==============================================================================
6092 //==============================================================================
6093 // RXF0SIDH Bits
6095 extern __at(0x0F00) __sfr RXF0SIDH;
6097 typedef struct
6099 unsigned SID3 : 1;
6100 unsigned SID4 : 1;
6101 unsigned SID5 : 1;
6102 unsigned SID6 : 1;
6103 unsigned SID7 : 1;
6104 unsigned SID8 : 1;
6105 unsigned SID9 : 1;
6106 unsigned SID10 : 1;
6107 } __RXF0SIDHbits_t;
6109 extern __at(0x0F00) volatile __RXF0SIDHbits_t RXF0SIDHbits;
6111 #define _RXF0SIDH_SID3 0x01
6112 #define _RXF0SIDH_SID4 0x02
6113 #define _RXF0SIDH_SID5 0x04
6114 #define _RXF0SIDH_SID6 0x08
6115 #define _RXF0SIDH_SID7 0x10
6116 #define _RXF0SIDH_SID8 0x20
6117 #define _RXF0SIDH_SID9 0x40
6118 #define _RXF0SIDH_SID10 0x80
6120 //==============================================================================
6123 //==============================================================================
6124 // RXF0SIDL Bits
6126 extern __at(0x0F01) __sfr RXF0SIDL;
6128 typedef union
6130 struct
6132 unsigned EID16 : 1;
6133 unsigned EID17 : 1;
6134 unsigned : 1;
6135 unsigned EXIDEN : 1;
6136 unsigned : 1;
6137 unsigned SID0 : 1;
6138 unsigned SID1 : 1;
6139 unsigned SID2 : 1;
6142 struct
6144 unsigned : 1;
6145 unsigned : 1;
6146 unsigned : 1;
6147 unsigned EXIDE : 1;
6148 unsigned : 1;
6149 unsigned : 1;
6150 unsigned : 1;
6151 unsigned : 1;
6154 struct
6156 unsigned : 5;
6157 unsigned SID : 3;
6159 } __RXF0SIDLbits_t;
6161 extern __at(0x0F01) volatile __RXF0SIDLbits_t RXF0SIDLbits;
6163 #define _RXF0SIDL_EID16 0x01
6164 #define _RXF0SIDL_EID17 0x02
6165 #define _RXF0SIDL_EXIDEN 0x08
6166 #define _RXF0SIDL_EXIDE 0x08
6167 #define _RXF0SIDL_SID0 0x20
6168 #define _RXF0SIDL_SID1 0x40
6169 #define _RXF0SIDL_SID2 0x80
6171 //==============================================================================
6174 //==============================================================================
6175 // RXF0EIDH Bits
6177 extern __at(0x0F02) __sfr RXF0EIDH;
6179 typedef struct
6181 unsigned EID8 : 1;
6182 unsigned EID9 : 1;
6183 unsigned EID10 : 1;
6184 unsigned EID11 : 1;
6185 unsigned EID12 : 1;
6186 unsigned EID13 : 1;
6187 unsigned EID14 : 1;
6188 unsigned EID15 : 1;
6189 } __RXF0EIDHbits_t;
6191 extern __at(0x0F02) volatile __RXF0EIDHbits_t RXF0EIDHbits;
6193 #define _RXF0EIDH_EID8 0x01
6194 #define _RXF0EIDH_EID9 0x02
6195 #define _RXF0EIDH_EID10 0x04
6196 #define _RXF0EIDH_EID11 0x08
6197 #define _RXF0EIDH_EID12 0x10
6198 #define _RXF0EIDH_EID13 0x20
6199 #define _RXF0EIDH_EID14 0x40
6200 #define _RXF0EIDH_EID15 0x80
6202 //==============================================================================
6205 //==============================================================================
6206 // RXF0EIDL Bits
6208 extern __at(0x0F03) __sfr RXF0EIDL;
6210 typedef struct
6212 unsigned EID0 : 1;
6213 unsigned EID1 : 1;
6214 unsigned EID2 : 1;
6215 unsigned EID3 : 1;
6216 unsigned EID4 : 1;
6217 unsigned EID5 : 1;
6218 unsigned EID6 : 1;
6219 unsigned EID7 : 1;
6220 } __RXF0EIDLbits_t;
6222 extern __at(0x0F03) volatile __RXF0EIDLbits_t RXF0EIDLbits;
6224 #define _RXF0EIDL_EID0 0x01
6225 #define _RXF0EIDL_EID1 0x02
6226 #define _RXF0EIDL_EID2 0x04
6227 #define _RXF0EIDL_EID3 0x08
6228 #define _RXF0EIDL_EID4 0x10
6229 #define _RXF0EIDL_EID5 0x20
6230 #define _RXF0EIDL_EID6 0x40
6231 #define _RXF0EIDL_EID7 0x80
6233 //==============================================================================
6236 //==============================================================================
6237 // RXF1SIDH Bits
6239 extern __at(0x0F04) __sfr RXF1SIDH;
6241 typedef struct
6243 unsigned SID3 : 1;
6244 unsigned SID4 : 1;
6245 unsigned SID5 : 1;
6246 unsigned SID6 : 1;
6247 unsigned SID7 : 1;
6248 unsigned SID8 : 1;
6249 unsigned SID9 : 1;
6250 unsigned SID10 : 1;
6251 } __RXF1SIDHbits_t;
6253 extern __at(0x0F04) volatile __RXF1SIDHbits_t RXF1SIDHbits;
6255 #define _RXF1SIDH_SID3 0x01
6256 #define _RXF1SIDH_SID4 0x02
6257 #define _RXF1SIDH_SID5 0x04
6258 #define _RXF1SIDH_SID6 0x08
6259 #define _RXF1SIDH_SID7 0x10
6260 #define _RXF1SIDH_SID8 0x20
6261 #define _RXF1SIDH_SID9 0x40
6262 #define _RXF1SIDH_SID10 0x80
6264 //==============================================================================
6267 //==============================================================================
6268 // RXF1SIDL Bits
6270 extern __at(0x0F05) __sfr RXF1SIDL;
6272 typedef union
6274 struct
6276 unsigned EID16 : 1;
6277 unsigned EID17 : 1;
6278 unsigned : 1;
6279 unsigned EXIDEN : 1;
6280 unsigned : 1;
6281 unsigned SID0 : 1;
6282 unsigned SID1 : 1;
6283 unsigned SID2 : 1;
6286 struct
6288 unsigned : 1;
6289 unsigned : 1;
6290 unsigned : 1;
6291 unsigned EXIDE : 1;
6292 unsigned : 1;
6293 unsigned : 1;
6294 unsigned : 1;
6295 unsigned : 1;
6298 struct
6300 unsigned : 5;
6301 unsigned SID : 3;
6303 } __RXF1SIDLbits_t;
6305 extern __at(0x0F05) volatile __RXF1SIDLbits_t RXF1SIDLbits;
6307 #define _RXF1SIDL_EID16 0x01
6308 #define _RXF1SIDL_EID17 0x02
6309 #define _RXF1SIDL_EXIDEN 0x08
6310 #define _RXF1SIDL_EXIDE 0x08
6311 #define _RXF1SIDL_SID0 0x20
6312 #define _RXF1SIDL_SID1 0x40
6313 #define _RXF1SIDL_SID2 0x80
6315 //==============================================================================
6318 //==============================================================================
6319 // RXF1EIDH Bits
6321 extern __at(0x0F06) __sfr RXF1EIDH;
6323 typedef struct
6325 unsigned EID8 : 1;
6326 unsigned EID9 : 1;
6327 unsigned EID10 : 1;
6328 unsigned EID11 : 1;
6329 unsigned EID12 : 1;
6330 unsigned EID13 : 1;
6331 unsigned EID14 : 1;
6332 unsigned EID15 : 1;
6333 } __RXF1EIDHbits_t;
6335 extern __at(0x0F06) volatile __RXF1EIDHbits_t RXF1EIDHbits;
6337 #define _RXF1EIDH_EID8 0x01
6338 #define _RXF1EIDH_EID9 0x02
6339 #define _RXF1EIDH_EID10 0x04
6340 #define _RXF1EIDH_EID11 0x08
6341 #define _RXF1EIDH_EID12 0x10
6342 #define _RXF1EIDH_EID13 0x20
6343 #define _RXF1EIDH_EID14 0x40
6344 #define _RXF1EIDH_EID15 0x80
6346 //==============================================================================
6349 //==============================================================================
6350 // RXF1EIDL Bits
6352 extern __at(0x0F07) __sfr RXF1EIDL;
6354 typedef struct
6356 unsigned EID0 : 1;
6357 unsigned EID1 : 1;
6358 unsigned EID2 : 1;
6359 unsigned EID3 : 1;
6360 unsigned EID4 : 1;
6361 unsigned EID5 : 1;
6362 unsigned EID6 : 1;
6363 unsigned EID7 : 1;
6364 } __RXF1EIDLbits_t;
6366 extern __at(0x0F07) volatile __RXF1EIDLbits_t RXF1EIDLbits;
6368 #define _RXF1EIDL_EID0 0x01
6369 #define _RXF1EIDL_EID1 0x02
6370 #define _RXF1EIDL_EID2 0x04
6371 #define _RXF1EIDL_EID3 0x08
6372 #define _RXF1EIDL_EID4 0x10
6373 #define _RXF1EIDL_EID5 0x20
6374 #define _RXF1EIDL_EID6 0x40
6375 #define _RXF1EIDL_EID7 0x80
6377 //==============================================================================
6380 //==============================================================================
6381 // RXF2SIDH Bits
6383 extern __at(0x0F08) __sfr RXF2SIDH;
6385 typedef struct
6387 unsigned SID3 : 1;
6388 unsigned SID4 : 1;
6389 unsigned SID5 : 1;
6390 unsigned SID6 : 1;
6391 unsigned SID7 : 1;
6392 unsigned SID8 : 1;
6393 unsigned SID9 : 1;
6394 unsigned SID10 : 1;
6395 } __RXF2SIDHbits_t;
6397 extern __at(0x0F08) volatile __RXF2SIDHbits_t RXF2SIDHbits;
6399 #define _RXF2SIDH_SID3 0x01
6400 #define _RXF2SIDH_SID4 0x02
6401 #define _RXF2SIDH_SID5 0x04
6402 #define _RXF2SIDH_SID6 0x08
6403 #define _RXF2SIDH_SID7 0x10
6404 #define _RXF2SIDH_SID8 0x20
6405 #define _RXF2SIDH_SID9 0x40
6406 #define _RXF2SIDH_SID10 0x80
6408 //==============================================================================
6411 //==============================================================================
6412 // RXF2SIDL Bits
6414 extern __at(0x0F09) __sfr RXF2SIDL;
6416 typedef union
6418 struct
6420 unsigned EID16 : 1;
6421 unsigned EID17 : 1;
6422 unsigned : 1;
6423 unsigned EXIDEN : 1;
6424 unsigned : 1;
6425 unsigned SID0 : 1;
6426 unsigned SID1 : 1;
6427 unsigned SID2 : 1;
6430 struct
6432 unsigned : 1;
6433 unsigned : 1;
6434 unsigned : 1;
6435 unsigned EXIDE : 1;
6436 unsigned : 1;
6437 unsigned : 1;
6438 unsigned : 1;
6439 unsigned : 1;
6442 struct
6444 unsigned : 5;
6445 unsigned SID : 3;
6447 } __RXF2SIDLbits_t;
6449 extern __at(0x0F09) volatile __RXF2SIDLbits_t RXF2SIDLbits;
6451 #define _RXF2SIDL_EID16 0x01
6452 #define _RXF2SIDL_EID17 0x02
6453 #define _RXF2SIDL_EXIDEN 0x08
6454 #define _RXF2SIDL_EXIDE 0x08
6455 #define _RXF2SIDL_SID0 0x20
6456 #define _RXF2SIDL_SID1 0x40
6457 #define _RXF2SIDL_SID2 0x80
6459 //==============================================================================
6462 //==============================================================================
6463 // RXF2EIDH Bits
6465 extern __at(0x0F0A) __sfr RXF2EIDH;
6467 typedef struct
6469 unsigned EID8 : 1;
6470 unsigned EID9 : 1;
6471 unsigned EID10 : 1;
6472 unsigned EID11 : 1;
6473 unsigned EID12 : 1;
6474 unsigned EID13 : 1;
6475 unsigned EID14 : 1;
6476 unsigned EID15 : 1;
6477 } __RXF2EIDHbits_t;
6479 extern __at(0x0F0A) volatile __RXF2EIDHbits_t RXF2EIDHbits;
6481 #define _RXF2EIDH_EID8 0x01
6482 #define _RXF2EIDH_EID9 0x02
6483 #define _RXF2EIDH_EID10 0x04
6484 #define _RXF2EIDH_EID11 0x08
6485 #define _RXF2EIDH_EID12 0x10
6486 #define _RXF2EIDH_EID13 0x20
6487 #define _RXF2EIDH_EID14 0x40
6488 #define _RXF2EIDH_EID15 0x80
6490 //==============================================================================
6493 //==============================================================================
6494 // RXF2EIDL Bits
6496 extern __at(0x0F0B) __sfr RXF2EIDL;
6498 typedef struct
6500 unsigned EID0 : 1;
6501 unsigned EID1 : 1;
6502 unsigned EID2 : 1;
6503 unsigned EID3 : 1;
6504 unsigned EID4 : 1;
6505 unsigned EID5 : 1;
6506 unsigned EID6 : 1;
6507 unsigned EID7 : 1;
6508 } __RXF2EIDLbits_t;
6510 extern __at(0x0F0B) volatile __RXF2EIDLbits_t RXF2EIDLbits;
6512 #define _RXF2EIDL_EID0 0x01
6513 #define _RXF2EIDL_EID1 0x02
6514 #define _RXF2EIDL_EID2 0x04
6515 #define _RXF2EIDL_EID3 0x08
6516 #define _RXF2EIDL_EID4 0x10
6517 #define _RXF2EIDL_EID5 0x20
6518 #define _RXF2EIDL_EID6 0x40
6519 #define _RXF2EIDL_EID7 0x80
6521 //==============================================================================
6524 //==============================================================================
6525 // RXF3SIDH Bits
6527 extern __at(0x0F0C) __sfr RXF3SIDH;
6529 typedef struct
6531 unsigned SID3 : 1;
6532 unsigned SID4 : 1;
6533 unsigned SID5 : 1;
6534 unsigned SID6 : 1;
6535 unsigned SID7 : 1;
6536 unsigned SID8 : 1;
6537 unsigned SID9 : 1;
6538 unsigned SID10 : 1;
6539 } __RXF3SIDHbits_t;
6541 extern __at(0x0F0C) volatile __RXF3SIDHbits_t RXF3SIDHbits;
6543 #define _RXF3SIDH_SID3 0x01
6544 #define _RXF3SIDH_SID4 0x02
6545 #define _RXF3SIDH_SID5 0x04
6546 #define _RXF3SIDH_SID6 0x08
6547 #define _RXF3SIDH_SID7 0x10
6548 #define _RXF3SIDH_SID8 0x20
6549 #define _RXF3SIDH_SID9 0x40
6550 #define _RXF3SIDH_SID10 0x80
6552 //==============================================================================
6555 //==============================================================================
6556 // RXF3SIDL Bits
6558 extern __at(0x0F0D) __sfr RXF3SIDL;
6560 typedef union
6562 struct
6564 unsigned EID16 : 1;
6565 unsigned EID17 : 1;
6566 unsigned : 1;
6567 unsigned EXIDEN : 1;
6568 unsigned : 1;
6569 unsigned SID0 : 1;
6570 unsigned SID1 : 1;
6571 unsigned SID2 : 1;
6574 struct
6576 unsigned : 1;
6577 unsigned : 1;
6578 unsigned : 1;
6579 unsigned EXIDE : 1;
6580 unsigned : 1;
6581 unsigned : 1;
6582 unsigned : 1;
6583 unsigned : 1;
6586 struct
6588 unsigned : 5;
6589 unsigned SID : 3;
6591 } __RXF3SIDLbits_t;
6593 extern __at(0x0F0D) volatile __RXF3SIDLbits_t RXF3SIDLbits;
6595 #define _RXF3SIDL_EID16 0x01
6596 #define _RXF3SIDL_EID17 0x02
6597 #define _RXF3SIDL_EXIDEN 0x08
6598 #define _RXF3SIDL_EXIDE 0x08
6599 #define _RXF3SIDL_SID0 0x20
6600 #define _RXF3SIDL_SID1 0x40
6601 #define _RXF3SIDL_SID2 0x80
6603 //==============================================================================
6606 //==============================================================================
6607 // RXF3EIDH Bits
6609 extern __at(0x0F0E) __sfr RXF3EIDH;
6611 typedef struct
6613 unsigned EID8 : 1;
6614 unsigned EID9 : 1;
6615 unsigned EID10 : 1;
6616 unsigned EID11 : 1;
6617 unsigned EID12 : 1;
6618 unsigned EID13 : 1;
6619 unsigned EID14 : 1;
6620 unsigned EID15 : 1;
6621 } __RXF3EIDHbits_t;
6623 extern __at(0x0F0E) volatile __RXF3EIDHbits_t RXF3EIDHbits;
6625 #define _RXF3EIDH_EID8 0x01
6626 #define _RXF3EIDH_EID9 0x02
6627 #define _RXF3EIDH_EID10 0x04
6628 #define _RXF3EIDH_EID11 0x08
6629 #define _RXF3EIDH_EID12 0x10
6630 #define _RXF3EIDH_EID13 0x20
6631 #define _RXF3EIDH_EID14 0x40
6632 #define _RXF3EIDH_EID15 0x80
6634 //==============================================================================
6637 //==============================================================================
6638 // RXF3EIDL Bits
6640 extern __at(0x0F0F) __sfr RXF3EIDL;
6642 typedef struct
6644 unsigned EID0 : 1;
6645 unsigned EID1 : 1;
6646 unsigned EID2 : 1;
6647 unsigned EID3 : 1;
6648 unsigned EID4 : 1;
6649 unsigned EID5 : 1;
6650 unsigned EID6 : 1;
6651 unsigned EID7 : 1;
6652 } __RXF3EIDLbits_t;
6654 extern __at(0x0F0F) volatile __RXF3EIDLbits_t RXF3EIDLbits;
6656 #define _RXF3EIDL_EID0 0x01
6657 #define _RXF3EIDL_EID1 0x02
6658 #define _RXF3EIDL_EID2 0x04
6659 #define _RXF3EIDL_EID3 0x08
6660 #define _RXF3EIDL_EID4 0x10
6661 #define _RXF3EIDL_EID5 0x20
6662 #define _RXF3EIDL_EID6 0x40
6663 #define _RXF3EIDL_EID7 0x80
6665 //==============================================================================
6668 //==============================================================================
6669 // RXF4SIDH Bits
6671 extern __at(0x0F10) __sfr RXF4SIDH;
6673 typedef struct
6675 unsigned SID3 : 1;
6676 unsigned SID4 : 1;
6677 unsigned SID5 : 1;
6678 unsigned SID6 : 1;
6679 unsigned SID7 : 1;
6680 unsigned SID8 : 1;
6681 unsigned SID9 : 1;
6682 unsigned SID10 : 1;
6683 } __RXF4SIDHbits_t;
6685 extern __at(0x0F10) volatile __RXF4SIDHbits_t RXF4SIDHbits;
6687 #define _RXF4SIDH_SID3 0x01
6688 #define _RXF4SIDH_SID4 0x02
6689 #define _RXF4SIDH_SID5 0x04
6690 #define _RXF4SIDH_SID6 0x08
6691 #define _RXF4SIDH_SID7 0x10
6692 #define _RXF4SIDH_SID8 0x20
6693 #define _RXF4SIDH_SID9 0x40
6694 #define _RXF4SIDH_SID10 0x80
6696 //==============================================================================
6699 //==============================================================================
6700 // RXF4SIDL Bits
6702 extern __at(0x0F11) __sfr RXF4SIDL;
6704 typedef union
6706 struct
6708 unsigned EID16 : 1;
6709 unsigned EID17 : 1;
6710 unsigned : 1;
6711 unsigned EXIDEN : 1;
6712 unsigned : 1;
6713 unsigned SID0 : 1;
6714 unsigned SID1 : 1;
6715 unsigned SID2 : 1;
6718 struct
6720 unsigned : 1;
6721 unsigned : 1;
6722 unsigned : 1;
6723 unsigned EXIDE : 1;
6724 unsigned : 1;
6725 unsigned : 1;
6726 unsigned : 1;
6727 unsigned : 1;
6730 struct
6732 unsigned : 5;
6733 unsigned SID : 3;
6735 } __RXF4SIDLbits_t;
6737 extern __at(0x0F11) volatile __RXF4SIDLbits_t RXF4SIDLbits;
6739 #define _RXF4SIDL_EID16 0x01
6740 #define _RXF4SIDL_EID17 0x02
6741 #define _RXF4SIDL_EXIDEN 0x08
6742 #define _RXF4SIDL_EXIDE 0x08
6743 #define _RXF4SIDL_SID0 0x20
6744 #define _RXF4SIDL_SID1 0x40
6745 #define _RXF4SIDL_SID2 0x80
6747 //==============================================================================
6750 //==============================================================================
6751 // RXF4EIDH Bits
6753 extern __at(0x0F12) __sfr RXF4EIDH;
6755 typedef struct
6757 unsigned EID8 : 1;
6758 unsigned EID9 : 1;
6759 unsigned EID10 : 1;
6760 unsigned EID11 : 1;
6761 unsigned EID12 : 1;
6762 unsigned EID13 : 1;
6763 unsigned EID14 : 1;
6764 unsigned EID15 : 1;
6765 } __RXF4EIDHbits_t;
6767 extern __at(0x0F12) volatile __RXF4EIDHbits_t RXF4EIDHbits;
6769 #define _RXF4EIDH_EID8 0x01
6770 #define _RXF4EIDH_EID9 0x02
6771 #define _RXF4EIDH_EID10 0x04
6772 #define _RXF4EIDH_EID11 0x08
6773 #define _RXF4EIDH_EID12 0x10
6774 #define _RXF4EIDH_EID13 0x20
6775 #define _RXF4EIDH_EID14 0x40
6776 #define _RXF4EIDH_EID15 0x80
6778 //==============================================================================
6781 //==============================================================================
6782 // RXF4EIDL Bits
6784 extern __at(0x0F13) __sfr RXF4EIDL;
6786 typedef struct
6788 unsigned EID0 : 1;
6789 unsigned EID1 : 1;
6790 unsigned EID2 : 1;
6791 unsigned EID3 : 1;
6792 unsigned EID4 : 1;
6793 unsigned EID5 : 1;
6794 unsigned EID6 : 1;
6795 unsigned EID7 : 1;
6796 } __RXF4EIDLbits_t;
6798 extern __at(0x0F13) volatile __RXF4EIDLbits_t RXF4EIDLbits;
6800 #define _RXF4EIDL_EID0 0x01
6801 #define _RXF4EIDL_EID1 0x02
6802 #define _RXF4EIDL_EID2 0x04
6803 #define _RXF4EIDL_EID3 0x08
6804 #define _RXF4EIDL_EID4 0x10
6805 #define _RXF4EIDL_EID5 0x20
6806 #define _RXF4EIDL_EID6 0x40
6807 #define _RXF4EIDL_EID7 0x80
6809 //==============================================================================
6812 //==============================================================================
6813 // RXF5SIDH Bits
6815 extern __at(0x0F14) __sfr RXF5SIDH;
6817 typedef struct
6819 unsigned SID3 : 1;
6820 unsigned SID4 : 1;
6821 unsigned SID5 : 1;
6822 unsigned SID6 : 1;
6823 unsigned SID7 : 1;
6824 unsigned SID8 : 1;
6825 unsigned SID9 : 1;
6826 unsigned SID10 : 1;
6827 } __RXF5SIDHbits_t;
6829 extern __at(0x0F14) volatile __RXF5SIDHbits_t RXF5SIDHbits;
6831 #define _RXF5SIDH_SID3 0x01
6832 #define _RXF5SIDH_SID4 0x02
6833 #define _RXF5SIDH_SID5 0x04
6834 #define _RXF5SIDH_SID6 0x08
6835 #define _RXF5SIDH_SID7 0x10
6836 #define _RXF5SIDH_SID8 0x20
6837 #define _RXF5SIDH_SID9 0x40
6838 #define _RXF5SIDH_SID10 0x80
6840 //==============================================================================
6843 //==============================================================================
6844 // RXF5SIDL Bits
6846 extern __at(0x0F15) __sfr RXF5SIDL;
6848 typedef union
6850 struct
6852 unsigned EID16 : 1;
6853 unsigned EID17 : 1;
6854 unsigned : 1;
6855 unsigned EXIDEN : 1;
6856 unsigned : 1;
6857 unsigned SID0 : 1;
6858 unsigned SID1 : 1;
6859 unsigned SID2 : 1;
6862 struct
6864 unsigned : 1;
6865 unsigned : 1;
6866 unsigned : 1;
6867 unsigned EXIDE : 1;
6868 unsigned : 1;
6869 unsigned : 1;
6870 unsigned : 1;
6871 unsigned : 1;
6874 struct
6876 unsigned : 5;
6877 unsigned SID : 3;
6879 } __RXF5SIDLbits_t;
6881 extern __at(0x0F15) volatile __RXF5SIDLbits_t RXF5SIDLbits;
6883 #define _RXF5SIDL_EID16 0x01
6884 #define _RXF5SIDL_EID17 0x02
6885 #define _RXF5SIDL_EXIDEN 0x08
6886 #define _RXF5SIDL_EXIDE 0x08
6887 #define _RXF5SIDL_SID0 0x20
6888 #define _RXF5SIDL_SID1 0x40
6889 #define _RXF5SIDL_SID2 0x80
6891 //==============================================================================
6894 //==============================================================================
6895 // RXF5EIDH Bits
6897 extern __at(0x0F16) __sfr RXF5EIDH;
6899 typedef struct
6901 unsigned EID8 : 1;
6902 unsigned EID9 : 1;
6903 unsigned EID10 : 1;
6904 unsigned EID11 : 1;
6905 unsigned EID12 : 1;
6906 unsigned EID13 : 1;
6907 unsigned EID14 : 1;
6908 unsigned EID15 : 1;
6909 } __RXF5EIDHbits_t;
6911 extern __at(0x0F16) volatile __RXF5EIDHbits_t RXF5EIDHbits;
6913 #define _RXF5EIDH_EID8 0x01
6914 #define _RXF5EIDH_EID9 0x02
6915 #define _RXF5EIDH_EID10 0x04
6916 #define _RXF5EIDH_EID11 0x08
6917 #define _RXF5EIDH_EID12 0x10
6918 #define _RXF5EIDH_EID13 0x20
6919 #define _RXF5EIDH_EID14 0x40
6920 #define _RXF5EIDH_EID15 0x80
6922 //==============================================================================
6925 //==============================================================================
6926 // RXF5EIDL Bits
6928 extern __at(0x0F17) __sfr RXF5EIDL;
6930 typedef struct
6932 unsigned EID0 : 1;
6933 unsigned EID1 : 1;
6934 unsigned EID2 : 1;
6935 unsigned EID3 : 1;
6936 unsigned EID4 : 1;
6937 unsigned EID5 : 1;
6938 unsigned EID6 : 1;
6939 unsigned EID7 : 1;
6940 } __RXF5EIDLbits_t;
6942 extern __at(0x0F17) volatile __RXF5EIDLbits_t RXF5EIDLbits;
6944 #define _RXF5EIDL_EID0 0x01
6945 #define _RXF5EIDL_EID1 0x02
6946 #define _RXF5EIDL_EID2 0x04
6947 #define _RXF5EIDL_EID3 0x08
6948 #define _RXF5EIDL_EID4 0x10
6949 #define _RXF5EIDL_EID5 0x20
6950 #define _RXF5EIDL_EID6 0x40
6951 #define _RXF5EIDL_EID7 0x80
6953 //==============================================================================
6956 //==============================================================================
6957 // RXM0SIDH Bits
6959 extern __at(0x0F18) __sfr RXM0SIDH;
6961 typedef struct
6963 unsigned SID3 : 1;
6964 unsigned SID4 : 1;
6965 unsigned SID5 : 1;
6966 unsigned SID6 : 1;
6967 unsigned SID7 : 1;
6968 unsigned SID8 : 1;
6969 unsigned SID9 : 1;
6970 unsigned SID10 : 1;
6971 } __RXM0SIDHbits_t;
6973 extern __at(0x0F18) volatile __RXM0SIDHbits_t RXM0SIDHbits;
6975 #define _RXM0SIDH_SID3 0x01
6976 #define _RXM0SIDH_SID4 0x02
6977 #define _RXM0SIDH_SID5 0x04
6978 #define _RXM0SIDH_SID6 0x08
6979 #define _RXM0SIDH_SID7 0x10
6980 #define _RXM0SIDH_SID8 0x20
6981 #define _RXM0SIDH_SID9 0x40
6982 #define _RXM0SIDH_SID10 0x80
6984 //==============================================================================
6987 //==============================================================================
6988 // RXM0SIDL Bits
6990 extern __at(0x0F19) __sfr RXM0SIDL;
6992 typedef union
6994 struct
6996 unsigned EID16 : 1;
6997 unsigned EID17 : 1;
6998 unsigned : 1;
6999 unsigned EXIDM : 1;
7000 unsigned : 1;
7001 unsigned SID0 : 1;
7002 unsigned SID1 : 1;
7003 unsigned SID2 : 1;
7006 struct
7008 unsigned : 1;
7009 unsigned : 1;
7010 unsigned : 1;
7011 unsigned EXIDEN : 1;
7012 unsigned : 1;
7013 unsigned : 1;
7014 unsigned : 1;
7015 unsigned : 1;
7018 struct
7020 unsigned : 5;
7021 unsigned SID : 3;
7023 } __RXM0SIDLbits_t;
7025 extern __at(0x0F19) volatile __RXM0SIDLbits_t RXM0SIDLbits;
7027 #define _RXM0SIDL_EID16 0x01
7028 #define _RXM0SIDL_EID17 0x02
7029 #define _RXM0SIDL_EXIDM 0x08
7030 #define _RXM0SIDL_EXIDEN 0x08
7031 #define _RXM0SIDL_SID0 0x20
7032 #define _RXM0SIDL_SID1 0x40
7033 #define _RXM0SIDL_SID2 0x80
7035 //==============================================================================
7038 //==============================================================================
7039 // RXM0EIDH Bits
7041 extern __at(0x0F1A) __sfr RXM0EIDH;
7043 typedef struct
7045 unsigned EID8 : 1;
7046 unsigned EID9 : 1;
7047 unsigned EID10 : 1;
7048 unsigned EID11 : 1;
7049 unsigned EID12 : 1;
7050 unsigned EID13 : 1;
7051 unsigned EID14 : 1;
7052 unsigned EID15 : 1;
7053 } __RXM0EIDHbits_t;
7055 extern __at(0x0F1A) volatile __RXM0EIDHbits_t RXM0EIDHbits;
7057 #define _RXM0EIDH_EID8 0x01
7058 #define _RXM0EIDH_EID9 0x02
7059 #define _RXM0EIDH_EID10 0x04
7060 #define _RXM0EIDH_EID11 0x08
7061 #define _RXM0EIDH_EID12 0x10
7062 #define _RXM0EIDH_EID13 0x20
7063 #define _RXM0EIDH_EID14 0x40
7064 #define _RXM0EIDH_EID15 0x80
7066 //==============================================================================
7069 //==============================================================================
7070 // RXM0EIDL Bits
7072 extern __at(0x0F1B) __sfr RXM0EIDL;
7074 typedef struct
7076 unsigned EID0 : 1;
7077 unsigned EID1 : 1;
7078 unsigned EID2 : 1;
7079 unsigned EID3 : 1;
7080 unsigned EID4 : 1;
7081 unsigned EID5 : 1;
7082 unsigned EID6 : 1;
7083 unsigned EID7 : 1;
7084 } __RXM0EIDLbits_t;
7086 extern __at(0x0F1B) volatile __RXM0EIDLbits_t RXM0EIDLbits;
7088 #define _RXM0EIDL_EID0 0x01
7089 #define _RXM0EIDL_EID1 0x02
7090 #define _RXM0EIDL_EID2 0x04
7091 #define _RXM0EIDL_EID3 0x08
7092 #define _RXM0EIDL_EID4 0x10
7093 #define _RXM0EIDL_EID5 0x20
7094 #define _RXM0EIDL_EID6 0x40
7095 #define _RXM0EIDL_EID7 0x80
7097 //==============================================================================
7100 //==============================================================================
7101 // RXM1SIDH Bits
7103 extern __at(0x0F1C) __sfr RXM1SIDH;
7105 typedef struct
7107 unsigned SID3 : 1;
7108 unsigned SID4 : 1;
7109 unsigned SID5 : 1;
7110 unsigned SID6 : 1;
7111 unsigned SID7 : 1;
7112 unsigned SID8 : 1;
7113 unsigned SID9 : 1;
7114 unsigned SID10 : 1;
7115 } __RXM1SIDHbits_t;
7117 extern __at(0x0F1C) volatile __RXM1SIDHbits_t RXM1SIDHbits;
7119 #define _RXM1SIDH_SID3 0x01
7120 #define _RXM1SIDH_SID4 0x02
7121 #define _RXM1SIDH_SID5 0x04
7122 #define _RXM1SIDH_SID6 0x08
7123 #define _RXM1SIDH_SID7 0x10
7124 #define _RXM1SIDH_SID8 0x20
7125 #define _RXM1SIDH_SID9 0x40
7126 #define _RXM1SIDH_SID10 0x80
7128 //==============================================================================
7131 //==============================================================================
7132 // RXM1SIDL Bits
7134 extern __at(0x0F1D) __sfr RXM1SIDL;
7136 typedef union
7138 struct
7140 unsigned EID16 : 1;
7141 unsigned EID17 : 1;
7142 unsigned : 1;
7143 unsigned EXIDEN : 1;
7144 unsigned : 1;
7145 unsigned SID0 : 1;
7146 unsigned SID1 : 1;
7147 unsigned SID2 : 1;
7150 struct
7152 unsigned : 5;
7153 unsigned SID : 3;
7155 } __RXM1SIDLbits_t;
7157 extern __at(0x0F1D) volatile __RXM1SIDLbits_t RXM1SIDLbits;
7159 #define _RXM1SIDL_EID16 0x01
7160 #define _RXM1SIDL_EID17 0x02
7161 #define _RXM1SIDL_EXIDEN 0x08
7162 #define _RXM1SIDL_SID0 0x20
7163 #define _RXM1SIDL_SID1 0x40
7164 #define _RXM1SIDL_SID2 0x80
7166 //==============================================================================
7169 //==============================================================================
7170 // RXM1EIDH Bits
7172 extern __at(0x0F1E) __sfr RXM1EIDH;
7174 typedef struct
7176 unsigned EID8 : 1;
7177 unsigned EID9 : 1;
7178 unsigned EID10 : 1;
7179 unsigned EID11 : 1;
7180 unsigned EID12 : 1;
7181 unsigned EID13 : 1;
7182 unsigned EID14 : 1;
7183 unsigned EID15 : 1;
7184 } __RXM1EIDHbits_t;
7186 extern __at(0x0F1E) volatile __RXM1EIDHbits_t RXM1EIDHbits;
7188 #define _RXM1EIDH_EID8 0x01
7189 #define _RXM1EIDH_EID9 0x02
7190 #define _RXM1EIDH_EID10 0x04
7191 #define _RXM1EIDH_EID11 0x08
7192 #define _RXM1EIDH_EID12 0x10
7193 #define _RXM1EIDH_EID13 0x20
7194 #define _RXM1EIDH_EID14 0x40
7195 #define _RXM1EIDH_EID15 0x80
7197 //==============================================================================
7200 //==============================================================================
7201 // RXM1EIDL Bits
7203 extern __at(0x0F1F) __sfr RXM1EIDL;
7205 typedef struct
7207 unsigned EID0 : 1;
7208 unsigned EID1 : 1;
7209 unsigned EID2 : 1;
7210 unsigned EID3 : 1;
7211 unsigned EID4 : 1;
7212 unsigned EID5 : 1;
7213 unsigned EID6 : 1;
7214 unsigned EID7 : 1;
7215 } __RXM1EIDLbits_t;
7217 extern __at(0x0F1F) volatile __RXM1EIDLbits_t RXM1EIDLbits;
7219 #define _RXM1EIDL_EID0 0x01
7220 #define _RXM1EIDL_EID1 0x02
7221 #define _RXM1EIDL_EID2 0x04
7222 #define _RXM1EIDL_EID3 0x08
7223 #define _RXM1EIDL_EID4 0x10
7224 #define _RXM1EIDL_EID5 0x20
7225 #define _RXM1EIDL_EID6 0x40
7226 #define _RXM1EIDL_EID7 0x80
7228 //==============================================================================
7231 //==============================================================================
7232 // TXB2CON Bits
7234 extern __at(0x0F20) __sfr TXB2CON;
7236 typedef union
7238 struct
7240 unsigned TXPRI0 : 1;
7241 unsigned TXPRI1 : 1;
7242 unsigned : 1;
7243 unsigned TXREQ : 1;
7244 unsigned TXERR : 1;
7245 unsigned TXLARB : 1;
7246 unsigned TXABT : 1;
7247 unsigned TXBIF : 1;
7250 struct
7252 unsigned : 1;
7253 unsigned : 1;
7254 unsigned : 1;
7255 unsigned : 1;
7256 unsigned : 1;
7257 unsigned : 1;
7258 unsigned : 1;
7259 unsigned TXBIFBXB2CON : 1;
7262 struct
7264 unsigned TXPRI : 2;
7265 unsigned : 6;
7267 } __TXB2CONbits_t;
7269 extern __at(0x0F20) volatile __TXB2CONbits_t TXB2CONbits;
7271 #define _TXB2CON_TXPRI0 0x01
7272 #define _TXB2CON_TXPRI1 0x02
7273 #define _TXB2CON_TXREQ 0x08
7274 #define _TXB2CON_TXERR 0x10
7275 #define _TXB2CON_TXLARB 0x20
7276 #define _TXB2CON_TXABT 0x40
7277 #define _TXB2CON_TXBIF 0x80
7278 #define _TXB2CON_TXBIFBXB2CON 0x80
7280 //==============================================================================
7283 //==============================================================================
7284 // TXB2SIDH Bits
7286 extern __at(0x0F21) __sfr TXB2SIDH;
7288 typedef struct
7290 unsigned SID3 : 1;
7291 unsigned SID4 : 1;
7292 unsigned SID5 : 1;
7293 unsigned SID6 : 1;
7294 unsigned SID7 : 1;
7295 unsigned SID8 : 1;
7296 unsigned SID9 : 1;
7297 unsigned SID10 : 1;
7298 } __TXB2SIDHbits_t;
7300 extern __at(0x0F21) volatile __TXB2SIDHbits_t TXB2SIDHbits;
7302 #define _TXB2SIDH_SID3 0x01
7303 #define _TXB2SIDH_SID4 0x02
7304 #define _TXB2SIDH_SID5 0x04
7305 #define _TXB2SIDH_SID6 0x08
7306 #define _TXB2SIDH_SID7 0x10
7307 #define _TXB2SIDH_SID8 0x20
7308 #define _TXB2SIDH_SID9 0x40
7309 #define _TXB2SIDH_SID10 0x80
7311 //==============================================================================
7314 //==============================================================================
7315 // TXB2SIDL Bits
7317 extern __at(0x0F22) __sfr TXB2SIDL;
7319 typedef union
7321 struct
7323 unsigned EID16 : 1;
7324 unsigned EID17 : 1;
7325 unsigned : 1;
7326 unsigned EXIDE : 1;
7327 unsigned : 1;
7328 unsigned SID0 : 1;
7329 unsigned SID1 : 1;
7330 unsigned SID2 : 1;
7333 struct
7335 unsigned : 5;
7336 unsigned SID : 3;
7338 } __TXB2SIDLbits_t;
7340 extern __at(0x0F22) volatile __TXB2SIDLbits_t TXB2SIDLbits;
7342 #define _TXB2SIDL_EID16 0x01
7343 #define _TXB2SIDL_EID17 0x02
7344 #define _TXB2SIDL_EXIDE 0x08
7345 #define _TXB2SIDL_SID0 0x20
7346 #define _TXB2SIDL_SID1 0x40
7347 #define _TXB2SIDL_SID2 0x80
7349 //==============================================================================
7352 //==============================================================================
7353 // TXB2EIDH Bits
7355 extern __at(0x0F23) __sfr TXB2EIDH;
7357 typedef struct
7359 unsigned EID8 : 1;
7360 unsigned EID9 : 1;
7361 unsigned EID10 : 1;
7362 unsigned EID11 : 1;
7363 unsigned EID12 : 1;
7364 unsigned EID13 : 1;
7365 unsigned EID14 : 1;
7366 unsigned EID15 : 1;
7367 } __TXB2EIDHbits_t;
7369 extern __at(0x0F23) volatile __TXB2EIDHbits_t TXB2EIDHbits;
7371 #define _TXB2EIDH_EID8 0x01
7372 #define _TXB2EIDH_EID9 0x02
7373 #define _TXB2EIDH_EID10 0x04
7374 #define _TXB2EIDH_EID11 0x08
7375 #define _TXB2EIDH_EID12 0x10
7376 #define _TXB2EIDH_EID13 0x20
7377 #define _TXB2EIDH_EID14 0x40
7378 #define _TXB2EIDH_EID15 0x80
7380 //==============================================================================
7383 //==============================================================================
7384 // TXB2EIDL Bits
7386 extern __at(0x0F24) __sfr TXB2EIDL;
7388 typedef struct
7390 unsigned EID0 : 1;
7391 unsigned EID1 : 1;
7392 unsigned EID2 : 1;
7393 unsigned EID3 : 1;
7394 unsigned EID4 : 1;
7395 unsigned EID5 : 1;
7396 unsigned EID6 : 1;
7397 unsigned EID7 : 1;
7398 } __TXB2EIDLbits_t;
7400 extern __at(0x0F24) volatile __TXB2EIDLbits_t TXB2EIDLbits;
7402 #define _TXB2EIDL_EID0 0x01
7403 #define _TXB2EIDL_EID1 0x02
7404 #define _TXB2EIDL_EID2 0x04
7405 #define _TXB2EIDL_EID3 0x08
7406 #define _TXB2EIDL_EID4 0x10
7407 #define _TXB2EIDL_EID5 0x20
7408 #define _TXB2EIDL_EID6 0x40
7409 #define _TXB2EIDL_EID7 0x80
7411 //==============================================================================
7414 //==============================================================================
7415 // TXB2DLC Bits
7417 extern __at(0x0F25) __sfr TXB2DLC;
7419 typedef union
7421 struct
7423 unsigned DLC0 : 1;
7424 unsigned DLC1 : 1;
7425 unsigned DLC2 : 1;
7426 unsigned DLC3 : 1;
7427 unsigned : 1;
7428 unsigned : 1;
7429 unsigned TXRTR : 1;
7430 unsigned : 1;
7433 struct
7435 unsigned DLC : 4;
7436 unsigned : 4;
7438 } __TXB2DLCbits_t;
7440 extern __at(0x0F25) volatile __TXB2DLCbits_t TXB2DLCbits;
7442 #define _TXB2DLC_DLC0 0x01
7443 #define _TXB2DLC_DLC1 0x02
7444 #define _TXB2DLC_DLC2 0x04
7445 #define _TXB2DLC_DLC3 0x08
7446 #define _TXB2DLC_TXRTR 0x40
7448 //==============================================================================
7451 //==============================================================================
7452 // TXB2D0 Bits
7454 extern __at(0x0F26) __sfr TXB2D0;
7456 typedef struct
7458 unsigned TXB2D00 : 1;
7459 unsigned TXB2D01 : 1;
7460 unsigned TXB2D02 : 1;
7461 unsigned TXB2D03 : 1;
7462 unsigned TXB2D04 : 1;
7463 unsigned TXB2D05 : 1;
7464 unsigned TXB2D06 : 1;
7465 unsigned TXB2D07 : 1;
7466 } __TXB2D0bits_t;
7468 extern __at(0x0F26) volatile __TXB2D0bits_t TXB2D0bits;
7470 #define _TXB2D00 0x01
7471 #define _TXB2D01 0x02
7472 #define _TXB2D02 0x04
7473 #define _TXB2D03 0x08
7474 #define _TXB2D04 0x10
7475 #define _TXB2D05 0x20
7476 #define _TXB2D06 0x40
7477 #define _TXB2D07 0x80
7479 //==============================================================================
7482 //==============================================================================
7483 // TXB2D1 Bits
7485 extern __at(0x0F27) __sfr TXB2D1;
7487 typedef struct
7489 unsigned TXB2D10 : 1;
7490 unsigned TXB2D11 : 1;
7491 unsigned TXB2D12 : 1;
7492 unsigned TXB2D13 : 1;
7493 unsigned TXB2D14 : 1;
7494 unsigned TXB2D15 : 1;
7495 unsigned TXB2D16 : 1;
7496 unsigned TXB2D17 : 1;
7497 } __TXB2D1bits_t;
7499 extern __at(0x0F27) volatile __TXB2D1bits_t TXB2D1bits;
7501 #define _TXB2D10 0x01
7502 #define _TXB2D11 0x02
7503 #define _TXB2D12 0x04
7504 #define _TXB2D13 0x08
7505 #define _TXB2D14 0x10
7506 #define _TXB2D15 0x20
7507 #define _TXB2D16 0x40
7508 #define _TXB2D17 0x80
7510 //==============================================================================
7513 //==============================================================================
7514 // TXB2D2 Bits
7516 extern __at(0x0F28) __sfr TXB2D2;
7518 typedef struct
7520 unsigned TXB2D20 : 1;
7521 unsigned TXB2D21 : 1;
7522 unsigned TXB2D22 : 1;
7523 unsigned TXB2D23 : 1;
7524 unsigned TXB2D24 : 1;
7525 unsigned TXB2D25 : 1;
7526 unsigned TXB2D26 : 1;
7527 unsigned TXB2D27 : 1;
7528 } __TXB2D2bits_t;
7530 extern __at(0x0F28) volatile __TXB2D2bits_t TXB2D2bits;
7532 #define _TXB2D20 0x01
7533 #define _TXB2D21 0x02
7534 #define _TXB2D22 0x04
7535 #define _TXB2D23 0x08
7536 #define _TXB2D24 0x10
7537 #define _TXB2D25 0x20
7538 #define _TXB2D26 0x40
7539 #define _TXB2D27 0x80
7541 //==============================================================================
7544 //==============================================================================
7545 // TXB2D3 Bits
7547 extern __at(0x0F29) __sfr TXB2D3;
7549 typedef struct
7551 unsigned TXB2D30 : 1;
7552 unsigned TXB2D31 : 1;
7553 unsigned TXB2D32 : 1;
7554 unsigned TXB2D33 : 1;
7555 unsigned TXB2D34 : 1;
7556 unsigned TXB2D35 : 1;
7557 unsigned TXB2D36 : 1;
7558 unsigned TXB2D37 : 1;
7559 } __TXB2D3bits_t;
7561 extern __at(0x0F29) volatile __TXB2D3bits_t TXB2D3bits;
7563 #define _TXB2D30 0x01
7564 #define _TXB2D31 0x02
7565 #define _TXB2D32 0x04
7566 #define _TXB2D33 0x08
7567 #define _TXB2D34 0x10
7568 #define _TXB2D35 0x20
7569 #define _TXB2D36 0x40
7570 #define _TXB2D37 0x80
7572 //==============================================================================
7575 //==============================================================================
7576 // TXB2D4 Bits
7578 extern __at(0x0F2A) __sfr TXB2D4;
7580 typedef struct
7582 unsigned TXB2D40 : 1;
7583 unsigned TXB2D41 : 1;
7584 unsigned TXB2D42 : 1;
7585 unsigned TXB2D43 : 1;
7586 unsigned TXB2D44 : 1;
7587 unsigned TXB2D45 : 1;
7588 unsigned TXB2D46 : 1;
7589 unsigned TXB2D47 : 1;
7590 } __TXB2D4bits_t;
7592 extern __at(0x0F2A) volatile __TXB2D4bits_t TXB2D4bits;
7594 #define _TXB2D40 0x01
7595 #define _TXB2D41 0x02
7596 #define _TXB2D42 0x04
7597 #define _TXB2D43 0x08
7598 #define _TXB2D44 0x10
7599 #define _TXB2D45 0x20
7600 #define _TXB2D46 0x40
7601 #define _TXB2D47 0x80
7603 //==============================================================================
7606 //==============================================================================
7607 // TXB2D5 Bits
7609 extern __at(0x0F2B) __sfr TXB2D5;
7611 typedef struct
7613 unsigned TXB2D50 : 1;
7614 unsigned TXB2D51 : 1;
7615 unsigned TXB2D52 : 1;
7616 unsigned TXB2D53 : 1;
7617 unsigned TXB2D54 : 1;
7618 unsigned TXB2D55 : 1;
7619 unsigned TXB2D56 : 1;
7620 unsigned TXB2D57 : 1;
7621 } __TXB2D5bits_t;
7623 extern __at(0x0F2B) volatile __TXB2D5bits_t TXB2D5bits;
7625 #define _TXB2D50 0x01
7626 #define _TXB2D51 0x02
7627 #define _TXB2D52 0x04
7628 #define _TXB2D53 0x08
7629 #define _TXB2D54 0x10
7630 #define _TXB2D55 0x20
7631 #define _TXB2D56 0x40
7632 #define _TXB2D57 0x80
7634 //==============================================================================
7637 //==============================================================================
7638 // TXB2D6 Bits
7640 extern __at(0x0F2C) __sfr TXB2D6;
7642 typedef struct
7644 unsigned TXB2D60 : 1;
7645 unsigned TXB2D61 : 1;
7646 unsigned TXB2D62 : 1;
7647 unsigned TXB2D63 : 1;
7648 unsigned TXB2D64 : 1;
7649 unsigned TXB2D65 : 1;
7650 unsigned TXB2D66 : 1;
7651 unsigned TXB2D67 : 1;
7652 } __TXB2D6bits_t;
7654 extern __at(0x0F2C) volatile __TXB2D6bits_t TXB2D6bits;
7656 #define _TXB2D60 0x01
7657 #define _TXB2D61 0x02
7658 #define _TXB2D62 0x04
7659 #define _TXB2D63 0x08
7660 #define _TXB2D64 0x10
7661 #define _TXB2D65 0x20
7662 #define _TXB2D66 0x40
7663 #define _TXB2D67 0x80
7665 //==============================================================================
7668 //==============================================================================
7669 // TXB2D7 Bits
7671 extern __at(0x0F2D) __sfr TXB2D7;
7673 typedef struct
7675 unsigned TXB2D70 : 1;
7676 unsigned TXB2D71 : 1;
7677 unsigned TXB2D72 : 1;
7678 unsigned TXB2D73 : 1;
7679 unsigned TXB2D74 : 1;
7680 unsigned TXB2D75 : 1;
7681 unsigned TXB2D76 : 1;
7682 unsigned TXB2D77 : 1;
7683 } __TXB2D7bits_t;
7685 extern __at(0x0F2D) volatile __TXB2D7bits_t TXB2D7bits;
7687 #define _TXB2D70 0x01
7688 #define _TXB2D71 0x02
7689 #define _TXB2D72 0x04
7690 #define _TXB2D73 0x08
7691 #define _TXB2D74 0x10
7692 #define _TXB2D75 0x20
7693 #define _TXB2D76 0x40
7694 #define _TXB2D77 0x80
7696 //==============================================================================
7699 //==============================================================================
7700 // CANSTAT_RO3 Bits
7702 extern __at(0x0F2E) __sfr CANSTAT_RO3;
7704 typedef union
7706 struct
7708 unsigned EICODE0 : 1;
7709 unsigned EICODE1_ICODE0 : 1;
7710 unsigned EICODE2_ICODE1 : 1;
7711 unsigned EICODE3_ICODE2 : 1;
7712 unsigned EICODE4 : 1;
7713 unsigned OPMODE0 : 1;
7714 unsigned OPMODE1 : 1;
7715 unsigned OPMODE2 : 1;
7718 struct
7720 unsigned : 5;
7721 unsigned OPMODE : 3;
7723 } __CANSTAT_RO3bits_t;
7725 extern __at(0x0F2E) volatile __CANSTAT_RO3bits_t CANSTAT_RO3bits;
7727 #define _CANSTAT_RO3_EICODE0 0x01
7728 #define _CANSTAT_RO3_EICODE1_ICODE0 0x02
7729 #define _CANSTAT_RO3_EICODE2_ICODE1 0x04
7730 #define _CANSTAT_RO3_EICODE3_ICODE2 0x08
7731 #define _CANSTAT_RO3_EICODE4 0x10
7732 #define _CANSTAT_RO3_OPMODE0 0x20
7733 #define _CANSTAT_RO3_OPMODE1 0x40
7734 #define _CANSTAT_RO3_OPMODE2 0x80
7736 //==============================================================================
7739 //==============================================================================
7740 // CANCON_RO3 Bits
7742 extern __at(0x0F2F) __sfr CANCON_RO3;
7744 typedef union
7746 struct
7748 unsigned FP0 : 1;
7749 unsigned WIN0_FP1 : 1;
7750 unsigned WIN1_FP2 : 1;
7751 unsigned WIN2_FP3 : 1;
7752 unsigned ABAT : 1;
7753 unsigned REQOP0 : 1;
7754 unsigned REQOP1 : 1;
7755 unsigned REQOP2 : 1;
7758 struct
7760 unsigned : 5;
7761 unsigned REQOP : 3;
7763 } __CANCON_RO3bits_t;
7765 extern __at(0x0F2F) volatile __CANCON_RO3bits_t CANCON_RO3bits;
7767 #define _CANCON_RO3_FP0 0x01
7768 #define _CANCON_RO3_WIN0_FP1 0x02
7769 #define _CANCON_RO3_WIN1_FP2 0x04
7770 #define _CANCON_RO3_WIN2_FP3 0x08
7771 #define _CANCON_RO3_ABAT 0x10
7772 #define _CANCON_RO3_REQOP0 0x20
7773 #define _CANCON_RO3_REQOP1 0x40
7774 #define _CANCON_RO3_REQOP2 0x80
7776 //==============================================================================
7779 //==============================================================================
7780 // TXB1CON Bits
7782 extern __at(0x0F30) __sfr TXB1CON;
7784 typedef union
7786 struct
7788 unsigned TXPRI0 : 1;
7789 unsigned TXPRI1 : 1;
7790 unsigned : 1;
7791 unsigned TXREQ : 1;
7792 unsigned TXERR : 1;
7793 unsigned TXLARB : 1;
7794 unsigned TXABT : 1;
7795 unsigned TXBIF : 1;
7798 struct
7800 unsigned : 1;
7801 unsigned : 1;
7802 unsigned : 1;
7803 unsigned : 1;
7804 unsigned : 1;
7805 unsigned : 1;
7806 unsigned : 1;
7807 unsigned TXBIFTXB1CON : 1;
7810 struct
7812 unsigned TXPRI : 2;
7813 unsigned : 6;
7815 } __TXB1CONbits_t;
7817 extern __at(0x0F30) volatile __TXB1CONbits_t TXB1CONbits;
7819 #define _TXB1CON_TXPRI0 0x01
7820 #define _TXB1CON_TXPRI1 0x02
7821 #define _TXB1CON_TXREQ 0x08
7822 #define _TXB1CON_TXERR 0x10
7823 #define _TXB1CON_TXLARB 0x20
7824 #define _TXB1CON_TXABT 0x40
7825 #define _TXB1CON_TXBIF 0x80
7826 #define _TXB1CON_TXBIFTXB1CON 0x80
7828 //==============================================================================
7831 //==============================================================================
7832 // TXB1SIDH Bits
7834 extern __at(0x0F31) __sfr TXB1SIDH;
7836 typedef struct
7838 unsigned SID3 : 1;
7839 unsigned SID4 : 1;
7840 unsigned SID5 : 1;
7841 unsigned SID6 : 1;
7842 unsigned SID7 : 1;
7843 unsigned SID8 : 1;
7844 unsigned SID9 : 1;
7845 unsigned SID10 : 1;
7846 } __TXB1SIDHbits_t;
7848 extern __at(0x0F31) volatile __TXB1SIDHbits_t TXB1SIDHbits;
7850 #define _TXB1SIDH_SID3 0x01
7851 #define _TXB1SIDH_SID4 0x02
7852 #define _TXB1SIDH_SID5 0x04
7853 #define _TXB1SIDH_SID6 0x08
7854 #define _TXB1SIDH_SID7 0x10
7855 #define _TXB1SIDH_SID8 0x20
7856 #define _TXB1SIDH_SID9 0x40
7857 #define _TXB1SIDH_SID10 0x80
7859 //==============================================================================
7862 //==============================================================================
7863 // TXB1SIDL Bits
7865 extern __at(0x0F32) __sfr TXB1SIDL;
7867 typedef union
7869 struct
7871 unsigned EID16 : 1;
7872 unsigned EID17 : 1;
7873 unsigned : 1;
7874 unsigned EXIDE : 1;
7875 unsigned : 1;
7876 unsigned SID0 : 1;
7877 unsigned SID1 : 1;
7878 unsigned SID2 : 1;
7881 struct
7883 unsigned : 5;
7884 unsigned SID : 3;
7886 } __TXB1SIDLbits_t;
7888 extern __at(0x0F32) volatile __TXB1SIDLbits_t TXB1SIDLbits;
7890 #define _TXB1SIDL_EID16 0x01
7891 #define _TXB1SIDL_EID17 0x02
7892 #define _TXB1SIDL_EXIDE 0x08
7893 #define _TXB1SIDL_SID0 0x20
7894 #define _TXB1SIDL_SID1 0x40
7895 #define _TXB1SIDL_SID2 0x80
7897 //==============================================================================
7900 //==============================================================================
7901 // TXB1EIDH Bits
7903 extern __at(0x0F33) __sfr TXB1EIDH;
7905 typedef struct
7907 unsigned EID8 : 1;
7908 unsigned EID9 : 1;
7909 unsigned EID10 : 1;
7910 unsigned EID11 : 1;
7911 unsigned EID12 : 1;
7912 unsigned EID13 : 1;
7913 unsigned EID14 : 1;
7914 unsigned EID15 : 1;
7915 } __TXB1EIDHbits_t;
7917 extern __at(0x0F33) volatile __TXB1EIDHbits_t TXB1EIDHbits;
7919 #define _TXB1EIDH_EID8 0x01
7920 #define _TXB1EIDH_EID9 0x02
7921 #define _TXB1EIDH_EID10 0x04
7922 #define _TXB1EIDH_EID11 0x08
7923 #define _TXB1EIDH_EID12 0x10
7924 #define _TXB1EIDH_EID13 0x20
7925 #define _TXB1EIDH_EID14 0x40
7926 #define _TXB1EIDH_EID15 0x80
7928 //==============================================================================
7931 //==============================================================================
7932 // TXB1EIDL Bits
7934 extern __at(0x0F34) __sfr TXB1EIDL;
7936 typedef struct
7938 unsigned EID0 : 1;
7939 unsigned EID1 : 1;
7940 unsigned EID2 : 1;
7941 unsigned EID3 : 1;
7942 unsigned EID4 : 1;
7943 unsigned EID5 : 1;
7944 unsigned EID6 : 1;
7945 unsigned EID7 : 1;
7946 } __TXB1EIDLbits_t;
7948 extern __at(0x0F34) volatile __TXB1EIDLbits_t TXB1EIDLbits;
7950 #define _TXB1EIDL_EID0 0x01
7951 #define _TXB1EIDL_EID1 0x02
7952 #define _TXB1EIDL_EID2 0x04
7953 #define _TXB1EIDL_EID3 0x08
7954 #define _TXB1EIDL_EID4 0x10
7955 #define _TXB1EIDL_EID5 0x20
7956 #define _TXB1EIDL_EID6 0x40
7957 #define _TXB1EIDL_EID7 0x80
7959 //==============================================================================
7962 //==============================================================================
7963 // TXB1DLC Bits
7965 extern __at(0x0F35) __sfr TXB1DLC;
7967 typedef union
7969 struct
7971 unsigned DLC0 : 1;
7972 unsigned DLC1 : 1;
7973 unsigned DLC2 : 1;
7974 unsigned DLC3 : 1;
7975 unsigned : 1;
7976 unsigned : 1;
7977 unsigned TXRTR : 1;
7978 unsigned : 1;
7981 struct
7983 unsigned DLC : 4;
7984 unsigned : 4;
7986 } __TXB1DLCbits_t;
7988 extern __at(0x0F35) volatile __TXB1DLCbits_t TXB1DLCbits;
7990 #define _TXB1DLC_DLC0 0x01
7991 #define _TXB1DLC_DLC1 0x02
7992 #define _TXB1DLC_DLC2 0x04
7993 #define _TXB1DLC_DLC3 0x08
7994 #define _TXB1DLC_TXRTR 0x40
7996 //==============================================================================
7999 //==============================================================================
8000 // TXB1D0 Bits
8002 extern __at(0x0F36) __sfr TXB1D0;
8004 typedef struct
8006 unsigned TXB1D00 : 1;
8007 unsigned TXB1D01 : 1;
8008 unsigned TXB1D02 : 1;
8009 unsigned TXB1D03 : 1;
8010 unsigned TXB1D04 : 1;
8011 unsigned TXB1D05 : 1;
8012 unsigned TXB1D06 : 1;
8013 unsigned TXB1D07 : 1;
8014 } __TXB1D0bits_t;
8016 extern __at(0x0F36) volatile __TXB1D0bits_t TXB1D0bits;
8018 #define _TXB1D00 0x01
8019 #define _TXB1D01 0x02
8020 #define _TXB1D02 0x04
8021 #define _TXB1D03 0x08
8022 #define _TXB1D04 0x10
8023 #define _TXB1D05 0x20
8024 #define _TXB1D06 0x40
8025 #define _TXB1D07 0x80
8027 //==============================================================================
8030 //==============================================================================
8031 // TXB1D1 Bits
8033 extern __at(0x0F37) __sfr TXB1D1;
8035 typedef struct
8037 unsigned TXB1D10 : 1;
8038 unsigned TXB1D11 : 1;
8039 unsigned TXB1D12 : 1;
8040 unsigned TXB1D13 : 1;
8041 unsigned TXB1D14 : 1;
8042 unsigned TXB1D15 : 1;
8043 unsigned TXB1D16 : 1;
8044 unsigned TXB1D17 : 1;
8045 } __TXB1D1bits_t;
8047 extern __at(0x0F37) volatile __TXB1D1bits_t TXB1D1bits;
8049 #define _TXB1D10 0x01
8050 #define _TXB1D11 0x02
8051 #define _TXB1D12 0x04
8052 #define _TXB1D13 0x08
8053 #define _TXB1D14 0x10
8054 #define _TXB1D15 0x20
8055 #define _TXB1D16 0x40
8056 #define _TXB1D17 0x80
8058 //==============================================================================
8061 //==============================================================================
8062 // TXB1D2 Bits
8064 extern __at(0x0F38) __sfr TXB1D2;
8066 typedef struct
8068 unsigned TXB1D20 : 1;
8069 unsigned TXB1D21 : 1;
8070 unsigned TXB1D22 : 1;
8071 unsigned TXB1D23 : 1;
8072 unsigned TXB1D24 : 1;
8073 unsigned TXB1D25 : 1;
8074 unsigned TXB1D26 : 1;
8075 unsigned TXB1D27 : 1;
8076 } __TXB1D2bits_t;
8078 extern __at(0x0F38) volatile __TXB1D2bits_t TXB1D2bits;
8080 #define _TXB1D20 0x01
8081 #define _TXB1D21 0x02
8082 #define _TXB1D22 0x04
8083 #define _TXB1D23 0x08
8084 #define _TXB1D24 0x10
8085 #define _TXB1D25 0x20
8086 #define _TXB1D26 0x40
8087 #define _TXB1D27 0x80
8089 //==============================================================================
8092 //==============================================================================
8093 // TXB1D3 Bits
8095 extern __at(0x0F39) __sfr TXB1D3;
8097 typedef struct
8099 unsigned TXB1D30 : 1;
8100 unsigned TXB1D31 : 1;
8101 unsigned TXB1D32 : 1;
8102 unsigned TXB1D33 : 1;
8103 unsigned TXB1D34 : 1;
8104 unsigned TXB1D35 : 1;
8105 unsigned TXB1D36 : 1;
8106 unsigned TXB1D37 : 1;
8107 } __TXB1D3bits_t;
8109 extern __at(0x0F39) volatile __TXB1D3bits_t TXB1D3bits;
8111 #define _TXB1D30 0x01
8112 #define _TXB1D31 0x02
8113 #define _TXB1D32 0x04
8114 #define _TXB1D33 0x08
8115 #define _TXB1D34 0x10
8116 #define _TXB1D35 0x20
8117 #define _TXB1D36 0x40
8118 #define _TXB1D37 0x80
8120 //==============================================================================
8123 //==============================================================================
8124 // TXB1D4 Bits
8126 extern __at(0x0F3A) __sfr TXB1D4;
8128 typedef struct
8130 unsigned TXB1D40 : 1;
8131 unsigned TXB1D41 : 1;
8132 unsigned TXB1D42 : 1;
8133 unsigned TXB1D43 : 1;
8134 unsigned TXB1D44 : 1;
8135 unsigned TXB1D45 : 1;
8136 unsigned TXB1D46 : 1;
8137 unsigned TXB1D47 : 1;
8138 } __TXB1D4bits_t;
8140 extern __at(0x0F3A) volatile __TXB1D4bits_t TXB1D4bits;
8142 #define _TXB1D40 0x01
8143 #define _TXB1D41 0x02
8144 #define _TXB1D42 0x04
8145 #define _TXB1D43 0x08
8146 #define _TXB1D44 0x10
8147 #define _TXB1D45 0x20
8148 #define _TXB1D46 0x40
8149 #define _TXB1D47 0x80
8151 //==============================================================================
8154 //==============================================================================
8155 // TXB1D5 Bits
8157 extern __at(0x0F3B) __sfr TXB1D5;
8159 typedef struct
8161 unsigned TXB1D50 : 1;
8162 unsigned TXB1D51 : 1;
8163 unsigned TXB1D52 : 1;
8164 unsigned TXB1D53 : 1;
8165 unsigned TXB1D54 : 1;
8166 unsigned TXB1D55 : 1;
8167 unsigned TXB1D56 : 1;
8168 unsigned TXB1D57 : 1;
8169 } __TXB1D5bits_t;
8171 extern __at(0x0F3B) volatile __TXB1D5bits_t TXB1D5bits;
8173 #define _TXB1D50 0x01
8174 #define _TXB1D51 0x02
8175 #define _TXB1D52 0x04
8176 #define _TXB1D53 0x08
8177 #define _TXB1D54 0x10
8178 #define _TXB1D55 0x20
8179 #define _TXB1D56 0x40
8180 #define _TXB1D57 0x80
8182 //==============================================================================
8185 //==============================================================================
8186 // TXB1D6 Bits
8188 extern __at(0x0F3C) __sfr TXB1D6;
8190 typedef struct
8192 unsigned TXB1D60 : 1;
8193 unsigned TXB1D61 : 1;
8194 unsigned TXB1D62 : 1;
8195 unsigned TXB1D63 : 1;
8196 unsigned TXB1D64 : 1;
8197 unsigned TXB1D65 : 1;
8198 unsigned TXB1D66 : 1;
8199 unsigned TXB1D67 : 1;
8200 } __TXB1D6bits_t;
8202 extern __at(0x0F3C) volatile __TXB1D6bits_t TXB1D6bits;
8204 #define _TXB1D60 0x01
8205 #define _TXB1D61 0x02
8206 #define _TXB1D62 0x04
8207 #define _TXB1D63 0x08
8208 #define _TXB1D64 0x10
8209 #define _TXB1D65 0x20
8210 #define _TXB1D66 0x40
8211 #define _TXB1D67 0x80
8213 //==============================================================================
8216 //==============================================================================
8217 // TXB1D7 Bits
8219 extern __at(0x0F3D) __sfr TXB1D7;
8221 typedef struct
8223 unsigned TXB1D70 : 1;
8224 unsigned TXB1D71 : 1;
8225 unsigned TXB1D72 : 1;
8226 unsigned TXB1D73 : 1;
8227 unsigned TXB1D74 : 1;
8228 unsigned TXB1D75 : 1;
8229 unsigned TXB1D76 : 1;
8230 unsigned TXB1D77 : 1;
8231 } __TXB1D7bits_t;
8233 extern __at(0x0F3D) volatile __TXB1D7bits_t TXB1D7bits;
8235 #define _TXB1D70 0x01
8236 #define _TXB1D71 0x02
8237 #define _TXB1D72 0x04
8238 #define _TXB1D73 0x08
8239 #define _TXB1D74 0x10
8240 #define _TXB1D75 0x20
8241 #define _TXB1D76 0x40
8242 #define _TXB1D77 0x80
8244 //==============================================================================
8247 //==============================================================================
8248 // CANSTAT_RO2 Bits
8250 extern __at(0x0F3E) __sfr CANSTAT_RO2;
8252 typedef union
8254 struct
8256 unsigned EICODE0 : 1;
8257 unsigned EICODE1_ICODE0 : 1;
8258 unsigned EICODE2_ICODE1 : 1;
8259 unsigned EICODE3_ICODE2 : 1;
8260 unsigned EICODE4 : 1;
8261 unsigned OPMODE0 : 1;
8262 unsigned OPMODE1 : 1;
8263 unsigned OPMODE2 : 1;
8266 struct
8268 unsigned : 5;
8269 unsigned OPMODE : 3;
8271 } __CANSTAT_RO2bits_t;
8273 extern __at(0x0F3E) volatile __CANSTAT_RO2bits_t CANSTAT_RO2bits;
8275 #define _CANSTAT_RO2_EICODE0 0x01
8276 #define _CANSTAT_RO2_EICODE1_ICODE0 0x02
8277 #define _CANSTAT_RO2_EICODE2_ICODE1 0x04
8278 #define _CANSTAT_RO2_EICODE3_ICODE2 0x08
8279 #define _CANSTAT_RO2_EICODE4 0x10
8280 #define _CANSTAT_RO2_OPMODE0 0x20
8281 #define _CANSTAT_RO2_OPMODE1 0x40
8282 #define _CANSTAT_RO2_OPMODE2 0x80
8284 //==============================================================================
8287 //==============================================================================
8288 // CANCON_RO2 Bits
8290 extern __at(0x0F3F) __sfr CANCON_RO2;
8292 typedef union
8294 struct
8296 unsigned FP0 : 1;
8297 unsigned WIN0_FP1 : 1;
8298 unsigned WIN1_FP2 : 1;
8299 unsigned WIN2_FP3 : 1;
8300 unsigned ABAT : 1;
8301 unsigned REQOP0 : 1;
8302 unsigned REQOP1 : 1;
8303 unsigned REQOP2 : 1;
8306 struct
8308 unsigned : 5;
8309 unsigned REQOP : 3;
8311 } __CANCON_RO2bits_t;
8313 extern __at(0x0F3F) volatile __CANCON_RO2bits_t CANCON_RO2bits;
8315 #define _CANCON_RO2_FP0 0x01
8316 #define _CANCON_RO2_WIN0_FP1 0x02
8317 #define _CANCON_RO2_WIN1_FP2 0x04
8318 #define _CANCON_RO2_WIN2_FP3 0x08
8319 #define _CANCON_RO2_ABAT 0x10
8320 #define _CANCON_RO2_REQOP0 0x20
8321 #define _CANCON_RO2_REQOP1 0x40
8322 #define _CANCON_RO2_REQOP2 0x80
8324 //==============================================================================
8327 //==============================================================================
8328 // TXB0CON Bits
8330 extern __at(0x0F40) __sfr TXB0CON;
8332 typedef union
8334 struct
8336 unsigned TXPRI0 : 1;
8337 unsigned TXPRI1 : 1;
8338 unsigned : 1;
8339 unsigned TXREQ : 1;
8340 unsigned TXERR : 1;
8341 unsigned TXLARB : 1;
8342 unsigned TXABT : 1;
8343 unsigned TXBIF : 1;
8346 struct
8348 unsigned TXPRI : 2;
8349 unsigned : 6;
8351 } __TXB0CONbits_t;
8353 extern __at(0x0F40) volatile __TXB0CONbits_t TXB0CONbits;
8355 #define _TXB0CON_TXPRI0 0x01
8356 #define _TXB0CON_TXPRI1 0x02
8357 #define _TXB0CON_TXREQ 0x08
8358 #define _TXB0CON_TXERR 0x10
8359 #define _TXB0CON_TXLARB 0x20
8360 #define _TXB0CON_TXABT 0x40
8361 #define _TXB0CON_TXBIF 0x80
8363 //==============================================================================
8366 //==============================================================================
8367 // TXB0SIDH Bits
8369 extern __at(0x0F41) __sfr TXB0SIDH;
8371 typedef struct
8373 unsigned SID3 : 1;
8374 unsigned SID4 : 1;
8375 unsigned SID5 : 1;
8376 unsigned SID6 : 1;
8377 unsigned SID7 : 1;
8378 unsigned SID8 : 1;
8379 unsigned SID9 : 1;
8380 unsigned SID10 : 1;
8381 } __TXB0SIDHbits_t;
8383 extern __at(0x0F41) volatile __TXB0SIDHbits_t TXB0SIDHbits;
8385 #define _TXB0SIDH_SID3 0x01
8386 #define _TXB0SIDH_SID4 0x02
8387 #define _TXB0SIDH_SID5 0x04
8388 #define _TXB0SIDH_SID6 0x08
8389 #define _TXB0SIDH_SID7 0x10
8390 #define _TXB0SIDH_SID8 0x20
8391 #define _TXB0SIDH_SID9 0x40
8392 #define _TXB0SIDH_SID10 0x80
8394 //==============================================================================
8397 //==============================================================================
8398 // TXB0SIDL Bits
8400 extern __at(0x0F42) __sfr TXB0SIDL;
8402 typedef union
8404 struct
8406 unsigned EID16 : 1;
8407 unsigned EID17 : 1;
8408 unsigned : 1;
8409 unsigned EXIDE : 1;
8410 unsigned : 1;
8411 unsigned SID0 : 1;
8412 unsigned SID1 : 1;
8413 unsigned SID2 : 1;
8416 struct
8418 unsigned : 5;
8419 unsigned SID : 3;
8421 } __TXB0SIDLbits_t;
8423 extern __at(0x0F42) volatile __TXB0SIDLbits_t TXB0SIDLbits;
8425 #define _TXB0SIDL_EID16 0x01
8426 #define _TXB0SIDL_EID17 0x02
8427 #define _TXB0SIDL_EXIDE 0x08
8428 #define _TXB0SIDL_SID0 0x20
8429 #define _TXB0SIDL_SID1 0x40
8430 #define _TXB0SIDL_SID2 0x80
8432 //==============================================================================
8435 //==============================================================================
8436 // TXB0EIDH Bits
8438 extern __at(0x0F43) __sfr TXB0EIDH;
8440 typedef struct
8442 unsigned EID8 : 1;
8443 unsigned EID9 : 1;
8444 unsigned EID10 : 1;
8445 unsigned EID11 : 1;
8446 unsigned EID12 : 1;
8447 unsigned EID13 : 1;
8448 unsigned EID14 : 1;
8449 unsigned EID15 : 1;
8450 } __TXB0EIDHbits_t;
8452 extern __at(0x0F43) volatile __TXB0EIDHbits_t TXB0EIDHbits;
8454 #define _TXB0EIDH_EID8 0x01
8455 #define _TXB0EIDH_EID9 0x02
8456 #define _TXB0EIDH_EID10 0x04
8457 #define _TXB0EIDH_EID11 0x08
8458 #define _TXB0EIDH_EID12 0x10
8459 #define _TXB0EIDH_EID13 0x20
8460 #define _TXB0EIDH_EID14 0x40
8461 #define _TXB0EIDH_EID15 0x80
8463 //==============================================================================
8466 //==============================================================================
8467 // TXB0EIDL Bits
8469 extern __at(0x0F44) __sfr TXB0EIDL;
8471 typedef struct
8473 unsigned EID0 : 1;
8474 unsigned EID1 : 1;
8475 unsigned EID2 : 1;
8476 unsigned EID3 : 1;
8477 unsigned EID4 : 1;
8478 unsigned EID5 : 1;
8479 unsigned EID6 : 1;
8480 unsigned EID7 : 1;
8481 } __TXB0EIDLbits_t;
8483 extern __at(0x0F44) volatile __TXB0EIDLbits_t TXB0EIDLbits;
8485 #define _TXB0EIDL_EID0 0x01
8486 #define _TXB0EIDL_EID1 0x02
8487 #define _TXB0EIDL_EID2 0x04
8488 #define _TXB0EIDL_EID3 0x08
8489 #define _TXB0EIDL_EID4 0x10
8490 #define _TXB0EIDL_EID5 0x20
8491 #define _TXB0EIDL_EID6 0x40
8492 #define _TXB0EIDL_EID7 0x80
8494 //==============================================================================
8497 //==============================================================================
8498 // TXB0DLC Bits
8500 extern __at(0x0F45) __sfr TXB0DLC;
8502 typedef union
8504 struct
8506 unsigned DLC0 : 1;
8507 unsigned DLC1 : 1;
8508 unsigned DLC2 : 1;
8509 unsigned DLC3 : 1;
8510 unsigned : 1;
8511 unsigned : 1;
8512 unsigned TXRTR : 1;
8513 unsigned : 1;
8516 struct
8518 unsigned DLC : 4;
8519 unsigned : 4;
8521 } __TXB0DLCbits_t;
8523 extern __at(0x0F45) volatile __TXB0DLCbits_t TXB0DLCbits;
8525 #define _TXB0DLC_DLC0 0x01
8526 #define _TXB0DLC_DLC1 0x02
8527 #define _TXB0DLC_DLC2 0x04
8528 #define _TXB0DLC_DLC3 0x08
8529 #define _TXB0DLC_TXRTR 0x40
8531 //==============================================================================
8534 //==============================================================================
8535 // TXB0D0 Bits
8537 extern __at(0x0F46) __sfr TXB0D0;
8539 typedef struct
8541 unsigned TXB0D00 : 1;
8542 unsigned TXB0D01 : 1;
8543 unsigned TXB0D02 : 1;
8544 unsigned TXB0D03 : 1;
8545 unsigned TXB0D04 : 1;
8546 unsigned TXB0D05 : 1;
8547 unsigned TXB0D06 : 1;
8548 unsigned TXB0D07 : 1;
8549 } __TXB0D0bits_t;
8551 extern __at(0x0F46) volatile __TXB0D0bits_t TXB0D0bits;
8553 #define _TXB0D00 0x01
8554 #define _TXB0D01 0x02
8555 #define _TXB0D02 0x04
8556 #define _TXB0D03 0x08
8557 #define _TXB0D04 0x10
8558 #define _TXB0D05 0x20
8559 #define _TXB0D06 0x40
8560 #define _TXB0D07 0x80
8562 //==============================================================================
8565 //==============================================================================
8566 // TXB0D1 Bits
8568 extern __at(0x0F47) __sfr TXB0D1;
8570 typedef struct
8572 unsigned TXB0D10 : 1;
8573 unsigned TXB0D11 : 1;
8574 unsigned TXB0D12 : 1;
8575 unsigned TXB0D13 : 1;
8576 unsigned TXB0D14 : 1;
8577 unsigned TXB0D15 : 1;
8578 unsigned TXB0D16 : 1;
8579 unsigned TXB0D17 : 1;
8580 } __TXB0D1bits_t;
8582 extern __at(0x0F47) volatile __TXB0D1bits_t TXB0D1bits;
8584 #define _TXB0D10 0x01
8585 #define _TXB0D11 0x02
8586 #define _TXB0D12 0x04
8587 #define _TXB0D13 0x08
8588 #define _TXB0D14 0x10
8589 #define _TXB0D15 0x20
8590 #define _TXB0D16 0x40
8591 #define _TXB0D17 0x80
8593 //==============================================================================
8596 //==============================================================================
8597 // TXB0D2 Bits
8599 extern __at(0x0F48) __sfr TXB0D2;
8601 typedef struct
8603 unsigned TXB0D20 : 1;
8604 unsigned TXB0D21 : 1;
8605 unsigned TXB0D22 : 1;
8606 unsigned TXB0D23 : 1;
8607 unsigned TXB0D24 : 1;
8608 unsigned TXB0D25 : 1;
8609 unsigned TXB0D26 : 1;
8610 unsigned TXB0D27 : 1;
8611 } __TXB0D2bits_t;
8613 extern __at(0x0F48) volatile __TXB0D2bits_t TXB0D2bits;
8615 #define _TXB0D20 0x01
8616 #define _TXB0D21 0x02
8617 #define _TXB0D22 0x04
8618 #define _TXB0D23 0x08
8619 #define _TXB0D24 0x10
8620 #define _TXB0D25 0x20
8621 #define _TXB0D26 0x40
8622 #define _TXB0D27 0x80
8624 //==============================================================================
8627 //==============================================================================
8628 // TXB0D3 Bits
8630 extern __at(0x0F49) __sfr TXB0D3;
8632 typedef struct
8634 unsigned TXB0D30 : 1;
8635 unsigned TXB0D31 : 1;
8636 unsigned TXB0D32 : 1;
8637 unsigned TXB0D33 : 1;
8638 unsigned TXB0D34 : 1;
8639 unsigned TXB0D35 : 1;
8640 unsigned TXB0D36 : 1;
8641 unsigned TXB0D37 : 1;
8642 } __TXB0D3bits_t;
8644 extern __at(0x0F49) volatile __TXB0D3bits_t TXB0D3bits;
8646 #define _TXB0D30 0x01
8647 #define _TXB0D31 0x02
8648 #define _TXB0D32 0x04
8649 #define _TXB0D33 0x08
8650 #define _TXB0D34 0x10
8651 #define _TXB0D35 0x20
8652 #define _TXB0D36 0x40
8653 #define _TXB0D37 0x80
8655 //==============================================================================
8658 //==============================================================================
8659 // TXB0D4 Bits
8661 extern __at(0x0F4A) __sfr TXB0D4;
8663 typedef struct
8665 unsigned TXB0D40 : 1;
8666 unsigned TXB0D41 : 1;
8667 unsigned TXB0D42 : 1;
8668 unsigned TXB0D43 : 1;
8669 unsigned TXB0D44 : 1;
8670 unsigned TXB0D45 : 1;
8671 unsigned TXB0D46 : 1;
8672 unsigned TXB0D47 : 1;
8673 } __TXB0D4bits_t;
8675 extern __at(0x0F4A) volatile __TXB0D4bits_t TXB0D4bits;
8677 #define _TXB0D40 0x01
8678 #define _TXB0D41 0x02
8679 #define _TXB0D42 0x04
8680 #define _TXB0D43 0x08
8681 #define _TXB0D44 0x10
8682 #define _TXB0D45 0x20
8683 #define _TXB0D46 0x40
8684 #define _TXB0D47 0x80
8686 //==============================================================================
8689 //==============================================================================
8690 // TXB0D5 Bits
8692 extern __at(0x0F4B) __sfr TXB0D5;
8694 typedef struct
8696 unsigned TXB0D50 : 1;
8697 unsigned TXB0D51 : 1;
8698 unsigned TXB0D52 : 1;
8699 unsigned TXB0D53 : 1;
8700 unsigned TXB0D54 : 1;
8701 unsigned TXB0D55 : 1;
8702 unsigned TXB0D56 : 1;
8703 unsigned TXB0D57 : 1;
8704 } __TXB0D5bits_t;
8706 extern __at(0x0F4B) volatile __TXB0D5bits_t TXB0D5bits;
8708 #define _TXB0D50 0x01
8709 #define _TXB0D51 0x02
8710 #define _TXB0D52 0x04
8711 #define _TXB0D53 0x08
8712 #define _TXB0D54 0x10
8713 #define _TXB0D55 0x20
8714 #define _TXB0D56 0x40
8715 #define _TXB0D57 0x80
8717 //==============================================================================
8720 //==============================================================================
8721 // TXB0D6 Bits
8723 extern __at(0x0F4C) __sfr TXB0D6;
8725 typedef struct
8727 unsigned TXB0D60 : 1;
8728 unsigned TXB0D61 : 1;
8729 unsigned TXB0D62 : 1;
8730 unsigned TXB0D63 : 1;
8731 unsigned TXB0D64 : 1;
8732 unsigned TXB0D65 : 1;
8733 unsigned TXB0D66 : 1;
8734 unsigned TXB0D67 : 1;
8735 } __TXB0D6bits_t;
8737 extern __at(0x0F4C) volatile __TXB0D6bits_t TXB0D6bits;
8739 #define _TXB0D60 0x01
8740 #define _TXB0D61 0x02
8741 #define _TXB0D62 0x04
8742 #define _TXB0D63 0x08
8743 #define _TXB0D64 0x10
8744 #define _TXB0D65 0x20
8745 #define _TXB0D66 0x40
8746 #define _TXB0D67 0x80
8748 //==============================================================================
8751 //==============================================================================
8752 // TXB0D7 Bits
8754 extern __at(0x0F4D) __sfr TXB0D7;
8756 typedef struct
8758 unsigned TXB0D70 : 1;
8759 unsigned TXB0D71 : 1;
8760 unsigned TXB0D72 : 1;
8761 unsigned TXB0D73 : 1;
8762 unsigned TXB0D74 : 1;
8763 unsigned TXB0D75 : 1;
8764 unsigned TXB0D76 : 1;
8765 unsigned TXB0D77 : 1;
8766 } __TXB0D7bits_t;
8768 extern __at(0x0F4D) volatile __TXB0D7bits_t TXB0D7bits;
8770 #define _TXB0D70 0x01
8771 #define _TXB0D71 0x02
8772 #define _TXB0D72 0x04
8773 #define _TXB0D73 0x08
8774 #define _TXB0D74 0x10
8775 #define _TXB0D75 0x20
8776 #define _TXB0D76 0x40
8777 #define _TXB0D77 0x80
8779 //==============================================================================
8782 //==============================================================================
8783 // CANSTAT_RO1 Bits
8785 extern __at(0x0F4E) __sfr CANSTAT_RO1;
8787 typedef union
8789 struct
8791 unsigned EICODE0 : 1;
8792 unsigned EICODE1_ICODE0 : 1;
8793 unsigned EICODE2_ICODE1 : 1;
8794 unsigned EICODE3_ICODE2 : 1;
8795 unsigned EICODE4 : 1;
8796 unsigned OPMODE0 : 1;
8797 unsigned OPMODE1 : 1;
8798 unsigned OPMODE2 : 1;
8801 struct
8803 unsigned : 5;
8804 unsigned OPMODE : 3;
8806 } __CANSTAT_RO1bits_t;
8808 extern __at(0x0F4E) volatile __CANSTAT_RO1bits_t CANSTAT_RO1bits;
8810 #define _CANSTAT_RO1_EICODE0 0x01
8811 #define _CANSTAT_RO1_EICODE1_ICODE0 0x02
8812 #define _CANSTAT_RO1_EICODE2_ICODE1 0x04
8813 #define _CANSTAT_RO1_EICODE3_ICODE2 0x08
8814 #define _CANSTAT_RO1_EICODE4 0x10
8815 #define _CANSTAT_RO1_OPMODE0 0x20
8816 #define _CANSTAT_RO1_OPMODE1 0x40
8817 #define _CANSTAT_RO1_OPMODE2 0x80
8819 //==============================================================================
8822 //==============================================================================
8823 // CANCON_RO1 Bits
8825 extern __at(0x0F4F) __sfr CANCON_RO1;
8827 typedef union
8829 struct
8831 unsigned FP0 : 1;
8832 unsigned WIN0_FP1 : 1;
8833 unsigned WIN1_FP2 : 1;
8834 unsigned WIN2_FP3 : 1;
8835 unsigned ABAT : 1;
8836 unsigned REQOP0 : 1;
8837 unsigned REQOP1 : 1;
8838 unsigned REQOP2 : 1;
8841 struct
8843 unsigned : 5;
8844 unsigned REQOP : 3;
8846 } __CANCON_RO1bits_t;
8848 extern __at(0x0F4F) volatile __CANCON_RO1bits_t CANCON_RO1bits;
8850 #define _CANCON_RO1_FP0 0x01
8851 #define _CANCON_RO1_WIN0_FP1 0x02
8852 #define _CANCON_RO1_WIN1_FP2 0x04
8853 #define _CANCON_RO1_WIN2_FP3 0x08
8854 #define _CANCON_RO1_ABAT 0x10
8855 #define _CANCON_RO1_REQOP0 0x20
8856 #define _CANCON_RO1_REQOP1 0x40
8857 #define _CANCON_RO1_REQOP2 0x80
8859 //==============================================================================
8862 //==============================================================================
8863 // RXB1CON Bits
8865 extern __at(0x0F50) __sfr RXB1CON;
8867 typedef union
8869 struct
8871 unsigned FILHIT0 : 1;
8872 unsigned FILHIT1 : 1;
8873 unsigned FILHIT2 : 1;
8874 unsigned RXRTRRO_FILHIT3 : 1;
8875 unsigned FILHIT4 : 1;
8876 unsigned RXM0_RTRRO : 1;
8877 unsigned RXM1 : 1;
8878 unsigned RXFUL : 1;
8881 struct
8883 unsigned : 1;
8884 unsigned : 1;
8885 unsigned : 1;
8886 unsigned RXRTRRO : 1;
8887 unsigned : 1;
8888 unsigned RXM0 : 1;
8889 unsigned : 1;
8890 unsigned : 1;
8893 struct
8895 unsigned : 1;
8896 unsigned : 1;
8897 unsigned : 1;
8898 unsigned FILHIT3 : 1;
8899 unsigned : 1;
8900 unsigned RTRRO : 1;
8901 unsigned : 1;
8902 unsigned : 1;
8905 struct
8907 unsigned : 1;
8908 unsigned : 1;
8909 unsigned : 1;
8910 unsigned RXRTRR0 : 1;
8911 unsigned : 1;
8912 unsigned : 1;
8913 unsigned : 1;
8914 unsigned : 1;
8917 struct
8919 unsigned : 1;
8920 unsigned : 1;
8921 unsigned : 1;
8922 unsigned RTRRO_FILHIT3 : 1;
8923 unsigned : 1;
8924 unsigned : 1;
8925 unsigned : 1;
8926 unsigned : 1;
8929 struct
8931 unsigned FILHIT : 5;
8932 unsigned : 3;
8935 struct
8937 unsigned : 5;
8938 unsigned RXM : 2;
8939 unsigned : 1;
8941 } __RXB1CONbits_t;
8943 extern __at(0x0F50) volatile __RXB1CONbits_t RXB1CONbits;
8945 #define _RXB1CON_FILHIT0 0x01
8946 #define _RXB1CON_FILHIT1 0x02
8947 #define _RXB1CON_FILHIT2 0x04
8948 #define _RXB1CON_RXRTRRO_FILHIT3 0x08
8949 #define _RXB1CON_RXRTRRO 0x08
8950 #define _RXB1CON_FILHIT3 0x08
8951 #define _RXB1CON_RXRTRR0 0x08
8952 #define _RXB1CON_RTRRO_FILHIT3 0x08
8953 #define _RXB1CON_FILHIT4 0x10
8954 #define _RXB1CON_RXM0_RTRRO 0x20
8955 #define _RXB1CON_RXM0 0x20
8956 #define _RXB1CON_RTRRO 0x20
8957 #define _RXB1CON_RXM1 0x40
8958 #define _RXB1CON_RXFUL 0x80
8960 //==============================================================================
8963 //==============================================================================
8964 // RXB1SIDH Bits
8966 extern __at(0x0F51) __sfr RXB1SIDH;
8968 typedef struct
8970 unsigned SID3 : 1;
8971 unsigned SID4 : 1;
8972 unsigned SID5 : 1;
8973 unsigned SID6 : 1;
8974 unsigned SID7 : 1;
8975 unsigned SID8 : 1;
8976 unsigned SID9 : 1;
8977 unsigned SID10 : 1;
8978 } __RXB1SIDHbits_t;
8980 extern __at(0x0F51) volatile __RXB1SIDHbits_t RXB1SIDHbits;
8982 #define _RXB1SIDH_SID3 0x01
8983 #define _RXB1SIDH_SID4 0x02
8984 #define _RXB1SIDH_SID5 0x04
8985 #define _RXB1SIDH_SID6 0x08
8986 #define _RXB1SIDH_SID7 0x10
8987 #define _RXB1SIDH_SID8 0x20
8988 #define _RXB1SIDH_SID9 0x40
8989 #define _RXB1SIDH_SID10 0x80
8991 //==============================================================================
8994 //==============================================================================
8995 // RXB1SIDL Bits
8997 extern __at(0x0F52) __sfr RXB1SIDL;
8999 typedef union
9001 struct
9003 unsigned EID16 : 1;
9004 unsigned EID17 : 1;
9005 unsigned : 1;
9006 unsigned EXID : 1;
9007 unsigned SRR : 1;
9008 unsigned SID0 : 1;
9009 unsigned SID1 : 1;
9010 unsigned SID2 : 1;
9013 struct
9015 unsigned : 5;
9016 unsigned SID : 3;
9018 } __RXB1SIDLbits_t;
9020 extern __at(0x0F52) volatile __RXB1SIDLbits_t RXB1SIDLbits;
9022 #define _RXB1SIDL_EID16 0x01
9023 #define _RXB1SIDL_EID17 0x02
9024 #define _RXB1SIDL_EXID 0x08
9025 #define _RXB1SIDL_SRR 0x10
9026 #define _RXB1SIDL_SID0 0x20
9027 #define _RXB1SIDL_SID1 0x40
9028 #define _RXB1SIDL_SID2 0x80
9030 //==============================================================================
9033 //==============================================================================
9034 // RXB1EIDH Bits
9036 extern __at(0x0F53) __sfr RXB1EIDH;
9038 typedef struct
9040 unsigned EID8 : 1;
9041 unsigned EID9 : 1;
9042 unsigned EID10 : 1;
9043 unsigned EID11 : 1;
9044 unsigned EID12 : 1;
9045 unsigned EID13 : 1;
9046 unsigned EID14 : 1;
9047 unsigned EID15 : 1;
9048 } __RXB1EIDHbits_t;
9050 extern __at(0x0F53) volatile __RXB1EIDHbits_t RXB1EIDHbits;
9052 #define _RXB1EIDH_EID8 0x01
9053 #define _RXB1EIDH_EID9 0x02
9054 #define _RXB1EIDH_EID10 0x04
9055 #define _RXB1EIDH_EID11 0x08
9056 #define _RXB1EIDH_EID12 0x10
9057 #define _RXB1EIDH_EID13 0x20
9058 #define _RXB1EIDH_EID14 0x40
9059 #define _RXB1EIDH_EID15 0x80
9061 //==============================================================================
9064 //==============================================================================
9065 // RXB1EIDL Bits
9067 extern __at(0x0F54) __sfr RXB1EIDL;
9069 typedef struct
9071 unsigned EID0 : 1;
9072 unsigned EID1 : 1;
9073 unsigned EID2 : 1;
9074 unsigned EID3 : 1;
9075 unsigned EID4 : 1;
9076 unsigned EID5 : 1;
9077 unsigned EID6 : 1;
9078 unsigned EID7 : 1;
9079 } __RXB1EIDLbits_t;
9081 extern __at(0x0F54) volatile __RXB1EIDLbits_t RXB1EIDLbits;
9083 #define _RXB1EIDL_EID0 0x01
9084 #define _RXB1EIDL_EID1 0x02
9085 #define _RXB1EIDL_EID2 0x04
9086 #define _RXB1EIDL_EID3 0x08
9087 #define _RXB1EIDL_EID4 0x10
9088 #define _RXB1EIDL_EID5 0x20
9089 #define _RXB1EIDL_EID6 0x40
9090 #define _RXB1EIDL_EID7 0x80
9092 //==============================================================================
9095 //==============================================================================
9096 // RXB1DLC Bits
9098 extern __at(0x0F55) __sfr RXB1DLC;
9100 typedef union
9102 struct
9104 unsigned DLC0 : 1;
9105 unsigned DLC1 : 1;
9106 unsigned DLC2 : 1;
9107 unsigned DLC3 : 1;
9108 unsigned RB0 : 1;
9109 unsigned RB1 : 1;
9110 unsigned RXRTR : 1;
9111 unsigned : 1;
9114 struct
9116 unsigned : 1;
9117 unsigned : 1;
9118 unsigned : 1;
9119 unsigned : 1;
9120 unsigned RESRB0 : 1;
9121 unsigned RESRB1 : 1;
9122 unsigned : 1;
9123 unsigned : 1;
9126 struct
9128 unsigned DLC : 4;
9129 unsigned : 4;
9132 struct
9134 unsigned : 4;
9135 unsigned RB : 2;
9136 unsigned : 2;
9139 struct
9141 unsigned : 4;
9142 unsigned RESRB : 2;
9143 unsigned : 2;
9145 } __RXB1DLCbits_t;
9147 extern __at(0x0F55) volatile __RXB1DLCbits_t RXB1DLCbits;
9149 #define _RXB1DLC_DLC0 0x01
9150 #define _RXB1DLC_DLC1 0x02
9151 #define _RXB1DLC_DLC2 0x04
9152 #define _RXB1DLC_DLC3 0x08
9153 #define _RXB1DLC_RB0 0x10
9154 #define _RXB1DLC_RESRB0 0x10
9155 #define _RXB1DLC_RB1 0x20
9156 #define _RXB1DLC_RESRB1 0x20
9157 #define _RXB1DLC_RXRTR 0x40
9159 //==============================================================================
9162 //==============================================================================
9163 // RXB1D0 Bits
9165 extern __at(0x0F56) __sfr RXB1D0;
9167 typedef struct
9169 unsigned RXB1D00 : 1;
9170 unsigned RXB1D01 : 1;
9171 unsigned RXB1D02 : 1;
9172 unsigned RXB1D03 : 1;
9173 unsigned RXB1D04 : 1;
9174 unsigned RXB1D05 : 1;
9175 unsigned RXB1D06 : 1;
9176 unsigned RXB1D07 : 1;
9177 } __RXB1D0bits_t;
9179 extern __at(0x0F56) volatile __RXB1D0bits_t RXB1D0bits;
9181 #define _RXB1D00 0x01
9182 #define _RXB1D01 0x02
9183 #define _RXB1D02 0x04
9184 #define _RXB1D03 0x08
9185 #define _RXB1D04 0x10
9186 #define _RXB1D05 0x20
9187 #define _RXB1D06 0x40
9188 #define _RXB1D07 0x80
9190 //==============================================================================
9193 //==============================================================================
9194 // RXB1D1 Bits
9196 extern __at(0x0F57) __sfr RXB1D1;
9198 typedef struct
9200 unsigned RXB1D10 : 1;
9201 unsigned RXB1D11 : 1;
9202 unsigned RXB1D12 : 1;
9203 unsigned RXB1D13 : 1;
9204 unsigned RXB1D14 : 1;
9205 unsigned RXB1D15 : 1;
9206 unsigned RXB1D16 : 1;
9207 unsigned RXB1D17 : 1;
9208 } __RXB1D1bits_t;
9210 extern __at(0x0F57) volatile __RXB1D1bits_t RXB1D1bits;
9212 #define _RXB1D10 0x01
9213 #define _RXB1D11 0x02
9214 #define _RXB1D12 0x04
9215 #define _RXB1D13 0x08
9216 #define _RXB1D14 0x10
9217 #define _RXB1D15 0x20
9218 #define _RXB1D16 0x40
9219 #define _RXB1D17 0x80
9221 //==============================================================================
9224 //==============================================================================
9225 // RXB1D2 Bits
9227 extern __at(0x0F58) __sfr RXB1D2;
9229 typedef struct
9231 unsigned RXB1D20 : 1;
9232 unsigned RXB1D21 : 1;
9233 unsigned RXB1D22 : 1;
9234 unsigned RXB1D23 : 1;
9235 unsigned RXB1D24 : 1;
9236 unsigned RXB1D25 : 1;
9237 unsigned RXB1D26 : 1;
9238 unsigned RXB1D27 : 1;
9239 } __RXB1D2bits_t;
9241 extern __at(0x0F58) volatile __RXB1D2bits_t RXB1D2bits;
9243 #define _RXB1D20 0x01
9244 #define _RXB1D21 0x02
9245 #define _RXB1D22 0x04
9246 #define _RXB1D23 0x08
9247 #define _RXB1D24 0x10
9248 #define _RXB1D25 0x20
9249 #define _RXB1D26 0x40
9250 #define _RXB1D27 0x80
9252 //==============================================================================
9255 //==============================================================================
9256 // RXB1D3 Bits
9258 extern __at(0x0F59) __sfr RXB1D3;
9260 typedef struct
9262 unsigned RXB1D30 : 1;
9263 unsigned RXB1D31 : 1;
9264 unsigned RXB1D32 : 1;
9265 unsigned RXB1D33 : 1;
9266 unsigned RXB1D34 : 1;
9267 unsigned RXB1D35 : 1;
9268 unsigned RXB1D36 : 1;
9269 unsigned RXB1D37 : 1;
9270 } __RXB1D3bits_t;
9272 extern __at(0x0F59) volatile __RXB1D3bits_t RXB1D3bits;
9274 #define _RXB1D30 0x01
9275 #define _RXB1D31 0x02
9276 #define _RXB1D32 0x04
9277 #define _RXB1D33 0x08
9278 #define _RXB1D34 0x10
9279 #define _RXB1D35 0x20
9280 #define _RXB1D36 0x40
9281 #define _RXB1D37 0x80
9283 //==============================================================================
9286 //==============================================================================
9287 // RXB1D4 Bits
9289 extern __at(0x0F5A) __sfr RXB1D4;
9291 typedef struct
9293 unsigned RXB1D40 : 1;
9294 unsigned RXB1D41 : 1;
9295 unsigned RXB1D42 : 1;
9296 unsigned RXB1D43 : 1;
9297 unsigned RXB1D44 : 1;
9298 unsigned RXB1D45 : 1;
9299 unsigned RXB1D46 : 1;
9300 unsigned RXB1D47 : 1;
9301 } __RXB1D4bits_t;
9303 extern __at(0x0F5A) volatile __RXB1D4bits_t RXB1D4bits;
9305 #define _RXB1D40 0x01
9306 #define _RXB1D41 0x02
9307 #define _RXB1D42 0x04
9308 #define _RXB1D43 0x08
9309 #define _RXB1D44 0x10
9310 #define _RXB1D45 0x20
9311 #define _RXB1D46 0x40
9312 #define _RXB1D47 0x80
9314 //==============================================================================
9317 //==============================================================================
9318 // RXB1D5 Bits
9320 extern __at(0x0F5B) __sfr RXB1D5;
9322 typedef struct
9324 unsigned RXB1D50 : 1;
9325 unsigned RXB1D51 : 1;
9326 unsigned RXB1D52 : 1;
9327 unsigned RXB1D53 : 1;
9328 unsigned RXB1D54 : 1;
9329 unsigned RXB1D55 : 1;
9330 unsigned RXB1D56 : 1;
9331 unsigned RXB1D57 : 1;
9332 } __RXB1D5bits_t;
9334 extern __at(0x0F5B) volatile __RXB1D5bits_t RXB1D5bits;
9336 #define _RXB1D50 0x01
9337 #define _RXB1D51 0x02
9338 #define _RXB1D52 0x04
9339 #define _RXB1D53 0x08
9340 #define _RXB1D54 0x10
9341 #define _RXB1D55 0x20
9342 #define _RXB1D56 0x40
9343 #define _RXB1D57 0x80
9345 //==============================================================================
9348 //==============================================================================
9349 // RXB1D6 Bits
9351 extern __at(0x0F5C) __sfr RXB1D6;
9353 typedef struct
9355 unsigned RXB1D60 : 1;
9356 unsigned RXB1D61 : 1;
9357 unsigned RXB1D62 : 1;
9358 unsigned RXB1D63 : 1;
9359 unsigned RXB1D64 : 1;
9360 unsigned RXB1D65 : 1;
9361 unsigned RXB1D66 : 1;
9362 unsigned RXB1D67 : 1;
9363 } __RXB1D6bits_t;
9365 extern __at(0x0F5C) volatile __RXB1D6bits_t RXB1D6bits;
9367 #define _RXB1D60 0x01
9368 #define _RXB1D61 0x02
9369 #define _RXB1D62 0x04
9370 #define _RXB1D63 0x08
9371 #define _RXB1D64 0x10
9372 #define _RXB1D65 0x20
9373 #define _RXB1D66 0x40
9374 #define _RXB1D67 0x80
9376 //==============================================================================
9379 //==============================================================================
9380 // RXB1D7 Bits
9382 extern __at(0x0F5D) __sfr RXB1D7;
9384 typedef struct
9386 unsigned RXB1D70 : 1;
9387 unsigned RXB1D71 : 1;
9388 unsigned RXB1D72 : 1;
9389 unsigned RXB1D73 : 1;
9390 unsigned RXB1D74 : 1;
9391 unsigned RXB1D75 : 1;
9392 unsigned RXB1D76 : 1;
9393 unsigned RXB1D77 : 1;
9394 } __RXB1D7bits_t;
9396 extern __at(0x0F5D) volatile __RXB1D7bits_t RXB1D7bits;
9398 #define _RXB1D70 0x01
9399 #define _RXB1D71 0x02
9400 #define _RXB1D72 0x04
9401 #define _RXB1D73 0x08
9402 #define _RXB1D74 0x10
9403 #define _RXB1D75 0x20
9404 #define _RXB1D76 0x40
9405 #define _RXB1D77 0x80
9407 //==============================================================================
9410 //==============================================================================
9411 // CANSTAT_RO0 Bits
9413 extern __at(0x0F5E) __sfr CANSTAT_RO0;
9415 typedef union
9417 struct
9419 unsigned EICODE0 : 1;
9420 unsigned EICODE1_ICODE0 : 1;
9421 unsigned EICODE2_ICODE1 : 1;
9422 unsigned EICODE3_ICODE2 : 1;
9423 unsigned EICODE4 : 1;
9424 unsigned OPMODE0 : 1;
9425 unsigned OPMODE1 : 1;
9426 unsigned OPMODE2 : 1;
9429 struct
9431 unsigned : 5;
9432 unsigned OPMODE : 3;
9434 } __CANSTAT_RO0bits_t;
9436 extern __at(0x0F5E) volatile __CANSTAT_RO0bits_t CANSTAT_RO0bits;
9438 #define _CANSTAT_RO0_EICODE0 0x01
9439 #define _CANSTAT_RO0_EICODE1_ICODE0 0x02
9440 #define _CANSTAT_RO0_EICODE2_ICODE1 0x04
9441 #define _CANSTAT_RO0_EICODE3_ICODE2 0x08
9442 #define _CANSTAT_RO0_EICODE4 0x10
9443 #define _CANSTAT_RO0_OPMODE0 0x20
9444 #define _CANSTAT_RO0_OPMODE1 0x40
9445 #define _CANSTAT_RO0_OPMODE2 0x80
9447 //==============================================================================
9450 //==============================================================================
9451 // CANCON_RO0 Bits
9453 extern __at(0x0F5F) __sfr CANCON_RO0;
9455 typedef union
9457 struct
9459 unsigned FP0 : 1;
9460 unsigned WIN0_FP1 : 1;
9461 unsigned WIN1_FP2 : 1;
9462 unsigned WIN2_FP3 : 1;
9463 unsigned ABAT : 1;
9464 unsigned REQOP0 : 1;
9465 unsigned REQOP1 : 1;
9466 unsigned REQOP2 : 1;
9469 struct
9471 unsigned : 5;
9472 unsigned REQOP : 3;
9474 } __CANCON_RO0bits_t;
9476 extern __at(0x0F5F) volatile __CANCON_RO0bits_t CANCON_RO0bits;
9478 #define _CANCON_RO0_FP0 0x01
9479 #define _CANCON_RO0_WIN0_FP1 0x02
9480 #define _CANCON_RO0_WIN1_FP2 0x04
9481 #define _CANCON_RO0_WIN2_FP3 0x08
9482 #define _CANCON_RO0_ABAT 0x10
9483 #define _CANCON_RO0_REQOP0 0x20
9484 #define _CANCON_RO0_REQOP1 0x40
9485 #define _CANCON_RO0_REQOP2 0x80
9487 //==============================================================================
9490 //==============================================================================
9491 // RXB0CON Bits
9493 extern __at(0x0F60) __sfr RXB0CON;
9495 typedef union
9497 struct
9499 unsigned FILHIT0 : 1;
9500 unsigned JTOFF_FILHIT1 : 1;
9501 unsigned RXB0DBEN_FILHIT2 : 1;
9502 unsigned RXRTRRO_FILHIT3 : 1;
9503 unsigned FILHIT4 : 1;
9504 unsigned RXM0_RTRRO : 1;
9505 unsigned RXM1 : 1;
9506 unsigned RXFUL : 1;
9509 struct
9511 unsigned : 1;
9512 unsigned JTOFF : 1;
9513 unsigned RXB0DBEN : 1;
9514 unsigned RXRTRRO : 1;
9515 unsigned : 1;
9516 unsigned RXM0 : 1;
9517 unsigned : 1;
9518 unsigned : 1;
9521 struct
9523 unsigned : 1;
9524 unsigned FILHIT1 : 1;
9525 unsigned FILHIT2 : 1;
9526 unsigned FILHIT3 : 1;
9527 unsigned : 1;
9528 unsigned RTRRO : 1;
9529 unsigned : 1;
9530 unsigned : 1;
9533 struct
9535 unsigned : 1;
9536 unsigned : 1;
9537 unsigned : 1;
9538 unsigned RTRRO_FILHIT3 : 1;
9539 unsigned : 1;
9540 unsigned RTRR0 : 1;
9541 unsigned : 1;
9542 unsigned : 1;
9545 struct
9547 unsigned FILHIT : 5;
9548 unsigned : 3;
9551 struct
9553 unsigned : 5;
9554 unsigned RXM : 2;
9555 unsigned : 1;
9557 } __RXB0CONbits_t;
9559 extern __at(0x0F60) volatile __RXB0CONbits_t RXB0CONbits;
9561 #define _RXB0CON_FILHIT0 0x01
9562 #define _RXB0CON_JTOFF_FILHIT1 0x02
9563 #define _RXB0CON_JTOFF 0x02
9564 #define _RXB0CON_FILHIT1 0x02
9565 #define _RXB0CON_RXB0DBEN_FILHIT2 0x04
9566 #define _RXB0CON_RXB0DBEN 0x04
9567 #define _RXB0CON_FILHIT2 0x04
9568 #define _RXB0CON_RXRTRRO_FILHIT3 0x08
9569 #define _RXB0CON_RXRTRRO 0x08
9570 #define _RXB0CON_FILHIT3 0x08
9571 #define _RXB0CON_RTRRO_FILHIT3 0x08
9572 #define _RXB0CON_FILHIT4 0x10
9573 #define _RXB0CON_RXM0_RTRRO 0x20
9574 #define _RXB0CON_RXM0 0x20
9575 #define _RXB0CON_RTRRO 0x20
9576 #define _RXB0CON_RTRR0 0x20
9577 #define _RXB0CON_RXM1 0x40
9578 #define _RXB0CON_RXFUL 0x80
9580 //==============================================================================
9583 //==============================================================================
9584 // RXB0SIDH Bits
9586 extern __at(0x0F61) __sfr RXB0SIDH;
9588 typedef struct
9590 unsigned SID3 : 1;
9591 unsigned SID4 : 1;
9592 unsigned SID5 : 1;
9593 unsigned SID6 : 1;
9594 unsigned SID7 : 1;
9595 unsigned SID8 : 1;
9596 unsigned SID9 : 1;
9597 unsigned SID10 : 1;
9598 } __RXB0SIDHbits_t;
9600 extern __at(0x0F61) volatile __RXB0SIDHbits_t RXB0SIDHbits;
9602 #define _RXB0SIDH_SID3 0x01
9603 #define _RXB0SIDH_SID4 0x02
9604 #define _RXB0SIDH_SID5 0x04
9605 #define _RXB0SIDH_SID6 0x08
9606 #define _RXB0SIDH_SID7 0x10
9607 #define _RXB0SIDH_SID8 0x20
9608 #define _RXB0SIDH_SID9 0x40
9609 #define _RXB0SIDH_SID10 0x80
9611 //==============================================================================
9614 //==============================================================================
9615 // RXB0SIDL Bits
9617 extern __at(0x0F62) __sfr RXB0SIDL;
9619 typedef union
9621 struct
9623 unsigned EID16 : 1;
9624 unsigned EID17 : 1;
9625 unsigned : 1;
9626 unsigned EXID : 1;
9627 unsigned SRR : 1;
9628 unsigned SID0 : 1;
9629 unsigned SID1 : 1;
9630 unsigned SID2 : 1;
9633 struct
9635 unsigned : 5;
9636 unsigned SID : 3;
9638 } __RXB0SIDLbits_t;
9640 extern __at(0x0F62) volatile __RXB0SIDLbits_t RXB0SIDLbits;
9642 #define _RXB0SIDL_EID16 0x01
9643 #define _RXB0SIDL_EID17 0x02
9644 #define _RXB0SIDL_EXID 0x08
9645 #define _RXB0SIDL_SRR 0x10
9646 #define _RXB0SIDL_SID0 0x20
9647 #define _RXB0SIDL_SID1 0x40
9648 #define _RXB0SIDL_SID2 0x80
9650 //==============================================================================
9653 //==============================================================================
9654 // RXB0EIDH Bits
9656 extern __at(0x0F63) __sfr RXB0EIDH;
9658 typedef struct
9660 unsigned EID8 : 1;
9661 unsigned EID9 : 1;
9662 unsigned EID10 : 1;
9663 unsigned EID11 : 1;
9664 unsigned EID12 : 1;
9665 unsigned EID13 : 1;
9666 unsigned EID14 : 1;
9667 unsigned EID15 : 1;
9668 } __RXB0EIDHbits_t;
9670 extern __at(0x0F63) volatile __RXB0EIDHbits_t RXB0EIDHbits;
9672 #define _RXB0EIDH_EID8 0x01
9673 #define _RXB0EIDH_EID9 0x02
9674 #define _RXB0EIDH_EID10 0x04
9675 #define _RXB0EIDH_EID11 0x08
9676 #define _RXB0EIDH_EID12 0x10
9677 #define _RXB0EIDH_EID13 0x20
9678 #define _RXB0EIDH_EID14 0x40
9679 #define _RXB0EIDH_EID15 0x80
9681 //==============================================================================
9684 //==============================================================================
9685 // RXB0EIDL Bits
9687 extern __at(0x0F64) __sfr RXB0EIDL;
9689 typedef struct
9691 unsigned EID0 : 1;
9692 unsigned EID1 : 1;
9693 unsigned EID2 : 1;
9694 unsigned EID3 : 1;
9695 unsigned EID4 : 1;
9696 unsigned EID5 : 1;
9697 unsigned EID6 : 1;
9698 unsigned EID7 : 1;
9699 } __RXB0EIDLbits_t;
9701 extern __at(0x0F64) volatile __RXB0EIDLbits_t RXB0EIDLbits;
9703 #define _RXB0EIDL_EID0 0x01
9704 #define _RXB0EIDL_EID1 0x02
9705 #define _RXB0EIDL_EID2 0x04
9706 #define _RXB0EIDL_EID3 0x08
9707 #define _RXB0EIDL_EID4 0x10
9708 #define _RXB0EIDL_EID5 0x20
9709 #define _RXB0EIDL_EID6 0x40
9710 #define _RXB0EIDL_EID7 0x80
9712 //==============================================================================
9715 //==============================================================================
9716 // RXB0DLC Bits
9718 extern __at(0x0F65) __sfr RXB0DLC;
9720 typedef union
9722 struct
9724 unsigned DLC0 : 1;
9725 unsigned DLC1 : 1;
9726 unsigned DLC2 : 1;
9727 unsigned DLC3 : 1;
9728 unsigned RB0 : 1;
9729 unsigned RB1 : 1;
9730 unsigned RXRTR : 1;
9731 unsigned : 1;
9734 struct
9736 unsigned : 1;
9737 unsigned : 1;
9738 unsigned : 1;
9739 unsigned : 1;
9740 unsigned RESRB0 : 1;
9741 unsigned RESRB1 : 1;
9742 unsigned : 1;
9743 unsigned : 1;
9746 struct
9748 unsigned DLC : 4;
9749 unsigned : 4;
9752 struct
9754 unsigned : 4;
9755 unsigned RESRB : 2;
9756 unsigned : 2;
9759 struct
9761 unsigned : 4;
9762 unsigned RB : 2;
9763 unsigned : 2;
9765 } __RXB0DLCbits_t;
9767 extern __at(0x0F65) volatile __RXB0DLCbits_t RXB0DLCbits;
9769 #define _RXB0DLC_DLC0 0x01
9770 #define _RXB0DLC_DLC1 0x02
9771 #define _RXB0DLC_DLC2 0x04
9772 #define _RXB0DLC_DLC3 0x08
9773 #define _RXB0DLC_RB0 0x10
9774 #define _RXB0DLC_RESRB0 0x10
9775 #define _RXB0DLC_RB1 0x20
9776 #define _RXB0DLC_RESRB1 0x20
9777 #define _RXB0DLC_RXRTR 0x40
9779 //==============================================================================
9782 //==============================================================================
9783 // RXB0D0 Bits
9785 extern __at(0x0F66) __sfr RXB0D0;
9787 typedef struct
9789 unsigned RXB0D00 : 1;
9790 unsigned RXB0D01 : 1;
9791 unsigned RXB0D02 : 1;
9792 unsigned RXB0D03 : 1;
9793 unsigned RXB0D04 : 1;
9794 unsigned RXB0D05 : 1;
9795 unsigned RXB0D06 : 1;
9796 unsigned RXB0D07 : 1;
9797 } __RXB0D0bits_t;
9799 extern __at(0x0F66) volatile __RXB0D0bits_t RXB0D0bits;
9801 #define _RXB0D00 0x01
9802 #define _RXB0D01 0x02
9803 #define _RXB0D02 0x04
9804 #define _RXB0D03 0x08
9805 #define _RXB0D04 0x10
9806 #define _RXB0D05 0x20
9807 #define _RXB0D06 0x40
9808 #define _RXB0D07 0x80
9810 //==============================================================================
9813 //==============================================================================
9814 // RXB0D1 Bits
9816 extern __at(0x0F67) __sfr RXB0D1;
9818 typedef struct
9820 unsigned RXB0D10 : 1;
9821 unsigned RXB0D11 : 1;
9822 unsigned RXB0D12 : 1;
9823 unsigned RXB0D13 : 1;
9824 unsigned RXB0D14 : 1;
9825 unsigned RXB0D15 : 1;
9826 unsigned RXB0D16 : 1;
9827 unsigned RXB0D17 : 1;
9828 } __RXB0D1bits_t;
9830 extern __at(0x0F67) volatile __RXB0D1bits_t RXB0D1bits;
9832 #define _RXB0D10 0x01
9833 #define _RXB0D11 0x02
9834 #define _RXB0D12 0x04
9835 #define _RXB0D13 0x08
9836 #define _RXB0D14 0x10
9837 #define _RXB0D15 0x20
9838 #define _RXB0D16 0x40
9839 #define _RXB0D17 0x80
9841 //==============================================================================
9844 //==============================================================================
9845 // RXB0D2 Bits
9847 extern __at(0x0F68) __sfr RXB0D2;
9849 typedef struct
9851 unsigned RXB0D20 : 1;
9852 unsigned RXB0D21 : 1;
9853 unsigned RXB0D22 : 1;
9854 unsigned RXB0D23 : 1;
9855 unsigned RXB0D24 : 1;
9856 unsigned RXB0D25 : 1;
9857 unsigned RXB0D26 : 1;
9858 unsigned RXB0D27 : 1;
9859 } __RXB0D2bits_t;
9861 extern __at(0x0F68) volatile __RXB0D2bits_t RXB0D2bits;
9863 #define _RXB0D20 0x01
9864 #define _RXB0D21 0x02
9865 #define _RXB0D22 0x04
9866 #define _RXB0D23 0x08
9867 #define _RXB0D24 0x10
9868 #define _RXB0D25 0x20
9869 #define _RXB0D26 0x40
9870 #define _RXB0D27 0x80
9872 //==============================================================================
9875 //==============================================================================
9876 // RXB0D3 Bits
9878 extern __at(0x0F69) __sfr RXB0D3;
9880 typedef struct
9882 unsigned RXB0D30 : 1;
9883 unsigned RXB0D31 : 1;
9884 unsigned RXB0D32 : 1;
9885 unsigned RXB0D33 : 1;
9886 unsigned RXB0D34 : 1;
9887 unsigned RXB0D35 : 1;
9888 unsigned RXB0D36 : 1;
9889 unsigned RXB0D37 : 1;
9890 } __RXB0D3bits_t;
9892 extern __at(0x0F69) volatile __RXB0D3bits_t RXB0D3bits;
9894 #define _RXB0D30 0x01
9895 #define _RXB0D31 0x02
9896 #define _RXB0D32 0x04
9897 #define _RXB0D33 0x08
9898 #define _RXB0D34 0x10
9899 #define _RXB0D35 0x20
9900 #define _RXB0D36 0x40
9901 #define _RXB0D37 0x80
9903 //==============================================================================
9906 //==============================================================================
9907 // RXB0D4 Bits
9909 extern __at(0x0F6A) __sfr RXB0D4;
9911 typedef struct
9913 unsigned RXB0D40 : 1;
9914 unsigned RXB0D41 : 1;
9915 unsigned RXB0D42 : 1;
9916 unsigned RXB0D43 : 1;
9917 unsigned RXB0D44 : 1;
9918 unsigned RXB0D45 : 1;
9919 unsigned RXB0D46 : 1;
9920 unsigned RXB0D47 : 1;
9921 } __RXB0D4bits_t;
9923 extern __at(0x0F6A) volatile __RXB0D4bits_t RXB0D4bits;
9925 #define _RXB0D40 0x01
9926 #define _RXB0D41 0x02
9927 #define _RXB0D42 0x04
9928 #define _RXB0D43 0x08
9929 #define _RXB0D44 0x10
9930 #define _RXB0D45 0x20
9931 #define _RXB0D46 0x40
9932 #define _RXB0D47 0x80
9934 //==============================================================================
9937 //==============================================================================
9938 // RXB0D5 Bits
9940 extern __at(0x0F6B) __sfr RXB0D5;
9942 typedef struct
9944 unsigned RXB0D50 : 1;
9945 unsigned RXB0D51 : 1;
9946 unsigned RXB0D52 : 1;
9947 unsigned RXB0D53 : 1;
9948 unsigned RXB0D54 : 1;
9949 unsigned RXB0D55 : 1;
9950 unsigned RXB0D56 : 1;
9951 unsigned RXB0D57 : 1;
9952 } __RXB0D5bits_t;
9954 extern __at(0x0F6B) volatile __RXB0D5bits_t RXB0D5bits;
9956 #define _RXB0D50 0x01
9957 #define _RXB0D51 0x02
9958 #define _RXB0D52 0x04
9959 #define _RXB0D53 0x08
9960 #define _RXB0D54 0x10
9961 #define _RXB0D55 0x20
9962 #define _RXB0D56 0x40
9963 #define _RXB0D57 0x80
9965 //==============================================================================
9968 //==============================================================================
9969 // RXB0D6 Bits
9971 extern __at(0x0F6C) __sfr RXB0D6;
9973 typedef struct
9975 unsigned RXB0D60 : 1;
9976 unsigned RXB0D61 : 1;
9977 unsigned RXB0D62 : 1;
9978 unsigned RXB0D63 : 1;
9979 unsigned RXB0D64 : 1;
9980 unsigned RXB0D65 : 1;
9981 unsigned RXB0D66 : 1;
9982 unsigned RXB0D67 : 1;
9983 } __RXB0D6bits_t;
9985 extern __at(0x0F6C) volatile __RXB0D6bits_t RXB0D6bits;
9987 #define _RXB0D60 0x01
9988 #define _RXB0D61 0x02
9989 #define _RXB0D62 0x04
9990 #define _RXB0D63 0x08
9991 #define _RXB0D64 0x10
9992 #define _RXB0D65 0x20
9993 #define _RXB0D66 0x40
9994 #define _RXB0D67 0x80
9996 //==============================================================================
9999 //==============================================================================
10000 // RXB0D7 Bits
10002 extern __at(0x0F6D) __sfr RXB0D7;
10004 typedef struct
10006 unsigned RXB0D70 : 1;
10007 unsigned RXB0D71 : 1;
10008 unsigned RXB0D72 : 1;
10009 unsigned RXB0D73 : 1;
10010 unsigned RXB0D74 : 1;
10011 unsigned RXB0D75 : 1;
10012 unsigned RXB0D76 : 1;
10013 unsigned RXB0D77 : 1;
10014 } __RXB0D7bits_t;
10016 extern __at(0x0F6D) volatile __RXB0D7bits_t RXB0D7bits;
10018 #define _RXB0D70 0x01
10019 #define _RXB0D71 0x02
10020 #define _RXB0D72 0x04
10021 #define _RXB0D73 0x08
10022 #define _RXB0D74 0x10
10023 #define _RXB0D75 0x20
10024 #define _RXB0D76 0x40
10025 #define _RXB0D77 0x80
10027 //==============================================================================
10030 //==============================================================================
10031 // CANSTAT Bits
10033 extern __at(0x0F6E) __sfr CANSTAT;
10035 typedef union
10037 struct
10039 unsigned EICODE0 : 1;
10040 unsigned EICODE1_ICODE0 : 1;
10041 unsigned EICODE2_ICODE1 : 1;
10042 unsigned EICODE3_ICODE2 : 1;
10043 unsigned EICODE4 : 1;
10044 unsigned OPMODE0 : 1;
10045 unsigned OPMODE1 : 1;
10046 unsigned OPMODE2 : 1;
10049 struct
10051 unsigned : 1;
10052 unsigned ICODE0 : 1;
10053 unsigned ICODE1 : 1;
10054 unsigned ICODE2 : 1;
10055 unsigned : 1;
10056 unsigned : 1;
10057 unsigned : 1;
10058 unsigned : 1;
10061 struct
10063 unsigned : 1;
10064 unsigned EICODE1 : 1;
10065 unsigned EICODE2 : 1;
10066 unsigned EICODE3 : 1;
10067 unsigned : 1;
10068 unsigned : 1;
10069 unsigned : 1;
10070 unsigned : 1;
10073 struct
10075 unsigned EICODE : 5;
10076 unsigned : 3;
10079 struct
10081 unsigned : 1;
10082 unsigned ICODE : 3;
10083 unsigned : 4;
10086 struct
10088 unsigned : 5;
10089 unsigned OPMODE : 3;
10091 } __CANSTATbits_t;
10093 extern __at(0x0F6E) volatile __CANSTATbits_t CANSTATbits;
10095 #define _EICODE0 0x01
10096 #define _EICODE1_ICODE0 0x02
10097 #define _ICODE0 0x02
10098 #define _EICODE1 0x02
10099 #define _EICODE2_ICODE1 0x04
10100 #define _ICODE1 0x04
10101 #define _EICODE2 0x04
10102 #define _EICODE3_ICODE2 0x08
10103 #define _ICODE2 0x08
10104 #define _EICODE3 0x08
10105 #define _EICODE4 0x10
10106 #define _OPMODE0 0x20
10107 #define _OPMODE1 0x40
10108 #define _OPMODE2 0x80
10110 //==============================================================================
10113 //==============================================================================
10114 // CANCON Bits
10116 extern __at(0x0F6F) __sfr CANCON;
10118 typedef union
10120 struct
10122 unsigned FP0 : 1;
10123 unsigned WIN0_FP1 : 1;
10124 unsigned WIN1_FP2 : 1;
10125 unsigned WIN2_FP3 : 1;
10126 unsigned ABAT : 1;
10127 unsigned REQOP0 : 1;
10128 unsigned REQOP1 : 1;
10129 unsigned REQOP2 : 1;
10132 struct
10134 unsigned : 1;
10135 unsigned WIN0 : 1;
10136 unsigned WIN1 : 1;
10137 unsigned WIN2 : 1;
10138 unsigned : 1;
10139 unsigned : 1;
10140 unsigned : 1;
10141 unsigned : 1;
10144 struct
10146 unsigned : 1;
10147 unsigned FP1 : 1;
10148 unsigned FP2 : 1;
10149 unsigned FP3 : 1;
10150 unsigned : 1;
10151 unsigned : 1;
10152 unsigned : 1;
10153 unsigned : 1;
10156 struct
10158 unsigned FP : 4;
10159 unsigned : 4;
10162 struct
10164 unsigned : 1;
10165 unsigned WIN : 3;
10166 unsigned : 4;
10169 struct
10171 unsigned : 5;
10172 unsigned REQOP : 3;
10174 } __CANCONbits_t;
10176 extern __at(0x0F6F) volatile __CANCONbits_t CANCONbits;
10178 #define _FP0 0x01
10179 #define _WIN0_FP1 0x02
10180 #define _WIN0 0x02
10181 #define _FP1 0x02
10182 #define _WIN1_FP2 0x04
10183 #define _WIN1 0x04
10184 #define _FP2 0x04
10185 #define _WIN2_FP3 0x08
10186 #define _WIN2 0x08
10187 #define _FP3 0x08
10188 #define _ABAT 0x10
10189 #define _REQOP0 0x20
10190 #define _REQOP1 0x40
10191 #define _REQOP2 0x80
10193 //==============================================================================
10196 //==============================================================================
10197 // BRGCON1 Bits
10199 extern __at(0x0F70) __sfr BRGCON1;
10201 typedef union
10203 struct
10205 unsigned BRP0 : 1;
10206 unsigned BRP1 : 1;
10207 unsigned BRP2 : 1;
10208 unsigned BRP3 : 1;
10209 unsigned BRP4 : 1;
10210 unsigned BRP5 : 1;
10211 unsigned SJW0 : 1;
10212 unsigned SJW1 : 1;
10215 struct
10217 unsigned BRP : 6;
10218 unsigned : 2;
10221 struct
10223 unsigned : 6;
10224 unsigned SJW : 2;
10226 } __BRGCON1bits_t;
10228 extern __at(0x0F70) volatile __BRGCON1bits_t BRGCON1bits;
10230 #define _BRP0 0x01
10231 #define _BRP1 0x02
10232 #define _BRP2 0x04
10233 #define _BRP3 0x08
10234 #define _BRP4 0x10
10235 #define _BRP5 0x20
10236 #define _SJW0 0x40
10237 #define _SJW1 0x80
10239 //==============================================================================
10242 //==============================================================================
10243 // BRGCON2 Bits
10245 extern __at(0x0F71) __sfr BRGCON2;
10247 typedef union
10249 struct
10251 unsigned PRSEG0 : 1;
10252 unsigned PRSEG1 : 1;
10253 unsigned PRSEG2 : 1;
10254 unsigned SEG1PH0 : 1;
10255 unsigned SEG1PH1 : 1;
10256 unsigned SEG1PH2 : 1;
10257 unsigned SAM : 1;
10258 unsigned SEG2PHT : 1;
10261 struct
10263 unsigned : 1;
10264 unsigned : 1;
10265 unsigned : 1;
10266 unsigned : 1;
10267 unsigned : 1;
10268 unsigned : 1;
10269 unsigned : 1;
10270 unsigned SEG2PHTS : 1;
10273 struct
10275 unsigned PRSEG : 3;
10276 unsigned : 5;
10279 struct
10281 unsigned : 3;
10282 unsigned SEG1PH : 3;
10283 unsigned : 2;
10285 } __BRGCON2bits_t;
10287 extern __at(0x0F71) volatile __BRGCON2bits_t BRGCON2bits;
10289 #define _PRSEG0 0x01
10290 #define _PRSEG1 0x02
10291 #define _PRSEG2 0x04
10292 #define _SEG1PH0 0x08
10293 #define _SEG1PH1 0x10
10294 #define _SEG1PH2 0x20
10295 #define _SAM 0x40
10296 #define _SEG2PHT 0x80
10297 #define _SEG2PHTS 0x80
10299 //==============================================================================
10302 //==============================================================================
10303 // BRGCON3 Bits
10305 extern __at(0x0F72) __sfr BRGCON3;
10307 typedef union
10309 struct
10311 unsigned SEG2PH0 : 1;
10312 unsigned SEG2PH1 : 1;
10313 unsigned SEG2PH2 : 1;
10314 unsigned : 1;
10315 unsigned : 1;
10316 unsigned : 1;
10317 unsigned WAKFIL : 1;
10318 unsigned WAKDIS : 1;
10321 struct
10323 unsigned SEG2PH : 3;
10324 unsigned : 5;
10326 } __BRGCON3bits_t;
10328 extern __at(0x0F72) volatile __BRGCON3bits_t BRGCON3bits;
10330 #define _SEG2PH0 0x01
10331 #define _SEG2PH1 0x02
10332 #define _SEG2PH2 0x04
10333 #define _WAKFIL 0x40
10334 #define _WAKDIS 0x80
10336 //==============================================================================
10339 //==============================================================================
10340 // CIOCON Bits
10342 extern __at(0x0F73) __sfr CIOCON;
10344 typedef struct
10346 unsigned : 1;
10347 unsigned : 1;
10348 unsigned : 1;
10349 unsigned : 1;
10350 unsigned CANCAP : 1;
10351 unsigned ENDRHI : 1;
10352 unsigned TX2EN : 1;
10353 unsigned TX2SRC : 1;
10354 } __CIOCONbits_t;
10356 extern __at(0x0F73) volatile __CIOCONbits_t CIOCONbits;
10358 #define _CANCAP 0x10
10359 #define _ENDRHI 0x20
10360 #define _TX2EN 0x40
10361 #define _TX2SRC 0x80
10363 //==============================================================================
10366 //==============================================================================
10367 // COMSTAT Bits
10369 extern __at(0x0F74) __sfr COMSTAT;
10371 typedef union
10373 struct
10375 unsigned EWARN : 1;
10376 unsigned RXWARN : 1;
10377 unsigned TXWARN : 1;
10378 unsigned RXBP : 1;
10379 unsigned TXBP : 1;
10380 unsigned TXBO : 1;
10381 unsigned RXBnOVFL : 1;
10382 unsigned RXB0OVFL_NOT_FIFOEMPTY : 1;
10385 struct
10387 unsigned : 1;
10388 unsigned : 1;
10389 unsigned : 1;
10390 unsigned : 1;
10391 unsigned : 1;
10392 unsigned : 1;
10393 unsigned RXB1OVFL : 1;
10394 unsigned RXB0OVFL : 1;
10397 struct
10399 unsigned : 1;
10400 unsigned : 1;
10401 unsigned : 1;
10402 unsigned : 1;
10403 unsigned : 1;
10404 unsigned : 1;
10405 unsigned : 1;
10406 unsigned FIFOEMPTY : 1;
10409 struct
10411 unsigned : 1;
10412 unsigned : 1;
10413 unsigned : 1;
10414 unsigned : 1;
10415 unsigned : 1;
10416 unsigned : 1;
10417 unsigned : 1;
10418 unsigned NOT_FIFOEMPTY : 1;
10420 } __COMSTATbits_t;
10422 extern __at(0x0F74) volatile __COMSTATbits_t COMSTATbits;
10424 #define _EWARN 0x01
10425 #define _RXWARN 0x02
10426 #define _TXWARN 0x04
10427 #define _RXBP 0x08
10428 #define _TXBP 0x10
10429 #define _TXBO 0x20
10430 #define _RXBnOVFL 0x40
10431 #define _RXB1OVFL 0x40
10432 #define _RXB0OVFL_NOT_FIFOEMPTY 0x80
10433 #define _RXB0OVFL 0x80
10434 #define _FIFOEMPTY 0x80
10435 #define _NOT_FIFOEMPTY 0x80
10437 //==============================================================================
10440 //==============================================================================
10441 // RXERRCNT Bits
10443 extern __at(0x0F75) __sfr RXERRCNT;
10445 typedef struct
10447 unsigned REC0 : 1;
10448 unsigned REC1 : 1;
10449 unsigned REC2 : 1;
10450 unsigned REC3 : 1;
10451 unsigned REC4 : 1;
10452 unsigned REC5 : 1;
10453 unsigned REC6 : 1;
10454 unsigned REC7 : 1;
10455 } __RXERRCNTbits_t;
10457 extern __at(0x0F75) volatile __RXERRCNTbits_t RXERRCNTbits;
10459 #define _REC0 0x01
10460 #define _REC1 0x02
10461 #define _REC2 0x04
10462 #define _REC3 0x08
10463 #define _REC4 0x10
10464 #define _REC5 0x20
10465 #define _REC6 0x40
10466 #define _REC7 0x80
10468 //==============================================================================
10471 //==============================================================================
10472 // TXERRCNT Bits
10474 extern __at(0x0F76) __sfr TXERRCNT;
10476 typedef struct
10478 unsigned TEC0 : 1;
10479 unsigned TEC1 : 1;
10480 unsigned TEC2 : 1;
10481 unsigned TEC3 : 1;
10482 unsigned TEC4 : 1;
10483 unsigned TEC5 : 1;
10484 unsigned TEC6 : 1;
10485 unsigned TEC7 : 1;
10486 } __TXERRCNTbits_t;
10488 extern __at(0x0F76) volatile __TXERRCNTbits_t TXERRCNTbits;
10490 #define _TEC0 0x01
10491 #define _TEC1 0x02
10492 #define _TEC2 0x04
10493 #define _TEC3 0x08
10494 #define _TEC4 0x10
10495 #define _TEC5 0x20
10496 #define _TEC6 0x40
10497 #define _TEC7 0x80
10499 //==============================================================================
10502 //==============================================================================
10503 // ECANCON Bits
10505 extern __at(0x0F77) __sfr ECANCON;
10507 typedef union
10509 struct
10511 unsigned EWIN0 : 1;
10512 unsigned EWIN1 : 1;
10513 unsigned EWIN2 : 1;
10514 unsigned EWIN3 : 1;
10515 unsigned EWIN4 : 1;
10516 unsigned FIFOWM : 1;
10517 unsigned MDSEL0 : 1;
10518 unsigned MDSEL1 : 1;
10521 struct
10523 unsigned : 1;
10524 unsigned : 1;
10525 unsigned : 1;
10526 unsigned : 1;
10527 unsigned : 1;
10528 unsigned F : 1;
10529 unsigned : 1;
10530 unsigned : 1;
10533 struct
10535 unsigned EWIN : 5;
10536 unsigned : 3;
10539 struct
10541 unsigned : 6;
10542 unsigned MDSEL : 2;
10544 } __ECANCONbits_t;
10546 extern __at(0x0F77) volatile __ECANCONbits_t ECANCONbits;
10548 #define _EWIN0 0x01
10549 #define _EWIN1 0x02
10550 #define _EWIN2 0x04
10551 #define _EWIN3 0x08
10552 #define _EWIN4 0x10
10553 #define _FIFOWM 0x20
10554 #define _F 0x20
10555 #define _MDSEL0 0x40
10556 #define _MDSEL1 0x80
10558 //==============================================================================
10561 //==============================================================================
10562 // ECCP1DEL Bits
10564 extern __at(0x0F79) __sfr ECCP1DEL;
10566 typedef union
10568 struct
10570 unsigned PDC0 : 1;
10571 unsigned PDC1 : 1;
10572 unsigned PDC2 : 1;
10573 unsigned PDC3 : 1;
10574 unsigned PDC4 : 1;
10575 unsigned PDC5 : 1;
10576 unsigned PDC6 : 1;
10577 unsigned PRSEN : 1;
10580 struct
10582 unsigned PDC : 7;
10583 unsigned : 1;
10585 } __ECCP1DELbits_t;
10587 extern __at(0x0F79) volatile __ECCP1DELbits_t ECCP1DELbits;
10589 #define _PDC0 0x01
10590 #define _PDC1 0x02
10591 #define _PDC2 0x04
10592 #define _PDC3 0x08
10593 #define _PDC4 0x10
10594 #define _PDC5 0x20
10595 #define _PDC6 0x40
10596 #define _PRSEN 0x80
10598 //==============================================================================
10601 //==============================================================================
10602 // BAUDCON Bits
10604 extern __at(0x0F7E) __sfr BAUDCON;
10606 typedef struct
10608 unsigned ABDEN : 1;
10609 unsigned WUE : 1;
10610 unsigned : 1;
10611 unsigned BRG16 : 1;
10612 unsigned SCKP : 1;
10613 unsigned : 1;
10614 unsigned RCIDL : 1;
10615 unsigned : 1;
10616 } __BAUDCONbits_t;
10618 extern __at(0x0F7E) volatile __BAUDCONbits_t BAUDCONbits;
10620 #define _ABDEN 0x01
10621 #define _WUE 0x02
10622 #define _BRG16 0x08
10623 #define _SCKP 0x10
10624 #define _RCIDL 0x40
10626 //==============================================================================
10628 extern __at(0x0F7F) __sfr SPBRGH;
10630 //==============================================================================
10631 // PORTA Bits
10633 extern __at(0x0F80) __sfr PORTA;
10635 typedef union
10637 struct
10639 unsigned RA0 : 1;
10640 unsigned RA1 : 1;
10641 unsigned RA2 : 1;
10642 unsigned RA3 : 1;
10643 unsigned RA4 : 1;
10644 unsigned RA5 : 1;
10645 unsigned RA6 : 1;
10646 unsigned : 1;
10649 struct
10651 unsigned AN0 : 1;
10652 unsigned AN1 : 1;
10653 unsigned AN2 : 1;
10654 unsigned AN3 : 1;
10655 unsigned T0CKI : 1;
10656 unsigned AN4 : 1;
10657 unsigned OSC2 : 1;
10658 unsigned : 1;
10661 struct
10663 unsigned : 1;
10664 unsigned : 1;
10665 unsigned VREFM : 1;
10666 unsigned VREFP : 1;
10667 unsigned : 1;
10668 unsigned LVDIN : 1;
10669 unsigned CLKO : 1;
10670 unsigned : 1;
10673 struct
10675 unsigned RA : 7;
10676 unsigned : 1;
10678 } __PORTAbits_t;
10680 extern __at(0x0F80) volatile __PORTAbits_t PORTAbits;
10682 #define _PORTA_RA0 0x01
10683 #define _PORTA_AN0 0x01
10684 #define _PORTA_RA1 0x02
10685 #define _PORTA_AN1 0x02
10686 #define _PORTA_RA2 0x04
10687 #define _PORTA_AN2 0x04
10688 #define _PORTA_VREFM 0x04
10689 #define _PORTA_RA3 0x08
10690 #define _PORTA_AN3 0x08
10691 #define _PORTA_VREFP 0x08
10692 #define _PORTA_RA4 0x10
10693 #define _PORTA_T0CKI 0x10
10694 #define _PORTA_RA5 0x20
10695 #define _PORTA_AN4 0x20
10696 #define _PORTA_LVDIN 0x20
10697 #define _PORTA_RA6 0x40
10698 #define _PORTA_OSC2 0x40
10699 #define _PORTA_CLKO 0x40
10701 //==============================================================================
10704 //==============================================================================
10705 // PORTB Bits
10707 extern __at(0x0F81) __sfr PORTB;
10709 typedef union
10711 struct
10713 unsigned RB0 : 1;
10714 unsigned RB1 : 1;
10715 unsigned RB2 : 1;
10716 unsigned RB3 : 1;
10717 unsigned RB4 : 1;
10718 unsigned RB5 : 1;
10719 unsigned RB6 : 1;
10720 unsigned RB7 : 1;
10723 struct
10725 unsigned INT0 : 1;
10726 unsigned INT1 : 1;
10727 unsigned INT2 : 1;
10728 unsigned INT3 : 1;
10729 unsigned KBI0 : 1;
10730 unsigned KBI1 : 1;
10731 unsigned KBI2 : 1;
10732 unsigned KBI3 : 1;
10735 struct
10737 unsigned : 1;
10738 unsigned : 1;
10739 unsigned : 1;
10740 unsigned : 1;
10741 unsigned : 1;
10742 unsigned PGM : 1;
10743 unsigned PGC : 1;
10744 unsigned PGD : 1;
10747 struct
10749 unsigned INT : 4;
10750 unsigned : 4;
10753 struct
10755 unsigned : 4;
10756 unsigned KBI : 4;
10758 } __PORTBbits_t;
10760 extern __at(0x0F81) volatile __PORTBbits_t PORTBbits;
10762 #define _PORTB_RB0 0x01
10763 #define _PORTB_INT0 0x01
10764 #define _PORTB_RB1 0x02
10765 #define _PORTB_INT1 0x02
10766 #define _PORTB_RB2 0x04
10767 #define _PORTB_INT2 0x04
10768 #define _PORTB_RB3 0x08
10769 #define _PORTB_INT3 0x08
10770 #define _PORTB_RB4 0x10
10771 #define _PORTB_KBI0 0x10
10772 #define _PORTB_RB5 0x20
10773 #define _PORTB_KBI1 0x20
10774 #define _PORTB_PGM 0x20
10775 #define _PORTB_RB6 0x40
10776 #define _PORTB_KBI2 0x40
10777 #define _PORTB_PGC 0x40
10778 #define _PORTB_RB7 0x80
10779 #define _PORTB_KBI3 0x80
10780 #define _PORTB_PGD 0x80
10782 //==============================================================================
10785 //==============================================================================
10786 // PORTC Bits
10788 extern __at(0x0F82) __sfr PORTC;
10790 typedef union
10792 struct
10794 unsigned RC0 : 1;
10795 unsigned RC1 : 1;
10796 unsigned RC2 : 1;
10797 unsigned RC3 : 1;
10798 unsigned RC4 : 1;
10799 unsigned RC5 : 1;
10800 unsigned RC6 : 1;
10801 unsigned RC7 : 1;
10804 struct
10806 unsigned T1OSO : 1;
10807 unsigned T1OSI : 1;
10808 unsigned CCP1 : 1;
10809 unsigned SCK : 1;
10810 unsigned SDI : 1;
10811 unsigned SDO : 1;
10812 unsigned TX : 1;
10813 unsigned RX : 1;
10816 struct
10818 unsigned T13CKI : 1;
10819 unsigned : 1;
10820 unsigned P1A : 1;
10821 unsigned SCL : 1;
10822 unsigned SDA : 1;
10823 unsigned : 1;
10824 unsigned CK : 1;
10825 unsigned : 1;
10827 } __PORTCbits_t;
10829 extern __at(0x0F82) volatile __PORTCbits_t PORTCbits;
10831 #define _PORTC_RC0 0x01
10832 #define _PORTC_T1OSO 0x01
10833 #define _PORTC_T13CKI 0x01
10834 #define _PORTC_RC1 0x02
10835 #define _PORTC_T1OSI 0x02
10836 #define _PORTC_RC2 0x04
10837 #define _PORTC_CCP1 0x04
10838 #define _PORTC_P1A 0x04
10839 #define _PORTC_RC3 0x08
10840 #define _PORTC_SCK 0x08
10841 #define _PORTC_SCL 0x08
10842 #define _PORTC_RC4 0x10
10843 #define _PORTC_SDI 0x10
10844 #define _PORTC_SDA 0x10
10845 #define _PORTC_RC5 0x20
10846 #define _PORTC_SDO 0x20
10847 #define _PORTC_RC6 0x40
10848 #define _PORTC_TX 0x40
10849 #define _PORTC_CK 0x40
10850 #define _PORTC_RC7 0x80
10851 #define _PORTC_RX 0x80
10853 //==============================================================================
10856 //==============================================================================
10857 // PORTD Bits
10859 extern __at(0x0F83) __sfr PORTD;
10861 typedef union
10863 struct
10865 unsigned RD0 : 1;
10866 unsigned RD1 : 1;
10867 unsigned RD2 : 1;
10868 unsigned RD3 : 1;
10869 unsigned RD4 : 1;
10870 unsigned RD5 : 1;
10871 unsigned RD6 : 1;
10872 unsigned RD7 : 1;
10875 struct
10877 unsigned PSP0 : 1;
10878 unsigned PSP1 : 1;
10879 unsigned PSP2 : 1;
10880 unsigned PSP3 : 1;
10881 unsigned PSP4 : 1;
10882 unsigned PSP5 : 1;
10883 unsigned PSP6 : 1;
10884 unsigned PSP7 : 1;
10887 struct
10889 unsigned AD0 : 1;
10890 unsigned AD1 : 1;
10891 unsigned AD2 : 1;
10892 unsigned AD3 : 1;
10893 unsigned AD4 : 1;
10894 unsigned AD5 : 1;
10895 unsigned AD6 : 1;
10896 unsigned AD7 : 1;
10898 } __PORTDbits_t;
10900 extern __at(0x0F83) volatile __PORTDbits_t PORTDbits;
10902 #define _PORTD_RD0 0x01
10903 #define _PORTD_PSP0 0x01
10904 #define _PORTD_AD0 0x01
10905 #define _PORTD_RD1 0x02
10906 #define _PORTD_PSP1 0x02
10907 #define _PORTD_AD1 0x02
10908 #define _PORTD_RD2 0x04
10909 #define _PORTD_PSP2 0x04
10910 #define _PORTD_AD2 0x04
10911 #define _PORTD_RD3 0x08
10912 #define _PORTD_PSP3 0x08
10913 #define _PORTD_AD3 0x08
10914 #define _PORTD_RD4 0x10
10915 #define _PORTD_PSP4 0x10
10916 #define _PORTD_AD4 0x10
10917 #define _PORTD_RD5 0x20
10918 #define _PORTD_PSP5 0x20
10919 #define _PORTD_AD5 0x20
10920 #define _PORTD_RD6 0x40
10921 #define _PORTD_PSP6 0x40
10922 #define _PORTD_AD6 0x40
10923 #define _PORTD_RD7 0x80
10924 #define _PORTD_PSP7 0x80
10925 #define _PORTD_AD7 0x80
10927 //==============================================================================
10930 //==============================================================================
10931 // PORTE Bits
10933 extern __at(0x0F84) __sfr PORTE;
10935 typedef union
10937 struct
10939 unsigned RE0 : 1;
10940 unsigned RE1 : 1;
10941 unsigned RE2 : 1;
10942 unsigned RE3 : 1;
10943 unsigned RE4 : 1;
10944 unsigned RE5 : 1;
10945 unsigned RE6 : 1;
10946 unsigned RE7 : 1;
10949 struct
10951 unsigned RD : 1;
10952 unsigned WR : 1;
10953 unsigned CS : 1;
10954 unsigned AD11 : 1;
10955 unsigned AD12 : 1;
10956 unsigned AD13 : 1;
10957 unsigned AD14 : 1;
10958 unsigned AD15 : 1;
10961 struct
10963 unsigned AD8 : 1;
10964 unsigned AD9 : 1;
10965 unsigned AD10 : 1;
10966 unsigned : 1;
10967 unsigned : 1;
10968 unsigned : 1;
10969 unsigned : 1;
10970 unsigned : 1;
10972 } __PORTEbits_t;
10974 extern __at(0x0F84) volatile __PORTEbits_t PORTEbits;
10976 #define _PORTE_RE0 0x01
10977 #define _PORTE_RD 0x01
10978 #define _PORTE_AD8 0x01
10979 #define _PORTE_RE1 0x02
10980 #define _PORTE_WR 0x02
10981 #define _PORTE_AD9 0x02
10982 #define _PORTE_RE2 0x04
10983 #define _PORTE_CS 0x04
10984 #define _PORTE_AD10 0x04
10985 #define _PORTE_RE3 0x08
10986 #define _PORTE_AD11 0x08
10987 #define _PORTE_RE4 0x10
10988 #define _PORTE_AD12 0x10
10989 #define _PORTE_RE5 0x20
10990 #define _PORTE_AD13 0x20
10991 #define _PORTE_RE6 0x40
10992 #define _PORTE_AD14 0x40
10993 #define _PORTE_RE7 0x80
10994 #define _PORTE_AD15 0x80
10996 //==============================================================================
10999 //==============================================================================
11000 // PORTF Bits
11002 extern __at(0x0F85) __sfr PORTF;
11004 typedef union
11006 struct
11008 unsigned RF0 : 1;
11009 unsigned RF1 : 1;
11010 unsigned RF2 : 1;
11011 unsigned RF3 : 1;
11012 unsigned RF4 : 1;
11013 unsigned RF5 : 1;
11014 unsigned RF6 : 1;
11015 unsigned RF7 : 1;
11018 struct
11020 unsigned AN5 : 1;
11021 unsigned AN6 : 1;
11022 unsigned AN7 : 1;
11023 unsigned AN8 : 1;
11024 unsigned AN9 : 1;
11025 unsigned AN10 : 1;
11026 unsigned AN11 : 1;
11027 unsigned SS : 1;
11030 struct
11032 unsigned : 1;
11033 unsigned C2OUTF : 1;
11034 unsigned C1OUTF : 1;
11035 unsigned : 1;
11036 unsigned : 1;
11037 unsigned CVREFF : 1;
11038 unsigned : 1;
11039 unsigned : 1;
11041 } __PORTFbits_t;
11043 extern __at(0x0F85) volatile __PORTFbits_t PORTFbits;
11045 #define _PORTF_RF0 0x01
11046 #define _PORTF_AN5 0x01
11047 #define _PORTF_RF1 0x02
11048 #define _PORTF_AN6 0x02
11049 #define _PORTF_C2OUTF 0x02
11050 #define _PORTF_RF2 0x04
11051 #define _PORTF_AN7 0x04
11052 #define _PORTF_C1OUTF 0x04
11053 #define _PORTF_RF3 0x08
11054 #define _PORTF_AN8 0x08
11055 #define _PORTF_RF4 0x10
11056 #define _PORTF_AN9 0x10
11057 #define _PORTF_RF5 0x20
11058 #define _PORTF_AN10 0x20
11059 #define _PORTF_CVREFF 0x20
11060 #define _PORTF_RF6 0x40
11061 #define _PORTF_AN11 0x40
11062 #define _PORTF_RF7 0x80
11063 #define _PORTF_SS 0x80
11065 //==============================================================================
11068 //==============================================================================
11069 // PORTG Bits
11071 extern __at(0x0F86) __sfr PORTG;
11073 typedef union
11075 struct
11077 unsigned RG0 : 1;
11078 unsigned RG1 : 1;
11079 unsigned RG2 : 1;
11080 unsigned RG3 : 1;
11081 unsigned RG4 : 1;
11082 unsigned RG5 : 1;
11083 unsigned : 1;
11084 unsigned : 1;
11087 struct
11089 unsigned CANTX1 : 1;
11090 unsigned CANTX2 : 1;
11091 unsigned CANRX : 1;
11092 unsigned : 1;
11093 unsigned P1D : 1;
11094 unsigned MCLR : 1;
11095 unsigned : 1;
11096 unsigned : 1;
11099 struct
11101 unsigned RG : 6;
11102 unsigned : 2;
11104 } __PORTGbits_t;
11106 extern __at(0x0F86) volatile __PORTGbits_t PORTGbits;
11108 #define _PORTG_RG0 0x01
11109 #define _PORTG_CANTX1 0x01
11110 #define _PORTG_RG1 0x02
11111 #define _PORTG_CANTX2 0x02
11112 #define _PORTG_RG2 0x04
11113 #define _PORTG_CANRX 0x04
11114 #define _PORTG_RG3 0x08
11115 #define _PORTG_RG4 0x10
11116 #define _PORTG_P1D 0x10
11117 #define _PORTG_RG5 0x20
11118 #define _PORTG_MCLR 0x20
11120 //==============================================================================
11123 //==============================================================================
11124 // PORTH Bits
11126 extern __at(0x0F87) __sfr PORTH;
11128 typedef union
11130 struct
11132 unsigned RH0 : 1;
11133 unsigned RH1 : 1;
11134 unsigned RH2 : 1;
11135 unsigned RH3 : 1;
11136 unsigned RH4 : 1;
11137 unsigned RH5 : 1;
11138 unsigned RH6 : 1;
11139 unsigned RH7 : 1;
11142 struct
11144 unsigned AD16 : 1;
11145 unsigned AD17 : 1;
11146 unsigned AD18 : 1;
11147 unsigned AD19 : 1;
11148 unsigned AN12 : 1;
11149 unsigned AN13 : 1;
11150 unsigned AN14 : 1;
11151 unsigned AN15 : 1;
11153 } __PORTHbits_t;
11155 extern __at(0x0F87) volatile __PORTHbits_t PORTHbits;
11157 #define _PORTH_RH0 0x01
11158 #define _PORTH_AD16 0x01
11159 #define _PORTH_RH1 0x02
11160 #define _PORTH_AD17 0x02
11161 #define _PORTH_RH2 0x04
11162 #define _PORTH_AD18 0x04
11163 #define _PORTH_RH3 0x08
11164 #define _PORTH_AD19 0x08
11165 #define _PORTH_RH4 0x10
11166 #define _PORTH_AN12 0x10
11167 #define _PORTH_RH5 0x20
11168 #define _PORTH_AN13 0x20
11169 #define _PORTH_RH6 0x40
11170 #define _PORTH_AN14 0x40
11171 #define _PORTH_RH7 0x80
11172 #define _PORTH_AN15 0x80
11174 //==============================================================================
11177 //==============================================================================
11178 // PORTJ Bits
11180 extern __at(0x0F88) __sfr PORTJ;
11182 typedef union
11184 struct
11186 unsigned RJ0 : 1;
11187 unsigned RJ1 : 1;
11188 unsigned RJ2 : 1;
11189 unsigned RJ3 : 1;
11190 unsigned RJ4 : 1;
11191 unsigned RJ5 : 1;
11192 unsigned RJ6 : 1;
11193 unsigned RJ7 : 1;
11196 struct
11198 unsigned ALE : 1;
11199 unsigned OE : 1;
11200 unsigned WRL : 1;
11201 unsigned WRH : 1;
11202 unsigned BA0 : 1;
11203 unsigned CE : 1;
11204 unsigned LB : 1;
11205 unsigned UB : 1;
11207 } __PORTJbits_t;
11209 extern __at(0x0F88) volatile __PORTJbits_t PORTJbits;
11211 #define _PORTJ_RJ0 0x01
11212 #define _PORTJ_ALE 0x01
11213 #define _PORTJ_RJ1 0x02
11214 #define _PORTJ_OE 0x02
11215 #define _PORTJ_RJ2 0x04
11216 #define _PORTJ_WRL 0x04
11217 #define _PORTJ_RJ3 0x08
11218 #define _PORTJ_WRH 0x08
11219 #define _PORTJ_RJ4 0x10
11220 #define _PORTJ_BA0 0x10
11221 #define _PORTJ_RJ5 0x20
11222 #define _PORTJ_CE 0x20
11223 #define _PORTJ_RJ6 0x40
11224 #define _PORTJ_LB 0x40
11225 #define _PORTJ_RJ7 0x80
11226 #define _PORTJ_UB 0x80
11228 //==============================================================================
11231 //==============================================================================
11232 // LATA Bits
11234 extern __at(0x0F89) __sfr LATA;
11236 typedef union
11238 struct
11240 unsigned LATA0 : 1;
11241 unsigned LATA1 : 1;
11242 unsigned LATA2 : 1;
11243 unsigned LATA3 : 1;
11244 unsigned LATA4 : 1;
11245 unsigned LATA5 : 1;
11246 unsigned LATA6 : 1;
11247 unsigned : 1;
11250 struct
11252 unsigned LATA : 7;
11253 unsigned : 1;
11255 } __LATAbits_t;
11257 extern __at(0x0F89) volatile __LATAbits_t LATAbits;
11259 #define _LATA0 0x01
11260 #define _LATA1 0x02
11261 #define _LATA2 0x04
11262 #define _LATA3 0x08
11263 #define _LATA4 0x10
11264 #define _LATA5 0x20
11265 #define _LATA6 0x40
11267 //==============================================================================
11270 //==============================================================================
11271 // LATB Bits
11273 extern __at(0x0F8A) __sfr LATB;
11275 typedef struct
11277 unsigned LATB0 : 1;
11278 unsigned LATB1 : 1;
11279 unsigned LATB2 : 1;
11280 unsigned LATB3 : 1;
11281 unsigned LATB4 : 1;
11282 unsigned LATB5 : 1;
11283 unsigned LATB6 : 1;
11284 unsigned LATB7 : 1;
11285 } __LATBbits_t;
11287 extern __at(0x0F8A) volatile __LATBbits_t LATBbits;
11289 #define _LATB0 0x01
11290 #define _LATB1 0x02
11291 #define _LATB2 0x04
11292 #define _LATB3 0x08
11293 #define _LATB4 0x10
11294 #define _LATB5 0x20
11295 #define _LATB6 0x40
11296 #define _LATB7 0x80
11298 //==============================================================================
11301 //==============================================================================
11302 // LATC Bits
11304 extern __at(0x0F8B) __sfr LATC;
11306 typedef struct
11308 unsigned LATC0 : 1;
11309 unsigned LATC1 : 1;
11310 unsigned LATC2 : 1;
11311 unsigned LATC3 : 1;
11312 unsigned LATC4 : 1;
11313 unsigned LATC5 : 1;
11314 unsigned LATC6 : 1;
11315 unsigned LATC7 : 1;
11316 } __LATCbits_t;
11318 extern __at(0x0F8B) volatile __LATCbits_t LATCbits;
11320 #define _LATC0 0x01
11321 #define _LATC1 0x02
11322 #define _LATC2 0x04
11323 #define _LATC3 0x08
11324 #define _LATC4 0x10
11325 #define _LATC5 0x20
11326 #define _LATC6 0x40
11327 #define _LATC7 0x80
11329 //==============================================================================
11332 //==============================================================================
11333 // LATD Bits
11335 extern __at(0x0F8C) __sfr LATD;
11337 typedef struct
11339 unsigned LATD0 : 1;
11340 unsigned LATD1 : 1;
11341 unsigned LATD2 : 1;
11342 unsigned LATD3 : 1;
11343 unsigned LATD4 : 1;
11344 unsigned LATD5 : 1;
11345 unsigned LATD6 : 1;
11346 unsigned LATD7 : 1;
11347 } __LATDbits_t;
11349 extern __at(0x0F8C) volatile __LATDbits_t LATDbits;
11351 #define _LATD0 0x01
11352 #define _LATD1 0x02
11353 #define _LATD2 0x04
11354 #define _LATD3 0x08
11355 #define _LATD4 0x10
11356 #define _LATD5 0x20
11357 #define _LATD6 0x40
11358 #define _LATD7 0x80
11360 //==============================================================================
11363 //==============================================================================
11364 // LATE Bits
11366 extern __at(0x0F8D) __sfr LATE;
11368 typedef struct
11370 unsigned LATE0 : 1;
11371 unsigned LATE1 : 1;
11372 unsigned LATE2 : 1;
11373 unsigned LATE3 : 1;
11374 unsigned LATE4 : 1;
11375 unsigned LATE5 : 1;
11376 unsigned LATE6 : 1;
11377 unsigned LATE7 : 1;
11378 } __LATEbits_t;
11380 extern __at(0x0F8D) volatile __LATEbits_t LATEbits;
11382 #define _LATE0 0x01
11383 #define _LATE1 0x02
11384 #define _LATE2 0x04
11385 #define _LATE3 0x08
11386 #define _LATE4 0x10
11387 #define _LATE5 0x20
11388 #define _LATE6 0x40
11389 #define _LATE7 0x80
11391 //==============================================================================
11394 //==============================================================================
11395 // LATF Bits
11397 extern __at(0x0F8E) __sfr LATF;
11399 typedef struct
11401 unsigned LATF0 : 1;
11402 unsigned LATF1 : 1;
11403 unsigned LATF2 : 1;
11404 unsigned LATF3 : 1;
11405 unsigned LATF4 : 1;
11406 unsigned LATF5 : 1;
11407 unsigned LATF6 : 1;
11408 unsigned LATF7 : 1;
11409 } __LATFbits_t;
11411 extern __at(0x0F8E) volatile __LATFbits_t LATFbits;
11413 #define _LATF0 0x01
11414 #define _LATF1 0x02
11415 #define _LATF2 0x04
11416 #define _LATF3 0x08
11417 #define _LATF4 0x10
11418 #define _LATF5 0x20
11419 #define _LATF6 0x40
11420 #define _LATF7 0x80
11422 //==============================================================================
11425 //==============================================================================
11426 // LATG Bits
11428 extern __at(0x0F8F) __sfr LATG;
11430 typedef union
11432 struct
11434 unsigned LATG0 : 1;
11435 unsigned LATG1 : 1;
11436 unsigned LATG2 : 1;
11437 unsigned LATG3 : 1;
11438 unsigned LATG4 : 1;
11439 unsigned : 1;
11440 unsigned : 1;
11441 unsigned : 1;
11444 struct
11446 unsigned LATG : 5;
11447 unsigned : 3;
11449 } __LATGbits_t;
11451 extern __at(0x0F8F) volatile __LATGbits_t LATGbits;
11453 #define _LATG0 0x01
11454 #define _LATG1 0x02
11455 #define _LATG2 0x04
11456 #define _LATG3 0x08
11457 #define _LATG4 0x10
11459 //==============================================================================
11462 //==============================================================================
11463 // LATH Bits
11465 extern __at(0x0F90) __sfr LATH;
11467 typedef struct
11469 unsigned LATH0 : 1;
11470 unsigned LATH1 : 1;
11471 unsigned LATH2 : 1;
11472 unsigned LATH3 : 1;
11473 unsigned LATH4 : 1;
11474 unsigned LATH5 : 1;
11475 unsigned LATH6 : 1;
11476 unsigned LATH7 : 1;
11477 } __LATHbits_t;
11479 extern __at(0x0F90) volatile __LATHbits_t LATHbits;
11481 #define _LATH0 0x01
11482 #define _LATH1 0x02
11483 #define _LATH2 0x04
11484 #define _LATH3 0x08
11485 #define _LATH4 0x10
11486 #define _LATH5 0x20
11487 #define _LATH6 0x40
11488 #define _LATH7 0x80
11490 //==============================================================================
11493 //==============================================================================
11494 // LATJ Bits
11496 extern __at(0x0F91) __sfr LATJ;
11498 typedef struct
11500 unsigned LATJ0 : 1;
11501 unsigned LATJ1 : 1;
11502 unsigned LATJ2 : 1;
11503 unsigned LATJ3 : 1;
11504 unsigned LATJ4 : 1;
11505 unsigned LATJ5 : 1;
11506 unsigned LATJ6 : 1;
11507 unsigned LATJ7 : 1;
11508 } __LATJbits_t;
11510 extern __at(0x0F91) volatile __LATJbits_t LATJbits;
11512 #define _LATJ0 0x01
11513 #define _LATJ1 0x02
11514 #define _LATJ2 0x04
11515 #define _LATJ3 0x08
11516 #define _LATJ4 0x10
11517 #define _LATJ5 0x20
11518 #define _LATJ6 0x40
11519 #define _LATJ7 0x80
11521 //==============================================================================
11524 //==============================================================================
11525 // DDRA Bits
11527 extern __at(0x0F92) __sfr DDRA;
11529 typedef union
11531 struct
11533 unsigned TRISA0 : 1;
11534 unsigned TRISA1 : 1;
11535 unsigned TRISA2 : 1;
11536 unsigned TRISA3 : 1;
11537 unsigned TRISA4 : 1;
11538 unsigned TRISA5 : 1;
11539 unsigned TRISA6 : 1;
11540 unsigned : 1;
11543 struct
11545 unsigned RA0 : 1;
11546 unsigned RA1 : 1;
11547 unsigned RA2 : 1;
11548 unsigned RA3 : 1;
11549 unsigned RA4 : 1;
11550 unsigned RA5 : 1;
11551 unsigned RA6 : 1;
11552 unsigned : 1;
11555 struct
11557 unsigned RA : 7;
11558 unsigned : 1;
11561 struct
11563 unsigned TRISA : 7;
11564 unsigned : 1;
11566 } __DDRAbits_t;
11568 extern __at(0x0F92) volatile __DDRAbits_t DDRAbits;
11570 #define _TRISA0 0x01
11571 #define _RA0 0x01
11572 #define _TRISA1 0x02
11573 #define _RA1 0x02
11574 #define _TRISA2 0x04
11575 #define _RA2 0x04
11576 #define _TRISA3 0x08
11577 #define _RA3 0x08
11578 #define _TRISA4 0x10
11579 #define _RA4 0x10
11580 #define _TRISA5 0x20
11581 #define _RA5 0x20
11582 #define _TRISA6 0x40
11583 #define _RA6 0x40
11585 //==============================================================================
11588 //==============================================================================
11589 // TRISA Bits
11591 extern __at(0x0F92) __sfr TRISA;
11593 typedef union
11595 struct
11597 unsigned TRISA0 : 1;
11598 unsigned TRISA1 : 1;
11599 unsigned TRISA2 : 1;
11600 unsigned TRISA3 : 1;
11601 unsigned TRISA4 : 1;
11602 unsigned TRISA5 : 1;
11603 unsigned TRISA6 : 1;
11604 unsigned : 1;
11607 struct
11609 unsigned RA0 : 1;
11610 unsigned RA1 : 1;
11611 unsigned RA2 : 1;
11612 unsigned RA3 : 1;
11613 unsigned RA4 : 1;
11614 unsigned RA5 : 1;
11615 unsigned RA6 : 1;
11616 unsigned : 1;
11619 struct
11621 unsigned TRISA : 7;
11622 unsigned : 1;
11625 struct
11627 unsigned RA : 7;
11628 unsigned : 1;
11630 } __TRISAbits_t;
11632 extern __at(0x0F92) volatile __TRISAbits_t TRISAbits;
11634 #define _TRISA_TRISA0 0x01
11635 #define _TRISA_RA0 0x01
11636 #define _TRISA_TRISA1 0x02
11637 #define _TRISA_RA1 0x02
11638 #define _TRISA_TRISA2 0x04
11639 #define _TRISA_RA2 0x04
11640 #define _TRISA_TRISA3 0x08
11641 #define _TRISA_RA3 0x08
11642 #define _TRISA_TRISA4 0x10
11643 #define _TRISA_RA4 0x10
11644 #define _TRISA_TRISA5 0x20
11645 #define _TRISA_RA5 0x20
11646 #define _TRISA_TRISA6 0x40
11647 #define _TRISA_RA6 0x40
11649 //==============================================================================
11652 //==============================================================================
11653 // DDRB Bits
11655 extern __at(0x0F93) __sfr DDRB;
11657 typedef union
11659 struct
11661 unsigned TRISB0 : 1;
11662 unsigned TRISB1 : 1;
11663 unsigned TRISB2 : 1;
11664 unsigned TRISB3 : 1;
11665 unsigned TRISB4 : 1;
11666 unsigned TRISB5 : 1;
11667 unsigned TRISB6 : 1;
11668 unsigned TRISB7 : 1;
11671 struct
11673 unsigned RB0 : 1;
11674 unsigned RB1 : 1;
11675 unsigned RB2 : 1;
11676 unsigned RB3 : 1;
11677 unsigned RB4 : 1;
11678 unsigned RB5 : 1;
11679 unsigned RB6 : 1;
11680 unsigned RB7 : 1;
11682 } __DDRBbits_t;
11684 extern __at(0x0F93) volatile __DDRBbits_t DDRBbits;
11686 #define _DDRB_TRISB0 0x01
11687 #define _DDRB_RB0 0x01
11688 #define _DDRB_TRISB1 0x02
11689 #define _DDRB_RB1 0x02
11690 #define _DDRB_TRISB2 0x04
11691 #define _DDRB_RB2 0x04
11692 #define _DDRB_TRISB3 0x08
11693 #define _DDRB_RB3 0x08
11694 #define _DDRB_TRISB4 0x10
11695 #define _DDRB_RB4 0x10
11696 #define _DDRB_TRISB5 0x20
11697 #define _DDRB_RB5 0x20
11698 #define _DDRB_TRISB6 0x40
11699 #define _DDRB_RB6 0x40
11700 #define _DDRB_TRISB7 0x80
11701 #define _DDRB_RB7 0x80
11703 //==============================================================================
11706 //==============================================================================
11707 // TRISB Bits
11709 extern __at(0x0F93) __sfr TRISB;
11711 typedef union
11713 struct
11715 unsigned TRISB0 : 1;
11716 unsigned TRISB1 : 1;
11717 unsigned TRISB2 : 1;
11718 unsigned TRISB3 : 1;
11719 unsigned TRISB4 : 1;
11720 unsigned TRISB5 : 1;
11721 unsigned TRISB6 : 1;
11722 unsigned TRISB7 : 1;
11725 struct
11727 unsigned RB0 : 1;
11728 unsigned RB1 : 1;
11729 unsigned RB2 : 1;
11730 unsigned RB3 : 1;
11731 unsigned RB4 : 1;
11732 unsigned RB5 : 1;
11733 unsigned RB6 : 1;
11734 unsigned RB7 : 1;
11736 } __TRISBbits_t;
11738 extern __at(0x0F93) volatile __TRISBbits_t TRISBbits;
11740 #define _TRISB_TRISB0 0x01
11741 #define _TRISB_RB0 0x01
11742 #define _TRISB_TRISB1 0x02
11743 #define _TRISB_RB1 0x02
11744 #define _TRISB_TRISB2 0x04
11745 #define _TRISB_RB2 0x04
11746 #define _TRISB_TRISB3 0x08
11747 #define _TRISB_RB3 0x08
11748 #define _TRISB_TRISB4 0x10
11749 #define _TRISB_RB4 0x10
11750 #define _TRISB_TRISB5 0x20
11751 #define _TRISB_RB5 0x20
11752 #define _TRISB_TRISB6 0x40
11753 #define _TRISB_RB6 0x40
11754 #define _TRISB_TRISB7 0x80
11755 #define _TRISB_RB7 0x80
11757 //==============================================================================
11760 //==============================================================================
11761 // DDRC Bits
11763 extern __at(0x0F94) __sfr DDRC;
11765 typedef union
11767 struct
11769 unsigned TRISC0 : 1;
11770 unsigned TRISC1 : 1;
11771 unsigned TRISC2 : 1;
11772 unsigned TRISC3 : 1;
11773 unsigned TRISC4 : 1;
11774 unsigned TRISC5 : 1;
11775 unsigned TRISC6 : 1;
11776 unsigned TRISC7 : 1;
11779 struct
11781 unsigned RC0 : 1;
11782 unsigned RC1 : 1;
11783 unsigned RC2 : 1;
11784 unsigned RC3 : 1;
11785 unsigned RC4 : 1;
11786 unsigned RC5 : 1;
11787 unsigned RC6 : 1;
11788 unsigned RC7 : 1;
11790 } __DDRCbits_t;
11792 extern __at(0x0F94) volatile __DDRCbits_t DDRCbits;
11794 #define _TRISC0 0x01
11795 #define _RC0 0x01
11796 #define _TRISC1 0x02
11797 #define _RC1 0x02
11798 #define _TRISC2 0x04
11799 #define _RC2 0x04
11800 #define _TRISC3 0x08
11801 #define _RC3 0x08
11802 #define _TRISC4 0x10
11803 #define _RC4 0x10
11804 #define _TRISC5 0x20
11805 #define _RC5 0x20
11806 #define _TRISC6 0x40
11807 #define _RC6 0x40
11808 #define _TRISC7 0x80
11809 #define _RC7 0x80
11811 //==============================================================================
11814 //==============================================================================
11815 // TRISC Bits
11817 extern __at(0x0F94) __sfr TRISC;
11819 typedef union
11821 struct
11823 unsigned TRISC0 : 1;
11824 unsigned TRISC1 : 1;
11825 unsigned TRISC2 : 1;
11826 unsigned TRISC3 : 1;
11827 unsigned TRISC4 : 1;
11828 unsigned TRISC5 : 1;
11829 unsigned TRISC6 : 1;
11830 unsigned TRISC7 : 1;
11833 struct
11835 unsigned RC0 : 1;
11836 unsigned RC1 : 1;
11837 unsigned RC2 : 1;
11838 unsigned RC3 : 1;
11839 unsigned RC4 : 1;
11840 unsigned RC5 : 1;
11841 unsigned RC6 : 1;
11842 unsigned RC7 : 1;
11844 } __TRISCbits_t;
11846 extern __at(0x0F94) volatile __TRISCbits_t TRISCbits;
11848 #define _TRISC_TRISC0 0x01
11849 #define _TRISC_RC0 0x01
11850 #define _TRISC_TRISC1 0x02
11851 #define _TRISC_RC1 0x02
11852 #define _TRISC_TRISC2 0x04
11853 #define _TRISC_RC2 0x04
11854 #define _TRISC_TRISC3 0x08
11855 #define _TRISC_RC3 0x08
11856 #define _TRISC_TRISC4 0x10
11857 #define _TRISC_RC4 0x10
11858 #define _TRISC_TRISC5 0x20
11859 #define _TRISC_RC5 0x20
11860 #define _TRISC_TRISC6 0x40
11861 #define _TRISC_RC6 0x40
11862 #define _TRISC_TRISC7 0x80
11863 #define _TRISC_RC7 0x80
11865 //==============================================================================
11868 //==============================================================================
11869 // DDRD Bits
11871 extern __at(0x0F95) __sfr DDRD;
11873 typedef union
11875 struct
11877 unsigned TRISD0 : 1;
11878 unsigned TRISD1 : 1;
11879 unsigned TRISD2 : 1;
11880 unsigned TRISD3 : 1;
11881 unsigned TRISD4 : 1;
11882 unsigned TRISD5 : 1;
11883 unsigned TRISD6 : 1;
11884 unsigned TRISD7 : 1;
11887 struct
11889 unsigned RD0 : 1;
11890 unsigned RD1 : 1;
11891 unsigned RD2 : 1;
11892 unsigned RD3 : 1;
11893 unsigned RD4 : 1;
11894 unsigned RD5 : 1;
11895 unsigned RD6 : 1;
11896 unsigned RD7 : 1;
11898 } __DDRDbits_t;
11900 extern __at(0x0F95) volatile __DDRDbits_t DDRDbits;
11902 #define _TRISD0 0x01
11903 #define _RD0 0x01
11904 #define _TRISD1 0x02
11905 #define _RD1 0x02
11906 #define _TRISD2 0x04
11907 #define _RD2 0x04
11908 #define _TRISD3 0x08
11909 #define _RD3 0x08
11910 #define _TRISD4 0x10
11911 #define _RD4 0x10
11912 #define _TRISD5 0x20
11913 #define _RD5 0x20
11914 #define _TRISD6 0x40
11915 #define _RD6 0x40
11916 #define _TRISD7 0x80
11917 #define _RD7 0x80
11919 //==============================================================================
11922 //==============================================================================
11923 // TRISD Bits
11925 extern __at(0x0F95) __sfr TRISD;
11927 typedef union
11929 struct
11931 unsigned TRISD0 : 1;
11932 unsigned TRISD1 : 1;
11933 unsigned TRISD2 : 1;
11934 unsigned TRISD3 : 1;
11935 unsigned TRISD4 : 1;
11936 unsigned TRISD5 : 1;
11937 unsigned TRISD6 : 1;
11938 unsigned TRISD7 : 1;
11941 struct
11943 unsigned RD0 : 1;
11944 unsigned RD1 : 1;
11945 unsigned RD2 : 1;
11946 unsigned RD3 : 1;
11947 unsigned RD4 : 1;
11948 unsigned RD5 : 1;
11949 unsigned RD6 : 1;
11950 unsigned RD7 : 1;
11952 } __TRISDbits_t;
11954 extern __at(0x0F95) volatile __TRISDbits_t TRISDbits;
11956 #define _TRISD_TRISD0 0x01
11957 #define _TRISD_RD0 0x01
11958 #define _TRISD_TRISD1 0x02
11959 #define _TRISD_RD1 0x02
11960 #define _TRISD_TRISD2 0x04
11961 #define _TRISD_RD2 0x04
11962 #define _TRISD_TRISD3 0x08
11963 #define _TRISD_RD3 0x08
11964 #define _TRISD_TRISD4 0x10
11965 #define _TRISD_RD4 0x10
11966 #define _TRISD_TRISD5 0x20
11967 #define _TRISD_RD5 0x20
11968 #define _TRISD_TRISD6 0x40
11969 #define _TRISD_RD6 0x40
11970 #define _TRISD_TRISD7 0x80
11971 #define _TRISD_RD7 0x80
11973 //==============================================================================
11976 //==============================================================================
11977 // DDRE Bits
11979 extern __at(0x0F96) __sfr DDRE;
11981 typedef union
11983 struct
11985 unsigned TRISE0 : 1;
11986 unsigned TRISE1 : 1;
11987 unsigned TRISE2 : 1;
11988 unsigned TRISE3 : 1;
11989 unsigned TRISE4 : 1;
11990 unsigned TRISE5 : 1;
11991 unsigned TRISE6 : 1;
11992 unsigned TRISE7 : 1;
11995 struct
11997 unsigned RE0 : 1;
11998 unsigned RE1 : 1;
11999 unsigned RE2 : 1;
12000 unsigned RE3 : 1;
12001 unsigned RE4 : 1;
12002 unsigned RE5 : 1;
12003 unsigned RE6 : 1;
12004 unsigned RE7 : 1;
12006 } __DDREbits_t;
12008 extern __at(0x0F96) volatile __DDREbits_t DDREbits;
12010 #define _TRISE0 0x01
12011 #define _RE0 0x01
12012 #define _TRISE1 0x02
12013 #define _RE1 0x02
12014 #define _TRISE2 0x04
12015 #define _RE2 0x04
12016 #define _TRISE3 0x08
12017 #define _RE3 0x08
12018 #define _TRISE4 0x10
12019 #define _RE4 0x10
12020 #define _TRISE5 0x20
12021 #define _RE5 0x20
12022 #define _TRISE6 0x40
12023 #define _RE6 0x40
12024 #define _TRISE7 0x80
12025 #define _RE7 0x80
12027 //==============================================================================
12030 //==============================================================================
12031 // TRISE Bits
12033 extern __at(0x0F96) __sfr TRISE;
12035 typedef union
12037 struct
12039 unsigned TRISE0 : 1;
12040 unsigned TRISE1 : 1;
12041 unsigned TRISE2 : 1;
12042 unsigned TRISE3 : 1;
12043 unsigned TRISE4 : 1;
12044 unsigned TRISE5 : 1;
12045 unsigned TRISE6 : 1;
12046 unsigned TRISE7 : 1;
12049 struct
12051 unsigned RE0 : 1;
12052 unsigned RE1 : 1;
12053 unsigned RE2 : 1;
12054 unsigned RE3 : 1;
12055 unsigned RE4 : 1;
12056 unsigned RE5 : 1;
12057 unsigned RE6 : 1;
12058 unsigned RE7 : 1;
12060 } __TRISEbits_t;
12062 extern __at(0x0F96) volatile __TRISEbits_t TRISEbits;
12064 #define _TRISE_TRISE0 0x01
12065 #define _TRISE_RE0 0x01
12066 #define _TRISE_TRISE1 0x02
12067 #define _TRISE_RE1 0x02
12068 #define _TRISE_TRISE2 0x04
12069 #define _TRISE_RE2 0x04
12070 #define _TRISE_TRISE3 0x08
12071 #define _TRISE_RE3 0x08
12072 #define _TRISE_TRISE4 0x10
12073 #define _TRISE_RE4 0x10
12074 #define _TRISE_TRISE5 0x20
12075 #define _TRISE_RE5 0x20
12076 #define _TRISE_TRISE6 0x40
12077 #define _TRISE_RE6 0x40
12078 #define _TRISE_TRISE7 0x80
12079 #define _TRISE_RE7 0x80
12081 //==============================================================================
12084 //==============================================================================
12085 // DDRF Bits
12087 extern __at(0x0F97) __sfr DDRF;
12089 typedef union
12091 struct
12093 unsigned TRISF0 : 1;
12094 unsigned TRISF1 : 1;
12095 unsigned TRISF2 : 1;
12096 unsigned TRISF3 : 1;
12097 unsigned TRISF4 : 1;
12098 unsigned TRISF5 : 1;
12099 unsigned TRISF6 : 1;
12100 unsigned TRISF7 : 1;
12103 struct
12105 unsigned RF0 : 1;
12106 unsigned RF1 : 1;
12107 unsigned RF2 : 1;
12108 unsigned RF3 : 1;
12109 unsigned RF4 : 1;
12110 unsigned RF5 : 1;
12111 unsigned RF6 : 1;
12112 unsigned RF7 : 1;
12114 } __DDRFbits_t;
12116 extern __at(0x0F97) volatile __DDRFbits_t DDRFbits;
12118 #define _TRISF0 0x01
12119 #define _RF0 0x01
12120 #define _TRISF1 0x02
12121 #define _RF1 0x02
12122 #define _TRISF2 0x04
12123 #define _RF2 0x04
12124 #define _TRISF3 0x08
12125 #define _RF3 0x08
12126 #define _TRISF4 0x10
12127 #define _RF4 0x10
12128 #define _TRISF5 0x20
12129 #define _RF5 0x20
12130 #define _TRISF6 0x40
12131 #define _RF6 0x40
12132 #define _TRISF7 0x80
12133 #define _RF7 0x80
12135 //==============================================================================
12138 //==============================================================================
12139 // TRISF Bits
12141 extern __at(0x0F97) __sfr TRISF;
12143 typedef union
12145 struct
12147 unsigned TRISF0 : 1;
12148 unsigned TRISF1 : 1;
12149 unsigned TRISF2 : 1;
12150 unsigned TRISF3 : 1;
12151 unsigned TRISF4 : 1;
12152 unsigned TRISF5 : 1;
12153 unsigned TRISF6 : 1;
12154 unsigned TRISF7 : 1;
12157 struct
12159 unsigned RF0 : 1;
12160 unsigned RF1 : 1;
12161 unsigned RF2 : 1;
12162 unsigned RF3 : 1;
12163 unsigned RF4 : 1;
12164 unsigned RF5 : 1;
12165 unsigned RF6 : 1;
12166 unsigned RF7 : 1;
12168 } __TRISFbits_t;
12170 extern __at(0x0F97) volatile __TRISFbits_t TRISFbits;
12172 #define _TRISF_TRISF0 0x01
12173 #define _TRISF_RF0 0x01
12174 #define _TRISF_TRISF1 0x02
12175 #define _TRISF_RF1 0x02
12176 #define _TRISF_TRISF2 0x04
12177 #define _TRISF_RF2 0x04
12178 #define _TRISF_TRISF3 0x08
12179 #define _TRISF_RF3 0x08
12180 #define _TRISF_TRISF4 0x10
12181 #define _TRISF_RF4 0x10
12182 #define _TRISF_TRISF5 0x20
12183 #define _TRISF_RF5 0x20
12184 #define _TRISF_TRISF6 0x40
12185 #define _TRISF_RF6 0x40
12186 #define _TRISF_TRISF7 0x80
12187 #define _TRISF_RF7 0x80
12189 //==============================================================================
12192 //==============================================================================
12193 // DDRG Bits
12195 extern __at(0x0F98) __sfr DDRG;
12197 typedef union
12199 struct
12201 unsigned TRISG0 : 1;
12202 unsigned TRISG1 : 1;
12203 unsigned TRISG2 : 1;
12204 unsigned TRISG3 : 1;
12205 unsigned TRISG4 : 1;
12206 unsigned : 1;
12207 unsigned : 1;
12208 unsigned : 1;
12211 struct
12213 unsigned RG0 : 1;
12214 unsigned RG1 : 1;
12215 unsigned RG2 : 1;
12216 unsigned RG3 : 1;
12217 unsigned RG4 : 1;
12218 unsigned : 1;
12219 unsigned : 1;
12220 unsigned : 1;
12223 struct
12225 unsigned TRISG : 5;
12226 unsigned : 3;
12229 struct
12231 unsigned RG : 5;
12232 unsigned : 3;
12234 } __DDRGbits_t;
12236 extern __at(0x0F98) volatile __DDRGbits_t DDRGbits;
12238 #define _TRISG0 0x01
12239 #define _RG0 0x01
12240 #define _TRISG1 0x02
12241 #define _RG1 0x02
12242 #define _TRISG2 0x04
12243 #define _RG2 0x04
12244 #define _TRISG3 0x08
12245 #define _RG3 0x08
12246 #define _TRISG4 0x10
12247 #define _RG4 0x10
12249 //==============================================================================
12252 //==============================================================================
12253 // TRISG Bits
12255 extern __at(0x0F98) __sfr TRISG;
12257 typedef union
12259 struct
12261 unsigned TRISG0 : 1;
12262 unsigned TRISG1 : 1;
12263 unsigned TRISG2 : 1;
12264 unsigned TRISG3 : 1;
12265 unsigned TRISG4 : 1;
12266 unsigned : 1;
12267 unsigned : 1;
12268 unsigned : 1;
12271 struct
12273 unsigned RG0 : 1;
12274 unsigned RG1 : 1;
12275 unsigned RG2 : 1;
12276 unsigned RG3 : 1;
12277 unsigned RG4 : 1;
12278 unsigned : 1;
12279 unsigned : 1;
12280 unsigned : 1;
12283 struct
12285 unsigned RG : 5;
12286 unsigned : 3;
12289 struct
12291 unsigned TRISG : 5;
12292 unsigned : 3;
12294 } __TRISGbits_t;
12296 extern __at(0x0F98) volatile __TRISGbits_t TRISGbits;
12298 #define _TRISG_TRISG0 0x01
12299 #define _TRISG_RG0 0x01
12300 #define _TRISG_TRISG1 0x02
12301 #define _TRISG_RG1 0x02
12302 #define _TRISG_TRISG2 0x04
12303 #define _TRISG_RG2 0x04
12304 #define _TRISG_TRISG3 0x08
12305 #define _TRISG_RG3 0x08
12306 #define _TRISG_TRISG4 0x10
12307 #define _TRISG_RG4 0x10
12309 //==============================================================================
12312 //==============================================================================
12313 // DDRH Bits
12315 extern __at(0x0F99) __sfr DDRH;
12317 typedef union
12319 struct
12321 unsigned TRISH0 : 1;
12322 unsigned TRISH1 : 1;
12323 unsigned TRISH2 : 1;
12324 unsigned TRISH3 : 1;
12325 unsigned TRISH4 : 1;
12326 unsigned TRISH5 : 1;
12327 unsigned TRISH6 : 1;
12328 unsigned TRISH7 : 1;
12331 struct
12333 unsigned RH0 : 1;
12334 unsigned RH1 : 1;
12335 unsigned RH2 : 1;
12336 unsigned RH3 : 1;
12337 unsigned RH4 : 1;
12338 unsigned RH5 : 1;
12339 unsigned RH6 : 1;
12340 unsigned RH7 : 1;
12342 } __DDRHbits_t;
12344 extern __at(0x0F99) volatile __DDRHbits_t DDRHbits;
12346 #define _TRISH0 0x01
12347 #define _RH0 0x01
12348 #define _TRISH1 0x02
12349 #define _RH1 0x02
12350 #define _TRISH2 0x04
12351 #define _RH2 0x04
12352 #define _TRISH3 0x08
12353 #define _RH3 0x08
12354 #define _TRISH4 0x10
12355 #define _RH4 0x10
12356 #define _TRISH5 0x20
12357 #define _RH5 0x20
12358 #define _TRISH6 0x40
12359 #define _RH6 0x40
12360 #define _TRISH7 0x80
12361 #define _RH7 0x80
12363 //==============================================================================
12366 //==============================================================================
12367 // TRISH Bits
12369 extern __at(0x0F99) __sfr TRISH;
12371 typedef union
12373 struct
12375 unsigned TRISH0 : 1;
12376 unsigned TRISH1 : 1;
12377 unsigned TRISH2 : 1;
12378 unsigned TRISH3 : 1;
12379 unsigned TRISH4 : 1;
12380 unsigned TRISH5 : 1;
12381 unsigned TRISH6 : 1;
12382 unsigned TRISH7 : 1;
12385 struct
12387 unsigned RH0 : 1;
12388 unsigned RH1 : 1;
12389 unsigned RH2 : 1;
12390 unsigned RH3 : 1;
12391 unsigned RH4 : 1;
12392 unsigned RH5 : 1;
12393 unsigned RH6 : 1;
12394 unsigned RH7 : 1;
12396 } __TRISHbits_t;
12398 extern __at(0x0F99) volatile __TRISHbits_t TRISHbits;
12400 #define _TRISH_TRISH0 0x01
12401 #define _TRISH_RH0 0x01
12402 #define _TRISH_TRISH1 0x02
12403 #define _TRISH_RH1 0x02
12404 #define _TRISH_TRISH2 0x04
12405 #define _TRISH_RH2 0x04
12406 #define _TRISH_TRISH3 0x08
12407 #define _TRISH_RH3 0x08
12408 #define _TRISH_TRISH4 0x10
12409 #define _TRISH_RH4 0x10
12410 #define _TRISH_TRISH5 0x20
12411 #define _TRISH_RH5 0x20
12412 #define _TRISH_TRISH6 0x40
12413 #define _TRISH_RH6 0x40
12414 #define _TRISH_TRISH7 0x80
12415 #define _TRISH_RH7 0x80
12417 //==============================================================================
12420 //==============================================================================
12421 // DDRJ Bits
12423 extern __at(0x0F9A) __sfr DDRJ;
12425 typedef union
12427 struct
12429 unsigned TRISJ0 : 1;
12430 unsigned TRISJ1 : 1;
12431 unsigned TRISJ2 : 1;
12432 unsigned TRISJ3 : 1;
12433 unsigned TRISJ4 : 1;
12434 unsigned TRISJ5 : 1;
12435 unsigned TRISJ6 : 1;
12436 unsigned TRISJ7 : 1;
12439 struct
12441 unsigned RJ0 : 1;
12442 unsigned RJ1 : 1;
12443 unsigned RJ2 : 1;
12444 unsigned RJ3 : 1;
12445 unsigned RJ4 : 1;
12446 unsigned RJ5 : 1;
12447 unsigned RJ6 : 1;
12448 unsigned RJ7 : 1;
12450 } __DDRJbits_t;
12452 extern __at(0x0F9A) volatile __DDRJbits_t DDRJbits;
12454 #define _TRISJ0 0x01
12455 #define _RJ0 0x01
12456 #define _TRISJ1 0x02
12457 #define _RJ1 0x02
12458 #define _TRISJ2 0x04
12459 #define _RJ2 0x04
12460 #define _TRISJ3 0x08
12461 #define _RJ3 0x08
12462 #define _TRISJ4 0x10
12463 #define _RJ4 0x10
12464 #define _TRISJ5 0x20
12465 #define _RJ5 0x20
12466 #define _TRISJ6 0x40
12467 #define _RJ6 0x40
12468 #define _TRISJ7 0x80
12469 #define _RJ7 0x80
12471 //==============================================================================
12474 //==============================================================================
12475 // TRISJ Bits
12477 extern __at(0x0F9A) __sfr TRISJ;
12479 typedef union
12481 struct
12483 unsigned TRISJ0 : 1;
12484 unsigned TRISJ1 : 1;
12485 unsigned TRISJ2 : 1;
12486 unsigned TRISJ3 : 1;
12487 unsigned TRISJ4 : 1;
12488 unsigned TRISJ5 : 1;
12489 unsigned TRISJ6 : 1;
12490 unsigned TRISJ7 : 1;
12493 struct
12495 unsigned RJ0 : 1;
12496 unsigned RJ1 : 1;
12497 unsigned RJ2 : 1;
12498 unsigned RJ3 : 1;
12499 unsigned RJ4 : 1;
12500 unsigned RJ5 : 1;
12501 unsigned RJ6 : 1;
12502 unsigned RJ7 : 1;
12504 } __TRISJbits_t;
12506 extern __at(0x0F9A) volatile __TRISJbits_t TRISJbits;
12508 #define _TRISJ_TRISJ0 0x01
12509 #define _TRISJ_RJ0 0x01
12510 #define _TRISJ_TRISJ1 0x02
12511 #define _TRISJ_RJ1 0x02
12512 #define _TRISJ_TRISJ2 0x04
12513 #define _TRISJ_RJ2 0x04
12514 #define _TRISJ_TRISJ3 0x08
12515 #define _TRISJ_RJ3 0x08
12516 #define _TRISJ_TRISJ4 0x10
12517 #define _TRISJ_RJ4 0x10
12518 #define _TRISJ_TRISJ5 0x20
12519 #define _TRISJ_RJ5 0x20
12520 #define _TRISJ_TRISJ6 0x40
12521 #define _TRISJ_RJ6 0x40
12522 #define _TRISJ_TRISJ7 0x80
12523 #define _TRISJ_RJ7 0x80
12525 //==============================================================================
12528 //==============================================================================
12529 // MEMCON Bits
12531 extern __at(0x0F9C) __sfr MEMCON;
12533 typedef union
12535 struct
12537 unsigned WM0 : 1;
12538 unsigned WM1 : 1;
12539 unsigned : 1;
12540 unsigned : 1;
12541 unsigned WAIT0 : 1;
12542 unsigned WAIT1 : 1;
12543 unsigned : 1;
12544 unsigned EBDIS : 1;
12547 struct
12549 unsigned WM : 2;
12550 unsigned : 6;
12553 struct
12555 unsigned : 4;
12556 unsigned WAIT : 2;
12557 unsigned : 2;
12559 } __MEMCONbits_t;
12561 extern __at(0x0F9C) volatile __MEMCONbits_t MEMCONbits;
12563 #define _WM0 0x01
12564 #define _WM1 0x02
12565 #define _WAIT0 0x10
12566 #define _WAIT1 0x20
12567 #define _EBDIS 0x80
12569 //==============================================================================
12572 //==============================================================================
12573 // PIE1 Bits
12575 extern __at(0x0F9D) __sfr PIE1;
12577 typedef struct
12579 unsigned TMR1IE : 1;
12580 unsigned TMR2IE : 1;
12581 unsigned CCP1IE : 1;
12582 unsigned SSPIE : 1;
12583 unsigned TXIE : 1;
12584 unsigned RCIE : 1;
12585 unsigned ADIE : 1;
12586 unsigned PSPIE : 1;
12587 } __PIE1bits_t;
12589 extern __at(0x0F9D) volatile __PIE1bits_t PIE1bits;
12591 #define _TMR1IE 0x01
12592 #define _TMR2IE 0x02
12593 #define _CCP1IE 0x04
12594 #define _SSPIE 0x08
12595 #define _TXIE 0x10
12596 #define _RCIE 0x20
12597 #define _ADIE 0x40
12598 #define _PSPIE 0x80
12600 //==============================================================================
12603 //==============================================================================
12604 // PIR1 Bits
12606 extern __at(0x0F9E) __sfr PIR1;
12608 typedef struct
12610 unsigned TMR1IF : 1;
12611 unsigned TMR2IF : 1;
12612 unsigned CCP1IF : 1;
12613 unsigned SSPIF : 1;
12614 unsigned TXIF : 1;
12615 unsigned RCIF : 1;
12616 unsigned ADIF : 1;
12617 unsigned PSPIF : 1;
12618 } __PIR1bits_t;
12620 extern __at(0x0F9E) volatile __PIR1bits_t PIR1bits;
12622 #define _TMR1IF 0x01
12623 #define _TMR2IF 0x02
12624 #define _CCP1IF 0x04
12625 #define _SSPIF 0x08
12626 #define _TXIF 0x10
12627 #define _RCIF 0x20
12628 #define _ADIF 0x40
12629 #define _PSPIF 0x80
12631 //==============================================================================
12634 //==============================================================================
12635 // IPR1 Bits
12637 extern __at(0x0F9F) __sfr IPR1;
12639 typedef struct
12641 unsigned TMR1IP : 1;
12642 unsigned TMR2IP : 1;
12643 unsigned CCP1IP : 1;
12644 unsigned SSPIP : 1;
12645 unsigned TXIP : 1;
12646 unsigned RCIP : 1;
12647 unsigned ADIP : 1;
12648 unsigned PSPIP : 1;
12649 } __IPR1bits_t;
12651 extern __at(0x0F9F) volatile __IPR1bits_t IPR1bits;
12653 #define _TMR1IP 0x01
12654 #define _TMR2IP 0x02
12655 #define _CCP1IP 0x04
12656 #define _SSPIP 0x08
12657 #define _TXIP 0x10
12658 #define _RCIP 0x20
12659 #define _ADIP 0x40
12660 #define _PSPIP 0x80
12662 //==============================================================================
12665 //==============================================================================
12666 // PIE2 Bits
12668 extern __at(0x0FA0) __sfr PIE2;
12670 typedef struct
12672 unsigned CCP2IE : 1;
12673 unsigned TMR3IE : 1;
12674 unsigned LVDIE : 1;
12675 unsigned BCLIE : 1;
12676 unsigned EEIE : 1;
12677 unsigned : 1;
12678 unsigned CMIE : 1;
12679 unsigned : 1;
12680 } __PIE2bits_t;
12682 extern __at(0x0FA0) volatile __PIE2bits_t PIE2bits;
12684 #define _CCP2IE 0x01
12685 #define _TMR3IE 0x02
12686 #define _LVDIE 0x04
12687 #define _BCLIE 0x08
12688 #define _EEIE 0x10
12689 #define _CMIE 0x40
12691 //==============================================================================
12694 //==============================================================================
12695 // PIR2 Bits
12697 extern __at(0x0FA1) __sfr PIR2;
12699 typedef struct
12701 unsigned CCP2IF : 1;
12702 unsigned TMR3IF : 1;
12703 unsigned LVDIF : 1;
12704 unsigned BCLIF : 1;
12705 unsigned EEIF : 1;
12706 unsigned : 1;
12707 unsigned CMIF : 1;
12708 unsigned : 1;
12709 } __PIR2bits_t;
12711 extern __at(0x0FA1) volatile __PIR2bits_t PIR2bits;
12713 #define _CCP2IF 0x01
12714 #define _TMR3IF 0x02
12715 #define _LVDIF 0x04
12716 #define _BCLIF 0x08
12717 #define _EEIF 0x10
12718 #define _CMIF 0x40
12720 //==============================================================================
12723 //==============================================================================
12724 // IPR2 Bits
12726 extern __at(0x0FA2) __sfr IPR2;
12728 typedef struct
12730 unsigned CCP2IP : 1;
12731 unsigned TMR3IP : 1;
12732 unsigned LVDIP : 1;
12733 unsigned BCLIP : 1;
12734 unsigned EEIP : 1;
12735 unsigned : 1;
12736 unsigned CMIP : 1;
12737 unsigned : 1;
12738 } __IPR2bits_t;
12740 extern __at(0x0FA2) volatile __IPR2bits_t IPR2bits;
12742 #define _CCP2IP 0x01
12743 #define _TMR3IP 0x02
12744 #define _LVDIP 0x04
12745 #define _BCLIP 0x08
12746 #define _EEIP 0x10
12747 #define _CMIP 0x40
12749 //==============================================================================
12752 //==============================================================================
12753 // PIE3 Bits
12755 extern __at(0x0FA3) __sfr PIE3;
12757 typedef union
12759 struct
12761 unsigned RXB0IE : 1;
12762 unsigned RXB1IE : 1;
12763 unsigned TXB0IE : 1;
12764 unsigned TXB1IE : 1;
12765 unsigned TXB2IE : 1;
12766 unsigned ERRIE : 1;
12767 unsigned WAKIE : 1;
12768 unsigned IRXIE : 1;
12771 struct
12773 unsigned FIFOWMIE : 1;
12774 unsigned RXBnIE : 1;
12775 unsigned : 1;
12776 unsigned : 1;
12777 unsigned TXBnIE : 1;
12778 unsigned : 1;
12779 unsigned : 1;
12780 unsigned : 1;
12782 } __PIE3bits_t;
12784 extern __at(0x0FA3) volatile __PIE3bits_t PIE3bits;
12786 #define _PIE3_RXB0IE 0x01
12787 #define _PIE3_FIFOWMIE 0x01
12788 #define _PIE3_RXB1IE 0x02
12789 #define _PIE3_RXBnIE 0x02
12790 #define _PIE3_TXB0IE 0x04
12791 #define _PIE3_TXB1IE 0x08
12792 #define _PIE3_TXB2IE 0x10
12793 #define _PIE3_TXBnIE 0x10
12794 #define _PIE3_ERRIE 0x20
12795 #define _PIE3_WAKIE 0x40
12796 #define _PIE3_IRXIE 0x80
12798 //==============================================================================
12801 //==============================================================================
12802 // PIR3 Bits
12804 extern __at(0x0FA4) __sfr PIR3;
12806 typedef union
12808 struct
12810 unsigned RXB0IF : 1;
12811 unsigned RXB1IF : 1;
12812 unsigned TXB0IF : 1;
12813 unsigned TXB1IF : 1;
12814 unsigned TXB2IF : 1;
12815 unsigned ERRIF : 1;
12816 unsigned WAKIF : 1;
12817 unsigned IRXIF : 1;
12820 struct
12822 unsigned FIFOWMIF : 1;
12823 unsigned RXBnIF : 1;
12824 unsigned : 1;
12825 unsigned : 1;
12826 unsigned TXBnIF : 1;
12827 unsigned : 1;
12828 unsigned : 1;
12829 unsigned : 1;
12831 } __PIR3bits_t;
12833 extern __at(0x0FA4) volatile __PIR3bits_t PIR3bits;
12835 #define _RXB0IF 0x01
12836 #define _FIFOWMIF 0x01
12837 #define _RXB1IF 0x02
12838 #define _RXBnIF 0x02
12839 #define _TXB0IF 0x04
12840 #define _TXB1IF 0x08
12841 #define _TXB2IF 0x10
12842 #define _TXBnIF 0x10
12843 #define _ERRIF 0x20
12844 #define _WAKIF 0x40
12845 #define _IRXIF 0x80
12847 //==============================================================================
12850 //==============================================================================
12851 // IPR3 Bits
12853 extern __at(0x0FA5) __sfr IPR3;
12855 typedef union
12857 struct
12859 unsigned RXB0IP : 1;
12860 unsigned RXB1IP : 1;
12861 unsigned TXB0IP : 1;
12862 unsigned TXB1IP : 1;
12863 unsigned TXB2IP : 1;
12864 unsigned ERRIP : 1;
12865 unsigned WAKIP : 1;
12866 unsigned IRXIP : 1;
12869 struct
12871 unsigned FIFOWMIP : 1;
12872 unsigned RXBnIP : 1;
12873 unsigned : 1;
12874 unsigned : 1;
12875 unsigned TXBnIP : 1;
12876 unsigned : 1;
12877 unsigned : 1;
12878 unsigned : 1;
12880 } __IPR3bits_t;
12882 extern __at(0x0FA5) volatile __IPR3bits_t IPR3bits;
12884 #define _RXB0IP 0x01
12885 #define _FIFOWMIP 0x01
12886 #define _RXB1IP 0x02
12887 #define _RXBnIP 0x02
12888 #define _TXB0IP 0x04
12889 #define _TXB1IP 0x08
12890 #define _TXB2IP 0x10
12891 #define _TXBnIP 0x10
12892 #define _ERRIP 0x20
12893 #define _WAKIP 0x40
12894 #define _IRXIP 0x80
12896 //==============================================================================
12899 //==============================================================================
12900 // EECON1 Bits
12902 extern __at(0x0FA6) __sfr EECON1;
12904 typedef struct
12906 unsigned RD : 1;
12907 unsigned WR : 1;
12908 unsigned WREN : 1;
12909 unsigned WRERR : 1;
12910 unsigned FREE : 1;
12911 unsigned : 1;
12912 unsigned CFGS : 1;
12913 unsigned EEPGD : 1;
12914 } __EECON1bits_t;
12916 extern __at(0x0FA6) volatile __EECON1bits_t EECON1bits;
12918 #define _RD 0x01
12919 #define _WR 0x02
12920 #define _WREN 0x04
12921 #define _WRERR 0x08
12922 #define _FREE 0x10
12923 #define _CFGS 0x40
12924 #define _EEPGD 0x80
12926 //==============================================================================
12928 extern __at(0x0FA7) __sfr EECON2;
12929 extern __at(0x0FA8) __sfr EEDATA;
12930 extern __at(0x0FA9) __sfr EEADR;
12931 extern __at(0x0FAA) __sfr EEADRH;
12933 //==============================================================================
12934 // RCSTA Bits
12936 extern __at(0x0FAB) __sfr RCSTA;
12938 typedef union
12940 struct
12942 unsigned RX9D : 1;
12943 unsigned OERR : 1;
12944 unsigned FERR : 1;
12945 unsigned ADDEN : 1;
12946 unsigned CREN : 1;
12947 unsigned SREN : 1;
12948 unsigned RX9 : 1;
12949 unsigned SPEN : 1;
12952 struct
12954 unsigned RX9D1 : 1;
12955 unsigned OERR1 : 1;
12956 unsigned FERR1 : 1;
12957 unsigned ADEN : 1;
12958 unsigned CREN1 : 1;
12959 unsigned SREN1 : 1;
12960 unsigned RX91 : 1;
12961 unsigned SPEN1 : 1;
12964 struct
12966 unsigned : 1;
12967 unsigned : 1;
12968 unsigned : 1;
12969 unsigned ADDEN1 : 1;
12970 unsigned : 1;
12971 unsigned : 1;
12972 unsigned : 1;
12973 unsigned : 1;
12975 } __RCSTAbits_t;
12977 extern __at(0x0FAB) volatile __RCSTAbits_t RCSTAbits;
12979 #define _RX9D 0x01
12980 #define _RX9D1 0x01
12981 #define _OERR 0x02
12982 #define _OERR1 0x02
12983 #define _FERR 0x04
12984 #define _FERR1 0x04
12985 #define _ADDEN 0x08
12986 #define _ADEN 0x08
12987 #define _ADDEN1 0x08
12988 #define _CREN 0x10
12989 #define _CREN1 0x10
12990 #define _SREN 0x20
12991 #define _SREN1 0x20
12992 #define _RX9 0x40
12993 #define _RX91 0x40
12994 #define _SPEN 0x80
12995 #define _SPEN1 0x80
12997 //==============================================================================
13000 //==============================================================================
13001 // RCSTA1 Bits
13003 extern __at(0x0FAB) __sfr RCSTA1;
13005 typedef union
13007 struct
13009 unsigned RX9D : 1;
13010 unsigned OERR : 1;
13011 unsigned FERR : 1;
13012 unsigned ADDEN : 1;
13013 unsigned CREN : 1;
13014 unsigned SREN : 1;
13015 unsigned RX9 : 1;
13016 unsigned SPEN : 1;
13019 struct
13021 unsigned RX9D1 : 1;
13022 unsigned OERR1 : 1;
13023 unsigned FERR1 : 1;
13024 unsigned ADEN : 1;
13025 unsigned CREN1 : 1;
13026 unsigned SREN1 : 1;
13027 unsigned RX91 : 1;
13028 unsigned SPEN1 : 1;
13031 struct
13033 unsigned : 1;
13034 unsigned : 1;
13035 unsigned : 1;
13036 unsigned ADDEN1 : 1;
13037 unsigned : 1;
13038 unsigned : 1;
13039 unsigned : 1;
13040 unsigned : 1;
13042 } __RCSTA1bits_t;
13044 extern __at(0x0FAB) volatile __RCSTA1bits_t RCSTA1bits;
13046 #define _RCSTA1_RX9D 0x01
13047 #define _RCSTA1_RX9D1 0x01
13048 #define _RCSTA1_OERR 0x02
13049 #define _RCSTA1_OERR1 0x02
13050 #define _RCSTA1_FERR 0x04
13051 #define _RCSTA1_FERR1 0x04
13052 #define _RCSTA1_ADDEN 0x08
13053 #define _RCSTA1_ADEN 0x08
13054 #define _RCSTA1_ADDEN1 0x08
13055 #define _RCSTA1_CREN 0x10
13056 #define _RCSTA1_CREN1 0x10
13057 #define _RCSTA1_SREN 0x20
13058 #define _RCSTA1_SREN1 0x20
13059 #define _RCSTA1_RX9 0x40
13060 #define _RCSTA1_RX91 0x40
13061 #define _RCSTA1_SPEN 0x80
13062 #define _RCSTA1_SPEN1 0x80
13064 //==============================================================================
13067 //==============================================================================
13068 // TXSTA Bits
13070 extern __at(0x0FAC) __sfr TXSTA;
13072 typedef union
13074 struct
13076 unsigned TX9D : 1;
13077 unsigned TRMT : 1;
13078 unsigned BRGH : 1;
13079 unsigned SENDB : 1;
13080 unsigned SYNC : 1;
13081 unsigned TXEN : 1;
13082 unsigned TX9 : 1;
13083 unsigned CSRC : 1;
13086 struct
13088 unsigned TX9D1 : 1;
13089 unsigned TRMT1 : 1;
13090 unsigned BRGH1 : 1;
13091 unsigned SENDB1 : 1;
13092 unsigned SYNC1 : 1;
13093 unsigned TXEN1 : 1;
13094 unsigned TX91 : 1;
13095 unsigned CSRC1 : 1;
13097 } __TXSTAbits_t;
13099 extern __at(0x0FAC) volatile __TXSTAbits_t TXSTAbits;
13101 #define _TX9D 0x01
13102 #define _TX9D1 0x01
13103 #define _TRMT 0x02
13104 #define _TRMT1 0x02
13105 #define _BRGH 0x04
13106 #define _BRGH1 0x04
13107 #define _SENDB 0x08
13108 #define _SENDB1 0x08
13109 #define _SYNC 0x10
13110 #define _SYNC1 0x10
13111 #define _TXEN 0x20
13112 #define _TXEN1 0x20
13113 #define _TX9 0x40
13114 #define _TX91 0x40
13115 #define _CSRC 0x80
13116 #define _CSRC1 0x80
13118 //==============================================================================
13121 //==============================================================================
13122 // TXSTA1 Bits
13124 extern __at(0x0FAC) __sfr TXSTA1;
13126 typedef union
13128 struct
13130 unsigned TX9D : 1;
13131 unsigned TRMT : 1;
13132 unsigned BRGH : 1;
13133 unsigned SENDB : 1;
13134 unsigned SYNC : 1;
13135 unsigned TXEN : 1;
13136 unsigned TX9 : 1;
13137 unsigned CSRC : 1;
13140 struct
13142 unsigned TX9D1 : 1;
13143 unsigned TRMT1 : 1;
13144 unsigned BRGH1 : 1;
13145 unsigned SENDB1 : 1;
13146 unsigned SYNC1 : 1;
13147 unsigned TXEN1 : 1;
13148 unsigned TX91 : 1;
13149 unsigned CSRC1 : 1;
13151 } __TXSTA1bits_t;
13153 extern __at(0x0FAC) volatile __TXSTA1bits_t TXSTA1bits;
13155 #define _TXSTA1_TX9D 0x01
13156 #define _TXSTA1_TX9D1 0x01
13157 #define _TXSTA1_TRMT 0x02
13158 #define _TXSTA1_TRMT1 0x02
13159 #define _TXSTA1_BRGH 0x04
13160 #define _TXSTA1_BRGH1 0x04
13161 #define _TXSTA1_SENDB 0x08
13162 #define _TXSTA1_SENDB1 0x08
13163 #define _TXSTA1_SYNC 0x10
13164 #define _TXSTA1_SYNC1 0x10
13165 #define _TXSTA1_TXEN 0x20
13166 #define _TXSTA1_TXEN1 0x20
13167 #define _TXSTA1_TX9 0x40
13168 #define _TXSTA1_TX91 0x40
13169 #define _TXSTA1_CSRC 0x80
13170 #define _TXSTA1_CSRC1 0x80
13172 //==============================================================================
13174 extern __at(0x0FAD) __sfr TXREG;
13175 extern __at(0x0FAD) __sfr TXREG1;
13176 extern __at(0x0FAE) __sfr RCREG;
13177 extern __at(0x0FAE) __sfr RCREG1;
13178 extern __at(0x0FAF) __sfr SPBRG;
13179 extern __at(0x0FAF) __sfr SPBRG1;
13181 //==============================================================================
13182 // PSPCON Bits
13184 extern __at(0x0FB0) __sfr PSPCON;
13186 typedef struct
13188 unsigned : 1;
13189 unsigned : 1;
13190 unsigned : 1;
13191 unsigned : 1;
13192 unsigned PSPMODE : 1;
13193 unsigned IBOV : 1;
13194 unsigned OBF : 1;
13195 unsigned IBF : 1;
13196 } __PSPCONbits_t;
13198 extern __at(0x0FB0) volatile __PSPCONbits_t PSPCONbits;
13200 #define _PSPMODE 0x10
13201 #define _IBOV 0x20
13202 #define _OBF 0x40
13203 #define _IBF 0x80
13205 //==============================================================================
13208 //==============================================================================
13209 // T3CON Bits
13211 extern __at(0x0FB1) __sfr T3CON;
13213 typedef union
13215 struct
13217 unsigned TMR3ON : 1;
13218 unsigned TMR3CS : 1;
13219 unsigned NOT_T3SYNC : 1;
13220 unsigned T3CCP1 : 1;
13221 unsigned T3CKPS0 : 1;
13222 unsigned T3CKPS1 : 1;
13223 unsigned T3CCP2 : 1;
13224 unsigned RD16 : 1;
13227 struct
13229 unsigned : 1;
13230 unsigned : 1;
13231 unsigned T3SYNC : 1;
13232 unsigned : 1;
13233 unsigned : 1;
13234 unsigned : 1;
13235 unsigned : 1;
13236 unsigned : 1;
13239 struct
13241 unsigned : 1;
13242 unsigned : 1;
13243 unsigned T3NSYNC : 1;
13244 unsigned : 1;
13245 unsigned : 1;
13246 unsigned : 1;
13247 unsigned : 1;
13248 unsigned : 1;
13251 struct
13253 unsigned : 4;
13254 unsigned T3CKPS : 2;
13255 unsigned : 2;
13257 } __T3CONbits_t;
13259 extern __at(0x0FB1) volatile __T3CONbits_t T3CONbits;
13261 #define _T3CON_TMR3ON 0x01
13262 #define _T3CON_TMR3CS 0x02
13263 #define _T3CON_NOT_T3SYNC 0x04
13264 #define _T3CON_T3SYNC 0x04
13265 #define _T3CON_T3NSYNC 0x04
13266 #define _T3CON_T3CCP1 0x08
13267 #define _T3CON_T3CKPS0 0x10
13268 #define _T3CON_T3CKPS1 0x20
13269 #define _T3CON_T3CCP2 0x40
13270 #define _T3CON_RD16 0x80
13272 //==============================================================================
13274 extern __at(0x0FB2) __sfr TMR3;
13275 extern __at(0x0FB2) __sfr TMR3L;
13276 extern __at(0x0FB3) __sfr TMR3H;
13278 //==============================================================================
13279 // CMCON Bits
13281 extern __at(0x0FB4) __sfr CMCON;
13283 typedef union
13285 struct
13287 unsigned CM0 : 1;
13288 unsigned CM1 : 1;
13289 unsigned CM2 : 1;
13290 unsigned CIS : 1;
13291 unsigned C1INV : 1;
13292 unsigned C2INV : 1;
13293 unsigned C1OUT : 1;
13294 unsigned C2OUT : 1;
13297 struct
13299 unsigned CM : 3;
13300 unsigned : 5;
13302 } __CMCONbits_t;
13304 extern __at(0x0FB4) volatile __CMCONbits_t CMCONbits;
13306 #define _CM0 0x01
13307 #define _CM1 0x02
13308 #define _CM2 0x04
13309 #define _CIS 0x08
13310 #define _C1INV 0x10
13311 #define _C2INV 0x20
13312 #define _C1OUT 0x40
13313 #define _C2OUT 0x80
13315 //==============================================================================
13318 //==============================================================================
13319 // CVRCON Bits
13321 extern __at(0x0FB5) __sfr CVRCON;
13323 typedef union
13325 struct
13327 unsigned CVR0 : 1;
13328 unsigned CVR1 : 1;
13329 unsigned CVR2 : 1;
13330 unsigned CVR3 : 1;
13331 unsigned CVRSS : 1;
13332 unsigned CVRR : 1;
13333 unsigned CVROE : 1;
13334 unsigned CVREN : 1;
13337 struct
13339 unsigned : 1;
13340 unsigned : 1;
13341 unsigned : 1;
13342 unsigned : 1;
13343 unsigned CVREF : 1;
13344 unsigned : 1;
13345 unsigned : 1;
13346 unsigned : 1;
13349 struct
13351 unsigned CVR : 4;
13352 unsigned : 4;
13354 } __CVRCONbits_t;
13356 extern __at(0x0FB5) volatile __CVRCONbits_t CVRCONbits;
13358 #define _CVR0 0x01
13359 #define _CVR1 0x02
13360 #define _CVR2 0x04
13361 #define _CVR3 0x08
13362 #define _CVRSS 0x10
13363 #define _CVREF 0x10
13364 #define _CVRR 0x20
13365 #define _CVROE 0x40
13366 #define _CVREN 0x80
13368 //==============================================================================
13371 //==============================================================================
13372 // ECCP1AS Bits
13374 extern __at(0x0FB6) __sfr ECCP1AS;
13376 typedef union
13378 struct
13380 unsigned PSSBD0 : 1;
13381 unsigned PSSBD1 : 1;
13382 unsigned PSSAC0 : 1;
13383 unsigned PSSAC1 : 1;
13384 unsigned ECCPAS0 : 1;
13385 unsigned ECCPAS1 : 1;
13386 unsigned ECCPAS2 : 1;
13387 unsigned ECCPASE : 1;
13390 struct
13392 unsigned PSSBD : 2;
13393 unsigned : 6;
13396 struct
13398 unsigned : 2;
13399 unsigned PSSAC : 2;
13400 unsigned : 4;
13403 struct
13405 unsigned : 4;
13406 unsigned ECCPAS : 3;
13407 unsigned : 1;
13409 } __ECCP1ASbits_t;
13411 extern __at(0x0FB6) volatile __ECCP1ASbits_t ECCP1ASbits;
13413 #define _PSSBD0 0x01
13414 #define _PSSBD1 0x02
13415 #define _PSSAC0 0x04
13416 #define _PSSAC1 0x08
13417 #define _ECCPAS0 0x10
13418 #define _ECCPAS1 0x20
13419 #define _ECCPAS2 0x40
13420 #define _ECCPASE 0x80
13422 //==============================================================================
13425 //==============================================================================
13426 // CCP2CON Bits
13428 extern __at(0x0FBA) __sfr CCP2CON;
13430 typedef union
13432 struct
13434 unsigned CCP2M0 : 1;
13435 unsigned CCP2M1 : 1;
13436 unsigned CCP2M2 : 1;
13437 unsigned CCP2M3 : 1;
13438 unsigned DC2B0 : 1;
13439 unsigned DC2B1 : 1;
13440 unsigned : 1;
13441 unsigned : 1;
13444 struct
13446 unsigned CCP2M : 4;
13447 unsigned : 4;
13450 struct
13452 unsigned : 4;
13453 unsigned DC2B : 2;
13454 unsigned : 2;
13456 } __CCP2CONbits_t;
13458 extern __at(0x0FBA) volatile __CCP2CONbits_t CCP2CONbits;
13460 #define _CCP2M0 0x01
13461 #define _CCP2M1 0x02
13462 #define _CCP2M2 0x04
13463 #define _CCP2M3 0x08
13464 #define _DC2B0 0x10
13465 #define _DC2B1 0x20
13467 //==============================================================================
13469 extern __at(0x0FBB) __sfr CCPR2;
13470 extern __at(0x0FBB) __sfr CCPR2L;
13471 extern __at(0x0FBC) __sfr CCPR2H;
13473 //==============================================================================
13474 // CCP1CON Bits
13476 extern __at(0x0FBD) __sfr CCP1CON;
13478 typedef union
13480 struct
13482 unsigned CCP1M0 : 1;
13483 unsigned CCP1M1 : 1;
13484 unsigned CCP1M2 : 1;
13485 unsigned CCP1M3 : 1;
13486 unsigned DC1B0 : 1;
13487 unsigned DC1B1 : 1;
13488 unsigned P1M0 : 1;
13489 unsigned P1M1 : 1;
13492 struct
13494 unsigned CCP1M : 4;
13495 unsigned : 4;
13498 struct
13500 unsigned : 4;
13501 unsigned DC1B : 2;
13502 unsigned : 2;
13505 struct
13507 unsigned : 6;
13508 unsigned P1M : 2;
13510 } __CCP1CONbits_t;
13512 extern __at(0x0FBD) volatile __CCP1CONbits_t CCP1CONbits;
13514 #define _CCP1M0 0x01
13515 #define _CCP1M1 0x02
13516 #define _CCP1M2 0x04
13517 #define _CCP1M3 0x08
13518 #define _DC1B0 0x10
13519 #define _DC1B1 0x20
13520 #define _P1M0 0x40
13521 #define _P1M1 0x80
13523 //==============================================================================
13525 extern __at(0x0FBE) __sfr CCPR1;
13526 extern __at(0x0FBE) __sfr CCPR1L;
13527 extern __at(0x0FBF) __sfr CCPR1H;
13529 //==============================================================================
13530 // ADCON2 Bits
13532 extern __at(0x0FC0) __sfr ADCON2;
13534 typedef union
13536 struct
13538 unsigned ADCS0 : 1;
13539 unsigned ADCS1 : 1;
13540 unsigned ADCS2 : 1;
13541 unsigned ACQT0 : 1;
13542 unsigned ACQT1 : 1;
13543 unsigned ACQT2 : 1;
13544 unsigned : 1;
13545 unsigned ADFM : 1;
13548 struct
13550 unsigned ADCS : 3;
13551 unsigned : 5;
13554 struct
13556 unsigned : 3;
13557 unsigned ACQT : 3;
13558 unsigned : 2;
13560 } __ADCON2bits_t;
13562 extern __at(0x0FC0) volatile __ADCON2bits_t ADCON2bits;
13564 #define _ADCS0 0x01
13565 #define _ADCS1 0x02
13566 #define _ADCS2 0x04
13567 #define _ACQT0 0x08
13568 #define _ACQT1 0x10
13569 #define _ACQT2 0x20
13570 #define _ADFM 0x80
13572 //==============================================================================
13575 //==============================================================================
13576 // ADCON1 Bits
13578 extern __at(0x0FC1) __sfr ADCON1;
13580 typedef union
13582 struct
13584 unsigned PCFG0 : 1;
13585 unsigned PCFG1 : 1;
13586 unsigned PCFG2 : 1;
13587 unsigned PCFG3 : 1;
13588 unsigned VCFG0 : 1;
13589 unsigned VCFG1 : 1;
13590 unsigned : 1;
13591 unsigned : 1;
13594 struct
13596 unsigned PCFG : 4;
13597 unsigned : 4;
13600 struct
13602 unsigned : 4;
13603 unsigned VCFG : 2;
13604 unsigned : 2;
13606 } __ADCON1bits_t;
13608 extern __at(0x0FC1) volatile __ADCON1bits_t ADCON1bits;
13610 #define _PCFG0 0x01
13611 #define _PCFG1 0x02
13612 #define _PCFG2 0x04
13613 #define _PCFG3 0x08
13614 #define _VCFG0 0x10
13615 #define _VCFG1 0x20
13617 //==============================================================================
13620 //==============================================================================
13621 // ADCON0 Bits
13623 extern __at(0x0FC2) __sfr ADCON0;
13625 typedef union
13627 struct
13629 unsigned ADON : 1;
13630 unsigned GO_NOT_DONE : 1;
13631 unsigned CHS0 : 1;
13632 unsigned CHS1 : 1;
13633 unsigned CHS2 : 1;
13634 unsigned CHS3 : 1;
13635 unsigned : 1;
13636 unsigned : 1;
13639 struct
13641 unsigned : 1;
13642 unsigned GO_DONE : 1;
13643 unsigned : 1;
13644 unsigned : 1;
13645 unsigned : 1;
13646 unsigned : 1;
13647 unsigned : 1;
13648 unsigned : 1;
13651 struct
13653 unsigned : 1;
13654 unsigned DONE : 1;
13655 unsigned : 1;
13656 unsigned : 1;
13657 unsigned : 1;
13658 unsigned : 1;
13659 unsigned : 1;
13660 unsigned : 1;
13663 struct
13665 unsigned : 1;
13666 unsigned GO : 1;
13667 unsigned : 1;
13668 unsigned : 1;
13669 unsigned : 1;
13670 unsigned : 1;
13671 unsigned : 1;
13672 unsigned : 1;
13675 struct
13677 unsigned : 1;
13678 unsigned NOT_DONE : 1;
13679 unsigned : 1;
13680 unsigned : 1;
13681 unsigned : 1;
13682 unsigned : 1;
13683 unsigned : 1;
13684 unsigned : 1;
13687 struct
13689 unsigned : 2;
13690 unsigned CHS : 4;
13691 unsigned : 2;
13693 } __ADCON0bits_t;
13695 extern __at(0x0FC2) volatile __ADCON0bits_t ADCON0bits;
13697 #define _ADON 0x01
13698 #define _GO_NOT_DONE 0x02
13699 #define _GO_DONE 0x02
13700 #define _DONE 0x02
13701 #define _GO 0x02
13702 #define _NOT_DONE 0x02
13703 #define _CHS0 0x04
13704 #define _CHS1 0x08
13705 #define _CHS2 0x10
13706 #define _CHS3 0x20
13708 //==============================================================================
13710 extern __at(0x0FC3) __sfr ADRES;
13711 extern __at(0x0FC3) __sfr ADRESL;
13712 extern __at(0x0FC4) __sfr ADRESH;
13714 //==============================================================================
13715 // SSPCON2 Bits
13717 extern __at(0x0FC5) __sfr SSPCON2;
13719 typedef struct
13721 unsigned SEN : 1;
13722 unsigned RSEN : 1;
13723 unsigned PEN : 1;
13724 unsigned RCEN : 1;
13725 unsigned ACKEN : 1;
13726 unsigned ACKDT : 1;
13727 unsigned ACKSTAT : 1;
13728 unsigned GCEN : 1;
13729 } __SSPCON2bits_t;
13731 extern __at(0x0FC5) volatile __SSPCON2bits_t SSPCON2bits;
13733 #define _SEN 0x01
13734 #define _RSEN 0x02
13735 #define _PEN 0x04
13736 #define _RCEN 0x08
13737 #define _ACKEN 0x10
13738 #define _ACKDT 0x20
13739 #define _ACKSTAT 0x40
13740 #define _GCEN 0x80
13742 //==============================================================================
13745 //==============================================================================
13746 // SSPCON1 Bits
13748 extern __at(0x0FC6) __sfr SSPCON1;
13750 typedef union
13752 struct
13754 unsigned SSPM0 : 1;
13755 unsigned SSPM1 : 1;
13756 unsigned SSPM2 : 1;
13757 unsigned SSPM3 : 1;
13758 unsigned CKP : 1;
13759 unsigned SSPEN : 1;
13760 unsigned SSPOV : 1;
13761 unsigned WCOL : 1;
13764 struct
13766 unsigned SSPM : 4;
13767 unsigned : 4;
13769 } __SSPCON1bits_t;
13771 extern __at(0x0FC6) volatile __SSPCON1bits_t SSPCON1bits;
13773 #define _SSPM0 0x01
13774 #define _SSPM1 0x02
13775 #define _SSPM2 0x04
13776 #define _SSPM3 0x08
13777 #define _CKP 0x10
13778 #define _SSPEN 0x20
13779 #define _SSPOV 0x40
13780 #define _WCOL 0x80
13782 //==============================================================================
13785 //==============================================================================
13786 // SSPSTAT Bits
13788 extern __at(0x0FC7) __sfr SSPSTAT;
13790 typedef union
13792 struct
13794 unsigned BF : 1;
13795 unsigned UA : 1;
13796 unsigned R_NOT_W : 1;
13797 unsigned S : 1;
13798 unsigned P : 1;
13799 unsigned D_NOT_A : 1;
13800 unsigned CKE : 1;
13801 unsigned SMP : 1;
13804 struct
13806 unsigned : 1;
13807 unsigned : 1;
13808 unsigned R_W : 1;
13809 unsigned I2C_START : 1;
13810 unsigned I2C_STOP : 1;
13811 unsigned D_A : 1;
13812 unsigned : 1;
13813 unsigned : 1;
13816 struct
13818 unsigned : 1;
13819 unsigned : 1;
13820 unsigned I2C_READ : 1;
13821 unsigned : 1;
13822 unsigned : 1;
13823 unsigned I2C_DAT : 1;
13824 unsigned : 1;
13825 unsigned : 1;
13828 struct
13830 unsigned : 1;
13831 unsigned : 1;
13832 unsigned NOT_W : 1;
13833 unsigned : 1;
13834 unsigned : 1;
13835 unsigned NOT_A : 1;
13836 unsigned : 1;
13837 unsigned : 1;
13840 struct
13842 unsigned : 1;
13843 unsigned : 1;
13844 unsigned NOT_WRITE : 1;
13845 unsigned : 1;
13846 unsigned : 1;
13847 unsigned NOT_ADDRESS : 1;
13848 unsigned : 1;
13849 unsigned : 1;
13852 struct
13854 unsigned : 1;
13855 unsigned : 1;
13856 unsigned READ_WRITE : 1;
13857 unsigned : 1;
13858 unsigned : 1;
13859 unsigned DATA_ADDRESS : 1;
13860 unsigned : 1;
13861 unsigned : 1;
13864 struct
13866 unsigned : 1;
13867 unsigned : 1;
13868 unsigned R : 1;
13869 unsigned : 1;
13870 unsigned : 1;
13871 unsigned D : 1;
13872 unsigned : 1;
13873 unsigned : 1;
13875 } __SSPSTATbits_t;
13877 extern __at(0x0FC7) volatile __SSPSTATbits_t SSPSTATbits;
13879 #define _BF 0x01
13880 #define _UA 0x02
13881 #define _R_NOT_W 0x04
13882 #define _R_W 0x04
13883 #define _I2C_READ 0x04
13884 #define _NOT_W 0x04
13885 #define _NOT_WRITE 0x04
13886 #define _READ_WRITE 0x04
13887 #define _R 0x04
13888 #define _S 0x08
13889 #define _I2C_START 0x08
13890 #define _P 0x10
13891 #define _I2C_STOP 0x10
13892 #define _D_NOT_A 0x20
13893 #define _D_A 0x20
13894 #define _I2C_DAT 0x20
13895 #define _NOT_A 0x20
13896 #define _NOT_ADDRESS 0x20
13897 #define _DATA_ADDRESS 0x20
13898 #define _D 0x20
13899 #define _CKE 0x40
13900 #define _SMP 0x80
13902 //==============================================================================
13904 extern __at(0x0FC8) __sfr SSPADD;
13905 extern __at(0x0FC9) __sfr SSPBUF;
13907 //==============================================================================
13908 // T2CON Bits
13910 extern __at(0x0FCA) __sfr T2CON;
13912 typedef union
13914 struct
13916 unsigned T2CKPS0 : 1;
13917 unsigned T2CKPS1 : 1;
13918 unsigned TMR2ON : 1;
13919 unsigned T2OUTPS0 : 1;
13920 unsigned T2OUTPS1 : 1;
13921 unsigned T2OUTPS2 : 1;
13922 unsigned T2OUTPS3 : 1;
13923 unsigned : 1;
13926 struct
13928 unsigned T2CKPS : 2;
13929 unsigned : 6;
13932 struct
13934 unsigned : 3;
13935 unsigned T2OUTPS : 4;
13936 unsigned : 1;
13938 } __T2CONbits_t;
13940 extern __at(0x0FCA) volatile __T2CONbits_t T2CONbits;
13942 #define _T2CKPS0 0x01
13943 #define _T2CKPS1 0x02
13944 #define _TMR2ON 0x04
13945 #define _T2OUTPS0 0x08
13946 #define _T2OUTPS1 0x10
13947 #define _T2OUTPS2 0x20
13948 #define _T2OUTPS3 0x40
13950 //==============================================================================
13952 extern __at(0x0FCB) __sfr PR2;
13953 extern __at(0x0FCC) __sfr TMR2;
13955 //==============================================================================
13956 // T1CON Bits
13958 extern __at(0x0FCD) __sfr T1CON;
13960 typedef union
13962 struct
13964 unsigned TMR1ON : 1;
13965 unsigned TMR1CS : 1;
13966 unsigned NOT_T1SYNC : 1;
13967 unsigned T1OSCEN : 1;
13968 unsigned T1CKPS0 : 1;
13969 unsigned T1CKPS1 : 1;
13970 unsigned : 1;
13971 unsigned RD16 : 1;
13974 struct
13976 unsigned : 1;
13977 unsigned : 1;
13978 unsigned T1SYNC : 1;
13979 unsigned : 1;
13980 unsigned : 1;
13981 unsigned : 1;
13982 unsigned : 1;
13983 unsigned : 1;
13986 struct
13988 unsigned : 1;
13989 unsigned : 1;
13990 unsigned T1INSYNC : 1;
13991 unsigned : 1;
13992 unsigned : 1;
13993 unsigned : 1;
13994 unsigned : 1;
13995 unsigned : 1;
13998 struct
14000 unsigned : 4;
14001 unsigned T1CKPS : 2;
14002 unsigned : 2;
14004 } __T1CONbits_t;
14006 extern __at(0x0FCD) volatile __T1CONbits_t T1CONbits;
14008 #define _TMR1ON 0x01
14009 #define _TMR1CS 0x02
14010 #define _NOT_T1SYNC 0x04
14011 #define _T1SYNC 0x04
14012 #define _T1INSYNC 0x04
14013 #define _T1OSCEN 0x08
14014 #define _T1CKPS0 0x10
14015 #define _T1CKPS1 0x20
14016 #define _RD16 0x80
14018 //==============================================================================
14020 extern __at(0x0FCE) __sfr TMR1;
14021 extern __at(0x0FCE) __sfr TMR1L;
14022 extern __at(0x0FCF) __sfr TMR1H;
14024 //==============================================================================
14025 // RCON Bits
14027 extern __at(0x0FD0) __sfr RCON;
14029 typedef union
14031 struct
14033 unsigned NOT_BOR : 1;
14034 unsigned NOT_POR : 1;
14035 unsigned NOT_PD : 1;
14036 unsigned NOT_TO : 1;
14037 unsigned NOT_RI : 1;
14038 unsigned : 1;
14039 unsigned : 1;
14040 unsigned IPEN : 1;
14043 struct
14045 unsigned BOR : 1;
14046 unsigned POR : 1;
14047 unsigned PD : 1;
14048 unsigned TO : 1;
14049 unsigned RI : 1;
14050 unsigned : 1;
14051 unsigned : 1;
14052 unsigned NOT_IPEN : 1;
14054 } __RCONbits_t;
14056 extern __at(0x0FD0) volatile __RCONbits_t RCONbits;
14058 #define _NOT_BOR 0x01
14059 #define _BOR 0x01
14060 #define _NOT_POR 0x02
14061 #define _POR 0x02
14062 #define _NOT_PD 0x04
14063 #define _PD 0x04
14064 #define _NOT_TO 0x08
14065 #define _TO 0x08
14066 #define _NOT_RI 0x10
14067 #define _RI 0x10
14068 #define _IPEN 0x80
14069 #define _NOT_IPEN 0x80
14071 //==============================================================================
14074 //==============================================================================
14075 // WDTCON Bits
14077 extern __at(0x0FD1) __sfr WDTCON;
14079 typedef union
14081 struct
14083 unsigned SWDTEN : 1;
14084 unsigned : 1;
14085 unsigned : 1;
14086 unsigned : 1;
14087 unsigned : 1;
14088 unsigned : 1;
14089 unsigned : 1;
14090 unsigned : 1;
14093 struct
14095 unsigned SWDTE : 1;
14096 unsigned : 1;
14097 unsigned : 1;
14098 unsigned : 1;
14099 unsigned : 1;
14100 unsigned : 1;
14101 unsigned : 1;
14102 unsigned : 1;
14104 } __WDTCONbits_t;
14106 extern __at(0x0FD1) volatile __WDTCONbits_t WDTCONbits;
14108 #define _SWDTEN 0x01
14109 #define _SWDTE 0x01
14111 //==============================================================================
14114 //==============================================================================
14115 // LVDCON Bits
14117 extern __at(0x0FD2) __sfr LVDCON;
14119 typedef union
14121 struct
14123 unsigned LVDL0 : 1;
14124 unsigned LVDL1 : 1;
14125 unsigned LVDL2 : 1;
14126 unsigned LVDL3 : 1;
14127 unsigned LVDEN : 1;
14128 unsigned IRVST : 1;
14129 unsigned : 1;
14130 unsigned : 1;
14133 struct
14135 unsigned LVV0 : 1;
14136 unsigned LVV1 : 1;
14137 unsigned LVV2 : 1;
14138 unsigned LVV3 : 1;
14139 unsigned : 1;
14140 unsigned BGST : 1;
14141 unsigned : 1;
14142 unsigned : 1;
14145 struct
14147 unsigned LVDL : 4;
14148 unsigned : 4;
14151 struct
14153 unsigned LVV : 4;
14154 unsigned : 4;
14156 } __LVDCONbits_t;
14158 extern __at(0x0FD2) volatile __LVDCONbits_t LVDCONbits;
14160 #define _LVDL0 0x01
14161 #define _LVV0 0x01
14162 #define _LVDL1 0x02
14163 #define _LVV1 0x02
14164 #define _LVDL2 0x04
14165 #define _LVV2 0x04
14166 #define _LVDL3 0x08
14167 #define _LVV3 0x08
14168 #define _LVDEN 0x10
14169 #define _IRVST 0x20
14170 #define _BGST 0x20
14172 //==============================================================================
14175 //==============================================================================
14176 // OSCCON Bits
14178 extern __at(0x0FD3) __sfr OSCCON;
14180 typedef union
14182 struct
14184 unsigned SCS0 : 1;
14185 unsigned SCS1 : 1;
14186 unsigned PLLEN : 1;
14187 unsigned LOCK : 1;
14188 unsigned : 1;
14189 unsigned : 1;
14190 unsigned : 1;
14191 unsigned : 1;
14194 struct
14196 unsigned SCS : 1;
14197 unsigned : 1;
14198 unsigned : 1;
14199 unsigned : 1;
14200 unsigned : 1;
14201 unsigned : 1;
14202 unsigned : 1;
14203 unsigned : 1;
14205 } __OSCCONbits_t;
14207 extern __at(0x0FD3) volatile __OSCCONbits_t OSCCONbits;
14209 #define _SCS0 0x01
14210 #define _SCS 0x01
14211 #define _SCS1 0x02
14212 #define _PLLEN 0x04
14213 #define _LOCK 0x08
14215 //==============================================================================
14218 //==============================================================================
14219 // T0CON Bits
14221 extern __at(0x0FD5) __sfr T0CON;
14223 typedef union
14225 struct
14227 unsigned T0PS0 : 1;
14228 unsigned T0PS1 : 1;
14229 unsigned T0PS2 : 1;
14230 unsigned PSA : 1;
14231 unsigned T0SE : 1;
14232 unsigned T0CS : 1;
14233 unsigned T08BIT : 1;
14234 unsigned TMR0ON : 1;
14237 struct
14239 unsigned T0PS : 3;
14240 unsigned : 5;
14242 } __T0CONbits_t;
14244 extern __at(0x0FD5) volatile __T0CONbits_t T0CONbits;
14246 #define _T0PS0 0x01
14247 #define _T0PS1 0x02
14248 #define _T0PS2 0x04
14249 #define _PSA 0x08
14250 #define _T0SE 0x10
14251 #define _T0CS 0x20
14252 #define _T08BIT 0x40
14253 #define _TMR0ON 0x80
14255 //==============================================================================
14257 extern __at(0x0FD6) __sfr TMR0;
14258 extern __at(0x0FD6) __sfr TMR0L;
14259 extern __at(0x0FD7) __sfr TMR0H;
14261 //==============================================================================
14262 // STATUS Bits
14264 extern __at(0x0FD8) __sfr STATUS;
14266 typedef struct
14268 unsigned C : 1;
14269 unsigned DC : 1;
14270 unsigned Z : 1;
14271 unsigned OV : 1;
14272 unsigned N : 1;
14273 unsigned : 1;
14274 unsigned : 1;
14275 unsigned : 1;
14276 } __STATUSbits_t;
14278 extern __at(0x0FD8) volatile __STATUSbits_t STATUSbits;
14280 #define _C 0x01
14281 #define _DC 0x02
14282 #define _Z 0x04
14283 #define _OV 0x08
14284 #define _N 0x10
14286 //==============================================================================
14288 extern __at(0x0FD9) __sfr FSR2L;
14289 extern __at(0x0FDA) __sfr FSR2H;
14290 extern __at(0x0FDB) __sfr PLUSW2;
14291 extern __at(0x0FDC) __sfr PREINC2;
14292 extern __at(0x0FDD) __sfr POSTDEC2;
14293 extern __at(0x0FDE) __sfr POSTINC2;
14294 extern __at(0x0FDF) __sfr INDF2;
14295 extern __at(0x0FE0) __sfr BSR;
14296 extern __at(0x0FE1) __sfr FSR1L;
14297 extern __at(0x0FE2) __sfr FSR1H;
14298 extern __at(0x0FE3) __sfr PLUSW1;
14299 extern __at(0x0FE4) __sfr PREINC1;
14300 extern __at(0x0FE5) __sfr POSTDEC1;
14301 extern __at(0x0FE6) __sfr POSTINC1;
14302 extern __at(0x0FE7) __sfr INDF1;
14303 extern __at(0x0FE8) __sfr WREG;
14304 extern __at(0x0FE9) __sfr FSR0L;
14305 extern __at(0x0FEA) __sfr FSR0H;
14306 extern __at(0x0FEB) __sfr PLUSW0;
14307 extern __at(0x0FEC) __sfr PREINC0;
14308 extern __at(0x0FED) __sfr POSTDEC0;
14309 extern __at(0x0FEE) __sfr POSTINC0;
14310 extern __at(0x0FEF) __sfr INDF0;
14312 //==============================================================================
14313 // INTCON3 Bits
14315 extern __at(0x0FF0) __sfr INTCON3;
14317 typedef union
14319 struct
14321 unsigned INT1IF : 1;
14322 unsigned INT2IF : 1;
14323 unsigned INT3IF : 1;
14324 unsigned INT1IE : 1;
14325 unsigned INT2IE : 1;
14326 unsigned INT3IE : 1;
14327 unsigned INT1IP : 1;
14328 unsigned INT2IP : 1;
14331 struct
14333 unsigned INT1F : 1;
14334 unsigned INT2F : 1;
14335 unsigned INT3F : 1;
14336 unsigned INT1E : 1;
14337 unsigned INT2E : 1;
14338 unsigned INT3E : 1;
14339 unsigned INT1P : 1;
14340 unsigned INT2P : 1;
14342 } __INTCON3bits_t;
14344 extern __at(0x0FF0) volatile __INTCON3bits_t INTCON3bits;
14346 #define _INT1IF 0x01
14347 #define _INT1F 0x01
14348 #define _INT2IF 0x02
14349 #define _INT2F 0x02
14350 #define _INT3IF 0x04
14351 #define _INT3F 0x04
14352 #define _INT1IE 0x08
14353 #define _INT1E 0x08
14354 #define _INT2IE 0x10
14355 #define _INT2E 0x10
14356 #define _INT3IE 0x20
14357 #define _INT3E 0x20
14358 #define _INT1IP 0x40
14359 #define _INT1P 0x40
14360 #define _INT2IP 0x80
14361 #define _INT2P 0x80
14363 //==============================================================================
14366 //==============================================================================
14367 // INTCON2 Bits
14369 extern __at(0x0FF1) __sfr INTCON2;
14371 typedef union
14373 struct
14375 unsigned RBIP : 1;
14376 unsigned INT3IP : 1;
14377 unsigned TMR0IP : 1;
14378 unsigned INTEDG3 : 1;
14379 unsigned INTEDG2 : 1;
14380 unsigned INTEDG1 : 1;
14381 unsigned INTEDG0 : 1;
14382 unsigned NOT_RBPU : 1;
14385 struct
14387 unsigned : 1;
14388 unsigned INT3P : 1;
14389 unsigned T0IP : 1;
14390 unsigned : 1;
14391 unsigned : 1;
14392 unsigned : 1;
14393 unsigned : 1;
14394 unsigned RBPU : 1;
14396 } __INTCON2bits_t;
14398 extern __at(0x0FF1) volatile __INTCON2bits_t INTCON2bits;
14400 #define _RBIP 0x01
14401 #define _INT3IP 0x02
14402 #define _INT3P 0x02
14403 #define _TMR0IP 0x04
14404 #define _T0IP 0x04
14405 #define _INTEDG3 0x08
14406 #define _INTEDG2 0x10
14407 #define _INTEDG1 0x20
14408 #define _INTEDG0 0x40
14409 #define _NOT_RBPU 0x80
14410 #define _RBPU 0x80
14412 //==============================================================================
14415 //==============================================================================
14416 // INTCON Bits
14418 extern __at(0x0FF2) __sfr INTCON;
14420 typedef union
14422 struct
14424 unsigned RBIF : 1;
14425 unsigned INT0IF : 1;
14426 unsigned TMR0IF : 1;
14427 unsigned RBIE : 1;
14428 unsigned INT0IE : 1;
14429 unsigned TMR0IE : 1;
14430 unsigned PEIE_GIEL : 1;
14431 unsigned GIE_GIEH : 1;
14434 struct
14436 unsigned : 1;
14437 unsigned INT0F : 1;
14438 unsigned T0IF : 1;
14439 unsigned : 1;
14440 unsigned INT0E : 1;
14441 unsigned T0IE : 1;
14442 unsigned PEIE : 1;
14443 unsigned GIE : 1;
14446 struct
14448 unsigned : 1;
14449 unsigned : 1;
14450 unsigned : 1;
14451 unsigned : 1;
14452 unsigned : 1;
14453 unsigned : 1;
14454 unsigned GIEL : 1;
14455 unsigned GIEH : 1;
14457 } __INTCONbits_t;
14459 extern __at(0x0FF2) volatile __INTCONbits_t INTCONbits;
14461 #define _RBIF 0x01
14462 #define _INT0IF 0x02
14463 #define _INT0F 0x02
14464 #define _TMR0IF 0x04
14465 #define _T0IF 0x04
14466 #define _RBIE 0x08
14467 #define _INT0IE 0x10
14468 #define _INT0E 0x10
14469 #define _TMR0IE 0x20
14470 #define _T0IE 0x20
14471 #define _PEIE_GIEL 0x40
14472 #define _PEIE 0x40
14473 #define _GIEL 0x40
14474 #define _GIE_GIEH 0x80
14475 #define _GIE 0x80
14476 #define _GIEH 0x80
14478 //==============================================================================
14480 extern __at(0x0FF3) __sfr PROD;
14481 extern __at(0x0FF3) __sfr PRODL;
14482 extern __at(0x0FF4) __sfr PRODH;
14483 extern __at(0x0FF5) __sfr TABLAT;
14484 extern __at(0x0FF6) __sfr TBLPTR;
14485 extern __at(0x0FF6) __sfr TBLPTRL;
14486 extern __at(0x0FF7) __sfr TBLPTRH;
14487 extern __at(0x0FF8) __sfr TBLPTRU;
14488 extern __at(0x0FF9) __sfr PC;
14489 extern __at(0x0FF9) __sfr PCL;
14490 extern __at(0x0FFA) __sfr PCLATH;
14491 extern __at(0x0FFB) __sfr PCLATU;
14493 //==============================================================================
14494 // STKPTR Bits
14496 extern __at(0x0FFC) __sfr STKPTR;
14498 typedef union
14500 struct
14502 unsigned STKPTR0 : 1;
14503 unsigned STKPTR1 : 1;
14504 unsigned STKPTR2 : 1;
14505 unsigned STKPTR3 : 1;
14506 unsigned STKPTR4 : 1;
14507 unsigned : 1;
14508 unsigned STKUNF : 1;
14509 unsigned STKFUL : 1;
14512 struct
14514 unsigned : 1;
14515 unsigned : 1;
14516 unsigned : 1;
14517 unsigned : 1;
14518 unsigned : 1;
14519 unsigned : 1;
14520 unsigned : 1;
14521 unsigned STKOVF : 1;
14524 struct
14526 unsigned STKPTR : 5;
14527 unsigned : 3;
14529 } __STKPTRbits_t;
14531 extern __at(0x0FFC) volatile __STKPTRbits_t STKPTRbits;
14533 #define _STKPTR0 0x01
14534 #define _STKPTR1 0x02
14535 #define _STKPTR2 0x04
14536 #define _STKPTR3 0x08
14537 #define _STKPTR4 0x10
14538 #define _STKUNF 0x40
14539 #define _STKFUL 0x80
14540 #define _STKOVF 0x80
14542 //==============================================================================
14544 extern __at(0x0FFD) __sfr TOS;
14545 extern __at(0x0FFD) __sfr TOSL;
14546 extern __at(0x0FFE) __sfr TOSH;
14547 extern __at(0x0FFF) __sfr TOSU;
14549 //==============================================================================
14551 // Configuration Bits
14553 //==============================================================================
14555 #define __CONFIG1H 0x300001
14556 #define __CONFIG2L 0x300002
14557 #define __CONFIG2H 0x300003
14558 #define __CONFIG3L 0x300004
14559 #define __CONFIG3H 0x300005
14560 #define __CONFIG4L 0x300006
14561 #define __CONFIG5L 0x300008
14562 #define __CONFIG5H 0x300009
14563 #define __CONFIG6L 0x30000A
14564 #define __CONFIG6H 0x30000B
14565 #define __CONFIG7L 0x30000C
14566 #define __CONFIG7H 0x30000D
14568 //----------------------------- CONFIG1H Options -------------------------------
14570 #define _OSC_LP_1H 0xF0 // LP oscillator.
14571 #define _OSC_XT_1H 0xF1 // XT oscillator.
14572 #define _OSC_HS_1H 0xF2 // HS oscillator.
14573 #define _OSC_RC_1H 0xF3 // RC oscillator with OSC2 configured as divide by 4 clock output.
14574 #define _OSC_EC_1H 0xF4 // EC oscillator with OSC2 configured as divide by 4 clock output.
14575 #define _OSC_ECIO_1H 0xF5 // EC oscillator with OSC2 configured as RA6.
14576 #define _OSC_HSPLL_1H 0xF6 // HS oscillator with HW enabled 4x PLL.
14577 #define _OSC_RCIO_1H 0xF7 // RC oscillator with OSC2 configured as RA6.
14578 #define _OSC_ECIOPLL_1H 0xFC // EC oscillator with OSC2 configured as RA6 and HW enabled 4x PLL.
14579 #define _OSC_ECIOSWPLL_1H 0xFD // EC oscillator with OSC2 configured as RA6 and SW enabled 4x PLL.
14580 #define _OSC_HSSWPLL_1H 0xFE // HS oscillator with SW enabled 4x PLL.
14581 #define _OSCS_ON_1H 0xDF // Timer1 oscillator system clock switch option is enabled (oscillator switching is enabled).
14582 #define _OSCS_OFF_1H 0xFF // Oscillator system clock switch option is disabled (main oscillator is source).
14584 //----------------------------- CONFIG2L Options -------------------------------
14586 #define _PWRT_ON_2L 0xFE // PWRT enabled.
14587 #define _PWRT_OFF_2L 0xFF // PWRT disabled.
14588 #define _BOR_OFF_2L 0xFD // Brown-out Reset disabled.
14589 #define _BOR_ON_2L 0xFF // Brown-out Reset enabled.
14590 #define _BORV_45_2L 0xF3 // VBOR set to 4.5V.
14591 #define _BORV_42_2L 0xF7 // VBOR set to 4.2V.
14592 #define _BORV_27_2L 0xFB // VBOR set to 2.7V.
14593 #define _BORV_20_2L 0xFF // VBOR set to 2.0V.
14595 //----------------------------- CONFIG2H Options -------------------------------
14597 #define _WDT_OFF_2H 0xFE // WDT disabled (control is placed on the SWDTEN bit).
14598 #define _WDT_ON_2H 0xFF // WDT enabled.
14599 #define _WDTPS_1_2H 0xE1 // 1:1.
14600 #define _WDTPS_2_2H 0xE3 // 1:2.
14601 #define _WDTPS_4_2H 0xE5 // 1:4.
14602 #define _WDTPS_8_2H 0xE7 // 1:8.
14603 #define _WDTPS_16_2H 0xE9 // 1:16.
14604 #define _WDTPS_32_2H 0xEB // 1:32.
14605 #define _WDTPS_64_2H 0xED // 1:64.
14606 #define _WDTPS_128_2H 0xEF // 1:128.
14607 #define _WDTPS_256_2H 0xF1 // 1:256.
14608 #define _WDTPS_512_2H 0xF3 // 1:512.
14609 #define _WDTPS_1024_2H 0xF5 // 1:1024.
14610 #define _WDTPS_2048_2H 0xF7 // 1:2048.
14611 #define _WDTPS_4096_2H 0xF9 // 1:4096.
14612 #define _WDTPS_8192_2H 0xFB // 1:8192.
14613 #define _WDTPS_16384_2H 0xFD // 1:16384.
14614 #define _WDTPS_32768_2H 0xFF // 1:32768.
14616 //----------------------------- CONFIG3L Options -------------------------------
14618 #define _MODE_EM_3L 0xFC // Extended Microcontroller mode.
14619 #define _MODE_MPB_3L 0xFD // Microprocessor with Boot Block mode.
14620 #define _MODE_MP_3L 0xFE // Microprocessor mode.
14621 #define _MODE_MC_3L 0xFF // Microcontroller mode.
14622 #define _WAIT_ON_3L 0x7F // Wait selections for table reads and table writes are determined by WAIT1:WAIT0 bits (MEMCOM<5:4>).
14623 #define _WAIT_OFF_3L 0xFF // Wait selections unavailable for table reads and table writes.
14625 //----------------------------- CONFIG3H Options -------------------------------
14627 #define _CCP2MX_OFF_3H 0xFE // CCP2 is multiplexed with RB3 in Extended Microcontroller, Microprocessor or Microprocessor with Boot Block mode. Or with RE7 in Microcontroller mode.
14628 #define _CCP2MX_ON_3H 0xFF // CCP2 input/output is multiplexed with RC1.
14629 #define _ECCPMX_PORTH_3H 0xFD // P1B, P1C are multiplexed with RH7, RH6.
14630 #define _ECCPMX_PORTE_3H 0xFF // P1B, P1C are multiplexed with RE6, RE5.
14631 #define _MCLRE_OFF_3H 0x7F // RG5 input enabled, MCLR disabled.
14632 #define _MCLRE_ON_3H 0xFF // MCLR pin enabled, RG5 input pin disabled.
14634 //----------------------------- CONFIG4L Options -------------------------------
14636 #define _STVR_OFF_4L 0xFE // Stack full/underflow will not cause Reset.
14637 #define _STVR_ON_4L 0xFF // Stack full/underflow will cause Reset.
14638 #define _LVP_OFF_4L 0xFB // Low-voltage ICSP disabled.
14639 #define _LVP_ON_4L 0xFF // Low-voltage ICSP enabled.
14640 #define _DEBUG_ON_4L 0x7F // Background debugger enabled. RB6 and RB7 are dedicated to in-circuit debug.
14641 #define _DEBUG_OFF_4L 0xFF // Background debugger disabled. RB6 and RB7 configured as general purpose I/O pins.
14643 //----------------------------- CONFIG5L Options -------------------------------
14645 #define _CP0_ON_5L 0xFE // Block 0 (000800-003FFFh) code-protected.
14646 #define _CP0_OFF_5L 0xFF // Block 0 (000800-003FFFh) not code-protected.
14647 #define _CP1_ON_5L 0xFD // Block 1 (004000-007FFFh) code-protected.
14648 #define _CP1_OFF_5L 0xFF // Block 1 (004000-007FFFh) not code-protected.
14649 #define _CP2_ON_5L 0xFB // Block 2 (008000-00BFFFh) code-protected.
14650 #define _CP2_OFF_5L 0xFF // Block 2 (008000-00BFFFh) not code-protected.
14652 //----------------------------- CONFIG5H Options -------------------------------
14654 #define _CPB_ON_5H 0xBF // Boot block (000000-0007FFh) code-protected.
14655 #define _CPB_OFF_5H 0xFF // Boot block (000000-0007FFh) not code-protected.
14656 #define _CPD_ON_5H 0x7F // Data EEPROM code-protected.
14657 #define _CPD_OFF_5H 0xFF // Data EEPROM not code-protected.
14659 //----------------------------- CONFIG6L Options -------------------------------
14661 #define _WRT0_ON_6L 0xFE // Block 0 (000800-003FFFh) write-protected.
14662 #define _WRT0_OFF_6L 0xFF // Block 0 (000800-003FFFh) not write-protected.
14663 #define _WRT1_ON_6L 0xFD // Block 1 (004000-007FFFh) write-protected.
14664 #define _WRT1_OFF_6L 0xFF // Block 1 (004000-007FFFh) not write-protected.
14665 #define _WRT2_ON_6L 0xFB // Block 2 (008000-00BFFFh) write-protected.
14666 #define _WRT2_OFF_6L 0xFF // Block 2 (008000-00BFFFh) not write-protected.
14668 //----------------------------- CONFIG6H Options -------------------------------
14670 #define _WRTC_ON_6H 0xDF // Configuration registers (300000-3000FFh) write-protected.
14671 #define _WRTC_OFF_6H 0xFF // Configuration registers (300000-3000FFh) not write-protected.
14672 #define _WRTB_ON_6H 0xBF // Boot block (000000-0007FFh) write-protected.
14673 #define _WRTB_OFF_6H 0xFF // Boot block (000000-0007FFh) not write-protected.
14674 #define _WRTD_ON_6H 0x7F // Data EEPROM write-protected.
14675 #define _WRTD_OFF_6H 0xFF // Data EEPROM not write-protected.
14677 //----------------------------- CONFIG7L Options -------------------------------
14679 #define _EBTR0_ON_7L 0xFE // Block 0 (000800-003FFFh) protected from table reads executed in other blocks.
14680 #define _EBTR0_OFF_7L 0xFF // Block 0 (000800-003FFFh) not protected from table reads executed in other blocks.
14681 #define _EBTR1_ON_7L 0xFD // Block 1 (004000-007FFFh) protected from table reads executed in other blocks.
14682 #define _EBTR1_OFF_7L 0xFF // Block 1 (004000-007FFFh) not protected from table reads executed in other blocks.
14683 #define _EBTR2_ON_7L 0xFB // Block 2 (008000-00BFFFh) protected from table reads executed in other blocks.
14684 #define _EBTR2_OFF_7L 0xFF // Block 2 (008000-00BFFFh) not protected from table reads executed in other blocks.
14686 //----------------------------- CONFIG7H Options -------------------------------
14688 #define _EBTRB_ON_7H 0xBF // Boot block (000000-0007FFh) protected from table reads executed in other blocks.
14689 #define _EBTRB_OFF_7H 0xFF // Boot block (000000-0007FFh) not protected from table reads executed in other blocks.
14691 //==============================================================================
14693 #define __DEVID1 0x3FFFFE
14694 #define __DEVID2 0x3FFFFF
14696 #define __IDLOC0 0x200000
14697 #define __IDLOC1 0x200001
14698 #define __IDLOC2 0x200002
14699 #define __IDLOC3 0x200003
14700 #define __IDLOC4 0x200004
14701 #define __IDLOC5 0x200005
14702 #define __IDLOC6 0x200006
14703 #define __IDLOC7 0x200007
14705 #endif // #ifndef __PIC18F8585_H__