📄 onewire.lst
字号:
313 016c F091 0000 lds r31,(OW_IN)+1
314 0170 E081 ld r30,Z
315 0172 2091 0000 lds r18,OW_PIN_MASK
316 0176 E223 and r30,r18
317 0178 09F4 brne .L14
318 017a 3E2F mov r19,r30
319 .L14:
320 .LBB12:
321 .LM44:
322 017c 89E5 ldi r24,lo8(89)
323 017e 90E0 ldi r25,hi8(89)
324 .LBB13:
325 .LM45:
326 /* #APP */
327 0180 8115 cp r24,__zero_reg__
328 0182 9105 cpc r25,__zero_reg__
329 0184 11F0 breq L_Exit_200
330 L_LOOP_200:
331 0186 0197 sbiw r24,1
332 0188 F1F7 brne L_LOOP_200
333 L_Exit_200:
334
335 /* #NOAPP */
336 .LBE13:
337 .LBE12:
338 .LM46:
339 018a E091 0000 lds r30,OW_DDR
340 018e F091 0000 lds r31,(OW_DDR)+1
341 0192 2095 com r18
342 0194 8081 ld r24,Z
343 0196 8223 and r24,r18
344 0198 8083 st Z,r24
345 .LM47:
346 019a 4FBF out 95-0x20,r20
347 .LM48:
348 019c 832F mov r24,r19
349 019e 9927 clr r25
350 /* epilogue: frame size=0 */
351 01a0 0895 ret
352 /* epilogue end (size=1) */
353 /* function ow_bit_io size 102 (101) */
354 .LFE8:
356 .global ow_byte_wr
358 ow_byte_wr:
359 .LFB9:
360 .LM49:
361 /* prologue: frame size=0 */
362 01a2 1F93 push r17
363 01a4 CF93 push r28
364 /* prologue end (size=2) */
365 01a6 C82F mov r28,r24
366 .LM50:
367 01a8 18E0 ldi r17,lo8(8)
368 .L17:
369 .LM51:
370 01aa 8C2F mov r24,r28
371 01ac 8170 andi r24,lo8(1)
372 01ae 0E94 0000 call ow_bit_io
373 .LM52:
374 01b2 C695 lsr r28
375 .LM53:
376 01b4 8111 cpse r24,__zero_reg__
377 01b6 C068 ori r28,lo8(-128)
378 .L19:
379 .LM54:
380 01b8 1150 subi r17,lo8(-(-1))
381 01ba B9F7 brne .L17
382 .LM55:
383 01bc 8C2F mov r24,r28
384 01be 9927 clr r25
385 /* epilogue: frame size=0 */
386 01c0 CF91 pop r28
387 01c2 1F91 pop r17
388 01c4 0895 ret
389 /* epilogue end (size=3) */
390 /* function ow_byte_wr size 20 (15) */
391 .LFE9:
393 .global ow_byte_rd
395 ow_byte_rd:
396 .LFB10:
397 .LM56:
398 /* prologue: frame size=0 */
399 /* prologue end (size=0) */
400 .LM57:
401 01c6 8FEF ldi r24,lo8(-1)
402 01c8 0E94 0000 call ow_byte_wr
403 .LM58:
404 01cc 9927 clr r25
405 /* epilogue: frame size=0 */
406 01ce 0895 ret
407 /* epilogue end (size=1) */
408 /* function ow_byte_rd size 5 (4) */
409 .LFE10:
411 .global ow_rom_search
413 ow_rom_search:
414 .LFB11:
415 .LM59:
416 /* prologue: frame size=0 */
417 01d0 DF92 push r13
418 01d2 EF92 push r14
419 01d4 FF92 push r15
420 01d6 0F93 push r16
421 01d8 1F93 push r17
422 01da CF93 push r28
423 01dc DF93 push r29
424 /* prologue end (size=7) */
425 01de E82E mov r14,r24
426 01e0 EB01 movw r28,r22
427 .LM60:
428 01e2 0E94 0000 call ow_reset
429 01e6 182F mov r17,r24
430 01e8 8823 tst r24
431 01ea 19F0 breq .L23
432 .LM61:
433 01ec 8FEF ldi r24,lo8(255)
434 01ee 90E0 ldi r25,hi8(255)
435 01f0 32C0 rjmp .L22
436 .L23:
437 .LM62:
438 01f2 80EF ldi r24,lo8(-16)
439 01f4 0E94 0000 call ow_byte_wr
440 .LM63:
441 01f8 D12E mov r13,r17
442 .LM64:
443 01fa 00E4 ldi r16,lo8(64)
444 .L24:
445 .LM65:
446 01fc 88E0 ldi r24,lo8(8)
447 01fe F82E mov r15,r24
448 .L27:
449 .LM66:
450 0200 81E0 ldi r24,lo8(1)
451 0202 0E94 0000 call ow_bit_io
452 0206 182F mov r17,r24
453 .LM67:
454 0208 81E0 ldi r24,lo8(1)
455 020a 0E94 0000 call ow_bit_io
456 020e 8823 tst r24
457 0210 29F0 breq .L30
458 .LM68:
459 0212 1123 tst r17
460 0214 71F0 breq .L32
461 .LM69:
462 0216 8EEF ldi r24,lo8(254)
463 0218 90E0 ldi r25,hi8(254)
464 021a 1DC0 rjmp .L22
465 .L30:
466 .LM70:
467 021c 1123 tst r17
468 021e 49F4 brne .L32
469 .LM71:
470 0220 0E15 cp r16,r14
471 0222 28F0 brlo .L35
472 0224 8881 ld r24,Y
473 0226 80FF sbrs r24,0
474 0228 04C0 rjmp .L32
475 022a E016 cp r14,r16
476 022c 11F0 breq .L32
477 .L35:
478 .LM72:
479 022e 11E0 ldi r17,lo8(1)
480 .LM73:
481 0230 D02E mov r13,r16
482 .L32:
483 .LM74:
484 0232 812F mov r24,r17
485 0234 0E94 0000 call ow_bit_io
486 .LM75:
487 0238 8881 ld r24,Y
488 023a 8695 lsr r24
489 023c 8883 st Y,r24
490 .LM76:
491 023e 1123 tst r17
492 0240 11F0 breq .L36
493 0242 8068 ori r24,lo8(-128)
494 0244 8883 st Y,r24
495 .L36:
496 .LM77:
497 0246 0150 subi r16,lo8(-(-1))
498 .LM78:
499 0248 FA94 dec r15
500 024a D1F6 brne .L27
501 .LM79:
502 024c 2196 adiw r28,1
503 .LM80:
504 024e 0023 tst r16
505 0250 A9F6 brne .L24
506 .LM81:
507 0252 8D2D mov r24,r13
508 0254 9927 clr r25
509 .L22:
510 /* epilogue: frame size=0 */
511 0256 DF91 pop r29
512 0258 CF91 pop r28
513 025a 1F91 pop r17
514 025c 0F91 pop r16
515 025e FF90 pop r15
516 0260 EF90 pop r14
517 0262 DF90 pop r13
518 0264 0895 ret
519 /* epilogue end (size=8) */
520 /* function ow_rom_search size 76 (61) */
521 .LFE11:
523 .global ow_command
525 ow_command:
526 .LFB12:
527 .LM82:
528 /* prologue: frame size=0 */
529 0266 0F93 push r16
530 0268 1F93 push r17
531 026a CF93 push r28
532 026c DF93 push r29
533 /* prologue end (size=4) */
534 026e 082F mov r16,r24
535 0270 EB01 movw r28,r22
536 .LM83:
537 0272 0E94 0000 call ow_reset
538 .LM84:
539 0276 2097 sbiw r28,0
540 0278 51F0 breq .L38
541 .LM85:
542 027a 85E5 ldi r24,lo8(85)
543 027c 0E94 0000 call ow_byte_wr
544 .LM86:
545 0280 18E0 ldi r17,lo8(8)
546 .L39:
547 .LM87:
548 0282 8991 ld r24,Y+
549 0284 0E94 0000 call ow_byte_wr
550 .LM88:
551 0288 1150 subi r17,lo8(-(-1))
552 028a D9F7 brne .L39
553 028c 03C0 rjmp .L42
554 .L38:
555 .LM89:
556 028e 8CEC ldi r24,lo8(-52)
557 0290 0E94 0000 call ow_byte_wr
558 .L42:
559 .LM90:
560 0294 802F mov r24,r16
561 0296 0E94 0000 call ow_byte_wr
562 /* epilogue: frame size=0 */
563 029a DF91 pop r29
564 029c CF91 pop r28
565 029e 1F91 pop r17
566 02a0 0F91 pop r16
567 02a2 0895 ret
568 /* epilogue end (size=5) */
569 /* function ow_command size 32 (23) */
570 .LFE12:
572 .comm OW_PIN_MASK,1,1
573 .comm OW_IN,2,1
574 .comm OW_OUT,2,1
575 .comm OW_DDR,2,1
576 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 onewire.c
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:3 *ABS*:0000003f __SREG__
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:4 *ABS*:0000003e __SP_H__
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:5 *ABS*:0000003d __SP_L__
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:6 *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:7 *ABS*:00000001 __zero_reg__
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:20 .text:00000000 ow_reset
*COM*:00000002 OW_OUT
*COM*:00000001 OW_PIN_MASK
*COM*:00000002 OW_DDR
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:53 .text:00000034 L_Exit_24
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:50 .text:00000030 L_LOOP_24
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:85 .text:0000005a L_Exit_44
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:82 .text:00000056 L_LOOP_44
*COM*:00000002 OW_IN
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:111 .text:0000007a L_Exit_60
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:108 .text:00000076 L_LOOP_60
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:134 .text:00000088 ow_set_bus
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:167 .text:000000b8 ow_input_pin_state
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:188 .text:000000cc ow_parasite_enable
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:215 .text:000000f2 ow_parasite_disable
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:244 .text:0000011c ow_bit_io
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:276 .text:00000142 L_Exit_159
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:273 .text:0000013e L_LOOP_159
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:306 .text:00000168 L_Exit_180
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:303 .text:00000164 L_LOOP_180
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:333 .text:0000018a L_Exit_200
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:330 .text:00000186 L_LOOP_200
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:358 .text:000001a2 ow_byte_wr
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:395 .text:000001c6 ow_byte_rd
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:413 .text:000001d0 ow_rom_search
C:\DOCUME~1\kelly\LOCALS~1\Temp/ccC8aaaa.s:525 .text:00000266 ow_command
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -