📄 main.lss
字号:
00000198 <Write_18b20>:
198: 48 2f mov r20, r24
19a: 50 e0 ldi r21, 0x00 ; 0
19c: a3 e0 ldi r26, 0x03 ; 3
19e: b0 e0 ldi r27, 0x00 ; 0
1a0: d2 9a sbi 0x1a, 2 ; 26
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
1a2: cd 01 movw r24, r26
1a4: 01 97 sbiw r24, 0x01 ; 1
1a6: f1 f7 brne .-4 ; 0x1a4 <Write_18b20+0xc>
1a8: cd 01 movw r24, r26
1aa: 01 97 sbiw r24, 0x01 ; 1
1ac: f1 f7 brne .-4 ; 0x1aa <Write_18b20+0x12>
1ae: 40 ff sbrs r20, 0
1b0: 02 c0 rjmp .+4 ; 0x1b6 <Write_18b20+0x1e>
1b2: d2 98 cbi 0x1a, 2 ; 26
1b4: 01 c0 rjmp .+2 ; 0x1b8 <Write_18b20+0x20>
1b6: d2 9a sbi 0x1a, 2 ; 26
1b8: 2d e3 ldi r18, 0x3D ; 61
1ba: 30 e0 ldi r19, 0x00 ; 0
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
1bc: e3 e0 ldi r30, 0x03 ; 3
1be: f0 e0 ldi r31, 0x00 ; 0
1c0: cf 01 movw r24, r30
1c2: 01 97 sbiw r24, 0x01 ; 1
1c4: f1 f7 brne .-4 ; 0x1c2 <Write_18b20+0x2a>
1c6: 21 50 subi r18, 0x01 ; 1
1c8: 30 40 sbci r19, 0x00 ; 0
1ca: 8f ef ldi r24, 0xFF ; 255
1cc: 2f 3f cpi r18, 0xFF ; 255
1ce: 38 07 cpc r19, r24
1d0: a9 f7 brne .-22 ; 0x1bc <Write_18b20+0x24>
1d2: d2 98 cbi 0x1a, 2 ; 26
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
1d4: cf 01 movw r24, r30
1d6: 01 97 sbiw r24, 0x01 ; 1
1d8: f1 f7 brne .-4 ; 0x1d6 <Write_18b20+0x3e>
1da: 31 97 sbiw r30, 0x01 ; 1
1dc: f1 f7 brne .-4 ; 0x1da <Write_18b20+0x42>
1de: 5f 5f subi r21, 0xFF ; 255
1e0: 58 30 cpi r21, 0x08 ; 8
1e2: 11 f0 breq .+4 ; 0x1e8 <Write_18b20+0x50>
1e4: 46 95 lsr r20
1e6: dc cf rjmp .-72 ; 0x1a0 <Write_18b20+0x8>
1e8: 08 95 ret
000001ea <Delayus>:
1ea: 9c 01 movw r18, r24
1ec: e3 e0 ldi r30, 0x03 ; 3
1ee: f0 e0 ldi r31, 0x00 ; 0
1f0: 03 c0 rjmp .+6 ; 0x1f8 <Delayus+0xe>
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
1f2: cf 01 movw r24, r30
1f4: 01 97 sbiw r24, 0x01 ; 1
1f6: f1 f7 brne .-4 ; 0x1f4 <Delayus+0xa>
1f8: 21 50 subi r18, 0x01 ; 1
1fa: 30 40 sbci r19, 0x00 ; 0
1fc: 8f ef ldi r24, 0xFF ; 255
1fe: 2f 3f cpi r18, 0xFF ; 255
200: 38 07 cpc r19, r24
202: b9 f7 brne .-18 ; 0x1f2 <Delayus+0x8>
204: 08 95 ret
00000206 <Delayms>:
{
_delay_loop_2(3); //_delay_loop_2(1)是延时4个时钟周期,参数为3则延时12
//个时钟周期,本实验用12M晶体,则12个时钟周期为12/12=1us
}
}
//ms级别的延时函数
void Delayms(unsigned int lms)
{
206: 9c 01 movw r18, r24
208: 0d c0 rjmp .+26 ; 0x224 <Delayms+0x1e>
while(lms--)
20a: 47 ee ldi r20, 0xE7 ; 231
20c: 53 e0 ldi r21, 0x03 ; 3
20e: e3 e0 ldi r30, 0x03 ; 3
210: f0 e0 ldi r31, 0x00 ; 0
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
212: cf 01 movw r24, r30
214: 01 97 sbiw r24, 0x01 ; 1
216: f1 f7 brne .-4 ; 0x214 <Delayms+0xe>
218: 41 50 subi r20, 0x01 ; 1
21a: 50 40 sbci r21, 0x00 ; 0
21c: 8f ef ldi r24, 0xFF ; 255
21e: 4f 3f cpi r20, 0xFF ; 255
220: 58 07 cpc r21, r24
222: b9 f7 brne .-18 ; 0x212 <Delayms+0xc>
224: 21 50 subi r18, 0x01 ; 1
226: 30 40 sbci r19, 0x00 ; 0
228: 8f ef ldi r24, 0xFF ; 255
22a: 2f 3f cpi r18, 0xFF ; 255
22c: 38 07 cpc r19, r24
22e: 69 f7 brne .-38 ; 0x20a <Delayms+0x4>
230: 08 95 ret
00000232 <__vector_11>:
232: 1f 92 push r1
234: 0f 92 push r0
236: 0f b6 in r0, 0x3f ; 63
238: 0f 92 push r0
23a: 11 24 eor r1, r1
23c: 8f 93 push r24
23e: 8c b1 in r24, 0x0c ; 12
240: 5d 9b sbis 0x0b, 5 ; 11
242: fe cf rjmp .-4 ; 0x240 <__vector_11+0xe>
244: 8c b9 out 0x0c, r24 ; 12
246: 8f 91 pop r24
248: 0f 90 pop r0
24a: 0f be out 0x3f, r0 ; 63
24c: 0f 90 pop r0
24e: 1f 90 pop r1
250: 18 95 reti
00000252 <main>:
252: af 92 push r10
254: bf 92 push r11
256: cf 92 push r12
258: df 92 push r13
25a: ef 92 push r14
25c: ff 92 push r15
25e: 0f 93 push r16
260: 1f 93 push r17
262: cf 93 push r28
264: df 93 push r29
266: 0e 94 47 00 call 0x8e ; 0x8e <Port_Init>
26a: 0e 94 50 00 call 0xa0 ; 0xa0 <Usart_Init>
26e: d2 98 cbi 0x1a, 2 ; 26
270: da 98 cbi 0x1b, 2 ; 27
272: 10 92 87 00 sts 0x0087, r1
276: 10 92 86 00 sts 0x0086, r1
27a: 10 92 88 00 sts 0x0088, r1
27e: 80 e6 ldi r24, 0x60 ; 96
280: 90 e0 ldi r25, 0x00 ; 0
282: 0e 94 5f 00 call 0xbe ; 0xbe <Usart_PutString>
286: 5d 9b sbis 0x0b, 5 ; 11
288: fe cf rjmp .-4 ; 0x286 <main+0x34>
28a: 8d e0 ldi r24, 0x0D ; 13
28c: 8c b9 out 0x0c, r24 ; 12
28e: 5d 9b sbis 0x0b, 5 ; 11
290: fe cf rjmp .-4 ; 0x28e <main+0x3c>
292: 8a e0 ldi r24, 0x0A ; 10
294: 8c b9 out 0x0c, r24 ; 12
296: 78 94 sei
298: f8 94 cli
29a: 0e 94 69 00 call 0xd2 ; 0xd2 <DS18B20_Init>
29e: 8c ec ldi r24, 0xCC ; 204
2a0: 0e 94 cc 00 call 0x198 ; 0x198 <Write_18b20>
2a4: 84 e4 ldi r24, 0x44 ; 68
2a6: 0e 94 cc 00 call 0x198 ; 0x198 <Write_18b20>
2aa: 10 e0 ldi r17, 0x00 ; 0
2ac: 84 e1 ldi r24, 0x14 ; 20
2ae: 90 e0 ldi r25, 0x00 ; 0
2b0: 0e 94 03 01 call 0x206 ; 0x206 <Delayms>
2b4: 1f 5f subi r17, 0xFF ; 255
2b6: 12 33 cpi r17, 0x32 ; 50
2b8: c9 f7 brne .-14 ; 0x2ac <main+0x5a>
2ba: 0e 94 69 00 call 0xd2 ; 0xd2 <DS18B20_Init>
2be: 8c ec ldi r24, 0xCC ; 204
2c0: 0e 94 cc 00 call 0x198 ; 0x198 <Write_18b20>
2c4: 8e eb ldi r24, 0xBE ; 190
2c6: 0e 94 cc 00 call 0x198 ; 0x198 <Write_18b20>
2ca: 0e 94 9e 00 call 0x13c ; 0x13c <Read_18b20>
2ce: 80 93 86 00 sts 0x0086, r24
2d2: 0e 94 9e 00 call 0x13c ; 0x13c <Read_18b20>
2d6: 80 93 87 00 sts 0x0087, r24
2da: 83 ff sbrs r24, 3
2dc: 12 c0 rjmp .+36 ; 0x302 <main+0xb0>
2de: 98 2f mov r25, r24
2e0: 90 95 com r25
2e2: 90 93 87 00 sts 0x0087, r25
2e6: 8f b7 in r24, 0x3f ; 63
2e8: 8e 6f ori r24, 0xFE ; 254
2ea: 8f bf out 0x3f, r24 ; 63
2ec: 80 91 86 00 lds r24, 0x0086
2f0: 81 95 neg r24
2f2: 80 93 86 00 sts 0x0086, r24
2f6: 0f b6 in r0, 0x3f ; 63
2f8: 00 fe sbrs r0, 0
2fa: 03 c0 rjmp .+6 ; 0x302 <main+0xb0>
2fc: 9f 5f subi r25, 0xFF ; 255
2fe: 90 93 87 00 sts 0x0087, r25
302: 20 91 86 00 lds r18, 0x0086
306: 80 91 87 00 lds r24, 0x0087
30a: c8 2f mov r28, r24
30c: dd 27 eor r29, r29
30e: 84 e0 ldi r24, 0x04 ; 4
310: cc 0f add r28, r28
312: dd 1f adc r29, r29
314: 8a 95 dec r24
316: e1 f7 brne .-8 ; 0x310 <main+0xbe>
318: c0 77 andi r28, 0x70 ; 112
31a: d0 70 andi r29, 0x00 ; 0
31c: 82 2f mov r24, r18
31e: 82 95 swap r24
320: 8f 70 andi r24, 0x0F ; 15
322: 99 27 eor r25, r25
324: c8 2b or r28, r24
326: d9 2b or r29, r25
328: ce 01 movw r24, r28
32a: 68 ee ldi r22, 0xE8 ; 232
32c: 73 e0 ldi r23, 0x03 ; 3
32e: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
332: 6b 01 movw r12, r22
334: ce 01 movw r24, r28
336: 68 ee ldi r22, 0xE8 ; 232
338: 73 e0 ldi r23, 0x03 ; 3
33a: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
33e: 64 e6 ldi r22, 0x64 ; 100
340: 70 e0 ldi r23, 0x00 ; 0
342: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
346: 8b 01 movw r16, r22
348: ce 01 movw r24, r28
34a: 64 e6 ldi r22, 0x64 ; 100
34c: 70 e0 ldi r23, 0x00 ; 0
34e: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
352: 6a e0 ldi r22, 0x0A ; 10
354: 70 e0 ldi r23, 0x00 ; 0
356: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
35a: 7b 01 movw r14, r22
35c: 33 27 eor r19, r19
35e: 2f 70 andi r18, 0x0F ; 15
360: 30 70 andi r19, 0x00 ; 0
362: 81 e7 ldi r24, 0x71 ; 113
364: 92 e0 ldi r25, 0x02 ; 2
366: 28 9f mul r18, r24
368: 50 01 movw r10, r0
36a: 29 9f mul r18, r25
36c: b0 0c add r11, r0
36e: 38 9f mul r19, r24
370: b0 0c add r11, r0
372: 11 24 eor r1, r1
374: 85 e7 ldi r24, 0x75 ; 117
376: 90 e0 ldi r25, 0x00 ; 0
378: 0e 94 5f 00 call 0xbe ; 0xbe <Usart_PutString>
37c: c1 14 cp r12, r1
37e: d1 04 cpc r13, r1
380: e9 f4 brne .+58 ; 0x3bc <main+0x16a>
382: 5d 9b sbis 0x0b, 5 ; 11
384: fe cf rjmp .-4 ; 0x382 <main+0x130>
386: 80 e2 ldi r24, 0x20 ; 32
388: 8c b9 out 0x0c, r24 ; 12
38a: 01 15 cp r16, r1
38c: 11 05 cpc r17, r1
38e: 29 f4 brne .+10 ; 0x39a <main+0x148>
390: 5d 9b sbis 0x0b, 5 ; 11
392: fe cf rjmp .-4 ; 0x390 <main+0x13e>
394: 80 e2 ldi r24, 0x20 ; 32
396: 8c b9 out 0x0c, r24 ; 12
398: 05 c0 rjmp .+10 ; 0x3a4 <main+0x152>
39a: 60 2f mov r22, r16
39c: 5d 9b sbis 0x0b, 5 ; 11
39e: fe cf rjmp .-4 ; 0x39c <main+0x14a>
3a0: 60 5d subi r22, 0xD0 ; 208
3a2: 6c b9 out 0x0c, r22 ; 12
3a4: e1 14 cp r14, r1
3a6: f1 04 cpc r15, r1
3a8: 29 f4 brne .+10 ; 0x3b4 <main+0x162>
3aa: 5d 9b sbis 0x0b, 5 ; 11
3ac: fe cf rjmp .-4 ; 0x3aa <main+0x158>
3ae: 80 e2 ldi r24, 0x20 ; 32
3b0: 8c b9 out 0x0c, r24 ; 12
3b2: 13 c0 rjmp .+38 ; 0x3da <main+0x188>
3b4: 6e 2d mov r22, r14
3b6: 5d 9b sbis 0x0b, 5 ; 11
3b8: fe cf rjmp .-4 ; 0x3b6 <main+0x164>
3ba: 0d c0 rjmp .+26 ; 0x3d6 <main+0x184>
3bc: 6c 2d mov r22, r12
3be: 5d 9b sbis 0x0b, 5 ; 11
3c0: fe cf rjmp .-4 ; 0x3be <main+0x16c>
3c2: 60 5d subi r22, 0xD0 ; 208
3c4: 6c b9 out 0x0c, r22 ; 12
3c6: 60 2f mov r22, r16
3c8: 5d 9b sbis 0x0b, 5 ; 11
3ca: fe cf rjmp .-4 ; 0x3c8 <main+0x176>
3cc: 60 5d subi r22, 0xD0 ; 208
3ce: 6c b9 out 0x0c, r22 ; 12
3d0: 6e 2d mov r22, r14
3d2: 5d 9b sbis 0x0b, 5 ; 11
3d4: fe cf rjmp .-4 ; 0x3d2 <main+0x180>
3d6: 60 5d subi r22, 0xD0 ; 208
3d8: 6c b9 out 0x0c, r22 ; 12
3da: ce 01 movw r24, r28
3dc: 6a e0 ldi r22, 0x0A ; 10
3de: 70 e0 ldi r23, 0x00 ; 0
3e0: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
3e4: 5d 9b sbis 0x0b, 5 ; 11
3e6: fe cf rjmp .-4 ; 0x3e4 <main+0x192>
3e8: 80 5d subi r24, 0xD0 ; 208
3ea: 8c b9 out 0x0c, r24 ; 12
3ec: 5d 9b sbis 0x0b, 5 ; 11
3ee: fe cf rjmp .-4 ; 0x3ec <main+0x19a>
3f0: 8e e2 ldi r24, 0x2E ; 46
3f2: 8c b9 out 0x0c, r24 ; 12
3f4: c5 01 movw r24, r10
3f6: 68 ee ldi r22, 0xE8 ; 232
3f8: 73 e0 ldi r23, 0x03 ; 3
3fa: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
3fe: 5d 9b sbis 0x0b, 5 ; 11
400: fe cf rjmp .-4 ; 0x3fe <main+0x1ac>
402: 60 5d subi r22, 0xD0 ; 208
404: 6c b9 out 0x0c, r22 ; 12
406: c5 01 movw r24, r10
408: 68 ee ldi r22, 0xE8 ; 232
40a: 73 e0 ldi r23, 0x03 ; 3
40c: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
410: 64 e6 ldi r22, 0x64 ; 100
412: 70 e0 ldi r23, 0x00 ; 0
414: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
418: 5d 9b sbis 0x0b, 5 ; 11
41a: fe cf rjmp .-4 ; 0x418 <main+0x1c6>
41c: 60 5d subi r22, 0xD0 ; 208
41e: 6c b9 out 0x0c, r22 ; 12
420: c5 01 movw r24, r10
422: 64 e6 ldi r22, 0x64 ; 100
424: 70 e0 ldi r23, 0x00 ; 0
426: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
42a: 6a e0 ldi r22, 0x0A ; 10
42c: 70 e0 ldi r23, 0x00 ; 0
42e: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
432: 5d 9b sbis 0x0b, 5 ; 11
434: fe cf rjmp .-4 ; 0x432 <main+0x1e0>
436: 60 5d subi r22, 0xD0 ; 208
438: 6c b9 out 0x0c, r22 ; 12
43a: c5 01 movw r24, r10
43c: 6a e0 ldi r22, 0x0A ; 10
43e: 70 e0 ldi r23, 0x00 ; 0
440: 0e 94 44 02 call 0x488 ; 0x488 <__udivmodhi4>
444: 5d 9b sbis 0x0b, 5 ; 11
446: fe cf rjmp .-4 ; 0x444 <main+0x1f2>
448: 80 5d subi r24, 0xD0 ; 208
44a: 8c b9 out 0x0c, r24 ; 12
44c: 5d 9b sbis 0x0b, 5 ; 11
44e: fe cf rjmp .-4 ; 0x44c <main+0x1fa>
450: 80 e2 ldi r24, 0x20 ; 32
452: 8c b9 out 0x0c, r24 ; 12
454: 5d 9b sbis 0x0b, 5 ; 11
456: fe cf rjmp .-4 ; 0x454 <main+0x202>
458: 8f e6 ldi r24, 0x6F ; 111
45a: 8c b9 out 0x0c, r24 ; 12
45c: 5d 9b sbis 0x0b, 5 ; 11
45e: fe cf rjmp .-4 ; 0x45c <main+0x20a>
460: 83 e4 ldi r24, 0x43 ; 67
462: 8c b9 out 0x0c, r24 ; 12
464: 5d 9b sbis 0x0b, 5 ; 11
466: fe cf rjmp .-4 ; 0x464 <__stack+0x5>
468: 8d e0 ldi r24, 0x0D ; 13
46a: 8c b9 out 0x0c, r24 ; 12
46c: 5d 9b sbis 0x0b, 5 ; 11
46e: fe cf rjmp .-4 ; 0x46c <__stack+0xd>
470: 8a e0 ldi r24, 0x0A ; 10
472: 8c b9 out 0x0c, r24 ; 12
474: 78 94 sei
476: 10 e0 ldi r17, 0x00 ; 0
478: 84 e1 ldi r24, 0x14 ; 20
47a: 90 e0 ldi r25, 0x00 ; 0
47c: 0e 94 03 01 call 0x206 ; 0x206 <Delayms>
480: 1f 5f subi r17, 0xFF ; 255
482: 18 3c cpi r17, 0xC8 ; 200
484: c9 f7 brne .-14 ; 0x478 <__stack+0x19>
486: 08 cf rjmp .-496 ; 0x298 <main+0x46>
00000488 <__udivmodhi4>:
488: aa 1b sub r26, r26
48a: bb 1b sub r27, r27
48c: 51 e1 ldi r21, 0x11 ; 17
48e: 07 c0 rjmp .+14 ; 0x49e <__udivmodhi4_ep>
00000490 <__udivmodhi4_loop>:
490: aa 1f adc r26, r26
492: bb 1f adc r27, r27
494: a6 17 cp r26, r22
496: b7 07 cpc r27, r23
498: 10 f0 brcs .+4 ; 0x49e <__udivmodhi4_ep>
49a: a6 1b sub r26, r22
49c: b7 0b sbc r27, r23
0000049e <__udivmodhi4_ep>:
49e: 88 1f adc r24, r24
4a0: 99 1f adc r25, r25
4a2: 5a 95 dec r21
4a4: a9 f7 brne .-22 ; 0x490 <__udivmodhi4_loop>
4a6: 80 95 com r24
4a8: 90 95 com r25
4aa: bc 01 movw r22, r24
4ac: cd 01 movw r24, r26
4ae: 08 95 ret
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -