?? main.lst
字號:
59:main.c **** GUI_CPutChar8_8(12, 55, Rec_D+48,Red);
403 .LM3:
404 /* #NOAPP */
405 0002 8091 0000 lds r24,Rec_D
406 0006 805D subi r24,lo8(-(48))
407 0008 23E0 ldi r18,lo8(3)
408 000a 482F mov r20,r24
409 000c 67E3 ldi r22,lo8(55)
410 000e 8CE0 ldi r24,lo8(12)
411 0010 0E94 0000 call GUI_CPutChar8_8
60:main.c **** if(0x0a==Rec_D) /*1010*/
413 .LM4:
414 0014 8091 0000 lds r24,Rec_D
415 0018 8A30 cpi r24,lo8(10)
416 001a 29F4 brne .L4
61:main.c **** {
62:main.c **** Acc=0;
418 .LM5:
419 001c 1092 0000 sts Acc,__zero_reg__
63:main.c **** Rec_Start=1; /* 導言正確 啟動接收數據 */
421 .LM6:
422 0020 81E0 ldi r24,lo8(1)
423 0022 8093 0000 sts Rec_Start,r24
424 .L4:
64:main.c **** }
65:main.c **** if((Rec_D!=0x0a)&&(1==Rec_Start))
426 .LM7:
427 0026 8091 0000 lds r24,Rec_D
428 002a 8A30 cpi r24,lo8(10)
429 002c 71F1 breq .L5
430 002e 8091 0000 lds r24,Rec_Start
431 0032 8130 cpi r24,lo8(1)
432 0034 51F5 brne .L5
66:main.c **** {
67:main.c **** if((0==Acc)&&(!(Rec_D&0x04)))
434 .LM8:
435 0036 9091 0000 lds r25,Acc
436 003a 9923 tst r25
437 003c 31F4 brne .L6
438 003e 8091 0000 lds r24,Rec_D
439 0042 82FD sbrc r24,2
440 0044 02C0 rjmp .L6
68:main.c **** {
69:main.c **** Rec_Start=0;
442 .LM9:
443 0046 9093 0000 sts Rec_Start,r25
444 .L6:
70:main.c **** }
71:main.c **** Acc++;
446 .LM10:
447 004a 9F5F subi r25,lo8(-(1))
448 004c 9093 0000 sts Acc,r25
72:main.c **** TEM_Buffer+=(Rec_D-1)<<(12-(3*Acc));
450 .LM11:
451 0050 8091 0000 lds r24,Rec_D
452 0054 282F mov r18,r24
453 0056 3327 clr r19
454 0058 2150 subi r18,lo8(-(-1))
455 005a 3040 sbci r19,hi8(-(-1))
456 005c 83E0 ldi r24,lo8(3)
457 005e 989F mul r25,r24
458 0060 A001 movw r20,r0
459 0062 1124 clr r1
460 0064 8CE0 ldi r24,lo8(12)
461 0066 90E0 ldi r25,hi8(12)
462 0068 841B sub r24,r20
463 006a 950B sbc r25,r21
464 006c 02C0 rjmp 2f
465 006e 220F 1: lsl r18
466 0070 331F rol r19
467 0072 8A95 2: dec r24
468 0074 E2F7 brpl 1b
469 0076 8091 0000 lds r24,TEM_Buffer
470 007a 9091 0000 lds r25,(TEM_Buffer)+1
471 007e 820F add r24,r18
472 0080 931F adc r25,r19
473 0082 9093 0000 sts (TEM_Buffer)+1,r25
474 0086 8093 0000 sts TEM_Buffer,r24
475 .L5:
73:main.c **** }
74:main.c **** if(Acc==4)
477 .LM12:
478 008a 8091 0000 lds r24,Acc
479 008e 8430 cpi r24,lo8(4)
480 0090 09F0 breq .+2
481 0092 53C0 rjmp .L7
75:main.c **** {
76:main.c **** REC_TEMP=((TEM_Buffer&0x0fc0)>>6)-22;
483 .LM13:
484 0094 4091 0000 lds r20,TEM_Buffer
485 0098 5091 0000 lds r21,(TEM_Buffer)+1
486 009c CA01 movw r24,r20
487 009e 807C andi r24,lo8(4032)
488 00a0 9F70 andi r25,hi8(4032)
489 00a2 66E0 ldi r22,6
490 00a4 9695 1: lsr r25
491 00a6 8795 ror r24
492 00a8 6A95 dec r22
493 00aa E1F7 brne 1b
494 00ac 282F mov r18,r24
495 00ae 2651 subi r18,lo8(-(-22))
77:main.c **** if((REC_TEMP>10)&&(REC_TEMP<41))
497 .LM14:
498 00b0 8152 subi r24,lo8(-(-33))
499 00b2 8E31 cpi r24,lo8(30)
500 00b4 E0F5 brsh .L8
78:main.c **** {
79:main.c **** TEM_H = REC_TEMP;
502 .LM15:
503 00b6 3327 clr r19
504 00b8 3093 0000 sts (TEM_H)+1,r19
505 00bc 2093 0000 sts TEM_H,r18
80:main.c **** if(TEM_H>=TEM_Alarm)
507 .LM16:
508 00c0 8091 0000 lds r24,TEM_Alarm
509 00c4 9927 clr r25
510 00c6 2817 cp r18,r24
511 00c8 3907 cpc r19,r25
512 00ca 20F0 brlo .L9
81:main.c **** {Alarm=1;}
514 .LM17:
515 00cc 81E0 ldi r24,lo8(1)
516 00ce 8093 0000 sts Alarm,r24
517 00d2 03C0 rjmp .L10
518 .L9:
82:main.c **** else
83:main.c **** {Alarm=0;PORTD|=0x01;}
520 .LM18:
521 00d4 1092 0000 sts Alarm,__zero_reg__
522 00d8 909A sbi 50-0x20,0
523 .L10:
84:main.c **** TEM_L=(TEM_Buffer&0x003c)>>2;
525 .LM19:
526 00da CA01 movw r24,r20
527 00dc 8C73 andi r24,lo8(60)
528 00de 9070 andi r25,hi8(60)
529 00e0 9695 lsr r25
530 00e2 8795 ror r24
531 00e4 9695 lsr r25
532 00e6 8795 ror r24
85:main.c **** TEM_L=TEM_L*1000/16;
534 .LM20:
535 00e8 28EE ldi r18,lo8(1000)
536 00ea 33E0 ldi r19,hi8(1000)
537 00ec 829F mul r24,r18
538 00ee B001 movw r22,r0
539 00f0 839F mul r24,r19
540 00f2 700D add r23,r0
541 00f4 929F mul r25,r18
542 00f6 700D add r23,r0
543 00f8 1124 clr r1
544 00fa CB01 movw r24,r22
545 00fc 24E0 ldi r18,4
546 00fe 9695 1: lsr r25
547 0100 8795 ror r24
548 0102 2A95 dec r18
549 0104 E1F7 brne 1b
550 0106 9093 0000 sts (TEM_L)+1,r25
551 010a 8093 0000 sts TEM_L,r24
552 010e 8091 0000 lds r24,KEY
86:main.c **** KEY=(TEM_Buffer&0x0002)? (KEY|0xf0):(KEY&0x0f);
554 .LM21:
555 0112 41FF sbrs r20,1
556 0114 02C0 rjmp .L11
557 0116 806F ori r24,lo8(-16)
558 0118 01C0 rjmp .L12
559 .L11:
560 011a 8F70 andi r24,lo8(15)
561 .L12:
562 011c 8093 0000 sts KEY,r24
87:main.c **** KEY=(TEM_Buffer&0x0001)? (KEY|0x0f):(KEY&0xf0);
564 .LM22:
565 0120 40FF sbrs r20,0
566 0122 02C0 rjmp .L13
567 0124 8F60 ori r24,lo8(15)
568 0126 01C0 rjmp .L14
569 .L13:
570 0128 807F andi r24,lo8(-16)
571 .L14:
572 012a 8093 0000 sts KEY,r24
573 .L8:
88:main.c **** }
89:main.c **** TEM_Buffer=0;
575 .LM23:
576 012e 1092 0000 sts (TEM_Buffer)+1,__zero_reg__
577 0132 1092 0000 sts TEM_Buffer,__zero_reg__
90:main.c **** Rec_Start=0;
579 .LM24:
580 0136 1092 0000 sts Rec_Start,__zero_reg__
581 .L7:
91:main.c **** }
92:main.c **** sei();
583 .LM25:
584 /* #APP */
585 013a 7894 sei
93:main.c **** OSWait(K_SIG,0);
587 .LM26:
588 /* #NOAPP */
589 013c 60E0 ldi r22,lo8(0)
590 013e 81E0 ldi r24,lo8(1)
591 0140 0E94 0000 call OSWait
592 0144 5DCF rjmp .L2
593 /* epilogue: frame size=0 */
594 /* epilogue: noreturn */
595 /* epilogue end (size=0) */
596 /* function task0 size 166 (166) */
601 .Lscope0:
603 .global task1
605 task1:
94:main.c **** }
95:main.c **** }
96:main.c ****
97:main.c **** void task1(void)
98:main.c **** {uint8 i;
607 .LM27:
608 /* prologue: frame size=0 */
609 /* prologue end (size=0) */
610 .L16:
99:main.c **** while(1)
100:main.c **** {
101:main.c **** Display[0]=(TEM_H/10)+48;
612 .LM28:
613 0146 2091 0000 lds r18,TEM_H
614 014a 3091 0000 lds r19,(TEM_H)+1
615 014e C901 movw r24,r18
616 0150 6AE0 ldi r22,lo8(10)
617 0152 70E0 ldi r23,hi8(10)
618 0154 0E94 0000 call __udivmodhi4
619 0158 CB01 movw r24,r22
620 015a 805D subi r24,lo8(-(48))
621 015c 8093 0000 sts Display,r24
102:main.c **** Display[1]=(TEM_H%10)+48;
623 .LM29:
624 0160 C901 movw r24,r18
625 0162 6AE0 ldi r22,lo8(10)
626 0164 70E0 ldi r23,hi8(10)
627 0166 0E94 0000 call __udivmodhi4
628 016a 805D subi r24,lo8(-(48))
629 016c 8093 0000 sts Display+1,r24
103:main.c **** Display[3]=(TEM_L/100)+48;
631 .LM30:
632 0170 2091 0000 lds r18,TEM_L
633 0174 3091 0000 lds r19,(TEM_L)+1
634 0178 C901 movw r24,r18
635 017a 64E6 ldi r22,lo8(100)
636 017c 70E0 ldi r23,hi8(100)
637 017e 0E94 0000 call __udivmodhi4
638 0182 CB01 movw r24,r22
639 0184 805D subi r24,lo8(-(48))
640 0186 8093 0000 sts Display+3,r24
104:main.c **** Display[4]=((TEM_L%100)/10)+48;
642 .LM31:
643 018a C901 movw r24,r18
644 018c 64E6 ldi r22,lo8(100)
645 018e 70E0 ldi r23,hi8(100)
646 0190 0E94 0000 call __udivmodhi4
647 0194 9C01 movw r18,r24
648 0196 6AE0 ldi r22,lo8(10)
649 0198 70E0 ldi r23,hi8(10)
650 019a 0E94 0000 call __udivmodhi4
651 019e CB01 movw r24,r22
652 01a0 805D subi r24,lo8(-(48))
653 01a2 8093 0000 sts Display+4,r24
105:main.c **** Display[5]=((TEM_L%100)%10)+48;
655 .LM32:
656 01a6 C901 movw r24,r18
657 01a8 6AE0 ldi r22,lo8(10)
658 01aa 70E0 ldi r23,hi8(10)
659 01ac 0E94 0000 call __udivmodhi4
660 01b0 805D subi r24,lo8(-(48))
661 01b2 8093 0000 sts Display+5,r24
106:main.c **** Temperature_buffer[0]=TEM_H;
663 .LM33:
664 01b6 8091 0000 lds r24,TEM_H
665 01ba 8093 0000 sts Temperature_buffer,r24
666 .LBB2:
668 .Ltext1:
1:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** /* Copyright (c) 2002, 2003, 2004 Marek Michalkiewicz
2:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** Copyright (c) 2005, 2006 Bjoern Haase
3:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** All rights reserved.
4:F:/Program Files/WINAVR/avr/include/avr/eeprom.h ****
5:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** Redistribution and use in source and binary forms, with or without
6:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** modification, are permitted provided that the following conditions are met:
7:F:/Program Files/WINAVR/avr/include/avr/eeprom.h ****
8:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** * Redistributions of source code must retain the above copyright
9:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** notice, this list of conditions and the following disclaimer.
10:F:/Program Files/WINAVR/avr/include/avr/eeprom.h ****
11:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** * Redistributions in binary form must reproduce the above copyright
12:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** notice, this list of conditions and the following disclaimer in
13:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** the documentation and/or other materials provided with the
14:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** distribution.
15:F:/Program Files/WINAVR/avr/include/avr/eeprom.h ****
16:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** * Neither the name of the copyright holders nor the names of
17:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** contributors may be used to endorse or promote products derived
18:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** from this software without specific prior written permission.
19:F:/Program Files/WINAVR/avr/include/avr/eeprom.h ****
20:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21:F:/Program Files/WINAVR/avr/include/avr/eeprom.h **** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -