📄 18b20.lss
字号:
1be: 4a e7 ldi r20, 0x7A ; 122
1c0: 54 e4 ldi r21, 0x44 ; 68
1c2: bd 01 movw r22, r26
1c4: ce 01 movw r24, r28
1c6: c8 d0 rcall .+400 ; 0x358
a = (uint)tt/100; //取得十分位值
1c8: 60 d0 rcall .+192 ; 0x28a
1ca: 8b 01 movw r16, r22
1cc: 9c 01 movw r18, r24
1ce: cb 01 movw r24, r22
1d0: 64 e6 ldi r22, 0x64 ; 100
1d2: 70 e0 ldi r23, 0x00 ; 0
1d4: 1e d1 rcall .+572 ; 0x412
1d6: fb 01 movw r30, r22
b = (uint)tt%100/10; //取得百分位值
1d8: c8 01 movw r24, r16
1da: 64 e6 ldi r22, 0x64 ; 100
1dc: 70 e0 ldi r23, 0x00 ; 0
1de: 19 d1 rcall .+562 ; 0x412
1e0: 6a e0 ldi r22, 0x0A ; 10
1e2: 70 e0 ldi r23, 0x00 ; 0
1e4: 16 d1 rcall .+556 ; 0x412
1e6: 9b 01 movw r18, r22
data=(temp%100)/10;
1e8: 8f 2d mov r24, r15
1ea: 64 e6 ldi r22, 0x64 ; 100
1ec: 06 d1 rcall .+524 ; 0x3fa
1ee: 89 2f mov r24, r25
1f0: 6a e0 ldi r22, 0x0A ; 10
1f2: 03 d1 rcall .+518 ; 0x3fa
DISP_BUFFER[1] = data;//Write_Data( flash_array[data] ); //bit1显示十位
1f4: 80 93 61 00 sts 0x0061, r24
data=temp%10;
1f8: 8f 2d mov r24, r15
1fa: ff d0 rcall .+510 ; 0x3fa
DISP_BUFFER[2] = data;//Write_Data( flash_array[data] ); //bit2显示个位
1fc: 90 93 62 00 sts 0x0062, r25
//Write_Data( '.' ); //bit3显示'.'
DISP_BUFFER[3] = a;//Write_Data( flash_array[ a ] ); //bit3显示小数位
200: e0 93 63 00 sts 0x0063, r30
DISP_BUFFER[4] = b;//Write_Data( flash_array[ b ] ); //bit4显示小数位
204: 20 93 64 00 sts 0x0064, r18
DISP_BUFFER[5] = 12;//Write_Data( 'C' ); //bit5显示'C'
208: 8c e0 ldi r24, 0x0C ; 12
20a: 80 93 65 00 sts 0x0065, r24
20e: df 91 pop r29
210: cf 91 pop r28
212: 1f 91 pop r17
214: 0f 91 pop r16
216: ff 90 pop r15
218: 08 95 ret
0000021a <display_temperature>:
}
/*------------------温度显示程序--------------------------*/
void display_temperature(void)
{
21a: ff 92 push r15
21c: 0f 93 push r16
21e: 1f 93 push r17
220: cf 93 push r28
222: df 93 push r29
unsigned char i,temp;
temp = 0xfe;
224: 0e ef ldi r16, 0xFE ; 254
for(i = 0;i<6;i++)
226: 10 e0 ldi r17, 0x00 ; 0
228: c0 e6 ldi r28, 0x60 ; 96
22a: d0 e0 ldi r29, 0x00 ; 0
{
lat_off;
22c: c2 98 cbi 0x18, 2 ; 24
22e: f0 2e mov r15, r16
230: ff 0c add r15, r15
if(i == 2)
232: 12 30 cpi r17, 0x02 ; 2
234: 49 f4 brne .+18 ; 0x248
spi_send(DISP_TAB[DISP_BUFFER[i]]&0x7f);
236: 80 91 62 00 lds r24, 0x0062
23a: e8 2f mov r30, r24
23c: ff 27 eor r31, r31
23e: ea 59 subi r30, 0x9A ; 154
240: ff 4f sbci r31, 0xFF ; 255
242: 80 81 ld r24, Z
244: 8f 77 andi r24, 0x7F ; 127
246: 06 c0 rjmp .+12 ; 0x254
else
spi_send(DISP_TAB[DISP_BUFFER[i]]);
248: 88 81 ld r24, Y
24a: e8 2f mov r30, r24
24c: ff 27 eor r31, r31
24e: ea 59 subi r30, 0x9A ; 154
250: ff 4f sbci r31, 0xFF ; 255
252: 80 81 ld r24, Z
254: 08 df rcall .-496 ; 0x66
lat_on;
256: c2 9a sbi 0x18, 2 ; 24
PORTD = temp;
258: 02 bb out 0x12, r16 ; 18
temp<<=1;
temp|=0x01;
25a: 0f 2d mov r16, r15
25c: 01 60 ori r16, 0x01 ; 1
__ticks = 1;
else if (__tmp > 65535)
__ticks = 0; /* i.e. 65536 */
else
__ticks = (uint16_t)__tmp;
25e: 8a ef ldi r24, 0xFA ; 250
260: 90 e0 ldi r25, 0x00 ; 0
262: 01 97 sbiw r24, 0x01 ; 1
264: f1 f7 brne .-4 ; 0x262
266: 1f 5f subi r17, 0xFF ; 255
268: 21 96 adiw r28, 0x01 ; 1
26a: 16 30 cpi r17, 0x06 ; 6
26c: f8 f2 brcs .-66 ; 0x22c
26e: df 91 pop r29
270: cf 91 pop r28
272: 1f 91 pop r17
274: 0f 91 pop r16
276: ff 90 pop r15
278: 08 95 ret
0000027a <main>:
_delay_ms(1);
}
}
/*-----------------------------主程序-------------------------------*/
int main(void)
{
27a: cf e5 ldi r28, 0x5F ; 95
27c: d4 e0 ldi r29, 0x04 ; 4
27e: de bf out 0x3e, r29 ; 62
280: cd bf out 0x3d, r28 ; 61
Init_R();
282: f6 de rcall .-532 ; 0x70
while(1)
{
read_temperature(); //读取温度
284: 41 df rcall .-382 ; 0x108
display_temperature(); //显示温度
286: c9 df rcall .-110 ; 0x21a
288: fd cf rjmp .-6 ; 0x284
0000028a <__fixsfsi>:
28a: 97 fb bst r25, 7
28c: 4e d0 rcall .+156 ; 0x32a
28e: 9f 37 cpi r25, 0x7F ; 127
290: 38 f0 brcs .+14 ; 0x2a0
292: fe e9 ldi r31, 0x9E ; 158
294: f9 1b sub r31, r25
296: 98 2f mov r25, r24
298: 87 2f mov r24, r23
29a: 76 2f mov r23, r22
29c: 6b 2f mov r22, r27
29e: 05 c0 rjmp .+10 ; 0x2aa
000002a0 <___fixsfsi_zero>:
2a0: 52 c0 rjmp .+164 ; 0x346
000002a2 <___fixsfsi_05>:
2a2: 96 95 lsr r25
2a4: 87 95 ror r24
2a6: 77 95 ror r23
2a8: 67 95 ror r22
000002aa <___fixsfsi_10>:
2aa: f1 50 subi r31, 0x01 ; 1
2ac: d0 f7 brcc .-12 ; 0x2a2
2ae: 3e f4 brtc .+14 ; 0x2be
000002b0 <__fp_lneg>:
2b0: 90 95 com r25
2b2: 80 95 com r24
2b4: 70 95 com r23
2b6: 61 95 neg r22
2b8: 7f 4f sbci r23, 0xFF ; 255
2ba: 8f 4f sbci r24, 0xFF ; 255
2bc: 9f 4f sbci r25, 0xFF ; 255
000002be <no_neg>:
2be: 08 95 ret
000002c0 <__floatunssisf>:
2c0: e8 94 clt
2c2: 03 c0 rjmp .+6 ; 0x2ca
000002c4 <__floatsisf>:
2c4: 97 fb bst r25, 7
2c6: 0e f4 brtc .+2 ; 0x2ca
2c8: f3 df rcall .-26 ; 0x2b0
000002ca <___floatsisf_10>:
2ca: b6 2f mov r27, r22
2cc: 67 2f mov r22, r23
2ce: 78 2f mov r23, r24
2d0: 89 2f mov r24, r25
2d2: 9e e9 ldi r25, 0x9E ; 158
2d4: 00 24 eor r0, r0
2d6: 05 c0 rjmp .+10 ; 0x2e2
000002d8 <fp_merge_10>:
2d8: 9a 95 dec r25
2da: bb 0f add r27, r27
2dc: 66 1f adc r22, r22
2de: 77 1f adc r23, r23
2e0: 88 1f adc r24, r24
000002e2 <__fp_merge>:
2e2: 11 24 eor r1, r1
2e4: 99 23 and r25, r25
2e6: a1 f0 breq .+40 ; 0x310
2e8: 88 23 and r24, r24
2ea: b2 f7 brpl .-20 ; 0x2d8
2ec: 9f 3f cpi r25, 0xFF ; 255
2ee: 59 f0 breq .+22 ; 0x306
2f0: bb 0f add r27, r27
2f2: 48 f4 brcc .+18 ; 0x306
2f4: 21 f4 brne .+8 ; 0x2fe
2f6: 00 20 and r0, r0
2f8: 11 f4 brne .+4 ; 0x2fe
2fa: 60 ff sbrs r22, 0
2fc: 04 c0 rjmp .+8 ; 0x306
000002fe <fp_merge100>:
2fe: 6f 5f subi r22, 0xFF ; 255
300: 7f 4f sbci r23, 0xFF ; 255
302: 8f 4f sbci r24, 0xFF ; 255
304: 9f 4f sbci r25, 0xFF ; 255
00000306 <fp_merge200>:
306: 88 1f adc r24, r24
308: 97 95 ror r25
30a: 87 95 ror r24
30c: 97 f9 bld r25, 7
30e: 08 95 ret
00000310 <fp_merge300>:
310: 1a c0 rjmp .+52 ; 0x346
00000312 <__fp_split3>:
312: 05 2e mov r0, r21
314: 09 26 eor r0, r25
316: 07 fa bst r0, 7
00000318 <__fp_split2>:
318: 44 0f add r20, r20
31a: 55 1f adc r21, r21
31c: 5f 3f cpi r21, 0xFF ; 255
31e: 79 f0 breq .+30 ; 0x33e
320: aa 27 eor r26, r26
322: a5 17 cp r26, r21
324: 08 f0 brcs .+2 ; 0x328
326: 51 e0 ldi r21, 0x01 ; 1
328: 47 95 ror r20
0000032a <__fp_split1>:
32a: 88 0f add r24, r24
32c: 99 1f adc r25, r25
32e: 9f 3f cpi r25, 0xFF ; 255
330: 31 f0 breq .+12 ; 0x33e
332: bb 27 eor r27, r27
334: b9 17 cp r27, r25
336: 08 f0 brcs .+2 ; 0x33a
338: 91 e0 ldi r25, 0x01 ; 1
33a: 87 95 ror r24
33c: 08 95 ret
0000033e <fp_split_nan>:
33e: 9f 91 pop r25
340: 9f 91 pop r25
342: 11 24 eor r1, r1
344: 57 c0 rjmp .+174 ; 0x3f4
00000346 <__fp_zero>:
346: 66 27 eor r22, r22
348: 77 27 eor r23, r23
34a: 88 27 eor r24, r24
0000034c <__fp_zerox>:
34c: 99 27 eor r25, r25
34e: 08 95 ret
00000350 <square>:
350: 59 2f mov r21, r25
352: 48 2f mov r20, r24
354: 37 2f mov r19, r23
356: 26 2f mov r18, r22
00000358 <__mulsf3>:
358: dc df rcall .-72 ; 0x312
35a: 01 d0 rcall .+2 ; 0x35e
35c: c2 cf rjmp .-124 ; 0x2e2
0000035e <__mulsf3x>:
35e: 99 23 and r25, r25
360: 39 f0 breq .+14 ; 0x370
00000362 <___mulsf3_10>:
362: 55 23 and r21, r21
364: 29 f0 breq .+10 ; 0x370
00000366 <___mulsf3x_00>:
366: 9f 57 subi r25, 0x7F ; 127
368: 5f 57 subi r21, 0x7F ; 127
36a: 95 0f add r25, r21
36c: 13 f4 brvc .+4 ; 0x372
36e: ca f1 brmi .+114 ; 0x3e2
00000370 <___mulsf3x_ZERO>:
370: ed cf rjmp .-38 ; 0x34c
00000372 <___mulsf3x_20>:
372: 91 58 subi r25, 0x81 ; 129
374: 9f 3f cpi r25, 0xFF ; 255
376: e1 f3 breq .-8 ; 0x370
378: a6 2f mov r26, r22
37a: 00 24 eor r0, r0
37c: 11 24 eor r1, r1
37e: bb 27 eor r27, r27
380: 66 27 eor r22, r22
382: 55 27 eor r21, r21
384: f8 e0 ldi r31, 0x08 ; 8
00000386 <___mulsf3x_100>:
386: a6 95 lsr r26
388: 20 f4 brcc .+8 ; 0x392
38a: 02 0e add r0, r18
38c: 13 1e adc r1, r19
38e: b4 1f adc r27, r20
390: 65 1f adc r22, r21
00000392 <___mulsf3x_101>:
392: 22 0f add r18, r18
394: 33 1f adc r19, r19
396: 44 1f adc r20, r20
398: 55 1f adc r21, r21
39a: fa 95 dec r31
39c: a1 f7 brne .-24 ; 0x386
39e: f8 e0 ldi r31, 0x08 ; 8
3a0: e7 2f mov r30, r23
3a2: 77 27 eor r23, r23
3a4: f8 e0 ldi r31, 0x08 ; 8
000003a6 <___mulsf3x_200>:
3a6: e6 95 lsr r30
3a8: 20 f4 brcc .+8 ; 0x3b2
3aa: 13 0e add r1, r19
3ac: b4 1f adc r27, r20
3ae: 65 1f adc r22, r21
3b0: 7a 1f adc r23, r26
000003b2 <___mulsf3x_201>:
3b2: 33 0f add r19, r19
3b4: 44 1f adc r20, r20
3b6: 55 1f adc r21, r21
3b8: aa 1f adc r26, r26
3ba: fa 95 dec r31
3bc: a1 f7 brne .-24 ; 0x3a6
3be: f8 2f mov r31, r24
3c0: 88 27 eor r24, r24
000003c2 <___mulsf3x_300>:
3c2: f6 95 lsr r31
3c4: 20 f4 brcc .+8 ; 0x3ce
3c6: b4 0f add r27, r20
3c8: 65 1f adc r22, r21
3ca: 7a 1f adc r23, r26
3cc: 8e 1f adc r24, r30
000003ce <___mulsf3x_301>:
3ce: 44 0f add r20, r20
3d0: 55 1f adc r21, r21
3d2: aa 1f adc r26, r26
3d4: ee 1f adc r30, r30
3d6: ff 23 and r31, r31
3d8: a1 f7 brne .-24 ; 0x3c2
000003da <___mulsf3x_400>:
3da: 88 23 and r24, r24
3dc: 1a f4 brpl .+6 ; 0x3e4
3de: 93 95 inc r25
3e0: 39 f4 brne .+14 ; 0x3f0
000003e2 <___mulsf3x_INF>:
3e2: 08 c0 rjmp .+16 ; 0x3f4
000003e4 <___mulsf3x_405>:
3e4: 00 0c add r0, r0
3e6: 11 1c adc r1, r1
3e8: bb 1f adc r27, r27
3ea: 66 1f adc r22, r22
3ec: 77 1f adc r23, r23
3ee: 88 1f adc r24, r24
000003f0 <___mulsf3x_420>:
3f0: 01 28 or r0, r1
3f2: 08 95 ret
000003f4 <__fp_nan>:
3f4: 9f ef ldi r25, 0xFF ; 255
3f6: 80 ec ldi r24, 0xC0 ; 192
3f8: 08 95 ret
000003fa <__udivmodqi4>:
3fa: 99 1b sub r25, r25
3fc: 79 e0 ldi r23, 0x09 ; 9
3fe: 04 c0 rjmp .+8 ; 0x408
00000400 <__udivmodqi4_loop>:
400: 99 1f adc r25, r25
402: 96 17 cp r25, r22
404: 08 f0 brcs .+2 ; 0x408
406: 96 1b sub r25, r22
00000408 <__udivmodqi4_ep>:
408: 88 1f adc r24, r24
40a: 7a 95 dec r23
40c: c9 f7 brne .-14 ; 0x400
40e: 80 95 com r24
410: 08 95 ret
00000412 <__udivmodhi4>:
412: aa 1b sub r26, r26
414: bb 1b sub r27, r27
416: 51 e1 ldi r21, 0x11 ; 17
418: 07 c0 rjmp .+14 ; 0x428
0000041a <__udivmodhi4_loop>:
41a: aa 1f adc r26, r26
41c: bb 1f adc r27, r27
41e: a6 17 cp r26, r22
420: b7 07 cpc r27, r23
422: 10 f0 brcs .+4 ; 0x428
424: a6 1b sub r26, r22
426: b7 0b sbc r27, r23
00000428 <__udivmodhi4_ep>:
428: 88 1f adc r24, r24
42a: 99 1f adc r25, r25
42c: 5a 95 dec r21
42e: a9 f7 brne .-22 ; 0x41a
430: 80 95 com r24
432: 90 95 com r25
434: bc 01 movw r22, r24
436: cd 01 movw r24, r26
438: 08 95 ret
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -