1        LIST
2
3;==========================================================================
4; Build date : Oct 21 2015
5;  MPASM PIC18F2439 processor include
6;
7;  (c) Copyright 1999-2015 Microchip Technology, All rights reserved
8;==========================================================================
9
10        NOLIST
11
12;==========================================================================
13;  This header file defines configurations, registers, and other useful
14;  bits of information for the PIC18F2439 microcontroller.  These names
15;  are taken to match the data sheets as closely as possible.
16;
17;  Note that the processor must be selected before this file is included.
18;  The processor may be selected the following ways:
19;
20;       1. Command line switch:
21;               C:\MPASM MYFILE.ASM /PIC18F2439
22;       2. LIST directive in the source file
23;               LIST   P=PIC18F2439
24;       3. Processor Type entry in the MPASM full-screen interface
25;       4. Setting the processor in the MPLAB Project Dialog
26;==========================================================================
27
28;==========================================================================
29;
30;       Verify Processor
31;
32;==========================================================================
33        IFNDEF __18F2439
34           MESSG "Processor-header file mismatch.  Verify selected processor."
35        ENDIF
36
37;==========================================================================
38;       18xxxx Family        EQUates
39;==========================================================================
40FSR0            EQU 0
41FSR1            EQU 1
42FSR2            EQU 2
43
44FAST            EQU 1
45
46W               EQU 0
47A               EQU 0
48ACCESS          EQU 0
49BANKED          EQU 1
50;==========================================================================
51
52;==========================================================================
53;       16Cxxx/17Cxxx Substitutions
54;==========================================================================
55  #define DDRA  TRISA      ; PIC17Cxxx SFR substitution
56  #define DDRB  TRISB      ; PIC17Cxxx SFR substitution
57  #define DDRC  TRISC      ; PIC17Cxxx SFR substitution
58  #define DDRD  TRISD      ; PIC17Cxxx SFR substitution
59  #define DDRE  TRISE      ; PIC17Cxxx SFR substitution
60
61;==========================================================================
62;
63;       Register Definitions
64;
65;==========================================================================
66
67;----- Register Files -----------------------------------------------------
68PORTA            EQU  H'0F80'
69PORTB            EQU  H'0F81'
70PORTC            EQU  H'0F82'
71LATA             EQU  H'0F89'
72LATB             EQU  H'0F8A'
73LATC             EQU  H'0F8B'
74DDRA             EQU  H'0F92'
75TRISA            EQU  H'0F92'
76DDRB             EQU  H'0F93'
77TRISB            EQU  H'0F93'
78DDRC             EQU  H'0F94'
79TRISC            EQU  H'0F94'
80PIE1             EQU  H'0F9D'
81PIR1             EQU  H'0F9E'
82IPR1             EQU  H'0F9F'
83PIE2             EQU  H'0FA0'
84PIR2             EQU  H'0FA1'
85IPR2             EQU  H'0FA2'
86EECON1           EQU  H'0FA6'
87EECON2           EQU  H'0FA7'
88EEDATA           EQU  H'0FA8'
89EEADR            EQU  H'0FA9'
90RCSTA            EQU  H'0FAB'
91TXSTA            EQU  H'0FAC'
92TXREG            EQU  H'0FAD'
93RCREG            EQU  H'0FAE'
94SPBRG            EQU  H'0FAF'
95T3CON            EQU  H'0FB1'
96TMR3             EQU  H'0FB2'
97TMR3L            EQU  H'0FB2'
98TMR3H            EQU  H'0FB3'
99CCP2CON          EQU  H'0FBA'
100CCPR2            EQU  H'0FBB'
101CCPR2L           EQU  H'0FBB'
102CCPR2H           EQU  H'0FBC'
103CCP1CON          EQU  H'0FBD'
104CCPR1            EQU  H'0FBE'
105CCPR1L           EQU  H'0FBE'
106CCPR1H           EQU  H'0FBF'
107ADCON1           EQU  H'0FC1'
108ADCON0           EQU  H'0FC2'
109ADRES            EQU  H'0FC3'
110ADRESL           EQU  H'0FC3'
111ADRESH           EQU  H'0FC4'
112SSPCON2          EQU  H'0FC5'
113SSPCON1          EQU  H'0FC6'
114SSPSTAT          EQU  H'0FC7'
115SSPADD           EQU  H'0FC8'
116SSPBUF           EQU  H'0FC9'
117T2CON            EQU  H'0FCA'
118PR2              EQU  H'0FCB'
119TMR2             EQU  H'0FCC'
120T1CON            EQU  H'0FCD'
121TMR1             EQU  H'0FCE'
122TMR1L            EQU  H'0FCE'
123TMR1H            EQU  H'0FCF'
124RCON             EQU  H'0FD0'
125WDTCON           EQU  H'0FD1'
126LVDCON           EQU  H'0FD2'
127OSCCON           EQU  H'0FD3'
128T0CON            EQU  H'0FD5'
129TMR0             EQU  H'0FD6'
130TMR0L            EQU  H'0FD6'
131TMR0H            EQU  H'0FD7'
132STATUS           EQU  H'0FD8'
133FSR2L            EQU  H'0FD9'
134FSR2H            EQU  H'0FDA'
135PLUSW2           EQU  H'0FDB'
136PREINC2          EQU  H'0FDC'
137POSTDEC2         EQU  H'0FDD'
138POSTINC2         EQU  H'0FDE'
139INDF2            EQU  H'0FDF'
140BSR              EQU  H'0FE0'
141FSR1L            EQU  H'0FE1'
142FSR1H            EQU  H'0FE2'
143PLUSW1           EQU  H'0FE3'
144PREINC1          EQU  H'0FE4'
145POSTDEC1         EQU  H'0FE5'
146POSTINC1         EQU  H'0FE6'
147INDF1            EQU  H'0FE7'
148WREG             EQU  H'0FE8'
149FSR0L            EQU  H'0FE9'
150FSR0H            EQU  H'0FEA'
151PLUSW0           EQU  H'0FEB'
152PREINC0          EQU  H'0FEC'
153POSTDEC0         EQU  H'0FED'
154POSTINC0         EQU  H'0FEE'
155INDF0            EQU  H'0FEF'
156INTCON3          EQU  H'0FF0'
157INTCON2          EQU  H'0FF1'
158INTCON           EQU  H'0FF2'
159PROD             EQU  H'0FF3'
160PRODL            EQU  H'0FF3'
161PRODH            EQU  H'0FF4'
162TABLAT           EQU  H'0FF5'
163TBLPTR           EQU  H'0FF6'
164TBLPTRL          EQU  H'0FF6'
165TBLPTRH          EQU  H'0FF7'
166TBLPTRU          EQU  H'0FF8'
167PC               EQU  H'0FF9'
168PCL              EQU  H'0FF9'
169PCLATH           EQU  H'0FFA'
170PCLATU           EQU  H'0FFB'
171STKPTR           EQU  H'0FFC'
172TOS              EQU  H'0FFD'
173TOSL             EQU  H'0FFD'
174TOSH             EQU  H'0FFE'
175TOSU             EQU  H'0FFF'
176
177;----- PORTA Bits -----------------------------------------------------
178RA0              EQU  H'0000'
179RA1              EQU  H'0001'
180RA2              EQU  H'0002'
181RA3              EQU  H'0003'
182RA4              EQU  H'0004'
183RA5              EQU  H'0005'
184RA6              EQU  H'0006'
185
186AN0              EQU  H'0000'
187AN1              EQU  H'0001'
188AN2              EQU  H'0002'
189AN3              EQU  H'0003'
190AN4              EQU  H'0005'
191OSC2             EQU  H'0006'
192
193VREFM            EQU  H'0002'
194VREFP            EQU  H'0003'
195T0CKI            EQU  H'0004'
196SS               EQU  H'0005'
197CLK0             EQU  H'0006'
198
199LVDIN            EQU  H'0005'
200
201
202;----- PORTB Bits -----------------------------------------------------
203RB0              EQU  H'0000'
204RB1              EQU  H'0001'
205RB2              EQU  H'0002'
206RB3              EQU  H'0003'
207RB4              EQU  H'0004'
208RB5              EQU  H'0005'
209RB6              EQU  H'0006'
210RB7              EQU  H'0007'
211
212INT0             EQU  H'0000'
213INT1             EQU  H'0001'
214INT2             EQU  H'0002'
215INT3             EQU  H'0003'
216
217
218;----- PORTC Bits -----------------------------------------------------
219RC0              EQU  H'0000'
220RC3              EQU  H'0003'
221RC4              EQU  H'0004'
222RC5              EQU  H'0005'
223RC6              EQU  H'0006'
224RC7              EQU  H'0007'
225
226T1OSO            EQU  H'0000'
227T1OSI            EQU  H'0001'
228SCK              EQU  H'0003'
229SDI              EQU  H'0004'
230SDO              EQU  H'0005'
231TX               EQU  H'0006'
232RX               EQU  H'0007'
233
234T1CKI            EQU  H'0000'
235CCP2             EQU  H'0001'
236CCP1             EQU  H'0002'
237SCL              EQU  H'0003'
238SDA              EQU  H'0004'
239CK               EQU  H'0006'
240; DT is a reserved word
241; DT               EQU  H'0007'
242
243RC1              EQU  H'0001'
244RC2              EQU  H'0002'
245
246
247;----- LATA Bits -----------------------------------------------------
248LATA0            EQU  H'0000'
249LATA1            EQU  H'0001'
250LATA2            EQU  H'0002'
251LATA3            EQU  H'0003'
252LATA4            EQU  H'0004'
253LATA5            EQU  H'0005'
254LATA6            EQU  H'0006'
255
256
257;----- LATB Bits -----------------------------------------------------
258LATB0            EQU  H'0000'
259LATB1            EQU  H'0001'
260LATB2            EQU  H'0002'
261LATB3            EQU  H'0003'
262LATB4            EQU  H'0004'
263LATB5            EQU  H'0005'
264LATB6            EQU  H'0006'
265LATB7            EQU  H'0007'
266
267
268;----- LATC Bits -----------------------------------------------------
269LATC0            EQU  H'0000'
270LATC3            EQU  H'0003'
271LATC4            EQU  H'0004'
272LATC5            EQU  H'0005'
273LATC6            EQU  H'0006'
274LATC7            EQU  H'0007'
275
276LATC1            EQU  H'0001'
277LATC2            EQU  H'0002'
278
279
280;----- DDRA Bits -----------------------------------------------------
281TRISA0           EQU  H'0000'
282TRISA1           EQU  H'0001'
283TRISA2           EQU  H'0002'
284TRISA3           EQU  H'0003'
285TRISA4           EQU  H'0004'
286TRISA5           EQU  H'0005'
287TRISA6           EQU  H'0006'
288
289RA0              EQU  H'0000'
290RA1              EQU  H'0001'
291RA2              EQU  H'0002'
292RA3              EQU  H'0003'
293RA4              EQU  H'0004'
294RA5              EQU  H'0005'
295RA6              EQU  H'0006'
296RA7              EQU  H'0007'
297
298
299;----- TRISA Bits -----------------------------------------------------
300TRISA0           EQU  H'0000'
301TRISA1           EQU  H'0001'
302TRISA2           EQU  H'0002'
303TRISA3           EQU  H'0003'
304TRISA4           EQU  H'0004'
305TRISA5           EQU  H'0005'
306TRISA6           EQU  H'0006'
307
308RA0              EQU  H'0000'
309RA1              EQU  H'0001'
310RA2              EQU  H'0002'
311RA3              EQU  H'0003'
312RA4              EQU  H'0004'
313RA5              EQU  H'0005'
314RA6              EQU  H'0006'
315RA7              EQU  H'0007'
316
317
318;----- DDRB Bits -----------------------------------------------------
319TRISB0           EQU  H'0000'
320TRISB1           EQU  H'0001'
321TRISB2           EQU  H'0002'
322TRISB3           EQU  H'0003'
323TRISB4           EQU  H'0004'
324TRISB5           EQU  H'0005'
325TRISB6           EQU  H'0006'
326TRISB7           EQU  H'0007'
327
328RB0              EQU  H'0000'
329RB1              EQU  H'0001'
330RB2              EQU  H'0002'
331RB3              EQU  H'0003'
332RB4              EQU  H'0004'
333RB5              EQU  H'0005'
334RB6              EQU  H'0006'
335RB7              EQU  H'0007'
336
337
338;----- TRISB Bits -----------------------------------------------------
339TRISB0           EQU  H'0000'
340TRISB1           EQU  H'0001'
341TRISB2           EQU  H'0002'
342TRISB3           EQU  H'0003'
343TRISB4           EQU  H'0004'
344TRISB5           EQU  H'0005'
345TRISB6           EQU  H'0006'
346TRISB7           EQU  H'0007'
347
348RB0              EQU  H'0000'
349RB1              EQU  H'0001'
350RB2              EQU  H'0002'
351RB3              EQU  H'0003'
352RB4              EQU  H'0004'
353RB5              EQU  H'0005'
354RB6              EQU  H'0006'
355RB7              EQU  H'0007'
356
357
358;----- DDRC Bits -----------------------------------------------------
359TRISC0           EQU  H'0000'
360TRISC3           EQU  H'0003'
361TRISC4           EQU  H'0004'
362TRISC5           EQU  H'0005'
363TRISC6           EQU  H'0006'
364TRISC7           EQU  H'0007'
365
366RC0              EQU  H'0000'
367RC1              EQU  H'0001'
368RC2              EQU  H'0002'
369RC3              EQU  H'0003'
370RC4              EQU  H'0004'
371RC5              EQU  H'0005'
372RC6              EQU  H'0006'
373RC7              EQU  H'0007'
374
375
376;----- TRISC Bits -----------------------------------------------------
377TRISC0           EQU  H'0000'
378TRISC3           EQU  H'0003'
379TRISC4           EQU  H'0004'
380TRISC5           EQU  H'0005'
381TRISC6           EQU  H'0006'
382TRISC7           EQU  H'0007'
383
384RC0              EQU  H'0000'
385RC1              EQU  H'0001'
386RC2              EQU  H'0002'
387RC3              EQU  H'0003'
388RC4              EQU  H'0004'
389RC5              EQU  H'0005'
390RC6              EQU  H'0006'
391RC7              EQU  H'0007'
392
393
394;----- PIE1 Bits -----------------------------------------------------
395TMR1IE           EQU  H'0000'
396TMR2IE           EQU  H'0001'
397SSPIE            EQU  H'0003'
398TXIE             EQU  H'0004'
399RCIE             EQU  H'0005'
400ADIE             EQU  H'0006'
401
402CCP1IE           EQU  H'0002'
403PSPIE            EQU  H'0007'
404
405
406;----- PIR1 Bits -----------------------------------------------------
407TMR1IF           EQU  H'0000'
408TMR2IF           EQU  H'0001'
409SSPIF            EQU  H'0003'
410TXIF             EQU  H'0004'
411RCIF             EQU  H'0005'
412ADIF             EQU  H'0006'
413
414CCP1IF           EQU  H'0002'
415PSPIF            EQU  H'0007'
416
417
418;----- IPR1 Bits -----------------------------------------------------
419TMR1IP           EQU  H'0000'
420TMR2IP           EQU  H'0001'
421SSPIP            EQU  H'0003'
422TXIP             EQU  H'0004'
423RCIP             EQU  H'0005'
424ADIP             EQU  H'0006'
425
426CCP1IP           EQU  H'0002'
427PSPIP            EQU  H'0007'
428
429
430;----- PIE2 Bits -----------------------------------------------------
431TMR3IE           EQU  H'0001'
432LVDIE            EQU  H'0002'
433BCLIE            EQU  H'0003'
434EEIE             EQU  H'0004'
435
436CCP2IE           EQU  H'0000'
437
438
439;----- PIR2 Bits -----------------------------------------------------
440TMR3IF           EQU  H'0001'
441LVDIF            EQU  H'0002'
442BCLIF            EQU  H'0003'
443EEIF             EQU  H'0004'
444
445CCP2IF           EQU  H'0000'
446
447
448;----- IPR2 Bits -----------------------------------------------------
449TMR3IP           EQU  H'0001'
450LVDIP            EQU  H'0002'
451BCLIP            EQU  H'0003'
452EEIP             EQU  H'0004'
453
454CCP2IP           EQU  H'0000'
455
456
457;----- EECON1 Bits -----------------------------------------------------
458RD               EQU  H'0000'
459WR               EQU  H'0001'
460WREN             EQU  H'0002'
461WRERR            EQU  H'0003'
462FREE             EQU  H'0004'
463CFGS             EQU  H'0006'
464EEPGD            EQU  H'0007'
465
466
467;----- RCSTA Bits -----------------------------------------------------
468RX9D             EQU  H'0000'
469OERR             EQU  H'0001'
470FERR             EQU  H'0002'
471ADDEN            EQU  H'0003'
472CREN             EQU  H'0004'
473SREN             EQU  H'0005'
474RX9              EQU  H'0006'
475SPEN             EQU  H'0007'
476
477
478;----- TXSTA Bits -----------------------------------------------------
479TX9D             EQU  H'0000'
480TRMT             EQU  H'0001'
481BRGH             EQU  H'0002'
482SYNC             EQU  H'0004'
483TXEN             EQU  H'0005'
484TX9              EQU  H'0006'
485CSRC             EQU  H'0007'
486
487
488;----- T3CON Bits -----------------------------------------------------
489TMR3ON           EQU  H'0000'
490TMR3CS           EQU  H'0001'
491NOT_T3SYNC       EQU  H'0002'
492RD16             EQU  H'0007'
493
494T3SYNC           EQU  H'0002'
495T3CKPS0          EQU  H'0004'
496T3CKPS1          EQU  H'0005'
497T3CCP2           EQU  H'0006'
498
499T3CCP1           EQU  H'0003'
500
501
502;----- CCP2CON Bits -----------------------------------------------------
503CCP2M0           EQU  H'0000'
504CCP2M1           EQU  H'0001'
505CCP2M2           EQU  H'0002'
506CCP2M3           EQU  H'0003'
507CCP2Y            EQU  H'0004'
508CCP2X            EQU  H'0005'
509
510DC2B0            EQU  H'0004'
511DC2B1            EQU  H'0005'
512
513DCCPX            EQU  H'0005'
514
515
516;----- CCP1CON Bits -----------------------------------------------------
517CCP1M0           EQU  H'0000'
518CCP1M1           EQU  H'0001'
519CCP1M2           EQU  H'0002'
520CCP1M3           EQU  H'0003'
521CCP1Y            EQU  H'0004'
522CCP1X            EQU  H'0005'
523
524DC1B0            EQU  H'0004'
525DC1B1            EQU  H'0005'
526
527
528;----- ADCON1 Bits -----------------------------------------------------
529ADCS2            EQU  H'0006'
530ADFM             EQU  H'0007'
531
532PCFG0            EQU  H'0000'
533PCFG1            EQU  H'0001'
534PCFG2            EQU  H'0002'
535PCFG3            EQU  H'0003'
536
537
538;----- ADCON0 Bits -----------------------------------------------------
539ADON             EQU  H'0000'
540GO_NOT_DONE      EQU  H'0002'
541
542GO               EQU  H'0002'
543CHS0             EQU  H'0003'
544CHS1             EQU  H'0004'
545CHS2             EQU  H'0005'
546ADCS0            EQU  H'0006'
547ADCS1            EQU  H'0007'
548
549NOT_DONE         EQU  H'0002'
550
551DONE             EQU  H'0002'
552
553GO_DONE          EQU  H'0002'
554
555
556;----- SSPCON2 Bits -----------------------------------------------------
557SEN              EQU  H'0000'
558RSEN             EQU  H'0001'
559PEN              EQU  H'0002'
560RCEN             EQU  H'0003'
561ACKEN            EQU  H'0004'
562ACKDT            EQU  H'0005'
563ACKSTAT          EQU  H'0006'
564GCEN             EQU  H'0007'
565
566
567;----- SSPCON1 Bits -----------------------------------------------------
568CKP              EQU  H'0004'
569SSPEN            EQU  H'0005'
570SSPOV            EQU  H'0006'
571WCOL             EQU  H'0007'
572
573SSPM0            EQU  H'0000'
574SSPM1            EQU  H'0001'
575SSPM2            EQU  H'0002'
576SSPM3            EQU  H'0003'
577
578
579;----- SSPSTAT Bits -----------------------------------------------------
580BF               EQU  H'0000'
581UA               EQU  H'0001'
582R_NOT_W          EQU  H'0002'
583S                EQU  H'0003'
584P                EQU  H'0004'
585D_NOT_A          EQU  H'0005'
586CKE              EQU  H'0006'
587SMP              EQU  H'0007'
588
589R_W              EQU  H'0002'
590D_A              EQU  H'0005'
591
592
593;----- T2CON Bits -----------------------------------------------------
594T2CKPS0          EQU  H'0000'
595T2CKPS1          EQU  H'0001'
596TMR2ON           EQU  H'0002'
597TOUTPS0          EQU  H'0003'
598TOUTPS1          EQU  H'0004'
599TOUTPS2          EQU  H'0005'
600TOUTPS3          EQU  H'0006'
601
602
603;----- T1CON Bits -----------------------------------------------------
604TMR1ON           EQU  H'0000'
605TMR1CS           EQU  H'0001'
606NOT_T1SYNC       EQU  H'0002'
607RD16             EQU  H'0007'
608
609T1SYNC           EQU  H'0002'
610T1CKPS0          EQU  H'0004'
611T1CKPS1          EQU  H'0005'
612T1RD16           EQU  H'0007'
613
614T1OSCEN          EQU  H'0003'
615
616
617;----- RCON Bits -----------------------------------------------------
618NOT_BOR          EQU  H'0000'
619NOT_POR          EQU  H'0001'
620NOT_PD           EQU  H'0002'
621NOT_TO           EQU  H'0003'
622NOT_RI           EQU  H'0004'
623IPEN             EQU  H'0007'
624
625BOR              EQU  H'0000'
626POR              EQU  H'0001'
627PD               EQU  H'0002'
628TO               EQU  H'0003'
629RI               EQU  H'0004'
630NOT_IPEN         EQU  H'0007'
631
632
633;----- WDTCON Bits -----------------------------------------------------
634SWDTEN           EQU  H'0000'
635
636SWDTE            EQU  H'0000'
637
638
639;----- LVDCON Bits -----------------------------------------------------
640LVDEN            EQU  H'0004'
641IRVST            EQU  H'0005'
642
643LVDL0            EQU  H'0000'
644LVDL1            EQU  H'0001'
645LVDL2            EQU  H'0002'
646LVDL3            EQU  H'0003'
647
648
649;----- OSCCON Bits -----------------------------------------------------
650RESERVED         EQU  H'0000'
651
652SCS              EQU  H'0000'
653
654
655;----- T0CON Bits -----------------------------------------------------
656PSA              EQU  H'0003'
657T0SE             EQU  H'0004'
658T0CS             EQU  H'0005'
659T08BIT           EQU  H'0006'
660TMR0ON           EQU  H'0007'
661
662T0PS0            EQU  H'0000'
663T0PS1            EQU  H'0001'
664T0PS2            EQU  H'0002'
665
666
667;----- STATUS Bits -----------------------------------------------------
668C                EQU  H'0000'
669DC               EQU  H'0001'
670Z                EQU  H'0002'
671OV               EQU  H'0003'
672N                EQU  H'0004'
673
674
675;----- INTCON3 Bits -----------------------------------------------------
676INT1IF           EQU  H'0000'
677INT2IF           EQU  H'0001'
678INT1IE           EQU  H'0003'
679INT2IE           EQU  H'0004'
680INT1IP           EQU  H'0006'
681INT2IP           EQU  H'0007'
682
683INT1F            EQU  H'0000'
684INT2F            EQU  H'0001'
685INT1E            EQU  H'0003'
686INT2E            EQU  H'0004'
687INT1P            EQU  H'0006'
688INT2P            EQU  H'0007'
689
690
691;----- INTCON2 Bits -----------------------------------------------------
692RBIP             EQU  H'0000'
693TMR0IP           EQU  H'0002'
694INTEDG2          EQU  H'0004'
695INTEDG1          EQU  H'0005'
696INTEDG0          EQU  H'0006'
697NOT_RBPU         EQU  H'0007'
698
699INT3P            EQU  H'0001'
700T0IP             EQU  H'0002'
701INTEDG3          EQU  H'0003'
702RBPU             EQU  H'0007'
703
704
705;----- INTCON Bits -----------------------------------------------------
706RBIF             EQU  H'0000'
707INT0IF           EQU  H'0001'
708TMR0IF           EQU  H'0002'
709RBIE             EQU  H'0003'
710INT0IE           EQU  H'0004'
711TMR0IE           EQU  H'0005'
712PEIE_GIEL        EQU  H'0006'
713GIE_GIEH         EQU  H'0007'
714
715INT0F            EQU  H'0001'
716T0IF             EQU  H'0002'
717INT0E            EQU  H'0004'
718T0IE             EQU  H'0005'
719PEIE             EQU  H'0006'
720GIE              EQU  H'0007'
721
722GIEL             EQU  H'0006'
723GIEH             EQU  H'0007'
724
725
726;----- STKPTR Bits -----------------------------------------------------
727STKUNF           EQU  H'0006'
728STKFUL           EQU  H'0007'
729
730STKPTR0          EQU  H'0000'
731STKPTR1          EQU  H'0001'
732STKPTR2          EQU  H'0002'
733STKPTR3          EQU  H'0003'
734STKPTR4          EQU  H'0004'
735
736
737
738;==========================================================================
739;
740;       RAM Definitions
741;
742;==========================================================================
743       __MAXRAM  H'0FFF'
744       __BADRAM  H'0280'-H'0F7F'
745       __BADRAM  H'0F83'-H'0F88'
746       __BADRAM  H'0F8C'-H'0F91'
747       __BADRAM  H'0F95'-H'0F9C'
748       __BADRAM  H'0FA3'-H'0FA5'
749       __BADRAM  H'0FAA'
750       __BADRAM  H'0FB0'
751       __BADRAM  H'0FB4'-H'0FB9'
752       __BADRAM  H'0FC0'
753       __BADRAM  H'0FD4'
754
755;==========================================================================
756;
757;   IMPORTANT: For the PIC18 devices, the __CONFIG directive has been
758;              superseded by the CONFIG directive.  The following settings
759;              are available for this device.
760;
761;   Oscillator:
762;     OSC = HS             HS oscillator
763;     OSC = EC             EC oscillator w/ OSC2 configured as divide-by-4 clock output
764;     OSC = ECIO           EC oscillator w/ OSC2 configured as RA6
765;     OSC = HSPLL          HS oscillator with PLL enabled; clock frequency = (4 x FOSC)
766;
767;   Power-up Timer Enable bit:
768;     PWRT = ON            PWRT enabled
769;     PWRT = OFF           PWRT disabled
770;
771;   Brown-out Reset Enable bit:
772;     BOR = OFF            Brown-out Reset disabled
773;     BOR = ON             Brown-out Reset enabled
774;
775;   Brown-out Reset Voltage bits:
776;     BORV = 45            VBOR set to 4.5V
777;     BORV = 42            VBOR set to 4.2V
778;     BORV = 27            VBOR set to 2.7V
779;     BORV = 25            VBOR set to 2.5V
780;
781;   Watchdog Timer Enable bit:
782;     WDT = OFF            WDT disabled (control is placed on the SWDTEN bit)
783;     WDT = ON             WDT enabled
784;
785;   Watchdog Timer Postscale Select bits:
786;     WDTPS = 1            1:1
787;     WDTPS = 2            1:2
788;     WDTPS = 4            1:4
789;     WDTPS = 8            1:8
790;     WDTPS = 16           1:16
791;     WDTPS = 32           1:32
792;     WDTPS = 64           1:64
793;     WDTPS = 128          1:128
794;
795;   Stack Full/Underflow Reset Enable bit:
796;     STVR = OFF           Stack Full/Underflow will not cause RESET
797;     STVR = ON            Stack Full/Underflow will cause RESET
798;
799;   Low Voltage ICSP Enable bit:
800;     LVP = OFF            Low Voltage ICSP disabled
801;     LVP = ON             Low Voltage ICSP enabled
802;
803;   Background Debugger Enable bit:
804;     DEBUG = ON           Background Debugger enabled. RB6 and RB7 are dedicated to In-Circuit Debug.
805;     DEBUG = OFF          Background Debugger disabled. RB6 and RB7 configured as general purpose I/O pins.
806;
807;   Code Protection bit:
808;     CP0 = ON             Block 0 (000200-001FFFh) code protected
809;     CP0 = OFF            Block 0 (000200-001FFFh) not code protected
810;
811;   Code Protection bit:
812;     CP1 = ON             Block 1 (002000-003FFFh) code protected
813;     CP1 = OFF            Block 1 (002000-003FFFh) not code protected
814;
815;   Boot Block Code Protection bit:
816;     CPB = ON             Boot block (000000-0001FFh) code protected
817;     CPB = OFF            Boot block (000000-0001FFh) not code protected
818;
819;   Data EEPROM Code Protection bit:
820;     CPD = ON             Data EEPROM code protected
821;     CPD = OFF            Data EEPROM not code protected
822;
823;   Write Protection bit:
824;     WRT0 = ON            Block 0 (000200h-001FFFh) write protected
825;     WRT0 = OFF           Block 0 (000200h-001FFFh) not write protected
826;
827;   Write Protection bit:
828;     WRT1 = ON            Block 1 (002000-003FFFh) write protected
829;     WRT1 = OFF           Block 1 (002000-003FFFh) not write protected
830;
831;   Configuration Register Write Protection bit:
832;     WRTC = ON            Configuration registers (300000-3000FFh) write protected
833;     WRTC = OFF           Configuration registers (300000-3000FFh) not write protected
834;
835;   Boot Block Write Protection bit:
836;     WRTB = ON            Boot block (000000-0001FFh) write protected
837;     WRTB = OFF           Boot block (000000-0001FFh) not write protected
838;
839;   Data EEPROM Write Protection bit:
840;     WRTD = ON            Data EEPROM write protected
841;     WRTD = OFF           Data EEPROM not write protected
842;
843;   Table Read Protection bit:
844;     EBTR0 = ON           Block 0 (000200h-001FFFh) protected from Table Reads executed in other blocks
845;     EBTR0 = OFF          Block 0 (000200h-001FFFh) not protected from Table Reads executed in other blocks
846;
847;   Table Read Protection bit:
848;     EBTR1 = ON           Block 1 (002000-003FFFh) protected from Table Reads executed in other blocks
849;     EBTR1 = OFF          Block 1 (002000-003FFFh) not protected from Table Reads executed in other blocks
850;
851;   Boot Block Table Read Protection bit:
852;     EBTRB = ON           Boot block (000000-0001FFh) protected from Table Reads executed in other blocks
853;     EBTRB = OFF          Boot block (000000-0001FFh) not protected from Table Reads executed in other blocks
854;
855;==========================================================================
856;==========================================================================
857;
858;       Configuration Bits
859;
860;   NAME            Address
861;   CONFIG1H        300001h
862;   CONFIG2L        300002h
863;   CONFIG2H        300003h
864;   CONFIG4L        300006h
865;   CONFIG5L        300008h
866;   CONFIG5H        300009h
867;   CONFIG6L        30000Ah
868;   CONFIG6H        30000Bh
869;   CONFIG7L        30000Ch
870;   CONFIG7H        30000Dh
871;
872;==========================================================================
873
874; The following is an assignment of address values for all of the
875; configuration registers for the purpose of table reads
876_CONFIG1H        EQU  H'300001'
877_CONFIG2L        EQU  H'300002'
878_CONFIG2H        EQU  H'300003'
879_CONFIG4L        EQU  H'300006'
880_CONFIG5L        EQU  H'300008'
881_CONFIG5H        EQU  H'300009'
882_CONFIG6L        EQU  H'30000A'
883_CONFIG6H        EQU  H'30000B'
884_CONFIG7L        EQU  H'30000C'
885_CONFIG7H        EQU  H'30000D'
886
887;----- CONFIG1H Options --------------------------------------------------
888_OSC_HS_1H           EQU  H'FA'    ; HS oscillator
889_OSC_EC_1H           EQU  H'FC'    ; EC oscillator w/ OSC2 configured as divide-by-4 clock output
890_OSC_ECIO_1H         EQU  H'FD'    ; EC oscillator w/ OSC2 configured as RA6
891_OSC_HSPLL_1H        EQU  H'FE'    ; HS oscillator with PLL enabled; clock frequency = (4 x FOSC)
892
893;----- CONFIG2L Options --------------------------------------------------
894_PWRT_ON_2L          EQU  H'FE'    ; PWRT enabled
895_PWRT_OFF_2L         EQU  H'FF'    ; PWRT disabled
896
897_BOR_OFF_2L          EQU  H'FD'    ; Brown-out Reset disabled
898_BOR_ON_2L           EQU  H'FF'    ; Brown-out Reset enabled
899
900_BORV_45_2L          EQU  H'F3'    ; VBOR set to 4.5V
901_BORV_42_2L          EQU  H'F7'    ; VBOR set to 4.2V
902_BORV_27_2L          EQU  H'FB'    ; VBOR set to 2.7V
903_BORV_25_2L          EQU  H'FF'    ; VBOR set to 2.5V
904
905;----- CONFIG2H Options --------------------------------------------------
906_WDT_OFF_2H          EQU  H'FE'    ; WDT disabled (control is placed on the SWDTEN bit)
907_WDT_ON_2H           EQU  H'FF'    ; WDT enabled
908
909_WDTPS_1_2H          EQU  H'F1'    ; 1:1
910_WDTPS_2_2H          EQU  H'F3'    ; 1:2
911_WDTPS_4_2H          EQU  H'F5'    ; 1:4
912_WDTPS_8_2H          EQU  H'F7'    ; 1:8
913_WDTPS_16_2H         EQU  H'F9'    ; 1:16
914_WDTPS_32_2H         EQU  H'FB'    ; 1:32
915_WDTPS_64_2H         EQU  H'FD'    ; 1:64
916_WDTPS_128_2H        EQU  H'FF'    ; 1:128
917
918;----- CONFIG4L Options --------------------------------------------------
919_STVR_OFF_4L         EQU  H'FE'    ; Stack Full/Underflow will not cause RESET
920_STVR_ON_4L          EQU  H'FF'    ; Stack Full/Underflow will cause RESET
921
922_LVP_OFF_4L          EQU  H'FB'    ; Low Voltage ICSP disabled
923_LVP_ON_4L           EQU  H'FF'    ; Low Voltage ICSP enabled
924
925_DEBUG_ON_4L         EQU  H'7F'    ; Background Debugger enabled. RB6 and RB7 are dedicated to In-Circuit Debug.
926_DEBUG_OFF_4L        EQU  H'FF'    ; Background Debugger disabled. RB6 and RB7 configured as general purpose I/O pins.
927
928;----- CONFIG5L Options --------------------------------------------------
929_CP0_ON_5L           EQU  H'FE'    ; Block 0 (000200-001FFFh) code protected
930_CP0_OFF_5L          EQU  H'FF'    ; Block 0 (000200-001FFFh) not code protected
931
932_CP1_ON_5L           EQU  H'FD'    ; Block 1 (002000-003FFFh) code protected
933_CP1_OFF_5L          EQU  H'FF'    ; Block 1 (002000-003FFFh) not code protected
934
935;----- CONFIG5H Options --------------------------------------------------
936_CPB_ON_5H           EQU  H'BF'    ; Boot block (000000-0001FFh) code protected
937_CPB_OFF_5H          EQU  H'FF'    ; Boot block (000000-0001FFh) not code protected
938
939_CPD_ON_5H           EQU  H'7F'    ; Data EEPROM code protected
940_CPD_OFF_5H          EQU  H'FF'    ; Data EEPROM not code protected
941
942;----- CONFIG6L Options --------------------------------------------------
943_WRT0_ON_6L          EQU  H'FE'    ; Block 0 (000200h-001FFFh) write protected
944_WRT0_OFF_6L         EQU  H'FF'    ; Block 0 (000200h-001FFFh) not write protected
945
946_WRT1_ON_6L          EQU  H'FD'    ; Block 1 (002000-003FFFh) write protected
947_WRT1_OFF_6L         EQU  H'FF'    ; Block 1 (002000-003FFFh) not write protected
948
949;----- CONFIG6H Options --------------------------------------------------
950_WRTC_ON_6H          EQU  H'DF'    ; Configuration registers (300000-3000FFh) write protected
951_WRTC_OFF_6H         EQU  H'FF'    ; Configuration registers (300000-3000FFh) not write protected
952
953_WRTB_ON_6H          EQU  H'BF'    ; Boot block (000000-0001FFh) write protected
954_WRTB_OFF_6H         EQU  H'FF'    ; Boot block (000000-0001FFh) not write protected
955
956_WRTD_ON_6H          EQU  H'7F'    ; Data EEPROM write protected
957_WRTD_OFF_6H         EQU  H'FF'    ; Data EEPROM not write protected
958
959;----- CONFIG7L Options --------------------------------------------------
960_EBTR0_ON_7L         EQU  H'FE'    ; Block 0 (000200h-001FFFh) protected from Table Reads executed in other blocks
961_EBTR0_OFF_7L        EQU  H'FF'    ; Block 0 (000200h-001FFFh) not protected from Table Reads executed in other blocks
962
963_EBTR1_ON_7L         EQU  H'FD'    ; Block 1 (002000-003FFFh) protected from Table Reads executed in other blocks
964_EBTR1_OFF_7L        EQU  H'FF'    ; Block 1 (002000-003FFFh) not protected from Table Reads executed in other blocks
965
966;----- CONFIG7H Options --------------------------------------------------
967_EBTRB_ON_7H         EQU  H'BF'    ; Boot block (000000-0001FFh) protected from Table Reads executed in other blocks
968_EBTRB_OFF_7H        EQU  H'FF'    ; Boot block (000000-0001FFh) not protected from Table Reads executed in other blocks
969
970
971;----- DEVID Equates --------------------------------------------------
972_DEVID1          EQU  H'3FFFFE'
973_DEVID2          EQU  H'3FFFFF'
974
975;----- IDLOC Equates --------------------------------------------------
976_IDLOC0          EQU  H'200000'
977_IDLOC1          EQU  H'200001'
978_IDLOC2          EQU  H'200002'
979_IDLOC3          EQU  H'200003'
980_IDLOC4          EQU  H'200004'
981_IDLOC5          EQU  H'200005'
982_IDLOC6          EQU  H'200006'
983_IDLOC7          EQU  H'200007'
984
985        LIST
986