📄 ad_lcd.lst
字号:
0133 7880 ANDI R24,0x80
0134 3880 CPI R24,0x80
0135 F3E1 BEQ 0x0132
0136 9895 CBI 0x12,5
0137 2366 TST R22
0138 F411 BNE 0x013B
0139 9893 CBI 0x12,3
013A C001 RJMP 0x013C
013B 9A93 SBI 0x12,3
013C 9894 CBI 0x12,4
013D EF8F LDI R24,0xFF
013E BB87 OUT 0x17,R24
013F BB48 OUT 0x18,R20
0140 9A95 SBI 0x12,5
0141 DFDC RCALL _delay
0142 9895 CBI 0x12,5
0143 DFDA RCALL _delay
0144 2422 CLR R2
0145 BA27 OUT 0x17,R2
0146 BA28 OUT 0x18,R2
0147 D0B8 RCALL pop_gset2
0148 9508 RET
_read_lcd:
0149 D0C4 RCALL push_gset1
014A 2F40 MOV R20,R16
014B 2422 CLR R2
014C BA27 OUT 0x17,R2
014D BA28 OUT 0x18,R2
014E 2344 TST R20
014F F411 BNE 0x0152
0150 9893 CBI 0x12,3
0151 C001 RJMP 0x0153
0152 9A93 SBI 0x12,3
0153 9A94 SBI 0x12,4
0154 9A95 SBI 0x12,5
0155 DFC8 RCALL _delay
0156 B346 IN R20,0x16
0157 774F ANDI R20,0x7F
0158 9895 CBI 0x12,5
0159 DFC4 RCALL _delay
015A 2F04 MOV R16,R20
015B 2711 CLR R17
015C D0B4 RCALL pop_gset1
015D 9508 RET
_lcd_init:
015E D0AF RCALL push_gset1
015F DFB7 RCALL _lcd_port_init
0160 2744 CLR R20
0161 C00F RJMP 0x0171
0162 2722 CLR R18
0163 2733 CLR R19
0164 E584 LDI R24,0x54
0165 E090 LDI R25,0
0166 2E24 MOV R2,R20
0167 2433 CLR R3
0168 0E28 ADD R2,R24
0169 1E39 ADC R3,R25
016A 2DE2 MOV R30,R2
016B 2DF3 MOV R31,R3
016C 95C8 LPM
016D 2D00 MOV R16,R0
016E 2711 CLR R17
016F DFB8 RCALL _write_lcd
0170 9543 INC R20
0171 3044 CPI R20,4
0172 F378 BCS 0x0162
0173 D09D RCALL pop_gset1
0174 9508 RET
_lcd_putc:
0175 D098 RCALL push_gset1
0176 2F40 MOV R20,R16
0177 304A CPI R20,0xA
0178 F4B1 BNE 0x018F
0179 2700 CLR R16
017A 2711 CLR R17
017B DFCD RCALL _read_lcd
017C 2E20 MOV R2,R16
017D 2E31 MOV R3,R17
017E E08F LDI R24,0xF
017F E090 LDI R25,0
0180 1582 CP R24,R2
0181 0593 CPC R25,R3
0182 F434 BGE 0x0189
0183 2722 CLR R18
0184 2733 CLR R19
0185 E002 LDI R16,2
0186 E010 LDI R17,0
0187 DFA0 RCALL _write_lcd
0188 C00B RJMP 0x0194
0189 2722 CLR R18
018A 2733 CLR R19
018B EC00 LDI R16,0xC0
018C E010 LDI R17,0
018D DF9A RCALL _write_lcd
018E C005 RJMP 0x0194
018F E021 LDI R18,1
0190 E030 LDI R19,0
0191 2F04 MOV R16,R20
0192 2711 CLR R17
0193 DF94 RCALL _write_lcd
0194 D07C RCALL pop_gset1
0195 9508 RET
_lcd_puts:
0196 D077 RCALL push_gset1
0197 2F40 MOV R20,R16
0198 2F51 MOV R21,R17
0199 C009 RJMP 0x01A3
019A 2E24 MOV R2,R20
019B 2E35 MOV R3,R21
019C 5F4F SUBI R20,0xFF
019D 4F5F SBCI R21,0xFF
019E 2DE2 MOV R30,R2
019F 2DF3 MOV R31,R3
01A0 8100 LDD R16,Z+0
01A1 2711 CLR R17
01A2 DFD2 RCALL _lcd_putc
01A3 2FE4 MOV R30,R20
01A4 2FF5 MOV R31,R21
01A5 8020 LDD R2,Z+0
01A6 2022 TST R2
01A7 F791 BNE 0x019A
01A8 D068 RCALL pop_gset1
01A9 9508 RET
_lcd_clear:
01AA 2722 CLR R18
01AB 2733 CLR R19
01AC E001 LDI R16,1
01AD E010 LDI R17,0
01AE DF79 RCALL _write_lcd
01AF 9508 RET
mod16u:
01B0 9468 BSET 6
01B1 C001 RJMP xdiv16u
div16u:
01B2 94E8 BCLR 6
xdiv16u:
01B3 92EA ST R14,-Y
01B4 92FA ST R15,-Y
01B5 938A ST R24,-Y
01B6 24EE CLR R14
01B7 24FF CLR R15
01B8 E180 LDI R24,0x10
01B9 0F00 LSL R16
01BA 1F11 ROL R17
01BB 1CEE ROL R14
01BC 1CFF ROL R15
01BD 16E2 CP R14,R18
01BE 06F3 CPC R15,R19
01BF F018 BCS 0x01C3
01C0 1AE2 SUB R14,R18
01C1 0AF3 SBC R15,R19
01C2 9503 INC R16
01C3 958A DEC R24
01C4 F7A1 BNE 0x01B9
01C5 F416 BRTC 0x01C8
01C6 2D0E MOV R16,R14
01C7 2D1F MOV R17,R15
01C8 9189 LD R24,Y+
01C9 90F9 LD R15,Y+
01CA 90E9 LD R14,Y+
01CB 9508 RET
empy32u:
empy32s:
01CC 940E0225 CALL long_prolog
01CE 927A ST R7,-Y
01CF 940E023E CALL tstzero1
01D1 F159 BEQ 0x01FD
01D2 2477 CLR R7
01D3 940E0244 CALL tstzero2
01D5 F419 BNE 0x01D9
01D6 018C MOVW R16,R24
01D7 019D MOVW R18,R26
01D8 C024 RJMP 0x01FD
01D9 920A ST R0,-Y
01DA 921A ST R1,-Y
01DB 9F08 MUL R16,R24
01DC 2CB0 MOV R11,R0
01DD 2CA1 MOV R10,R1
01DE 9F28 MUL R18,R24
01DF 2C90 MOV R9,R0
01E0 2C81 MOV R8,R1
01E1 9F18 MUL R17,R24
01E2 0CA0 ADD R10,R0
01E3 1C91 ADC R9,R1
01E4 1C87 ADC R8,R7
01E5 9F09 MUL R16,R25
01E6 0CA0 ADD R10,R0
01E7 1C91 ADC R9,R1
01E8 1C87 ADC R8,R7
01E9 9F19 MUL R17,R25
01EA 0C90 ADD R9,R0
01EB 1C81 ADC R8,R1
01EC 9F0A MUL R16,R26
01ED 0C90 ADD R9,R0
01EE 1C81 ADC R8,R1
01EF 9F38 MUL R19,R24
01F0 0C80 ADD R8,R0
01F1 9F29 MUL R18,R25
01F2 0C80 ADD R8,R0
01F3 9F1A MUL R17,R26
01F4 0C80 ADD R8,R0
01F5 9F0B MUL R16,R27
01F6 0C80 ADD R8,R0
01F7 9019 LD R1,Y+
01F8 9009 LD R0,Y+
01F9 2D0B MOV R16,R11
01FA 2D1A MOV R17,R10
01FB 2D29 MOV R18,R9
01FC 2D38 MOV R19,R8
01FD 9079 LD R7,Y+
01FE 940C0233 JMP long_epilog
pop_gset2:
0200 E0E2 LDI R30,2
0201 940C0212 JMP pop
pop_gset5:
0203 27EE CLR R30
0204 940C0212 JMP pop
push_gset5:
0206 92FA ST R15,-Y
0207 92EA ST R14,-Y
push_gset4:
0208 92DA ST R13,-Y
0209 92CA ST R12,-Y
push_gset3:
020A 92BA ST R11,-Y
020B 92AA ST R10,-Y
push_gset2:
020C 937A ST R23,-Y
020D 936A ST R22,-Y
push_gset1:
020E 935A ST R21,-Y
020F 934A ST R20,-Y
0210 9508 RET
pop_gset1:
0211 E0E1 LDI R30,1
pop:
0212 9149 LD R20,Y+
0213 9159 LD R21,Y+
0214 FDE0 SBRC R30,0
0215 9508 RET
0216 9169 LD R22,Y+
0217 9179 LD R23,Y+
0218 FDE1 SBRC R30,1
0219 9508 RET
021A 90A9 LD R10,Y+
021B 90B9 LD R11,Y+
021C FDE2 SBRC R30,2
021D 9508 RET
021E 90C9 LD R12,Y+
021F 90D9 LD R13,Y+
0220 FDE3 SBRC R30,3
0221 9508 RET
0222 90E9 LD R14,Y+
0223 90F9 LD R15,Y+
0224 9508 RET
long_prolog:
0225 928A ST R8,-Y
0226 929A ST R9,-Y
0227 92AA ST R10,-Y
0228 92BA ST R11,-Y
0229 93EA ST R30,-Y
022A 938A ST R24,-Y
022B 939A ST R25,-Y
022C 93AA ST R26,-Y
022D 93BA ST R27,-Y
022E 8589 LDD R24,Y+9
022F 859A LDD R25,Y+10
0230 85AB LDD R26,Y+11
0231 85BC LDD R27,Y+12
0232 9508 RET
long_epilog:
0233 91B9 LD R27,Y+
0234 91A9 LD R26,Y+
0235 9199 LD R25,Y+
0236 9189 LD R24,Y+
0237 91E9 LD R30,Y+
0238 90B9 LD R11,Y+
0239 90A9 LD R10,Y+
023A 9099 LD R9,Y+
023B 9089 LD R8,Y+
023C 9624 ADIW R28,4
023D 9508 RET
tstzero1:
023E 27EE CLR R30
023F 2BE0 OR R30,R16
0240 2BE1 OR R30,R17
0241 2BE2 OR R30,R18
0242 2BE3 OR R30,R19
0243 9508 RET
tstzero2:
0244 27EE CLR R30
0245 2BE8 OR R30,R24
0246 2BE9 OR R30,R25
0247 2BEA OR R30,R26
0248 2BEB OR R30,R27
0249 9508 RET
lsr32:
024A 920F PUSH R0
024B 9009 LD R0,Y+
024C 2000 TST R0
024D F031 BEQ 0x0254
024E 9536 LSR R19
024F 9527 ROR R18
0250 9517 ROR R17
0251 9507 ROR R16
0252 940A DEC R0
0253 CFF8 RJMP 0x024C
0254 900F POP R0
0255 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -