📄 main.lss
字号:
5a6: 80 93 61 00 sts 0x0061, r24
display_buffer[2]=0;//空
5aa: 80 93 62 00 sts 0x0062, r24
display_buffer[3]=0;//空
5ae: 80 93 63 00 sts 0x0063, r24
display_buffer[4]=0x5b;//2
5b2: 8b e5 ldi r24, 0x5B ; 91
5b4: 80 93 64 00 sts 0x0064, r24
display_buffer[5]=0x3f;//0
5b8: 8f e3 ldi r24, 0x3F ; 63
5ba: 80 93 65 00 sts 0x0065, r24
//年
temp=(year&0xf0)>>4;
5be: 20 91 81 00 lds r18, 0x0081
5c2: 82 2f mov r24, r18
5c4: 99 27 eor r25, r25
5c6: e4 e0 ldi r30, 0x04 ; 4
5c8: 96 95 lsr r25
5ca: 87 95 ror r24
5cc: ea 95 dec r30
5ce: e1 f7 brne .-8 ; 0x5c8 <display_year+0x28>
display_buffer[6]=pgm_read_byte(display_code+temp);
5d0: e8 2f mov r30, r24
5d2: ff 27 eor r31, r31
5d4: ea 5d subi r30, 0xDA ; 218
5d6: ff 4f sbci r31, 0xFF ; 255
5d8: 84 91 lpm r24, Z
5da: 80 93 66 00 sts 0x0066, r24
temp=year&0x0f;
5de: 2f 70 andi r18, 0x0F ; 15
display_buffer[7]=pgm_read_byte(display_code+temp);
5e0: e2 2f mov r30, r18
5e2: ff 27 eor r31, r31
5e4: ea 5d subi r30, 0xDA ; 218
5e6: ff 4f sbci r31, 0xFF ; 255
5e8: 84 91 lpm r24, Z
5ea: 80 93 67 00 sts 0x0067, r24
5ee: 08 95 ret
000005f0 <display_timer>:
}
void display_timer(uchar number,uchar timer_hour,uchar timer_minute)
{
5f0: 26 2f mov r18, r22
5f2: 34 2f mov r19, r20
uchar temp=0;
5f4: 90 e0 ldi r25, 0x00 ; 0
display_buffer[0]=pgm_read_byte(display_code+number);
5f6: e8 2f mov r30, r24
5f8: ff 27 eor r31, r31
5fa: ea 5d subi r30, 0xDA ; 218
5fc: ff 4f sbci r31, 0xFF ; 255
5fe: 84 91 lpm r24, Z
600: 80 93 60 00 sts 0x0060, r24
display_buffer[1]=0x00;//空
604: 90 93 61 00 sts 0x0061, r25
display_buffer[2]=0x00;//空
608: 90 93 62 00 sts 0x0062, r25
//hour
temp=(timer_hour&0xf0)>>4;
60c: 86 2f mov r24, r22
60e: 99 27 eor r25, r25
610: a4 e0 ldi r26, 0x04 ; 4
612: 96 95 lsr r25
614: 87 95 ror r24
616: aa 95 dec r26
618: e1 f7 brne .-8 ; 0x612 <display_timer+0x22>
display_buffer[3]=pgm_read_byte(display_code+temp);
61a: e8 2f mov r30, r24
61c: ff 27 eor r31, r31
61e: ea 5d subi r30, 0xDA ; 218
620: ff 4f sbci r31, 0xFF ; 255
622: 84 91 lpm r24, Z
624: 80 93 63 00 sts 0x0063, r24
temp=timer_hour&0x0f;
628: 2f 70 andi r18, 0x0F ; 15
display_buffer[4]=pgm_read_byte(display_code+temp);
62a: e2 2f mov r30, r18
62c: ff 27 eor r31, r31
62e: ea 5d subi r30, 0xDA ; 218
630: ff 4f sbci r31, 0xFF ; 255
632: 84 91 lpm r24, Z
634: 80 93 64 00 sts 0x0064, r24
display_buffer[5]=0x40;//-
638: 80 e4 ldi r24, 0x40 ; 64
63a: 80 93 65 00 sts 0x0065, r24
//minute
temp=(timer_minute&0xf0)>>4;
63e: 84 2f mov r24, r20
640: 99 27 eor r25, r25
642: f4 e0 ldi r31, 0x04 ; 4
644: 96 95 lsr r25
646: 87 95 ror r24
648: fa 95 dec r31
64a: e1 f7 brne .-8 ; 0x644 <display_timer+0x54>
display_buffer[6]=pgm_read_byte(display_code+temp);
64c: e8 2f mov r30, r24
64e: ff 27 eor r31, r31
650: ea 5d subi r30, 0xDA ; 218
652: ff 4f sbci r31, 0xFF ; 255
654: 84 91 lpm r24, Z
656: 80 93 66 00 sts 0x0066, r24
temp=timer_minute&0x0f;
65a: 3f 70 andi r19, 0x0F ; 15
display_buffer[7]=pgm_read_byte(display_code+temp);
65c: e3 2f mov r30, r19
65e: ff 27 eor r31, r31
660: ea 5d subi r30, 0xDA ; 218
662: ff 4f sbci r31, 0xFF ; 255
664: 84 91 lpm r24, Z
666: 80 93 67 00 sts 0x0067, r24
66a: 08 95 ret
0000066c <check_timer>:
}
void check_timer(void)
{
if(timer0_hour) flag|=1<<timer0_available;
66c: e0 91 75 00 lds r30, 0x0075
670: ee 23 and r30, r30
672: 31 f0 breq .+12 ; 0x680 <check_timer+0x14>
674: 80 91 78 00 lds r24, 0x0078
678: 84 60 ori r24, 0x04 ; 4
67a: 80 93 78 00 sts 0x0078, r24
67e: 0b c0 rjmp .+22 ; 0x696 <check_timer+0x2a>
else if(timer0_minute) flag|=1<<timer0_available;
680: 80 91 74 00 lds r24, 0x0074
684: 90 91 78 00 lds r25, 0x0078
688: 88 23 and r24, r24
68a: 11 f0 breq .+4 ; 0x690 <check_timer+0x24>
68c: 94 60 ori r25, 0x04 ; 4
68e: 01 c0 rjmp .+2 ; 0x692 <check_timer+0x26>
else flag&=~(1<<timer0_available);
690: 9b 7f andi r25, 0xFB ; 251
692: 90 93 78 00 sts 0x0078, r25
if(timer1_hour) flag|=1<<timer1_available;
696: 70 91 73 00 lds r23, 0x0073
69a: 77 23 and r23, r23
69c: 31 f0 breq .+12 ; 0x6aa <check_timer+0x3e>
69e: 80 91 78 00 lds r24, 0x0078
6a2: 88 60 ori r24, 0x08 ; 8
6a4: 80 93 78 00 sts 0x0078, r24
6a8: 0b c0 rjmp .+22 ; 0x6c0 <check_timer+0x54>
else if(timer1_minute) flag|=1<<timer1_available;
6aa: 80 91 72 00 lds r24, 0x0072
6ae: 90 91 78 00 lds r25, 0x0078
6b2: 88 23 and r24, r24
6b4: 11 f0 breq .+4 ; 0x6ba <check_timer+0x4e>
6b6: 98 60 ori r25, 0x08 ; 8
6b8: 01 c0 rjmp .+2 ; 0x6bc <check_timer+0x50>
else flag&=~(1<<timer1_available);
6ba: 97 7f andi r25, 0xF7 ; 247
6bc: 90 93 78 00 sts 0x0078, r25
if(timer2_hour) flag|=1<<timer2_available;
6c0: 60 91 71 00 lds r22, 0x0071
6c4: 66 23 and r22, r22
6c6: 31 f0 breq .+12 ; 0x6d4 <check_timer+0x68>
6c8: 80 91 78 00 lds r24, 0x0078
6cc: 80 61 ori r24, 0x10 ; 16
6ce: 80 93 78 00 sts 0x0078, r24
6d2: 0b c0 rjmp .+22 ; 0x6ea <check_timer+0x7e>
else if(timer2_minute) flag|=1<<timer2_available;
6d4: 80 91 70 00 lds r24, 0x0070
6d8: 90 91 78 00 lds r25, 0x0078
6dc: 88 23 and r24, r24
6de: 11 f0 breq .+4 ; 0x6e4 <check_timer+0x78>
6e0: 90 61 ori r25, 0x10 ; 16
6e2: 01 c0 rjmp .+2 ; 0x6e6 <check_timer+0x7a>
else flag&=~(1<<timer2_available);
6e4: 9f 7e andi r25, 0xEF ; 239
6e6: 90 93 78 00 sts 0x0078, r25
if(timer3_hour) flag|=1<<timer3_available;
6ea: 50 91 6f 00 lds r21, 0x006F
6ee: 55 23 and r21, r21
6f0: 31 f0 breq .+12 ; 0x6fe <check_timer+0x92>
6f2: 80 91 78 00 lds r24, 0x0078
6f6: 80 62 ori r24, 0x20 ; 32
6f8: 80 93 78 00 sts 0x0078, r24
6fc: 0b c0 rjmp .+22 ; 0x714 <check_timer+0xa8>
else if(timer3_minute) flag|=1<<timer3_available;
6fe: 80 91 6e 00 lds r24, 0x006E
702: 90 91 78 00 lds r25, 0x0078
706: 88 23 and r24, r24
708: 11 f0 breq .+4 ; 0x70e <check_timer+0xa2>
70a: 90 62 ori r25, 0x20 ; 32
70c: 01 c0 rjmp .+2 ; 0x710 <check_timer+0xa4>
else flag&=~(1<<timer3_available);
70e: 9f 7d andi r25, 0xDF ; 223
710: 90 93 78 00 sts 0x0078, r25
if(timer4_hour) flag|=1<<timer4_available;
714: 40 91 6d 00 lds r20, 0x006D
718: 44 23 and r20, r20
71a: 31 f0 breq .+12 ; 0x728 <check_timer+0xbc>
71c: 80 91 78 00 lds r24, 0x0078
720: 80 64 ori r24, 0x40 ; 64
722: 80 93 78 00 sts 0x0078, r24
726: 0b c0 rjmp .+22 ; 0x73e <check_timer+0xd2>
else if(timer4_minute) flag|=1<<timer4_available;
728: 80 91 6c 00 lds r24, 0x006C
72c: 90 91 78 00 lds r25, 0x0078
730: 88 23 and r24, r24
732: 11 f0 breq .+4 ; 0x738 <check_timer+0xcc>
734: 90 64 ori r25, 0x40 ; 64
736: 01 c0 rjmp .+2 ; 0x73a <check_timer+0xce>
else flag&=~(1<<timer4_available);
738: 9f 7b andi r25, 0xBF ; 191
73a: 90 93 78 00 sts 0x0078, r25
if(timer5_hour) flag|=1<<timer5_available;
73e: 30 91 6b 00 lds r19, 0x006B
742: 33 23 and r19, r19
744: 31 f0 breq .+12 ; 0x752 <check_timer+0xe6>
746: 80 91 78 00 lds r24, 0x0078
74a: 80 68 ori r24, 0x80 ; 128
74c: 80 93 78 00 sts 0x0078, r24
750: 0b c0 rjmp .+22 ; 0x768 <check_timer+0xfc>
else if(timer5_minute) flag|=1<<timer5_available;
752: 80 91 6a 00 lds r24, 0x006A
756: 90 91 78 00 lds r25, 0x0078
75a: 88 23 and r24, r24
75c: 11 f0 breq .+4 ; 0x762 <check_timer+0xf6>
75e: 90 68 ori r25, 0x80 ; 128
760: 01 c0 rjmp .+2 ; 0x764 <check_timer+0xf8>
else flag&=~(1<<timer5_available);
762: 9f 77 andi r25, 0x7F ; 127
764: 90 93 78 00 sts 0x0078, r25
if(flag&(1<<timer0_available))
768: 20 91 78 00 lds r18, 0x0078
76c: 22 ff sbrs r18, 2
76e: 0d c0 rjmp .+26 ; 0x78a <check_timer+0x11e>
{
if(timer0_hour==hour)
770: 80 91 7d 00 lds r24, 0x007D
774: e8 17 cp r30, r24
776: 49 f4 brne .+18 ; 0x78a <check_timer+0x11e>
{
if(timer0_minute==minute) flag|=1<<buzzer_flag;
778: 90 91 74 00 lds r25, 0x0074
77c: 80 91 7c 00 lds r24, 0x007C
780: 98 17 cp r25, r24
782: 19 f4 brne .+6 ; 0x78a <check_timer+0x11e>
784: 22 60 ori r18, 0x02 ; 2
786: 20 93 78 00 sts 0x0078, r18
}
}
if(flag&(1<<timer1_available))
78a: 20 91 78 00 lds r18, 0x0078
78e: 23 ff sbrs r18, 3
790: 0d c0 rjmp .+26 ; 0x7ac <check_timer+0x140>
{
if(timer1_hour==hour)
792: 80 91 7d 00 lds r24, 0x007D
796: 78 17 cp r23, r24
798: 49 f4 brne .+18 ; 0x7ac <check_timer+0x140>
{
if(timer1_minute==minute) flag|=1<<buzzer_flag;
79a: 90 91 72 00 lds r25, 0x0072
79e: 80 91 7c 00 lds r24, 0x007C
7a2: 98 17 cp r25, r24
7a4: 19 f4 brne .+6 ; 0x7ac <check_timer+0x140>
7a6: 22 60 ori r18, 0x02 ; 2
7a8: 20 93 78 00 sts 0x0078, r18
}
}
if(flag&(1<<timer2_available))
7ac: 20 91 78 00 lds r18, 0x0078
7b0: 24 ff sbrs r18, 4
7b2: 0d c0 rjmp .+26 ; 0x7ce <check_timer+0x162>
{
if(timer2_hour==hour)
7b4: 80 91 7d 00 lds r24, 0x007D
7b8: 68 17 cp r22, r24
7ba: 49 f4 brne .+18 ; 0x7ce <check_timer+0x162>
{
if(timer2_minute==minute) flag|=1<<buzzer_flag;
7bc: 90 91 70 00 lds r25, 0x0070
7c0: 80 91 7c 00 lds r24, 0x007C
7c4: 98 17 cp r25, r24
7c6: 19 f4 brne .+6 ; 0x7ce <check_timer+0x162>
7c8: 22 60 ori r18, 0x02 ; 2
7ca: 20 93 78 00 sts 0x0078, r18
}
}
if(flag&(1<<timer3_available))
7ce: 20 91 78 00 lds r18, 0x0078
7d2: 25 ff sbrs r18, 5
7d4: 0d c0 rjmp .+26 ; 0x7f0 <check_timer+0x184>
{
if(timer3_hour==hour)
7d6: 80 91 7d 00 lds r24, 0x007D
7da: 58 17 cp r21, r24
7dc: 49 f4 brne .+18 ; 0x7f0 <check_timer+0x184>
{
if(timer3_minute==minute) flag|=1<<buzzer_flag;
7de: 90 91 6e 00 lds r25, 0x006E
7e2: 80 91 7c 00 lds r24, 0x007C
7e6: 98 17 cp r25, r24
7e8: 19 f4 brne .+6 ; 0x7f0 <check_timer+0x184>
7ea: 22 60 ori r18, 0x02 ; 2
7ec: 20 93 78 00 sts 0x0078, r18
}
}
if(flag&(1<<timer4_available))
7f0: 20 91 78 00 lds r18, 0x0078
7f4: 26 ff sbrs r18, 6
7f6: 0d c0 rjmp .+26 ; 0x812 <check_timer+0x1a6>
{
if(timer4_hour==hour)
7f8: 80 91 7d 00 lds r24, 0x007D
7fc: 48 17 cp r20, r24
7fe: 49 f4 brne .+18 ; 0x812 <check_timer+0x1a6>
{
if(timer4_minute==minute) flag|=1<<buzzer_flag;
800: 90 91 6c 00 lds r25, 0x006C
804: 80 91 7c 00 lds r24, 0x007C
808: 98 17 cp r25, r24
80a: 19 f4 brne .+6 ; 0x812 <check_timer+0x1a6>
80c: 22 60 ori r18, 0x02 ; 2
80e: 20 93 78 00 sts 0x0078, r18
}
}
if(flag&(1<<timer5_available))
812: 20 91 78 00 lds r18, 0x0078
816: 27 ff sbrs r18, 7
818: 0d c0 rjmp .+26 ; 0x834 <check_timer+0x1c8>
{
if(timer5_hour==hour)
81a: 80 91 7d 00 lds r24, 0x007D
81e: 38 17 cp r19, r24
820: 49 f4 brne .+18 ; 0x834 <check_timer+0x1c8>
{
if(timer5_minute==minute) flag|=1<<buzzer_flag;
822: 90 91 6a 00 lds r25, 0x006A
826: 80 91 7c 00 lds r24, 0x007C
82a: 98 17 cp r25, r24
82c: 19 f4 brne .+6 ; 0x834 <check_timer+0x1c8>
82e: 22 60 ori r18, 0x02 ; 2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -