📄 lcd.lis
字号:
03C0 0000 .byte 0,0
03C2 0000 .byte 0,0
03C4 0000 .byte 0,0
03C6 0000 .byte 0,0
03C8 0000 .byte 0,0
03CA 0000 .byte 0,0
03CC 0000 .byte 0,0
03CE 0000 .byte 0,0
03D0 0000 .byte 0,0
03D2 0000 .byte 0,0
03D4 0000 .byte 0,0
03D6 0000 .byte 0,0
03D8 0000 .byte 0,0
03DA 0000 .byte 0,0
03DC 0000 .byte 0,0
03DE 0000 .byte 0,0
03E0 0000 .byte 0,0
03E2 0000 .byte 0,0
03E4 0000 .byte 0,0
03E6 0000 .byte 0,0
03E8 0000 .byte 0,0
03EA 0000 .byte 0,0
03EC 0000 .byte 0,0
03EE 0000 .byte 0,0
03F0 0000 .byte 0,0
03F2 0000 .byte 0,0
03F4 0000 .byte 0,0
03F6 0000 .byte 0,0
03F8 0000 .byte 0,0
03FA 0000 .byte 0,0
03FC 0000 .byte 0,0
03FE 0000 .byte 0,0
0400 .dbsym e Bitmap _Bitmap A[1024:1024]kc
.area text(rom, con, rel)
01F8 .dbfile D:\垃圾站\lcd.c
01F8 .dbfunc e ShowBmp _ShowBmp fV
01F8 ; a -> R10,R11
01F8 ; y -> R22,R23
01F8 ; i -> R12,R13
01F8 ; x -> R20,R21
.even
01F8 _ShowBmp::
01F8 0E940000 xcall push_xgsetF03C
01FC .dbline -1
01FC .dbline 250
01FC ; }
01FC ;
01FC ; //#if LCD12864==TRUE //条件编译指令
01FC ; //#pragma data:code //指定存储位置为Flash
01FC ; const unsigned char Bitmap[]={/*-- 宽度x高度=128x64图像 --*/
01FC ;
01FC ;
01FC ;
01FC ; 0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x82,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x01,0x06,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x02,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x04,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x04,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x04,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x04,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x0F,0xFE,0x04,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x10,0x01,0xFF,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x88,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x3F,0xFC,0x00,0x00,0xC8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x04,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x04,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x04,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x02,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x01,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x01,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x01,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0xFF,0xF0,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x06,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x08,0x00,0x04,0x00,0x00,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x7F,0xF0,0x09,0xE0,0x04,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x60,0x00,0x08,0x20,0x04,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x40,0x00,0x08,0x20,0x04,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0xC0,0x00,0x0F,0xE0,0x04,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x70,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x01,0xC0,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x3F,0xFF,0xFF,0xE0,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x20,0x0F,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x0F,0x80,0x00,0x00,0x00,0x40,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x7F,0xFF,0xFC,0x00,0x40,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x03,0xE0,0x00,0x80,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x06,0x20,0x01,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x03,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x9F,0xFF,0xF0,0x00,0x00,0x00,0x00,0x3C,0x0C,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x0F,0xC0,0x00,0x00,0x00,0x24,0x30,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x3C,0x00,0x00,0x00,0x24,0x40,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x03,0xFF,0xFF,0xFF,0xE4,0x80,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x05,0x80,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x01,0x00,0x00,0x00,
01FC ; 0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x1E,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x01,0xC0,0x00,0x00,0x00,0x00,0x00,0x05,0x00,0x03,0xE0,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x04,0x80,0x0C,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x04,0x7F,0xF0,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x7F,0xFF,0xFF,0xFF,0xFF,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
01FC ;
01FC ; };
01FC ;
01FC ; /*******************************************************/
01FC ; /****** 函数名称: ShowBmp() ******/
01FC ; /****** 功 能: 显示一幅128*64的BMP位图 ******/
01FC ; /****** 参 数: 无 ******/
01FC ; /****** 返回值 : 无 ******/
01FC ; /*******************************************************/
01FC ; void ShowBmp(void)
01FC ; {
01FC .dbline 251
01FC ; unsigned int i,a,x=0,y=0;
01FC 4427 clr R20
01FE 5527 clr R21
0200 .dbline 251
0200 6627 clr R22
0202 7727 clr R23
0204 .dbline 252
0204 ; WR_control(0x34);
0204 04E3 ldi R16,52
0206 50DF xcall _WR_control
0208 .dbline 253
0208 ; for(a=0;a<32;a++)
0208 AA24 clr R10
020A BB24 clr R11
020C 53C0 xjmp L56
020E L53:
020E .dbline 254
020E ; {
020E .dbline 255
020E ; WR_control(0x80+a);
020E 0A2D mov R16,R10
0210 0058 subi R16,128 ; offset = 128
0212 1F4F sbci R17,255
0214 49DF xcall _WR_control
0216 .dbline 256
0216 ; WR_control(0x80);
0216 00E8 ldi R16,128
0218 47DF xcall _WR_control
021A .dbline 257
021A ; for(i=0;i<8;i++)
021A CC24 clr R12
021C DD24 clr R13
021E 18C0 xjmp L60
0220 L57:
0220 .dbline 258
0220 ; {
0220 .dbline 259
0220 ; WR_dat(Bitmap[y+x]);
0220 FB01 movw R30,R22
0222 E40F add R30,R20
0224 F51F adc R31,R21
0226 80E0 ldi R24,<_Bitmap
0228 90E0 ldi R25,>_Bitmap
022A E80F add R30,R24
022C F91F adc R31,R25
022E 0491 lpm R16,Z
0230 28DF xcall _WR_dat
0232 .dbline 260
0232 ; WR_dat(Bitmap[y+x+1]);
0232 FB01 movw R30,R22
0234 E40F add R30,R20
0236 F51F adc R31,R21
0238 3196 adiw R30,1
023A 80E0 ldi R24,<_Bitmap
023C 90E0 ldi R25,>_Bitmap
023E E80F add R30,R24
0240 F91F adc R31,R25
0242 0491 lpm R16,Z
0244 1EDF xcall _WR_dat
0246 .dbline 261
0246 ; x+=2;
0246 4E5F subi R20,254 ; offset = 2
0248 5F4F sbci R21,255
024A .dbline 262
024A ; }
024A L58:
024A .dbline 257
024A C601 movw R24,R12
024C 0196 adiw R24,1
024E 6C01 movw R12,R24
0250 L60:
0250 .dbline 257
0250 C601 movw R24,R12
0252 8830 cpi R24,8
0254 E0E0 ldi R30,0
0256 9E07 cpc R25,R30
0258 18F3 brlo L57
025A X13:
025A .dbline 263
025A ; x=0;
025A 4427 clr R20
025C 5527 clr R21
025E .dbline 264
025E ; for(i=0;i<8;i++)
025E CC24 clr R12
0260 DD24 clr R13
0262 1CC0 xjmp L64
0264 L61:
0264 .dbline 265
0264 ; {
0264 .dbline 266
0264 ; WR_dat(Bitmap[512+y+x]);
0264 FB01 movw R30,R22
0266 E050 subi R30,0 ; offset = 512
0268 FE4F sbci R31,254
026A E40F add R30,R20
026C F51F adc R31,R21
026E 80E0 ldi R24,<_Bitmap
0270 90E0 ldi R25,>_Bitmap
0272 E80F add R30,R24
0274 F91F adc R31,R25
0276 0491 lpm R16,Z
0278 04DF xcall _WR_dat
027A .dbline 267
027A ; WR_dat(Bitmap[512+y+x+1]);
027A FB01 movw R30,R22
027C E050 subi R30,0 ; offset = 512
027E FE4F sbci R31,254
0280 E40F add R30,R20
0282 F51F adc R31,R21
0284 3196 adiw R30,1
0286 80E0 ldi R24,<_Bitmap
0288 90E0 ldi R25,>_Bitmap
028A E80F add R30,R24
028C F91F adc R31,R25
028E 0491 lpm R16,Z
0290 F8DE xcall _WR_dat
0292 .dbline 268
0292 ; x+=2;
0292 4E5F subi R20,254 ; offset = 2
0294 5F4F sbci R21,255
0296 .dbline 269
0296 ; }
0296 L62:
0296 .dbline 264
0296 C601 movw R24,R12
0298 0196 adiw R24,1
029A 6C01 movw R12,R24
029C L64:
029C .dbline 264
029C C601 movw R24,R12
029E 8830 cpi R24,8
02A0 E0E0 ldi R30,0
02A2 9E07 cpc R25,R30
02A4 F8F2 brlo L61
02A6 X14:
02A6 .dbline 270
02A6 ; x=0;
02A6 4427 clr R20
02A8 5527 clr R21
02AA .dbline 271
02AA ; y+=16;
02AA 605F subi R22,240 ; offset = 16
02AC 7F4F sbci R23,255
02AE .dbline 272
02AE ; }
02AE L54:
02AE .dbline 253
02AE C501 movw R24,R10
02B0 0196 adiw R24,1
02B2 5C01 movw R10,R24
02B4 L56:
02B4 .dbline 253
02B4 C501 movw R24,R10
02B6 8032 cpi R24,32
02B8 E0E0 ldi R30,0
02BA 9E07 cpc R25,R30
02BC 08F4 brsh X16
02BE A7CF xjmp L53
02C0 X16:
02C0 X15:
02C0 .dbline 273
02C0 ; WR_control(0x36);
02C0 06E3 ldi R16,54
02C2 F2DE xcall _WR_control
02C4 .dbline 274
02C4 ; delay_nus(80);
02C4 00E5 ldi R16,80
02C6 10E0 ldi R17,0
02C8 9BDE xcall _delay_nus
02CA .dbline 275
02CA ; WR_control(0x30);
02CA 00E3 ldi R16,48
02CC EDDE xcall _WR_control
02CE .dbline 276
02CE ; delay_nus(80);
02CE 00E5 ldi R16,80
02D0 10E0 ldi R17,0
02D2 96DE xcall _delay_nus
02D4 .dbline -2
02D4 L52:
02D4 .dbline 0 ; func end
02D4 0C940000 xjmp pop_xgsetF03C
02D8 .dbsym r a 10 i
02D8 .dbsym r y 22 i
02D8 .d
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -