📄 temp.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL2
Serial number: HCPIC-42044 Mon Apr 24 21:02:12 2006
Licensed to: ONE
1 processor 16F873A
2 opt pw 79
3 psect __Z42044RS_,global,delta=1
4 psect text2,local,class=CODE,delta=2
5 psect text4,local,class=CODE,delta=2
6 psect text9,local,class=CODE,delta=2
7 psect intcode,global,class=CODE,delta=2
8 psect intsave_1,global,ovrld,class=BANK1,space
+ =1,delta=1
9 psect intsave_0,global,ovrld,class=BANK0,space
+ =1,delta=1
10 psect intret,global,class=CODE,delta=2
11 psect intentry,global,class=CODE,delta=2
12 psect intsave,global,class=BANK0,space=1,delta
+ =1
13 psect text12,local,class=CODE,delta=2
14 psect rbit_1,global,bit,class=BANK1,space=1,de
+ lta=1
15 psect rbss_1,global,class=BANK1,space=1,delta=
+ 1
16 psect rbss_0,global,class=BANK0,space=1,delta=
+ 1
17 psect temp,global,ovrld,class=BANK0,space=1,de
+ lta=1
18 0000
19 0000
20 0000
21 0000
22 0000
23 0000
24 0000
25 0000
26 0000
27 0000
28
29 psect __Z42044RS_
30 00C8
31 00C8
32 0000 _PWMadjust2$pwmnew set ?_PWMadjust2
33
34 psect text2
35 0C53 _TR_Send_Word
36 ; _Data_temp assigned to ?a_TR_Send_Word+0
37 0000 _TR_Send_Word$Data_temp set ?a_TR_Send_Word
38 ;temp.c: 59: unsigned char Data_temp;
39 0C53 0183 clrf 3 ;select bank 0
40 0C54 0833 movf ?_TR_Send_Word,w
41 0C55 00B3 movwf ?a_TR_Send_Word
42 ;temp.c: 62: TXREG=DataWord>>8;
43 0C56 0834 movf ?_TR_Send_Word+1,w
44 0C57 0099 movwf 25 ;volatile
45 0C58 l11
46 ;temp.c: 63: while(1){
47 ;temp.c: 64: if(TXIF==1) break;
48 0C58 1E0C btfss 12,4
49 0C59 2C58 goto l11
50 ;temp.c: 66: asm("nop");asm("nop");asm("nop");a
+ sm("nop");
51 0C5A 0000 nop ;#
52 0C5B 0000 nop ;#
53 0C5C 0000 nop ;#
54 0C5D 0000 nop ;#
55 ;temp.c: 67: TXREG=Data_temp;
56 0C5E 0833 movf ?a_TR_Send_Word,w
57 0C5F 0099 movwf 25 ;volatile
58 0C60 l15
59 ;temp.c: 68: while(1){
60 ;temp.c: 69: if(TXIF==1) break;
61 0C60 1A0C btfsc 12,4
62 0C61 0008 return
63 0C62 2C60 goto l15
64
65 psect text4
66 0440 _delaytimes
67 ; _k assigned to ?a_delaytimes+0
68 0000 _delaytimes$k set ?a_delaytimes
69 ;temp.c: 84: for(k=delay_time;--k;) continue;
70 0440 0183 clrf 3 ;select bank 0
71 0441 0833 movf ?_delaytimes,w
72 0442 00B5 movwf ?a_delaytimes
73 0443 0834 movf ?_delaytimes+1,w
74 0444 00B6 movwf ?a_delaytimes+1
75 0445 l27
76 0445 30FF movlw -1
77 0446 07B5 addwf ?a_delaytimes
78 0447 1C03 btfss 3,0
79 0448 03B6 decf ?a_delaytimes+1
80 0449 0836 movf ?a_delaytimes+1,w
81 044A 0435 iorwf ?a_delaytimes,w
82 044B 1903 btfsc 3,2
83 044C 0008 return
84 044D 2C45 goto l27
85 ;temp.c: 87: void power_on(void)
86 ;temp.c: 88: {
87 044E _power_on
88 ;temp.c: 89: CCPR1L=0xFF;
89 044E 30FF movlw -1
90 044F 0183 clrf 3 ;select bank 0
91 0450 0095 movwf 21 ;volatile
92 ;temp.c: 90: delaytimes(65535);
93 0451 30FF movlw 255
94 0452 00B3 movwf ?_delaytimes
95 0453 00B4 movwf ?_delaytimes+1
96 0454 2440 fcall _delaytimes
97 ;temp.c: 91: delaytimes(65535);
98 0455 30FF movlw 255
99 0456 00B3 movwf ?_delaytimes
100 0457 00B4 movwf ?_delaytimes+1
101 0458 2440 fcall _delaytimes
102 ;temp.c: 92: asm("clrwdt");
103 0459 0064 clrwdt ;#
104 ;temp.c: 94: CCPR1L=pwmold>>2;
105 045A 0844 movf _pwmold+1,w
106 045B 00BD movwf btemp+1
107 045C 0843 movf _pwmold,w
108 045D 00BC movwf btemp
109 045E 1003 bcf 3,0
110 045F 0CBD rrf btemp+1
111 0460 0CBC rrf btemp
112 0461 1003 bcf 3,0
113 0462 0CBD rrf btemp+1
114 0463 0CBC rrf btemp
115 0464 083C movf btemp,w
116 0465 0095 movwf 21 ;volatile
117 ;temp.c: 95: delaytimes(65535);
118 0466 30FF movlw 255
119 0467 00B3 movwf ?_delaytimes
120 0468 00B4 movwf ?_delaytimes+1
121 0469 2440 fcall _delaytimes
122 ;temp.c: 96: asm("clrwdt");
123 046A 0064 clrwdt ;#
124 ;temp.c: 97: }
125 046B 0008 return
126 ;temp.c: 385: main()
127 ;temp.c: 386: {
128 046C _main
129 ;temp.c: 393: slavei2c_init();
130 046C 158A 2439 fcall _slavei2c_init
131 ;temp.c: 394: CCP1INIT1();
132 046E 158A 2474 fcall _CCP1INIT1
133 ;temp.c: 395: sciint();
134 0470 158A 2445 fcall _sciint
135 ;temp.c: 396: T2CON=0X04;
136 0472 3004 movlw 4
137 0473 0092 movwf 18 ;volatile
138 ;temp.c: 398: adinitial();
139 0474 158A 240D 118A fcall _adinitial
140 ;temp.c: 399: INTCON=0XC0;
141 0477 30C0 movlw -64
142 0478 008B movwf 11 ;volatile
143 ;temp.c: 411: RCIE=1;
144 0479 1683 bsf 3,5
145 047A 168C bsf 12,5
146 ;temp.c: 412: TXEN=1;
147 047B 1698 bsf 24,5
148 ;temp.c: 413: CREN=1;
149 047C 1283 bcf 3,5
150 047D 1618 bsf 24,4
151 ;temp.c: 418: delaytimes(9255);
152 047E 3027 movlw 39
153 047F 00B3 movwf ?_delaytimes
154 0480 3024 movlw 36
155 0481 00B4 movwf ?_delaytimes+1
156 0482 2440 fcall _delaytimes
157 0483 L36
158 ;temp.c: 420: asm("clrwdt");
159 0483 0064 clrwdt ;#
160 ;temp.c: 426: do
161 ;temp.c: 427: {
162 0484 2629 118A fcall _COMMAND_PROCESS
163 0486 2C83 goto L36
164 ;temp.c: 99: void ADConvert(void)
165 ;temp.c: 100: {
166 0487 _ADConvert
167 ;temp.c: 101: asm("clrwdt");
168 0487 0064 clrwdt ;#
169 0488 l31
170 ;temp.c: 102: while(1)
171 ;temp.c: 103: {if(ADIF==1) break;}
172 0488 1283 bcf 3,5
173 0489 1303 bcf 3,6 ;carry unused
174 048A 1F0C btfss 12,6
175 048B 2C88 goto l31
176 ;temp.c: 105: ADIF=0;
177 048C 130C bcf 12,6
178 ;temp.c: 106: adresult.adre[0]=ADRESL;
179 048D 1683 bsf 3,5
180 048E 081E movf 30,w ;volatile
181 048F 1283 bcf 3,5
182 0490 00A0 movwf _adresult
183 ;temp.c: 107: adresult.adre[1]=ADRESH;
184 0491 081E movf 30,w ;volatile
185 0492 00A1 movwf _adresult+1
186 ;temp.c: 111: ADCconvert_over=1;
187 0493 1683 bsf 3,5
188 0494 1420 bsf (_ADCconvert_over/(0+8))^(0+128),_ADCconve
+ rt_over& (0+7)
189 ;temp.c: 113: }
190 0495 1283 bcf 3,5
191 0496 0008 return
192 ;temp.c: 115: void Filter()
193 ;temp.c: 116: {
194 0497 _Filter
195 ;temp.c: 117: ADGO=1;
196 0497 0183 clrf 3 ;select bank 0
197 0498 151F bsf 31,2
198 ;temp.c: 118: ADConvert();
199 0499 2487 fcall _ADConvert
200 ;temp.c: 120: setdataB1=adresult.y1;
201 049A 0820 movf _adresult,w
202 049B 1683 bsf 3,5
203 049C 00BA movwf _setdataB1^(0+128)
204 049D 1283 bcf 3,5
205 049E 0821 movf _adresult+1,w
206 049F 1683 bsf 3,5
207 04A0 00BB movwf (_setdataB1+1)^(0+128)
208 ;temp.c: 121: delaytimes(106);
209 04A1 306A movlw 106
210 04A2 1283 bcf 3,5
211 04A3 00B3 movwf ?_delaytimes
212 04A4 01B4 clrf ?_delaytimes+1
213 04A5 2440 fcall _delaytimes
214 ;temp.c: 122: ADGO=1;
215 04A6 151F bsf 31,2
216 ;temp.c: 123: ADConvert();
217 04A7 2487 fcall _ADConvert
218 ;temp.c: 125: setdataB2=adresult.y1;
219 04A8 0820 movf _adresult,w
220 04A9 1683 bsf 3,5
221 04AA 00BE movwf _setdataB2^(0+128)
222 04AB 1283 bcf 3,5
223 04AC 0821 movf _adresult+1,w
224 04AD 1683 bsf 3,5
225 04AE 00BF movwf (_setdataB2+1)^(0+128)
226 ;temp.c: 126: delaytimes(106);
227 04AF 306A movlw 106
228 04B0 1283 bcf 3,5
229 04B1 00B3 movwf ?_delaytimes
230 04B2 01B4 clrf ?_delaytimes+1
231 04B3 2440 fcall _delaytimes
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -