📄 595_1602_example.lis
字号:
0324 00D0 rcall push_arg4
0326 00D0 rcall push_gset1
0328 .dbline -1
0328 .dbline 367
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 ; }
0328 .dbline 368
0328 ; }
0328 4427 clr R20
032A .dbline 369
032A ; }
032A 48E0 ldi R20,8
032C 0E80 ldd R0,y+6
032E 4019 sub R20,R0
0330 1BC0 rjmp L48
0332 L45:
0332 .dbline 370
0332 .dbline 371
0332 242E mov R2,R20
0334 3324 clr R3
0336 220C lsl R2
0338 331C rol R3
033A 220C lsl R2
033C 331C rol R3
033E FE01 movw R30,R28
0340 4280 ldd R4,z+2
0342 5380 ldd R5,z+3
0344 6480 ldd R6,z+4
0346 7580 ldd R7,z+5
0348 2A92 st -y,R2
034A 8201 movw R16,R4
034C 9301 movw R18,R6
034E 00D0 rcall lsl32
0350 8CE1 ldi R24,28
0352 90E0 ldi R25,0
0354 8A93 st -y,R24
0356 00D0 rcall lsr32
0358 F801 movw R30,R16
035A 80E0 ldi R24,<_CHR
035C 90E0 ldi R25,>_CHR
035E E80F add R30,R24
0360 F91F adc R31,R25
0362 0491 lpm R16,Z
0364 6EDF rcall _LCDSendData
0366 .dbline 372
0366 L46:
0366 .dbline 369
0366 4395 inc R20
0368 L48:
0368 .dbline 369
0368 4830 cpi R20,8
036A 18F3 brlo L45
036C .dbline -2
036C L44:
036C 00D0 rcall pop_gset1
036E 2496 adiw R28,4
0370 .dbline 0 ; func end
0370 0895 ret
0372 .dbsym r a 20 c
0372 .dbsym l BitCount 6 c
0372 .dbsym l Num 2 l
0372 .dbend
.area data(ram, con, rel)
0005 .dbfile G:\单片机\源程序\串行1602\595_1602_Example/RD_LCD1602B.h
0005 L50:
0005 .blkb 1
.area idata
0005 00 .byte 0
.area data(ram, con, rel)
0006 .dbfile G:\单片机\源程序\串行1602\595_1602_Example/RD_LCD1602B.h
0006 L51:
0006 .blkb 2
.area idata
0006 0000 .word 0
.area data(ram, con, rel)
0008 .dbfile G:\单片机\源程序\串行1602\595_1602_Example/RD_LCD1602B.h
.area text(rom, con, rel)
0372 .dbfile G:\单片机\源程序\串行1602\595_1602_Example/RD_LCD1602B.h
0372 .dbfunc e RunString _RunString fV
0372 .dbsym s RunTimeCounter L51 i
0372 .dbsym s StringHead L50 c
0372 ; StringLong -> R22
0372 ; SCREEN -> y+0
0372 ; Point -> R14
0372 ; a -> R10
0372 ; EndX -> R12
0372 ; StartX -> R20
0372 ; Y -> y+31
0372 ; Direction -> R22
0372 ; String -> y+27
.even
0372 _RunString::
0372 00D0 rcall push_arg4
0374 00D0 rcall push_gset5
0376 622F mov R22,R18
0378 6197 sbiw R28,17
037A 49A1 ldd R20,y+33
037C CBA0 ldd R12,y+35
037E .dbline -1
037E .dbline 380
037E ; }
037E ; }
037E ; }
037E ; }
037E ; }
037E ; }
037E ; }
037E ; }
037E ; }
037E ; }
037E ; }
037E .dbline 383
037E ; }
037E ; }
037E ; }
037E AA24 clr R10
0380 .dbline 384
0380 ; }
0380 E0900500 lds R14,L50
0384 .dbline 385
0384 ; }
0384 0B8D ldd R16,y+27
0386 1C8D ldd R17,y+28
0388 51D0 rcall _StringLength
038A 602F mov R22,R16
038C .dbline 388
038C ; }
038C ; }
038C ; }
038C 12C0 rjmp L55
038E L52:
038E .dbline 389
038E ; }
038E .dbline 390
038E ; }
038E EE2D mov R30,R14
0390 FF27 clr R31
0392 0B8C ldd R0,y+27
0394 1C8C ldd R1,y+28
0396 E00D add R30,R0
0398 F11D adc R31,R1
039A 2080 ldd R2,z+0
039C CE01 movw R24,R28
039E EA2D mov R30,R10
03A0 FF27 clr R31
03A2 E80F add R30,R24
03A4 F91F adc R31,R25
03A6 2082 std z+0,R2
03A8 .dbline 391
03A8 ; }
03A8 E394 inc R14
03AA .dbline 392
03AA ; }
03AA E616 cp R14,R22
03AC 09F4 brne L56
03AE .dbline 393
03AE ; }
03AE .dbline 394
03AE ; }
03AE EE24 clr R14
03B0 .dbline 395
03B0 ; }
03B0 L56:
03B0 .dbline 396
03B0 L53:
03B0 .dbline 388
03B0 A394 inc R10
03B2 L55:
03B2 .dbline 388
03B2 8C2D mov R24,R12
03B4 841B sub R24,R20
03B6 8F5F subi R24,255 ; addi 1
03B8 A816 cp R10,R24
03BA 48F3 brlo L52
03BC .dbline 398
03BC ; }
03BC ; }
03BC ; }
03BC 08C0 rjmp L61
03BE L58:
03BE .dbline 399
03BE .dbline 400
03BE CE01 movw R24,R28
03C0 EA2D mov R30,R10
03C2 FF27 clr R31
03C4 E80F add R30,R24
03C6 F91F adc R31,R25
03C8 80E2 ldi R24,32
03CA 8083 std z+0,R24
03CC .dbline 401
03CC L59:
03CC .dbline 398
03CC A394 inc R10
03CE L61:
03CE .dbline 398
03CE 8A2D mov R24,R10
03D0 8131 cpi R24,17
03D2 A8F3 brlo L58
03D4 .dbline 403
03D4 ; }
03D4 ; }
03D4 ; }
03D4 ; }
03D4 ; }
03D4 80910600 lds R24,L51
03D8 90910700 lds R25,L51+1
03DC 0196 adiw R24,1
03DE 90930700 sts L51+1,R25
03E2 80930600 sts L51,R24
03E6 .dbline 404
03E6 ; }
03E6 8BE0 ldi R24,11
03E8 90E0 ldi R25,0
03EA 20900600 lds R2,L51
03EE 30900700 lds R3,L51+1
03F2 8215 cp R24,R2
03F4 9305 cpc R25,R3
03F6 78F4 brsh L62
03F8 .dbline 405
03F8 ; }
03F8 .dbline 406
03F8 ; }
03F8 80910500 lds R24,L50
03FC 8F5F subi R24,255 ; addi 1
03FE 80930500 sts L50,R24
0402 .dbline 407
0402 ; }
0402 2224 clr R2
0404 3324 clr R3
0406 30920700 sts L51+1,R3
040A 20920600 sts L51,R2
040E .dbline 408
040E ; }
040E 8617 cp R24,R22
0410 11F4 brne L64
0412 .dbline 409
0412 ; }
0412 .dbline 410
0412 ; }
0412 20920500 sts L50,R2
0416 .dbline 411
0416 ; }
0416 L64:
0416 .dbline 412
0416 ; }
0416 L62:
0416 .dbline 414
0416 ; }
0416 ; }
0416 2F8D ldd R18,y+31
0418 2150 subi R18,1
041A 042F mov R16,R20
041C 0150 subi R16,1
041E 64DF rcall _LCDSetXY
0420 .dbline 415
0420 ; }
0420 8E01 movw R16,R28
0422 71DF rcall _LCDDisplayString
0424 .dbline -2
0424 L49:
0424 6196 adiw R28,17
0426 00D0 rcall pop_gset5
0428 2496 adiw R28,4
042A .dbline 0 ; func end
042A 0895 ret
042C .dbsym r StringLong 22 c
042C .dbsym l SCREEN 0 A[17:17]c
042C .dbsym r Point 14 c
042C .dbsym r a 10 c
042C .dbsym r EndX 12 c
042C .dbsym r StartX 20 c
042C .dbsym l Y 31 c
042C .dbsym r Direction 22 c
042C .dbsym l String 27 pc
042C .dbend
042C .dbfunc e StringLength _StringLength fc
042C ; n -> R20
042C ; String -> R16,R17
.even
042C _StringLength::
042C 00D0 rcall push_gset1
042E .dbline -1
042E .dbline 422
042E ; }
042E ; }
042E ; }
042E ; }
042E ; }
042E ; }
042E ; }
042E .dbline 423
042E ; }
042E 4427 clr R20
0430 03C0 rjmp L68
0432 L67:
0432 .dbline 425
0432 .dbline 426
0432 4395 inc R20
0434 .dbline 427
0434 0F5F subi R16,255 ; offset = 1
0436 1F4F sbci R17,255
0438 .dbline 428
0438 L68:
0438 .dbline 424
0438 ; }
0438 F801 movw R30,R16
043A 2080 ldd R2,z+0
043C 2220 tst R2
043E C9F7 brne L67
0440 .dbline 430
0440 ; }
0440 ; }
0440 ; }
0440 ; }
0440 ; }
0440 ; }
0440 042F mov R16,R20
0442 .dbline -2
0442 L66:
0442 00D0 rcall pop_gset1
0444 .dbline 0 ; func end
0444 0895 ret
0446 .dbsym r n 20 c
0446 .dbsym r String 16 pc
0446 .dbend
0446 .dbfunc e Flash _Flash fV
0446 ; StringLong -> R20
0446 ; a -> R22
0446 ; Y -> R10
0446 ; X -> R12
0446 ; Icon -> R14
0446 ; String -> y+10
.even
0446 _Flash::
0446 00D0 rcall push_arg4
0448 00D0 rcall push_gset5
044A E22E mov R14,R18
044C CE84 ldd R12,y+14
044E A888 ldd R10,y+16
0450 .dbline -1
0450 .dbline 437
0450 ; }
0450 ; }
0450 ; }
0450 ; }
0450 ; }
0450 ; }
0450 ; }
0450 .dbline 438
0450 ; }
0450 6627 clr R22
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -