📄 key.lis
字号:
007A ; time_array[1]=0x00;
007A 2224 clr R2
007C 3324 clr R3
007E 30920300 sts _time_array+2+1,R3
0082 20920200 sts _time_array+2,R2
0086 .dbline 42
0086 ; }
0086 L7:
0086 .dbline 43
0086 ; Draw_NtoArab(0x00,0x28,time_array[0]);
0086 20900000 lds R2,_time_array
008A 30900100 lds R3,_time_array+1
008E 2882 std y+0,R2
0090 28E2 ldi R18,40
0092 0027 clr R16
0094 0E940000 xcall _Draw_NtoArab
0098 .dbline 44
0098 ; Draw_NtoArab(0x00,0x30,time_array[1]);
0098 20900200 lds R2,_time_array+2
009C 30900300 lds R3,_time_array+2+1
00A0 2882 std y+0,R2
00A2 20E3 ldi R18,48
00A4 0027 clr R16
00A6 0E940000 xcall _Draw_NtoArab
00AA .dbline -2
00AA L1:
00AA 2196 adiw R28,1
00AC .dbline 0 ; func end
00AC 0895 ret
00AE .dbend
00AE .dbfunc e incmin _incmin fV
.even
00AE _incmin::
00AE 2197 sbiw R28,1
00B0 .dbline -1
00B0 .dbline 49
00B0 ; }
00B0 ;
00B0 ;
00B0 ; void incmin(void) //分钟加1的子程序,在调整分钟的状态下按下加1按键调用到此程序
00B0 ; {
00B0 .dbline 50
00B0 ; time_array[3]++;
00B0 80910600 lds R24,_time_array+6
00B4 90910700 lds R25,_time_array+6+1
00B8 0196 adiw R24,1
00BA 90930700 sts _time_array+6+1,R25
00BE 80930600 sts _time_array+6,R24
00C2 .dbline 51
00C2 ; if(time_array[3]==0x0A)
00C2 8A30 cpi R24,10
00C4 E0E0 ldi R30,0
00C6 9E07 cpc R25,R30
00C8 B9F4 brne L14
00CA .dbline 52
00CA ; {
00CA .dbline 53
00CA ; time_array[3]=0x00;
00CA 2224 clr R2
00CC 3324 clr R3
00CE 30920700 sts _time_array+6+1,R3
00D2 20920600 sts _time_array+6,R2
00D6 .dbline 54
00D6 ; time_array[2]++;
00D6 80910400 lds R24,_time_array+4
00DA 90910500 lds R25,_time_array+4+1
00DE 0196 adiw R24,1
00E0 90930500 sts _time_array+4+1,R25
00E4 80930400 sts _time_array+4,R24
00E8 .dbline 55
00E8 ; if(time_array[2]==0x06)
00E8 8630 cpi R24,6
00EA E0E0 ldi R30,0
00EC 9E07 cpc R25,R30
00EE 21F4 brne L19
00F0 .dbline 56
00F0 ; time_array[2]=0x00;
00F0 30920500 sts _time_array+4+1,R3
00F4 20920400 sts _time_array+4,R2
00F8 L19:
00F8 .dbline 57
00F8 ; }
00F8 L14:
00F8 .dbline 58
00F8 ; Draw_NtoArab(0x00,0x40,time_array[2]);
00F8 20900400 lds R2,_time_array+4
00FC 30900500 lds R3,_time_array+4+1
0100 2882 std y+0,R2
0102 20E4 ldi R18,64
0104 0027 clr R16
0106 0E940000 xcall _Draw_NtoArab
010A .dbline 59
010A ; Draw_NtoArab(0x00,0x48,time_array[3]);
010A 20900600 lds R2,_time_array+6
010E 30900700 lds R3,_time_array+6+1
0112 2882 std y+0,R2
0114 28E4 ldi R18,72
0116 0027 clr R16
0118 0E940000 xcall _Draw_NtoArab
011C .dbline -2
011C L12:
011C 2196 adiw R28,1
011E .dbline 0 ; func end
011E 0895 ret
0120 .dbend
0120 .dbfunc e dechour _dechour fV
.even
0120 _dechour::
0120 2197 sbiw R28,1
0122 .dbline -1
0122 .dbline 63
0122 ; }
0122 ;
0122 ; void dechour(void) //小时减1的子程序,在调整小时的状态下按下减1按键调用到此程序
0122 ; {
0122 .dbline 64
0122 ; time_array[1]--;
0122 80910200 lds R24,_time_array+2
0126 90910300 lds R25,_time_array+2+1
012A 0197 sbiw R24,1
012C 90930300 sts _time_array+2+1,R25
0130 80930200 sts _time_array+2,R24
0134 .dbline 65
0134 ; if((time_array[0]==0x00)&&(time_array[1]==-1))
0134 20900000 lds R2,_time_array
0138 30900100 lds R3,_time_array+1
013C 2220 tst R2
013E A9F4 brne L27
0140 3320 tst R3
0142 99F4 brne L27
0144 X0:
0144 80910200 lds R24,_time_array+2
0148 90910300 lds R25,_time_array+2+1
014C 8F3F cpi R24,255
014E EFEF ldi R30,255
0150 9E07 cpc R25,R30
0152 59F4 brne L27
0154 .dbline 66
0154 ; {
0154 .dbline 67
0154 ; time_array[1]=0x03;
0154 83E0 ldi R24,3
0156 90E0 ldi R25,0
0158 90930300 sts _time_array+2+1,R25
015C 80930200 sts _time_array+2,R24
0160 .dbline 68
0160 ; time_array[0]=0x02;
0160 82E0 ldi R24,2
0162 90930100 sts _time_array+1,R25
0166 80930000 sts _time_array,R24
016A .dbline 69
016A ; }
016A L27:
016A .dbline 70
016A ; if((time_array[0]!=0x00)&&(time_array[1]==-1))
016A 20900000 lds R2,_time_array
016E 30900100 lds R3,_time_array+1
0172 2220 tst R2
0174 11F4 brne X1
0176 3320 tst R3
0178 B9F0 breq L31
017A X1:
017A 80910200 lds R24,_time_array+2
017E 90910300 lds R25,_time_array+2+1
0182 8F3F cpi R24,255
0184 EFEF ldi R30,255
0186 9E07 cpc R25,R30
0188 79F4 brne L31
018A .dbline 71
018A ; {
018A .dbline 72
018A ; time_array[1]=0x09;
018A 89E0 ldi R24,9
018C 90E0 ldi R25,0
018E 90930300 sts _time_array+2+1,R25
0192 80930200 sts _time_array+2,R24
0196 .dbline 73
0196 ; time_array[0]--;
0196 80910000 lds R24,_time_array
019A 90910100 lds R25,_time_array+1
019E 0197 sbiw R24,1
01A0 90930100 sts _time_array+1,R25
01A4 80930000 sts _time_array,R24
01A8 .dbline 74
01A8 ; }
01A8 L31:
01A8 .dbline 75
01A8 ; Draw_NtoArab(0x00,0x28,time_array[0]);
01A8 20900000 lds R2,_time_array
01AC 30900100 lds R3,_time_array+1
01B0 2882 std y+0,R2
01B2 28E2 ldi R18,40
01B4 0027 clr R16
01B6 0E940000 xcall _Draw_NtoArab
01BA .dbline 76
01BA ; Draw_NtoArab(0x00,0x30,time_array[1]);
01BA 20900200 lds R2,_time_array+2
01BE 30900300 lds R3,_time_array+2+1
01C2 2882 std y+0,R2
01C4 20E3 ldi R18,48
01C6 0027 clr R16
01C8 0E940000 xcall _Draw_NtoArab
01CC .dbline -2
01CC L25:
01CC 2196 adiw R28,1
01CE .dbline 0 ; func end
01CE 0895 ret
01D0 .dbend
01D0 .dbfunc e decmin _decmin fV
.even
01D0 _decmin::
01D0 2197 sbiw R28,1
01D2 .dbline -1
01D2 .dbline 80
01D2 ; }
01D2 ;
01D2 ; void decmin(void) //分钟减1的子程序,在调整小时的状态下按下减1按键调用到此程序
01D2 ; {
01D2 .dbline 82
01D2 ;
01D2 ; time_array[3]--;
01D2 80910600 lds R24,_time_array+6
01D6 90910700 lds R25,_time_array+6+1
01DA 0197 sbiw R24,1
01DC 90930700 sts _time_array+6+1,R25
01E0 80930600 sts _time_array+6,R24
01E4 .dbline 83
01E4 ; if(time_array[3]==-1)
01E4 8F3F cpi R24,255
01E6 EFEF ldi R30,255
01E8 9E07 cpc R25,R30
01EA C9F4 brne L38
01EC .dbline 84
01EC ; {
01EC .dbline 85
01EC ; time_array[3]=0x09;
01EC 89E0 ldi R24,9
01EE 90E0 ldi R25,0
01F0 90930700 sts _time_array+6+1,R25
01F4 80930600 sts _time_array+6,R24
01F8 .dbline 86
01F8 ; time_array[2]--;
01F8 80910400 lds R24,_time_array+4
01FC 90910500 lds R25,_time_array+4+1
0200 0197 sbiw R24,1
0202 90930500 sts _time_array+4+1,R25
0206 80930400 sts _time_array+4,R24
020A .dbline 87
020A ; if(time_array[2]==-1)
020A 8F3F cpi R24,255
020C EFEF ldi R30,255
020E 9E07 cpc R25,R30
0210 31F4 brne L43
0212 .dbline 88
0212 ; time_array[2]=0x05;
0212 85E0 ldi R24,5
0214 90E0 ldi R25,0
0216 90930500 sts _time_array+4+1,R25
021A 80930400 sts _time_array+4,R24
021E L43:
021E .dbline 89
021E ; }
021E L38:
021E .dbline 91
021E ;
021E ; Draw_NtoArab(0x00,0x40,time_array[2]);
021E 20900400 lds R2,_time_array+4
0222 30900500 lds R3,_time_array+4+1
0226 2882 std y+0,R2
0228 20E4 ldi R18,64
022A 0027 clr R16
022C 0E940000 xcall _Draw_NtoArab
0230 .dbline 92
0230 ; Draw_NtoArab(0x00,0x48,time_array[3]);
0230 20900600 lds R2,_time_array+6
0234 30900700 lds R3,_time_array+6+1
0238 2882 std y+0,R2
023A 28E4 ldi R18,72
023C 0027 clr R16
023E 0E940000 xcall _Draw_NtoArab
0242 .dbline -2
0242 L36:
0242 2196 adiw R28,1
0244 .dbline 0 ; func end
0244 0895 ret
0246 .dbend
0246 .dbfunc e canbi0 _canbi0 fV
.even
0246 _canbi0::
0246 2297 sbiw R28,2
0248 .dbline -1
0248 .dbline 97
0248 ; }
0248 ;
0248 ;
0248 ; void canbi0(void) //参比的正负设置
0248 ; {
0248 .dbline 98
0248 ; if(leftcount%2==0)
0248 12E0 ldi R17,2
024A 00910000 lds R16,_leftcount
024E 0E940000 xcall mod8u
0252 0023 tst R16
0254 49F4 brne L50
0256 .dbline 99
0256 ; Bmp8x16(0x04,0x38,zhenghao);
0256 80E0 ldi R24,<_zhenghao
0258 90E0 ldi R25,>_zhenghao
025A 9983 std y+1,R25
025C 8883 std y+0,R24
025E 28E3 ldi R18,56
0260 04E0 ldi R16,4
0262 0E940000 xcall _Bmp8x16
0266 08C0 xjmp L51
0268 L50:
0268 .dbline 101
0268 80E0 ldi R24,<_fuhao
026A 90E0 ldi R25,>_fuhao
026C 9983 std y+1,R25
026E 8883 std y+0,R24
0270 28E3 ldi R18,56
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -