📄 lcd.lis
字号:
0308 B501 movw R22,R10
030A 6F70 andi R22,15
030C 7070 andi R23,0
030E .dbline 161
030E ; LCDDR1|=m<<2;
030E 1B01 movw R2,R22
0310 220C lsl R2
0312 331C rol R3
0314 220C lsl R2
0316 331C rol R3
0318 4090ED00 lds R4,237
031C 5524 clr R5
031E 4228 or R4,R2
0320 5328 or R5,R3
0322 4092ED00 sts 237,R4
0326 .dbline 162
0326 ; m=(j>>4)&0x000f;
0326 B501 movw R22,R10
0328 7695 lsr R23
032A 6795 ror R22
032C 7695 lsr R23
032E 6795 ror R22
0330 7695 lsr R23
0332 6795 ror R22
0334 7695 lsr R23
0336 6795 ror R22
0338 6F70 andi R22,15
033A 7070 andi R23,0
033C .dbline 163
033C ; LCDDR6|=m<<2;
033C 1B01 movw R2,R22
033E 220C lsl R2
0340 331C rol R3
0342 220C lsl R2
0344 331C rol R3
0346 4090F200 lds R4,242
034A 5524 clr R5
034C 4228 or R4,R2
034E 5328 or R5,R3
0350 4092F200 sts 242,R4
0354 .dbline 164
0354 ; m=(j>>8)&0x000f;
0354 B501 movw R22,R10
0356 672F mov R22,R23
0358 7727 clr R23
035A 6F70 andi R22,15
035C 7070 andi R23,0
035E .dbline 165
035E ; LCDDR11|=m<<2;
035E 1B01 movw R2,R22
0360 220C lsl R2
0362 331C rol R3
0364 220C lsl R2
0366 331C rol R3
0368 4090F700 lds R4,247
036C 5524 clr R5
036E 4228 or R4,R2
0370 5328 or R5,R3
0372 4092F700 sts 247,R4
0376 .dbline 166
0376 ; m=(j>>12)&0x000f;
0376 2CE0 ldi R18,12
0378 30E0 ldi R19,0
037A 8501 movw R16,R10
037C 0E940000 xcall lsr16
0380 B801 movw R22,R16
0382 6F70 andi R22,15
0384 7070 andi R23,0
0386 .dbline 167
0386 ; LCDDR16|=m<<2;
0386 1B01 movw R2,R22
0388 220C lsl R2
038A 331C rol R3
038C 220C lsl R2
038E 331C rol R3
0390 4090FC00 lds R4,252
0394 5524 clr R5
0396 4228 or R4,R2
0398 5328 or R5,R3
039A 4092FC00 sts 252,R4
039E .dbline 169
039E ;
039E ; j=LCD_character_table[i]; //左7位
039E 02E0 ldi R16,2
03A0 10E0 ldi R17,0
03A2 9A01 movw R18,R20
03A4 0E940000 xcall empy16s
03A8 F801 movw R30,R16
03AA 80E0 ldi R24,<_LCD_character_table
03AC 90E0 ldi R25,>_LCD_character_table
03AE E80F add R30,R24
03B0 F91F adc R31,R25
03B2 A590 lpm R10,Z+
03B4 B490 lpm R11,Z
03B6 .dbline 170
03B6 ; m=j&0x000f;
03B6 B501 movw R22,R10
03B8 6F70 andi R22,15
03BA 7070 andi R23,0
03BC .dbline 171
03BC ; LCDDR1|=m<<4;
03BC 1B01 movw R2,R22
03BE 220C lsl R2
03C0 331C rol R3
03C2 220C lsl R2
03C4 331C rol R3
03C6 220C lsl R2
03C8 331C rol R3
03CA 220C lsl R2
03CC 331C rol R3
03CE 4090ED00 lds R4,237
03D2 5524 clr R5
03D4 4228 or R4,R2
03D6 5328 or R5,R3
03D8 4092ED00 sts 237,R4
03DC .dbline 172
03DC ; m=(j>>4)&0x000f;
03DC B501 movw R22,R10
03DE 7695 lsr R23
03E0 6795 ror R22
03E2 7695 lsr R23
03E4 6795 ror R22
03E6 7695 lsr R23
03E8 6795 ror R22
03EA 7695 lsr R23
03EC 6795 ror R22
03EE 6F70 andi R22,15
03F0 7070 andi R23,0
03F2 .dbline 173
03F2 ; LCDDR6|=m<<4;
03F2 1B01 movw R2,R22
03F4 220C lsl R2
03F6 331C rol R3
03F8 220C lsl R2
03FA 331C rol R3
03FC 220C lsl R2
03FE 331C rol R3
0400 220C lsl R2
0402 331C rol R3
0404 4090F200 lds R4,242
0408 5524 clr R5
040A 4228 or R4,R2
040C 5328 or R5,R3
040E 4092F200 sts 242,R4
0412 .dbline 174
0412 ; m=(j>>8)&0x000f;
0412 B501 movw R22,R10
0414 672F mov R22,R23
0416 7727 clr R23
0418 6F70 andi R22,15
041A 7070 andi R23,0
041C .dbline 175
041C ; LCDDR11|=m<<4;
041C 1B01 movw R2,R22
041E 220C lsl R2
0420 331C rol R3
0422 220C lsl R2
0424 331C rol R3
0426 220C lsl R2
0428 331C rol R3
042A 220C lsl R2
042C 331C rol R3
042E 4090F700 lds R4,247
0432 5524 clr R5
0434 4228 or R4,R2
0436 5328 or R5,R3
0438 4092F700 sts 247,R4
043C .dbline 176
043C ; m=(j>>12)&0x000f;
043C 2CE0 ldi R18,12
043E 30E0 ldi R19,0
0440 8501 movw R16,R10
0442 0E940000 xcall lsr16
0446 B801 movw R22,R16
0448 6F70 andi R22,15
044A 7070 andi R23,0
044C .dbline 177
044C ; LCDDR16|=m<<4;
044C 1B01 movw R2,R22
044E 220C lsl R2
0450 331C rol R3
0452 220C lsl R2
0454 331C rol R3
0456 220C lsl R2
0458 331C rol R3
045A 220C lsl R2
045C 331C rol R3
045E 4090FC00 lds R4,252
0462 5524 clr R5
0464 4228 or R4,R2
0466 5328 or R5,R3
0468 4092FC00 sts 252,R4
046C .dbline 180
046C ;
046C ;
046C ; j=LCD_character_table[i]; //左8位
046C 02E0 ldi R16,2
046E 10E0 ldi R17,0
0470 9A01 movw R18,R20
0472 0E940000 xcall empy16s
0476 F801 movw R30,R16
0478 80E0 ldi R24,<_LCD_character_table
047A 90E0 ldi R25,>_LCD_character_table
047C E80F add R30,R24
047E F91F adc R31,R25
0480 A590 lpm R10,Z+
0482 B490 lpm R11,Z
0484 .dbline 181
0484 ; m=j&0x000f;
0484 B501 movw R22,R10
0486 6F70 andi R22,15
0488 7070 andi R23,0
048A .dbline 182
048A ; LCDDR1|=m<<6;
048A 26E0 ldi R18,6
048C 30E0 ldi R19,0
048E 8B01 movw R16,R22
0490 0E940000 xcall lsl16
0494 2090ED00 lds R2,237
0498 3324 clr R3
049A 202A or R2,R16
049C 312A or R3,R17
049E 2092ED00 sts 237,R2
04A2 .dbline 183
04A2 ; m=(j>>4)&0x000f;
04A2 B501 movw R22,R10
04A4 7695 lsr R23
04A6 6795 ror R22
04A8 7695 lsr R23
04AA 6795 ror R22
04AC 7695 lsr R23
04AE 6795 ror R22
04B0 7695 lsr R23
04B2 6795 ror R22
04B4 6F70 andi R22,15
04B6 7070 andi R23,0
04B8 .dbline 184
04B8 ; LCDDR6|=m<<6;
04B8 26E0 ldi R18,6
04BA 30E0 ldi R19,0
04BC 8B01 movw R16,R22
04BE 0E940000 xcall lsl16
04C2 2090F200 lds R2,242
04C6 3324 clr R3
04C8 202A or R2,R16
04CA 312A or R3,R17
04CC 2092F200 sts 242,R2
04D0 .dbline 185
04D0 ; m=(j>>8)&0x000f;
04D0 B501 movw R22,R10
04D2 672F mov R22,R23
04D4 7727 clr R23
04D6 6F70 andi R22,15
04D8 7070 andi R23,0
04DA .dbline 186
04DA ; LCDDR11|=m<<6;
04DA 26E0 ldi R18,6
04DC 30E0 ldi R19,0
04DE 8B01 movw R16,R22
04E0 0E940000 xcall lsl16
04E4 2090F700 lds R2,247
04E8 3324 clr R3
04EA 202A or R2,R16
04EC 312A or R3,R17
04EE 2092F700 sts 247,R2
04F2 .dbline 187
04F2 ; m=(j>>12)&0x000f;
04F2 2CE0 ldi R18,12
04F4 30E0 ldi R19,0
04F6 8501 movw R16,R10
04F8 0E940000 xcall lsr16
04FC B801 movw R22,R16
04FE 6F70 andi R22,15
0500 7070 andi R23,0
0502 .dbline 188
0502 ; LCDDR16|=m<<6;
0502 26E0 ldi R18,6
0504 30E0 ldi R19,0
0506 8B01 movw R16,R22
0508 0E940000 xcall lsl16
050C 2090FC00 lds R2,252
0510 3324 clr R3
0512 202A or R2,R16
0514 312A or R3,R17
0516 2092FC00 sts 252,R2
051A .dbline 190
051A ;
051A ; delay_ms(1000);
051A 08EE ldi R16,1000
051C 13E0 ldi R17,3
051E 82DD xcall _delay_ms
0520 .dbline 191
0520 ; }
0520 L20:
0520 .dbline 104
0520 4F5F subi R20,255 ; offset = 1
0522 5F4F sbci R21,255
0524 L22:
0524 .dbline 104
0524 4A30 cpi R20,10
0526 E0E0 ldi R30,0
0528 5E07 cpc R21,R30
052A 08F4 brsh X5
052C CCCD xjmp L19
052E X5:
052E X3:
052E .dbline 192
052E ; }
052E L14:
052E .dbline 100
052E C1CD xjmp L17
0530 X4:
0530 .dbline -2
0530 L12:
0530 .dbline 0 ; func end
0530 0895 ret
0532 .dbsym r n 10 i
0532 .dbsym r i 20 i
0532 .dbsym r j 10 i
0532 .dbsym r m 22 i
0532 .dbend
0532 ; }
0532 ;
0532 ;
0532 ;
0532 ;
0532 ;
0532 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -