📄 12864.lst
字号:
_LCD_writeasc:
data --> Y+4
y --> R22
x --> R20
0319 940E03F0 CALL push_gset2
031B 2F62 MOV R22,R18
031C 2F40 MOV R20,R16
031D 2F26 MOV R18,R22
031E 2F04 MOV R16,R20
031F DFB3 RCALL _LCD_address
0320 810C LDD R16,Y+4
0321 DF73 RCALL _WR_dat
0322 940E03E1 CALL pop_gset2
0324 9508 RET
_Lcd_INT:
0325 9AD1 SBI 0x1A,1
0326 9AD3 SBI 0x1A,3
0327 DF95 RCALL _lcd_control
0328 DF99 RCALL _lcd_clear
0329 9508 RET
_lcd_writechar:
number --> Y+4
Y --> R22
X --> R20
032A 940E03F0 CALL push_gset2
032C 2F62 MOV R22,R18
032D 2F40 MOV R20,R16
032E 2F26 MOV R18,R22
032F 2F04 MOV R16,R20
0330 DFA2 RCALL _LCD_address
0331 810C LDD R16,Y+4
0332 9502 SWAP R16
0333 700F ANDI R16,0xF
0334 DFDC RCALL _BCD_ASCII
0335 DF5F RCALL _WR_dat
0336 810C LDD R16,Y+4
0337 DFD9 RCALL _BCD_ASCII
0338 DF5C RCALL _WR_dat
0339 940E03E1 CALL pop_gset2
033B 9508 RET
_lcd_write2:
number --> Y+4
Y --> R22
X --> R20
033C 940E03F0 CALL push_gset2
033E 2F62 MOV R22,R18
033F 2F40 MOV R20,R16
0340 2F26 MOV R18,R22
0341 2F04 MOV R16,R20
0342 DF90 RCALL _LCD_address
0343 E614 LDI R17,0x64
0344 810C LDD R16,Y+4
0345 940E03C9 CALL mod8u
0347 E01A LDI R17,0xA
0348 940E03CB CALL div8u
034A DFC6 RCALL _BCD_ASCII
034B DF49 RCALL _WR_dat
034C E01A LDI R17,0xA
034D 810C LDD R16,Y+4
034E 940E03C9 CALL mod8u
0350 DFC0 RCALL _BCD_ASCII
0351 DF43 RCALL _WR_dat
0352 940E03E1 CALL pop_gset2
0354 9508 RET
_ShowBmp:
a --> R20
y --> R22
i --> R12
x --> R10
0355 940E03EC CALL push_gset4
0357 24AA CLR R10
0358 24BB CLR R11
0359 2766 CLR R22
035A 2777 CLR R23
035B E304 LDI R16,0x34
035C DF4C RCALL _WR_control
035D 2744 CLR R20
035E 2755 CLR R21
035F C054 RJMP 0x03B4
0360 2F04 MOV R16,R20
0361 5800 SUBI R16,0x80
0362 4F1F SBCI R17,0xFF
0363 DF45 RCALL _WR_control
0364 E800 LDI R16,0x80
0365 DF43 RCALL _WR_control
0366 24CC CLR R12
0367 24DD CLR R13
0368 C019 RJMP 0x0382
0369 01FB MOVW R30,R22
036A 0DEA ADD R30,R10
036B 1DFB ADC R31,R11
036C E584 LDI R24,0x54
036D E090 LDI R25,0
036E 0FE8 ADD R30,R24
036F 1FF9 ADC R31,R25
0370 9104 LPM R16,0(Z)
0371 DF23 RCALL _WR_dat
0372 01FB MOVW R30,R22
0373 0DEA ADD R30,R10
0374 1DFB ADC R31,R11
0375 9631 ADIW R30,1
0376 E584 LDI R24,0x54
0377 E090 LDI R25,0
0378 0FE8 ADD R30,R24
0379 1FF9 ADC R31,R25
037A 9104 LPM R16,0(Z)
037B DF19 RCALL _WR_dat
037C 01C5 MOVW R24,R10
037D 9602 ADIW R24,2
037E 015C MOVW R10,R24
037F 01C6 MOVW R24,R12
0380 9601 ADIW R24,1
0381 016C MOVW R12,R24
0382 01C6 MOVW R24,R12
0383 3088 CPI R24,0x8
0384 E0E0 LDI R30,0
0385 079E CPC R25,R30
0386 F310 BCS 0x0369
0387 24AA CLR R10
0388 24BB CLR R11
0389 24CC CLR R12
038A 24DD CLR R13
038B C01D RJMP 0x03A9
038C 01FB MOVW R30,R22
038D 50E0 SUBI R30,0
038E 4FFE SBCI R31,0xFE
038F 0DEA ADD R30,R10
0390 1DFB ADC R31,R11
0391 E584 LDI R24,0x54
0392 E090 LDI R25,0
0393 0FE8 ADD R30,R24
0394 1FF9 ADC R31,R25
0395 9104 LPM R16,0(Z)
0396 DEFE RCALL _WR_dat
0397 01FB MOVW R30,R22
0398 50E0 SUBI R30,0
0399 4FFE SBCI R31,0xFE
039A 0DEA ADD R30,R10
039B 1DFB ADC R31,R11
039C 9631 ADIW R30,1
039D E584 LDI R24,0x54
039E E090 LDI R25,0
039F 0FE8 ADD R30,R24
03A0 1FF9 ADC R31,R25
03A1 9104 LPM R16,0(Z)
03A2 DEF2 RCALL _WR_dat
03A3 01C5 MOVW R24,R10
03A4 9602 ADIW R24,2
03A5 015C MOVW R10,R24
03A6 01C6 MOVW R24,R12
03A7 9601 ADIW R24,1
03A8 016C MOVW R12,R24
03A9 01C6 MOVW R24,R12
03AA 3088 CPI R24,0x8
03AB E0E0 LDI R30,0
03AC 079E CPC R25,R30
03AD F2F0 BCS 0x038C
03AE 24AA CLR R10
03AF 24BB CLR R11
03B0 5F60 SUBI R22,0xF0
03B1 4F7F SBCI R23,0xFF
03B2 5F4F SUBI R20,0xFF
03B3 4F5F SBCI R21,0xFF
03B4 3240 CPI R20,0x20
03B5 E0E0 LDI R30,0
03B6 075E CPC R21,R30
03B7 F408 BCC 0x03B9
03B8 CFA7 RJMP 0x0360
03B9 E306 LDI R16,0x36
03BA DEEE RCALL _WR_control
03BB E500 LDI R16,0x50
03BC E010 LDI R17,0
03BD DEA9 RCALL _delay_nus
03BE E300 LDI R16,0x30
03BF DEE9 RCALL _WR_control
03C0 E500 LDI R16,0x50
03C1 E010 LDI R17,0
03C2 DEA4 RCALL _delay_nus
03C3 940E03E7 CALL pop_gset4
03C5 9508 RET
_main:
03C6 DF5E RCALL _Lcd_INT
03C7 DF8D RCALL _ShowBmp
03C8 9508 RET
mod8u:
03C9 9468 BSET 6
03CA C001 RJMP xdiv8u
div8u:
03CB 94E8 BCLR 6
xdiv8u:
03CC 932A ST R18,-Y
03CD 92FA ST R15,-Y
03CE 92EA ST R14,-Y
03CF 24FF CLR R15
03D0 24EE CLR R14
03D1 E120 LDI R18,0x10
03D2 0F00 LSL R16
03D3 1CFF ROL R15
03D4 1CEE ROL R14
03D5 16E1 CP R14,R17
03D6 F010 BCS 0x03D9
03D7 1AE1 SUB R14,R17
03D8 9503 INC R16
03D9 952A DEC R18
03DA F7B9 BNE 0x03D2
03DB F40E BRTC 0x03DD
03DC 2D0E MOV R16,R14
03DD 90E9 LD R14,Y+
03DE 90F9 LD R15,Y+
03DF 9129 LD R18,Y+
03E0 9508 RET
pop_gset2:
03E1 E0E2 LDI R30,2
03E2 940C03F6 JMP pop
pop_gset3:
03E4 E0E4 LDI R30,4
03E5 940C03F6 JMP pop
pop_gset4:
03E7 E0E8 LDI R30,0x8
03E8 940C03F6 JMP pop
push_gset5:
03EA 92FA ST R15,-Y
03EB 92EA ST R14,-Y
push_gset4:
03EC 92DA ST R13,-Y
03ED 92CA ST R12,-Y
push_gset3:
03EE 92BA ST R11,-Y
03EF 92AA ST R10,-Y
push_gset2:
03F0 937A ST R23,-Y
03F1 936A ST R22,-Y
push_gset1:
03F2 935A ST R21,-Y
03F3 934A ST R20,-Y
03F4 9508 RET
pop_gset1:
03F5 E0E1 LDI R30,1
pop:
03F6 9149 LD R20,Y+
03F7 9159 LD R21,Y+
03F8 FDE0 SBRC R30,0
03F9 9508 RET
03FA 9169 LD R22,Y+
03FB 9179 LD R23,Y+
03FC FDE1 SBRC R30,1
03FD 9508 RET
03FE 90A9 LD R10,Y+
03FF 90B9 LD R11,Y+
0400 FDE2 SBRC R30,2
0401 9508 RET
0402 90C9 LD R12,Y+
0403 90D9 LD R13,Y+
0404 FDE3 SBRC R30,3
0405 9508 RET
0406 90E9 LD R14,Y+
0407 90F9 LD R15,Y+
0408 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -