📄 display_board4.lst
字号:
FILE: <library>
__start:
__text_start:
0181 E5CF LDI R28,0x5F
0182 E0D4 LDI R29,4
0183 BFCD OUT 0x3D,R28
0184 BFDE OUT 0x3E,R29
0185 51CE SUBI R28,0x1E
0186 40D0 SBCI R29,0
0187 EA0A LDI R16,0xAA
0188 8308 STD Y+0,R16
0189 2400 CLR R0
018A EFEB LDI R30,0xFB
018B E0F2 LDI R31,2
018C E013 LDI R17,3
018D 30E6 CPI R30,6
018E 07F1 CPC R31,R17
018F F011 BEQ 0x0192
0190 9201 ST R0,Z+
0191 CFFB RJMP 0x018D
0192 8300 STD Z+0,R16
0193 E6E7 LDI R30,0x67
0194 E0F0 LDI R31,0
0195 E6A0 LDI R26,0x60
0196 E0B0 LDI R27,0
0197 E013 LDI R17,3
0198 30E2 CPI R30,2
0199 07F1 CPC R31,R17
019A F021 BEQ 0x019F
019B 95C8 LPM
019C 9631 ADIW R30,1
019D 920D ST R0,X+
019E CFF9 RJMP 0x0198
019F D2A0 RCALL _main
_exit:
01A0 CFFF RJMP _exit
_delay:
n --> R16
01A1 9310007C STS delay_time_count+1,R17
01A3 9300007B STS delay_time_count,R16
01A5 940E0564 CALL 0x564
01A7 F7E9 BNE 0x01A5
01A8 2033 TST R3
01A9 F7D9 BNE 0x01A5
01AA 9508 RET
_disp_bit:
bitChoose --> R22
disCodeIndex --> R20
01AB D326 RCALL push_gset2
01AC 2F62 MOV R22,R18
01AD 2F40 MOV R20,R16
01AE B388 IN R24,0x18
01AF 7F8D ANDI R24,0xFD
01B0 BB88 OUT 0x18,R24
01B1 2F06 MOV R16,R22
01B2 D009 RCALL _send_data_disp
01B3 E584 LDI R24,0x54
01B4 E090 LDI R25,0
01B5 940E056A CALL 0x56A
01B7 9104 LPM R16,0(Z)
01B8 D003 RCALL _send_data_disp
01B9 9AC1 SBI 0x18,1
01BA D30F RCALL pop_gset2
01BB 9508 RET
_send_data_disp:
count --> R20
send_data --> R22
01BC D315 RCALL push_gset2
01BD 2F60 MOV R22,R16
01BE 2744 CLR R20
01BF C010 RJMP 0x01D0
01C0 2F06 MOV R16,R22
01C1 2F14 MOV R17,R20
01C2 D356 RCALL lsl8
01C3 2F80 MOV R24,R16
01C4 7880 ANDI R24,0x80
01C5 F421 BNE 0x01CA
01C6 B388 IN R24,0x18
01C7 7F87 ANDI R24,0xF7
01C8 BB88 OUT 0x18,R24
01C9 C001 RJMP 0x01CB
01CA 9AC3 SBI 0x18,3
01CB 9AC2 SBI 0x18,2
01CC B388 IN R24,0x18
01CD 7F8B ANDI R24,0xFB
01CE BB88 OUT 0x18,R24
01CF 9543 INC R20
01D0 3048 CPI R20,0x8
01D1 F370 BCS 0x01C0
01D2 D2F7 RCALL pop_gset2
01D3 9508 RET
_Disp_key_group:
01D4 91800068 LDS R24,disp_key_count
01D6 5F8F SUBI R24,0xFF
01D7 93800068 STS disp_key_count,R24
01D9 E087 LDI R24,7
01DA 90200068 LDS R2,disp_key_count
01DC 1582 CP R24,R2
01DD F418 BCC 0x01E1
01DE 2422 CLR R2
01DF 92200068 STS disp_key_count,R2
01E1 91100068 LDS R17,disp_key_count
01E3 E001 LDI R16,1
01E4 D334 RCALL lsl8
01E5 2F20 MOV R18,R16
01E6 E680 LDI R24,0x60
01E7 940E0539 CALL 0x539
01E9 8100 LDD R16,Z+0
01EA DFC0 RCALL _disp_bit
01EB 99B0 SBIC 0x16,0
01EC C006 RJMP 0x01F3
01ED E780 LDI R24,0x70
01EE 940E0539 CALL 0x539
01F0 E081 LDI R24,1
01F1 8380 STD Z+0,R24
01F2 C005 RJMP 0x01F8
01F3 E780 LDI R24,0x70
01F4 940E0539 CALL 0x539
01F6 2422 CLR R2
01F7 8220 STD Z+0,R2
01F8 9508 RET
_dec_hex_disp:
temp --> R20
i --> R22
01F9 D2D8 RCALL push_gset2
01FA 91400069 LDS R20,disp_code
01FC 9150006A LDS R21,disp_code+1
01FE 2766 CLR R22
01FF C010 RJMP 0x0210
0200 E084 LDI R24,4
0201 9F86 MUL R24,R22
0202 0190 MOVW R18,R0
0203 018A MOVW R16,R20
0204 D2BE RCALL asr16
0205 01C8 MOVW R24,R16
0206 708F ANDI R24,0xF
0207 7090 ANDI R25,0
0208 E6E0 LDI R30,0x60
0209 E0F0 LDI R31,0
020A 2FA6 MOV R26,R22
020B 27BB CLR R27
020C 0FAE ADD R26,R30
020D 1FBF ADC R27,R31
020E 938C ST R24,0(X)
020F 9563 INC R22
0210 3067 CPI R22,7
0211 F370 BCS 0x0200
0212 D2B7 RCALL pop_gset2
0213 9508 RET
_Key_num:
j --> R16
i --> R18
0214 2700 CLR R16
0215 2422 CLR R2
0216 9030007A LDS R3,key_delay
0218 1423 CP R2,R3
0219 F410 BCC 0x021C
021A 940E0574 CALL 0x574
021C 2722 CLR R18
021D C00D RJMP 0x022B
021E E780 LDI R24,0x70
021F E090 LDI R25,0
0220 2FE2 MOV R30,R18
0221 27FF CLR R31
0222 0FE8 ADD R30,R24
0223 1FF9 ADC R31,R25
0224 8180 LDD R24,Z+0
0225 3081 CPI R24,1
0226 F419 BNE 0x022A
0227 9320006F STS new_key_num,R18
0229 E001 LDI R16,1
022A 9523 INC R18
022B E087 LDI R24,7
022C 1782 CP R24,R18
022D F780 BCC 0x021E
022E 2300 TST R16
022F F419 BNE 0x0233
0230 E08F LDI R24,0xF
0231 9380006F STS new_key_num,R24
0233 9180006E LDS R24,old_key_num
0235 308F CPI R24,0xF
0236 F461 BNE 0x0243
0237 9180006F LDS R24,new_key_num
0239 308F CPI R24,0xF
023A F041 BEQ 0x0243
023B 9020007A LDS R2,key_delay
023D 2022 TST R2
023E F421 BNE 0x0243
023F 2E28 MOV R2,R24
0240 9220006D STS key_num,R2
0242 C029 RJMP 0x026C
0243 9180006E LDS R24,old_key_num
0245 308F CPI R24,0xF
0246 F089 BEQ 0x0258
0247 9030006F LDS R3,new_key_num
0249 1638 CP R3,R24
024A F469 BNE 0x0258
024B E08F LDI R24,0xF
024C 9380006D STS key_num,R24
024E 91800078 LDS R24,key_down_time
0250 91900079 LDS R25,key_down_time+1
0252 9601 ADIW R24,1
0253 93900079 STS key_down_time+1,R25
0255 93800078 STS key_down_time,R24
0257 C014 RJMP 0x026C
0258 9180006E LDS R24,old_key_num
025A 308F CPI R24,0xF
025B F081 BEQ 0x026C
025C 9180006F LDS R24,new_key_num
025E 308F CPI R24,0xF
025F F461 BNE 0x026C
0260 E08F LDI R24,0xF
0261 9380006D STS key_num,R24
0263 2422 CLR R2
0264 2433 CLR R3
0265 92300079 STS key_down_time+1,R3
0267 92200078 STS key_down_time,R2
0269 E684 LDI R24,0x64
026A 9380007A STS key_delay,R24
026C 9020006F LDS R2,new_key_num
026E 9220006E STS old_key_num,R2
0270 9508 RET
_port_int:
0271 EF8F LDI R24,0xFF
0272 BB8A OUT 0x1A,R24
0273 BB8B OUT 0x1B,R24
0274 EF8E LDI R24,0xFE
0275 BB87 OUT 0x17,R24
0276 EF8F LDI R24,0xFF
0277 BB88 OUT 0x18,R24
0278 BB84 OUT 0x14,R24
0279 BB85 OUT 0x15,R24
027A EF88 LDI R24,0xF8
027B BB81 OUT 0x11,R24
027C EF8F LDI R24,0xFF
027D BB82 OUT 0x12,R24
027E 9508 RET
_timer_int:
027F 2422 CLR R2
0280 BC2E OUT 0x2E,R2
0281 940E057E CALL 0x57E
0283 BC2F OUT 0x2F,R2
0284 E081 LDI R24,1
0285 BD8E OUT 0x2E,R24
0286 E084 LDI R24,4
0287 BF89 OUT 0x39,R24
0288 9508 RET
_exit_int:
0289 E480 LDI R24,0x40
028A BF8B OUT 0x3B,R24
028B E082 LDI R24,2
028C BF85 OUT 0x35,R24
028D 9508 RET
_uart_int:
028E 2422 CLR R2
028F B82A OUT 0x0A,R2
0290 B82B OUT 0x0B,R2
0291 BC20 OUT 0x20,R2
0292 E085 LDI R24,5
0293 B989 OUT 0x09,R24
0294 E988 LDI R24,0x98
0295 B98A OUT 0x0A,R24
0296 EA8E LDI R24,0xAE
0297 BD80 OUT 0x20,R24
0298 9508 RET
_SPI_MasterInit:
0299 E78C LDI R24,0x7C
029A B98D OUT 0x0D,R24
029B E081 LDI R24,1
029C B98E OUT 0x0E,R24
029D 9508 RET
_device_int:
029E 94F8 BCLR 7
029F DFD1 RCALL _port_int
02A0 DFDE RCALL _timer_int
02A1 DFE7 RCALL _exit_int
02A2 DFEB RCALL _uart_int
02A3 DFF5 RCALL _SPI_MasterInit
02A4 9478 BSET 7
02A5 9508 RET
_uart_TX:
data --> R16
02A6 9A5E SBI 0x0B,6
02A7 B90C OUT 0x0C,R16
02A8 9508 RET
02A9 940E0553 CALL 0x553
_uart_time_out:
02AB 9601 ADIW R24,1
02AC 940E0540 CALL 0x540
02AE 902002EF LDS R2,HeadEN
02B0 2022 TST R2
02B1 F521 BNE 0x02D6
02B2 902002ED LDS R2,FileEnd
02B4 2022 TST R2
02B5 F501 BNE 0x02D6
02B6 3280 CPI R24,0x20
02B7 E0E3 LDI R30,3
02B8 079E CPC R25,R30
02B9 F0E0 BCS 0x02D6
02BA 902002E5 LDS R2,sys_cont
02BC 903002E6 LDS R3,sys_cont+1
02BE 2022 TST R2
02BF F479 BNE 0x02CF
02C0 2033 TST R3
02C1 F469 BNE 0x02CF
02C2 918002F6 LDS R24,time_out_s
02C4 5F8F SUBI R24,0xFF
02C5 938002F6 STS time_out_s,R24
02C7 3184 CPI R24,0x14
02C8 F431 BNE 0x02CF
02C9 E081 LDI R24,1
02CA E090 LDI R25,0
02CB 940E0540 CALL 0x540
02CD 940E056F CALL 0x56F
02CF EA0A LDI R16,0xAA
02D0 DFD5 RCALL _uart_TX
02D1 940E0553 CALL 0x553
02D3 9701 SBIW R24,1
02D4 940E0540 CALL 0x540
02D6 940E0553 CALL 0x553
02D8 3E88 CPI R24,0xE8
02D9 E0E3 LDI R30,3
02DA 079E CPC R25,R30
02DB F421 BNE 0x02E0
02DC E081 LDI R24,1
02DD E090 LDI R25,0
02DE 940E0540 CALL 0x540
02E0 9508 RET
_Screen_send:
i --> R20
02E1 D1F2 RCALL push_gset1
02E2 E048 LDI R20,0x8
02E3 B388 IN R24,0x18
02E4 7E8F ANDI R24,0xEF
02E5 BB88 OUT 0x18,R24
02E6 C007 RJMP 0x02EE
02E7 954A DEC R20
02E8 EF8E LDI R24,0xFE
02E9 E092 LDI R25,2
02EA 940E056A CALL 0x56A
02EC 8100 LDD R16,Z+0
02ED D006 RCALL _SPI_MasterTransmit
02EE 2422 CLR R2
02EF 1624 CP R2,R20
02F0 F3B0 BCS 0x02E7
02F1 9AC4 SBI 0x18,4
02F2 D1E4 RCALL pop_gset1
02F3 9508 RET
_SPI_MasterTransmit:
cData --> R16
02F4 B90F OUT 0x0F,R16
02F5 9B77 SBIS 0x0E,7
02F6 CFFE RJMP 0x02F5
02F7 9508 RET
_RAM_Write:
data --> R18
adress --> R16
02F8 940E051F CALL <created procedures>
02FA BB2B OUT 0x1B,R18
02FB B382 IN R24,0x12
02FC 7B8F ANDI R24,0xBF
02FD BB82 OUT 0x12,R24
02FE 9508 RET
_RAM_Read:
adress --> R16
02FF 940E051F CALL <created procedures>
0301 B382 IN R24,0x12
0302 7D8F ANDI R24,0xDF
0303 BB82 OUT 0x12,R24
0304 2422 CLR R2
0305 BA2A OUT 0x1A,R2
0306 EF8F LDI R24,0xFF
0307 BB8B OUT 0x1B,R24
0308 B309 IN R16,0x19
0309 9508 RET
_data_store:
data --> R20
030A D1C9 RCALL push_gset1
030B 2F40 MOV R20,R16
030C 344C CPI R20,0x4C
030D F479 BNE 0x031D
030E 918002ED LDS R24,FileEnd
0310 3081 CPI R24,1
0311 F459 BNE 0x031D
0312 E081 LDI R24,1
0313 938002EF STS HeadEN,R24
0315 2422 CLR R2
0316 922002EE STS HeadLoad,R2
0318 2433 CLR R3
0319 923002F1 STS DataIndex+1,R3
031B 922002F0 STS DataIndex,R2
031D 902002EF LDS R2,HeadEN
031F 2022 TST R2
0320 F009 BEQ 0x0322
0321 C03C RJMP 0x035E
0322 902002ED LDS R2,FileEnd
0324 2022 TST R2
0325 F009 BEQ 0x0327
0326 C037 RJMP 0x035E
0327 2F24 MOV R18,R20
0328 910002F0 LDS R16,DataIndex
032A 911002F1 LDS R17,DataIndex+1
032C DFCB RCALL _RAM_Write
032D 940E0545 CALL 0x545
032F 3082 CPI R24,2
0330 E0E0 LDI R30,0
0331 079E CPC R25,R30
0332 F479 BNE 0x0342
0333 E001 LDI R16,1
0334 E010 LDI R17,0
0335 DFC9 RCALL _RAM_Read
0336 2E20 MOV R2,R16
0337 2700 CLR R16
0338 2711 CLR R17
0339 922F PUSH R2
033A DFC4 RCALL _RAM_Read
033B 902F POP R2
033C 2C32 MOV R3,R2
033D 2E20 MOV R2,R16
033E 923002F3 STS FileLength+1,R3
0340 922002F2 STS FileLength,R2
0342 940E0545 CALL 0x545
0344 9601 ADIW R24,1
0345 939002F1 STS DataIndex+1,R25
0347 938002F0 STS DataIndex,R24
0349 902002F2 LDS R2,FileLength
034B 903002F3 LDS R3,FileLength+1
034D 1582 CP R24,R2
034E 0593 CPC R25,R3
034F F424 BGE 0x0354
0350 3F8F CPI R24,0xFF
0351 E7EF LDI R30,0x7F
0352 079E CPC R25,R30
0353 F054 BLT 0x035E
0354 E180 LDI R24,0x10
0355 E090 LDI R25,0
0356 940E0579 CALL 0x579
0358 1582 CP R24,R2
0359 0593 CPC R25,R3
035A F41C BGE 0x035E
035B E081 LDI R24,1
035C 940E056F CALL 0x56F
035E 918002EF LDS R24,HeadEN
0360 3081 CPI R24,1
0361 F501 BNE 0x0382
0362 EF8B LDI R24,0xFB
0363 E092 LDI R25,2
0364 91E002EE LDS R30,HeadLoad
0366 27FF CLR R31
0367 0FE8 ADD R30,R24
0368 1FF9 ADC R31,R25
0369 8340 STD Z+0,R20
036A 918002EE LDS R24,HeadLoad
036C 5F8F SUBI R24,0xFF
036D 938002EE STS HeadLoad,R24
036F 3083 CPI R24,3
0370 F489 BNE 0x0382
0371 918002FB LDS R24,Head
0373 348C CPI R24,0x4C
0374 F469 BNE 0x0382
0375 918002FC LDS R24,Head+1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -