1        LIST
2
3;==========================================================================
4; Build date : Oct 21 2015
5;  MPASM PIC12F752 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 PIC12F752 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 /PIC12F752
22;       2. LIST directive in the source file
23;               LIST   P=PIC12F752
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 __12F752
34           MESSG "Processor-header file mismatch.  Verify selected processor."
35        ENDIF
36
37
38
39;==========================================================================
40;
41;       Register Definitions
42;
43;==========================================================================
44
45W                EQU  H'0000'
46F                EQU  H'0001'
47
48;----- Register Files -----------------------------------------------------
49
50;-----Bank0------------------
51INDF             EQU  H'0000'
52TMR0             EQU  H'0001'
53PCL              EQU  H'0002'
54STATUS           EQU  H'0003'
55FSR              EQU  H'0004'
56PORTA            EQU  H'0005'
57IOCAF            EQU  H'0008'
58PCLATH           EQU  H'000A'
59INTCON           EQU  H'000B'
60PIR1             EQU  H'000C'
61PIR2             EQU  H'000D'
62TMR1             EQU  H'000F'
63TMR1L            EQU  H'000F'
64TMR1H            EQU  H'0010'
65T1CON            EQU  H'0011'
66T1GCON           EQU  H'0012'
67CCPR1            EQU  H'0013'
68CCPR1L           EQU  H'0013'
69CCPR1H           EQU  H'0014'
70CCP1CON          EQU  H'0015'
71ADRES            EQU  H'001C'
72ADRESL           EQU  H'001C'
73ADRESH           EQU  H'001D'
74ADCON0           EQU  H'001E'
75ADCON1           EQU  H'001F'
76
77;-----Bank1------------------
78OPTION_REG       EQU  H'0081'
79TRISA            EQU  H'0085'
80IOCAP            EQU  H'0088'
81PIE1             EQU  H'008C'
82PIE2             EQU  H'008D'
83OSCCON           EQU  H'008F'
84FVRCON           EQU  H'0090'
85DACCON0          EQU  H'0091'
86DACCON1          EQU  H'0092'
87C2CON0           EQU  H'009B'
88CM2CON0          EQU  H'009B'
89C2CON1           EQU  H'009C'
90CM2CON1          EQU  H'009C'
91C1CON0           EQU  H'009D'
92CM1CON0          EQU  H'009D'
93C1CON1           EQU  H'009E'
94CM1CON1          EQU  H'009E'
95CMOUT            EQU  H'009F'
96MCOUT            EQU  H'009F'
97
98;-----Bank2------------------
99LATA             EQU  H'0105'
100IOCAN            EQU  H'0108'
101WPUA             EQU  H'010C'
102SLRCONA          EQU  H'010D'
103PCON             EQU  H'010F'
104TMR2             EQU  H'0110'
105PR2              EQU  H'0111'
106T2CON            EQU  H'0112'
107HLTMR1           EQU  H'0113'
108HLTPR1           EQU  H'0114'
109HLT1CON0         EQU  H'0115'
110HLT1CON1         EQU  H'0116'
111
112;-----Bank3------------------
113ANSELA           EQU  H'0185'
114APFCON           EQU  H'0188'
115OSCTUNE          EQU  H'0189'
116PMCON1           EQU  H'018C'
117PMCON2           EQU  H'018D'
118PMADR            EQU  H'018E'
119PMADRL           EQU  H'018E'
120PMADRH           EQU  H'018F'
121PMDAT            EQU  H'0190'
122PMDATL           EQU  H'0190'
123PMDATH           EQU  H'0191'
124COG1PH           EQU  H'0192'
125COG1BLK          EQU  H'0193'
126COG1DB           EQU  H'0194'
127COG1CON0         EQU  H'0195'
128COG1CON1         EQU  H'0196'
129COG1ASD          EQU  H'0197'
130
131;----- STATUS Bits -----------------------------------------------------
132C                EQU  H'0000'
133DC               EQU  H'0001'
134Z                EQU  H'0002'
135NOT_PD           EQU  H'0003'
136NOT_TO           EQU  H'0004'
137RP0              EQU  H'0005'
138RP1              EQU  H'0006'
139IRP              EQU  H'0007'
140
141
142;----- PORTA Bits -----------------------------------------------------
143RA0              EQU  H'0000'
144RA1              EQU  H'0001'
145RA2              EQU  H'0002'
146RA3              EQU  H'0003'
147RA4              EQU  H'0004'
148RA5              EQU  H'0005'
149
150
151;----- IOCAF Bits -----------------------------------------------------
152IOCAF0           EQU  H'0000'
153IOCAF1           EQU  H'0001'
154IOCAF2           EQU  H'0002'
155IOCAF3           EQU  H'0003'
156IOCAF4           EQU  H'0004'
157IOCAF5           EQU  H'0005'
158
159
160;----- INTCON Bits -----------------------------------------------------
161IOCIF            EQU  H'0000'
162INTF             EQU  H'0001'
163T0IF             EQU  H'0002'
164IOCIE            EQU  H'0003'
165INTE             EQU  H'0004'
166T0IE             EQU  H'0005'
167PEIE             EQU  H'0006'
168GIE              EQU  H'0007'
169
170
171;----- PIR1 Bits -----------------------------------------------------
172TMR1IF           EQU  H'0000'
173TMR2IF           EQU  H'0001'
174HLTMR1IF         EQU  H'0002'
175ADIF             EQU  H'0006'
176TMR1GIF          EQU  H'0007'
177
178
179;----- PIR2 Bits -----------------------------------------------------
180CCP1IF           EQU  H'0000'
181COG1IF           EQU  H'0002'
182C1IF             EQU  H'0004'
183C2IF             EQU  H'0005'
184
185
186;----- T1CON Bits -----------------------------------------------------
187TMR1ON           EQU  H'0000'
188NOT_T1SYNC       EQU  H'0002'
189
190T1CKPS0          EQU  H'0004'
191T1CKPS1          EQU  H'0005'
192TMR1CS0          EQU  H'0006'
193TMR1CS1          EQU  H'0007'
194
195
196;----- T1GCON Bits -----------------------------------------------------
197T1GVAL           EQU  H'0002'
198T1GGO_NOT_DONE   EQU  H'0003'
199T1GSPM           EQU  H'0004'
200T1GTM            EQU  H'0005'
201T1GPOL           EQU  H'0006'
202TMR1GE           EQU  H'0007'
203
204T1GSS0           EQU  H'0000'
205T1GSS1           EQU  H'0001'
206T1GGO            EQU  H'0003'
207
208
209;----- CCP1CON Bits -----------------------------------------------------
210CCP1M0           EQU  H'0000'
211CCP1M1           EQU  H'0001'
212CCP1M2           EQU  H'0002'
213CCP1M3           EQU  H'0003'
214DC1B0            EQU  H'0004'
215DC1B1            EQU  H'0005'
216
217
218;----- ADCON0 Bits -----------------------------------------------------
219ADON             EQU  H'0000'
220GO_NOT_DONE      EQU  H'0001'
221VCFG             EQU  H'0006'
222ADFM             EQU  H'0007'
223
224CHS0             EQU  H'0002'
225CHS1             EQU  H'0003'
226CHS2             EQU  H'0004'
227CHS3             EQU  H'0005'
228
229
230;----- ADCON1 Bits -----------------------------------------------------
231ADCS0            EQU  H'0004'
232ADCS1            EQU  H'0005'
233ADCS2            EQU  H'0006'
234
235
236;----- OPTION_REG Bits -----------------------------------------------------
237PSA              EQU  H'0003'
238T0SE             EQU  H'0004'
239T0CS             EQU  H'0005'
240INTEDG           EQU  H'0006'
241NOT_RAPU         EQU  H'0007'
242
243PS0              EQU  H'0000'
244PS1              EQU  H'0001'
245PS2              EQU  H'0002'
246
247
248;----- TRISA Bits -----------------------------------------------------
249TRISA0           EQU  H'0000'
250TRISA1           EQU  H'0001'
251TRISA2           EQU  H'0002'
252TRISA3           EQU  H'0003'
253TRISA4           EQU  H'0004'
254TRISA5           EQU  H'0005'
255
256
257;----- IOCAP Bits -----------------------------------------------------
258IOCAP0           EQU  H'0000'
259IOCAP1           EQU  H'0001'
260IOCAP2           EQU  H'0002'
261IOCAP3           EQU  H'0003'
262IOCAP4           EQU  H'0004'
263IOCAP5           EQU  H'0005'
264
265
266;----- PIE1 Bits -----------------------------------------------------
267TMR1IE           EQU  H'0000'
268TMR2IE           EQU  H'0001'
269HLTMR1IE         EQU  H'0002'
270ADIE             EQU  H'0006'
271TMR1GIE          EQU  H'0007'
272
273
274;----- PIE2 Bits -----------------------------------------------------
275CCP1IE           EQU  H'0000'
276COG1IE           EQU  H'0002'
277C1IE             EQU  H'0004'
278C2IE             EQU  H'0005'
279
280
281;----- OSCCON Bits -----------------------------------------------------
282LTS              EQU  H'0001'
283HTS              EQU  H'0002'
284
285IRCF0            EQU  H'0004'
286IRCF1            EQU  H'0005'
287
288
289;----- FVRCON Bits -----------------------------------------------------
290FVRBUFSS         EQU  H'0004'
291FVRBUFEN         EQU  H'0005'
292FVRRDY           EQU  H'0006'
293FVREN            EQU  H'0007'
294
295
296;----- DACCON0 Bits -----------------------------------------------------
297DACPSS0          EQU  H'0002'
298DACOE            EQU  H'0005'
299DACRNG           EQU  H'0006'
300DACEN            EQU  H'0007'
301
302
303;----- DACCON1 Bits -----------------------------------------------------
304DACR0            EQU  H'0000'
305DACR1            EQU  H'0001'
306DACR2            EQU  H'0002'
307DACR3            EQU  H'0003'
308DACR4            EQU  H'0004'
309
310
311;----- C2CON0 Bits -----------------------------------------------------
312C2SYNC           EQU  H'0000'
313C2HYS            EQU  H'0001'
314C2SP             EQU  H'0002'
315C2ZLF            EQU  H'0003'
316C2POL            EQU  H'0004'
317C2OE             EQU  H'0005'
318C2OUT            EQU  H'0006'
319C2ON             EQU  H'0007'
320
321
322;----- CM2CON0 Bits -----------------------------------------------------
323C2SYNC           EQU  H'0000'
324C2HYS            EQU  H'0001'
325C2SP             EQU  H'0002'
326C2ZLF            EQU  H'0003'
327C2POL            EQU  H'0004'
328C2OE             EQU  H'0005'
329C2OUT            EQU  H'0006'
330C2ON             EQU  H'0007'
331
332
333;----- C2CON1 Bits -----------------------------------------------------
334C2NCH0           EQU  H'0000'
335C2INTN           EQU  H'0006'
336C2INTP           EQU  H'0007'
337
338C2PCH0           EQU  H'0004'
339C2PCH1           EQU  H'0005'
340
341
342;----- CM2CON1 Bits -----------------------------------------------------
343C2NCH0           EQU  H'0000'
344C2INTN           EQU  H'0006'
345C2INTP           EQU  H'0007'
346
347C2PCH0           EQU  H'0004'
348C2PCH1           EQU  H'0005'
349
350
351;----- C1CON0 Bits -----------------------------------------------------
352C1SYNC           EQU  H'0000'
353C1HYS            EQU  H'0001'
354C1SP             EQU  H'0002'
355C1ZLF            EQU  H'0003'
356C1POL            EQU  H'0004'
357C1OE             EQU  H'0005'
358C1OUT            EQU  H'0006'
359C1ON             EQU  H'0007'
360
361
362;----- CM1CON0 Bits -----------------------------------------------------
363C1SYNC           EQU  H'0000'
364C1HYS            EQU  H'0001'
365C1SP             EQU  H'0002'
366C1ZLF            EQU  H'0003'
367C1POL            EQU  H'0004'
368C1OE             EQU  H'0005'
369C1OUT            EQU  H'0006'
370C1ON             EQU  H'0007'
371
372
373;----- C1CON1 Bits -----------------------------------------------------
374C1NCH0           EQU  H'0000'
375C1INTN           EQU  H'0006'
376C1INTP           EQU  H'0007'
377
378C1PCH0           EQU  H'0004'
379C1PCH1           EQU  H'0005'
380
381
382;----- CM1CON1 Bits -----------------------------------------------------
383C1NCH0           EQU  H'0000'
384C1INTN           EQU  H'0006'
385C1INTP           EQU  H'0007'
386
387C1PCH0           EQU  H'0004'
388C1PCH1           EQU  H'0005'
389
390
391;----- CMOUT Bits -----------------------------------------------------
392MCOUT1           EQU  H'0000'
393MCOUT2           EQU  H'0001'
394
395
396;----- MCOUT Bits -----------------------------------------------------
397MCOUT1           EQU  H'0000'
398MCOUT2           EQU  H'0001'
399
400
401;----- LATA Bits -----------------------------------------------------
402LATA0            EQU  H'0000'
403LATA1            EQU  H'0001'
404LATA2            EQU  H'0002'
405LATA4            EQU  H'0004'
406LATA5            EQU  H'0005'
407
408
409;----- IOCAN Bits -----------------------------------------------------
410IOCAN0           EQU  H'0000'
411IOCAN1           EQU  H'0001'
412IOCAN2           EQU  H'0002'
413IOCAN3           EQU  H'0003'
414IOCAN4           EQU  H'0004'
415IOCAN5           EQU  H'0005'
416
417
418;----- WPUA Bits -----------------------------------------------------
419WPUA0            EQU  H'0000'
420WPUA1            EQU  H'0001'
421WPUA2            EQU  H'0002'
422WPUA3            EQU  H'0003'
423WPUA4            EQU  H'0004'
424WPUA5            EQU  H'0005'
425
426
427;----- SLRCONA Bits -----------------------------------------------------
428SLRA0            EQU  H'0000'
429SLRA2            EQU  H'0002'
430
431
432;----- PCON Bits -----------------------------------------------------
433NOT_BOR          EQU  H'0000'
434NOT_POR          EQU  H'0001'
435
436
437;----- T2CON Bits -----------------------------------------------------
438TMR2ON           EQU  H'0002'
439
440T2CKPS0          EQU  H'0000'
441T2CKPS1          EQU  H'0001'
442T2OUTPS0         EQU  H'0003'
443T2OUTPS1         EQU  H'0004'
444T2OUTPS2         EQU  H'0005'
445T2OUTPS3         EQU  H'0006'
446
447
448;----- HLT1CON0 Bits -----------------------------------------------------
449H1ON             EQU  H'0002'
450
451H1CKPS0          EQU  H'0000'
452H1CKPS1          EQU  H'0001'
453H1OUTPS0         EQU  H'0003'
454H1OUTPS1         EQU  H'0004'
455H1OUTPS2         EQU  H'0005'
456H1OUTPS3         EQU  H'0006'
457
458
459;----- HLT1CON1 Bits -----------------------------------------------------
460H1REREN          EQU  H'0000'
461H1FEREN          EQU  H'0001'
462
463H1ERS0           EQU  H'0002'
464H1ERS1           EQU  H'0003'
465H1ERS2           EQU  H'0004'
466
467
468;----- ANSELA Bits -----------------------------------------------------
469ANSA0            EQU  H'0000'
470ANSA1            EQU  H'0001'
471ANSA2            EQU  H'0002'
472ANSA4            EQU  H'0004'
473ANSA5            EQU  H'0005'
474
475
476;----- APFCON Bits -----------------------------------------------------
477COG1O0SEL        EQU  H'0000'
478COG1O1SEL        EQU  H'0001'
479COG1FSEL         EQU  H'0002'
480T1GSEL           EQU  H'0004'
481
482
483;----- OSCTUNE Bits -----------------------------------------------------
484TUN0             EQU  H'0000'
485TUN1             EQU  H'0001'
486TUN2             EQU  H'0002'
487TUN3             EQU  H'0003'
488TUN4             EQU  H'0004'
489
490
491;----- PMCON1 Bits -----------------------------------------------------
492RD               EQU  H'0000'
493WR               EQU  H'0001'
494WREN             EQU  H'0002'
495
496
497;----- COG1PH Bits -----------------------------------------------------
498G1PH0            EQU  H'0000'
499G1PH1            EQU  H'0001'
500G1PH2            EQU  H'0002'
501G1PH3            EQU  H'0003'
502
503
504;----- COG1BLK Bits -----------------------------------------------------
505G1BLKF0          EQU  H'0000'
506G1BLKF1          EQU  H'0001'
507G1BLKF2          EQU  H'0002'
508G1BLKF3          EQU  H'0003'
509G1BLKR0          EQU  H'0004'
510G1BLKR1          EQU  H'0005'
511G1BLKR2          EQU  H'0006'
512G1BLKR3          EQU  H'0007'
513
514
515;----- COG1DB Bits -----------------------------------------------------
516G1DBF0           EQU  H'0000'
517G1DBF1           EQU  H'0001'
518G1DBF2           EQU  H'0002'
519G1DBF3           EQU  H'0003'
520G1BDR0           EQU  H'0004'
521G1BDR1           EQU  H'0005'
522G1BDR2           EQU  H'0006'
523G1BDR3           EQU  H'0007'
524
525
526;----- COG1CON0 Bits -----------------------------------------------------
527G1LD             EQU  H'0002'
528G1POL0           EQU  H'0003'
529G1POL1           EQU  H'0004'
530G1OE0            EQU  H'0005'
531G1OE1            EQU  H'0006'
532G1EN             EQU  H'0007'
533
534G1CS0            EQU  H'0000'
535G1CS1            EQU  H'0001'
536
537
538;----- COG1CON1 Bits -----------------------------------------------------
539G1RSIM           EQU  H'0006'
540G1FSIM           EQU  H'0007'
541
542G1RS0            EQU  H'0000'
543G1RS1            EQU  H'0001'
544G1RS2            EQU  H'0002'
545G1FS0            EQU  H'0003'
546G1FS1            EQU  H'0004'
547G1FS2            EQU  H'0005'
548
549
550;----- COG1ASD Bits -----------------------------------------------------
551G1ASDSFLT        EQU  H'0000'
552G1ASDSC1         EQU  H'0001'
553G1ASDSC2         EQU  H'0002'
554G1ASDSHLT        EQU  H'0003'
555G1ASDL0          EQU  H'0004'
556G1ASDL1          EQU  H'0005'
557G1ARSEN          EQU  H'0006'
558G1ASDE           EQU  H'0007'
559
560
561
562
563;==========================================================================
564;
565;       RAM Definitions
566;
567;==========================================================================
568       __MAXRAM  H'01FF'
569       __BADRAM  H'0006'-H'0007'
570       __BADRAM  H'0009'
571       __BADRAM  H'000E'
572       __BADRAM  H'0016'-H'001B'
573       __BADRAM  H'0020'-H'003F'
574       __BADRAM  H'0086'-H'0087'
575       __BADRAM  H'0089'
576       __BADRAM  H'008E'
577       __BADRAM  H'0093'-H'009A'
578       __BADRAM  H'00A0'-H'00EF'
579       __BADRAM  H'0106'-H'0107'
580       __BADRAM  H'0109'
581       __BADRAM  H'010E'
582       __BADRAM  H'0117'-H'011F'
583       __BADRAM  H'0120'-H'016F'
584       __BADRAM  H'0186'-H'0187'
585       __BADRAM  H'0198'-H'019F'
586       __BADRAM  H'01A0'-H'01EF'
587
588;==========================================================================
589;
590;       Configuration Bits
591;
592;   NAME            Address
593;   CONFIG            2007h
594;
595;==========================================================================
596
597; The following is an assignment of address values for all of the
598; configuration registers for the purpose of table reads
599_CONFIG          EQU  H'2007'
600
601;----- CONFIG Options --------------------------------------------------
602_FOSC0_INT           EQU  H'3FFE'    ; Internal oscillator mode.  I/O function on RA5/CLKIN
603_FOSC0_EC            EQU  H'3FFF'    ; EC oscillator mode.  CLKIN function on RA5/CLKIN
604
605_WDTE_OFF            EQU  H'3FF7'    ; Watchdog Timer disabled
606_WDTE_ON             EQU  H'3FFF'    ; Watchdog Timer enabled
607
608_PWRTE_ON            EQU  H'3FEF'    ; Power-up Timer enabled
609_PWRTE_OFF           EQU  H'3FFF'    ; Power-up Timer disabled
610
611_MCLRE_OFF           EQU  H'3FDF'    ; MCLR pin is alternate function
612_MCLRE_ON            EQU  H'3FFF'    ; MCLR pin is MCLR function with internal weak pullup
613
614_CP_ON               EQU  H'3FBF'    ; Program memory code protection is enabled
615_CP_OFF              EQU  H'3FFF'    ; Program memory code protection is disabled
616
617_BOREN_DIS           EQU  H'3CFF'    ; BOR disabled
618_BOREN_SLEEP_DIS     EQU  H'3EFF'    ; BOR enabled during operation and disabled in Sleep
619_BOREN_EN            EQU  H'3FFF'    ; BOR enabled
620
621_WRT_ALL             EQU  H'33FF'    ; 000h to 3FFh self-write protected
622_WRT_HALF            EQU  H'37FF'    ; 000h to 1FFh self-write protected
623_WRT_FOURTH          EQU  H'3BFF'    ; 000h to 0FFh self-write protected
624_WRT_OFF             EQU  H'3FFF'    ; Flash self-write protection off
625
626_CLKOUTEN_ON         EQU  H'2FFF'    ; CLKOUT function enabled.  CLKOUT pin is CLKOUT
627_CLKOUTEN_OFF        EQU  H'3FFF'    ; CLKOUT function disabled.  CLKOUT pin acts as I/O
628
629;----- DEVID Equates --------------------------------------------------
630_DEVID1          EQU  H'2006'
631
632;----- IDLOC Equates --------------------------------------------------
633_IDLOC0          EQU  H'2000'
634_IDLOC1          EQU  H'2001'
635_IDLOC2          EQU  H'2002'
636_IDLOC3          EQU  H'2003'
637
638        LIST
639