📄 temperature.lst
字号:
159 000F76 90D8 bcf status,0,c
160 000F78 3201 rrcf btemp+1,f
161 000F7A 3200 rrcf btemp,f
162 000F7C C000 F0FC movff btemp,?a_UpdateCelsiusASCII
163 000F80 C001 F0FD movff btemp+1,?a_UpdateCelsiusASCII+1
164 ;temperature.c: 130: if(temp.c.HighB.a.b4 == 0)
165 000F84 0100 movlb __Lparam shr (0+8)
166 000F86 B9FD btfsc (?a_UpdateCelsiusASCII+1)^(__Lparam& (0+6
+ 5280)),4
167 000F88 D006 goto l43
168 ;temperature.c: 131: {
169 000F8A 0E1F movlw 31
170 000F8C 17FD andwf (?a_UpdateCelsiusASCII+1)^(__Lparam& (0+6
+ 5280)),f
171 ;temperature.c: 133: tempString[0] = '+';
172 000F8E 0E2B movlw 43
173 000F90 CFE8 F36D movff wreg,_tempString
174 ;temperature.c: 134: }
175 000F94 D00A goto l44
176 000F96 l43:
177 ;temperature.c: 136: {
178 000F96 0EE0 movlw 224
179 000F98 0100 movlb __Lparam shr (0+8)
180 000F9A 13FD iorwf (?a_UpdateCelsiusASCII+1)^(__Lparam& (0+6
+ 5280)),f
181 ;temperature.c: 138: tempString[0] = '-';
182 000F9C 0E2D movlw 45
183 000F9E CFE8 F36D movff wreg,_tempString
184 ;temperature.c: 139: temp._word = temp._word ^ 0
+ xFFFF;
185 000FA2 1FFC comf ?a_UpdateCelsiusASCII^(__Lparam& (0+65280)
+ ),f
186 000FA4 1FFD comf (?a_UpdateCelsiusASCII+1)^(__Lparam& (0+65
+ 280)),f
187 ;temperature.c: 140: temp._word++;
188 000FA6 4BFC infsnz ?a_UpdateCelsiusASCII^(__Lparam& (0+6528
+ 0)),f
189 000FA8 2BFD incf (?a_UpdateCelsiusASCII+1)^(__Lparam& (0+65
+ 280)),f
190 000FAA l44:
191 ;temperature.c: 141: }
192 ;temperature.c: 143: temp._word = (temp._word*10
+ U) >> 4;
193 000FAA 0E0A movlw 10
194 000FAC 6E02 movwf btemp+2
195 000FAE 6A03 clrf btemp+3
196 000FB0 C0FC F000 movff ?a_UpdateCelsiusASCII,btemp
197 000FB4 C0FD F001 movff ?a_UpdateCelsiusASCII+1,btemp+1
198 000FB8 EC63 F008 call lwmul
199 000FBC 0E04 movlw 4
200 000FBE 6E00 movwf btemp
201 000FC0 u35:
202 000FC0 90D8 bcf status,0,c
203 000FC2 3205 rrcf btemp+5,f
204 000FC4 3204 rrcf btemp+4,f
205 000FC6 2E00 decfsz btemp,f
206 000FC8 D7FB goto u35
207 000FCA C004 F0FC movff btemp+4,?a_UpdateCelsiusASCII
208 000FCE C005 F0FD movff btemp+5,?a_UpdateCelsiusASCII+1
209 ;temperature.c: 146: for(i=4;i>0;i--)
210 000FD2 0E04 movlw 4
211 000FD4 6ED9 movwf fsr2l,c
212 000FD6 l45:
213 ;temperature.c: 147: {
214 ;temperature.c: 148: tempString[i] = (((char)(te
+ mp._word % 10)) & 0x0F) | 0x30;
215 000FD6 50D9 movf fsr2l,w,c
216 000FD8 EE03 F06D lfsr 0,_tempString
217 000FDC 26E9 addwf fsr0l,f,c
218 000FDE 0E00 movlw 0
219 000FE0 22EA addwfc fsr0h,f,c
220 000FE2 0E0A movlw 10
221 000FE4 6E02 movwf btemp+2
222 000FE6 6A03 clrf btemp+3
223 000FE8 C0FC F000 movff ?a_UpdateCelsiusASCII,btemp
224 000FEC C0FD F001 movff ?a_UpdateCelsiusASCII+1,btemp+1
225 000FF0 EC30 F008 call lwmod
226 000FF4 5000 movf btemp,w
227 000FF6 0B0F andlw 15
228 000FF8 0930 iorlw 48
229 000FFA 6EEF movwf indf0,c
230 ;temperature.c: 149: temp._word /= 10;
231 000FFC 0E0A movlw 10
232 000FFE 6E02 movwf btemp+2
233 001000 6A03 clrf btemp+3
234 001002 C0FC F000 movff ?a_UpdateCelsiusASCII,btemp
235 001006 C0FD F001 movff ?a_UpdateCelsiusASCII+1,btemp+1
236 00100A EC30 F008 call lwdiv
237 00100E C004 F0FC movff btemp+4,?a_UpdateCelsiusASCII
238 001012 C005 F0FD movff btemp+5,?a_UpdateCelsiusASCII+1
239 ;temperature.c: 150: }
240 001016 06D9 decf fsr2l,f,c
241 001018 50D9 movf fsr2l,w,c
242 00101A A4D8 btfss status,2,c
243 00101C D7DC goto l45
244 ;temperature.c: 153: if(tempString[1] == '0')
245 00101E C36E FFE8 movff _tempString+1,wreg
246 001022 0A30 xorlw 48
247 001024 A4D8 btfss status,2,c
248 001026 D00B goto l48
249 ;temperature.c: 154: {
250 001028 0E20 movlw 32
251 00102A CFE8 F36E movff wreg,_tempString+1
252 ;temperature.c: 156: if(tempString[2] == '0')
253 00102E C36F FFE8 movff _tempString+2,wreg
254 001032 0A30 xorlw 48
255 001034 A4D8 btfss status,2,c
256 001036 D003 goto l48
257 ;temperature.c: 157: tempString[2] = ' ';
258 001038 0E20 movlw 32
259 00103A CFE8 F36F movff wreg,_tempString+2
260 ;temperature.c: 158: }
261 00103E l48:
262 ;temperature.c: 161: tempString[5] = tempString[
+ 4];
263 00103E C371 F372 movff _tempString+4,_tempString+5
264 ;temperature.c: 162: tempString[4]='.';
265 001042 0E2E movlw 46
266 001044 CFE8 F371 movff wreg,_tempString+4
267 ;temperature.c: 163: tempString[6]=0xF8;
268 001048 0EF8 movlw -8
269 00104A CFE8 F373 movff wreg,_tempString+6
270 ;temperature.c: 164: tempString[7]='C';
271 00104E 0E43 movlw 67
272 001050 CFE8 F374 movff wreg,_tempString+7
273 ;temperature.c: 165: tempString[8]='\r';
274 001054 0E0D movlw 13
275 001056 CFE8 F375 movff wreg,_tempString+8
276 ;temperature.c: 166: tempString[9]=0x00;
277 00105A 0103 movlb (_tempString+9) shr (0+8)
278 00105C 6B76 clrf (_tempString+9)& (0+255),b
279 ;temperature.c: 168: }
280 00105E 0012 return
281
282 psect bss
283 0000DF _temperature:
284 0000DF ds 2
285
286 psect bigbss
287 00036D _tempString:
288 00036D ds 10
289
290 psect temp
291 000000 btemp:
292 000000 ds 6
293 indf0 equ 0xFEF
294 fsr0h equ 0xFEA
295 fsr0l equ 0xFE9
296 wreg equ 0xFE8
297 fsr2l equ 0xFD9
298 status equ 0xFD8
HI-TECH Software PICC-18 Macro Assembler V8.35PL3
Symbol Table Wed Jun 15 13:32:21 2005
l43 0F96 l44 0FAA
l45 0FD6 l48 103E
u35 0FC0 wreg 000FE8
_tempString 036D fsr0h 000FEA
indf0 000FEF fsr0l 000FE9
fsr2l 000FD9 btemp 0000
lwdiv 1060 lwmod 1060
lwmul 10C6 clear_big 0018
clear_bss 0024 _temperature 00DF
used_btemp0 0001 used_btemp1 0001
used_btemp2 0001 used_btemp3 0001
used_btemp4 0001 used_btemp5 0001
status 000FD8 _AcquireTemperature 0F46
_ReadSPI 110C __Lparam 00FC
?a_UpdateCelsiusASCII 00FC __ramtop 0400
_InitTempSensor 0F2E _UpdateCelsiusASCII 0F62
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -