📄 main.lis
字号:
034A ;
034A ; writec(0x00);
034A 0027 clr R16
034C F7DE xcall _writec
034E .dbline 291
034E ; writec(0xbe);
034E 0EEB ldi R16,190
0350 F5DE xcall _writec
0352 .dbline 292
0352 ; writed(0x00);
0352 0027 clr R16
0354 0ADF xcall _writed
0356 .dbline 293
0356 ; writed(0x00);//INTERFACE MODE SELECTION
0356 0027 clr R16
0358 08DF xcall _writed
035A .dbline 295
035A ;
035A ; writec(0x00);
035A 0027 clr R16
035C EFDE xcall _writec
035E .dbline 296
035E ; writec(0x21);
035E 01E2 ldi R16,33
0360 EDDE xcall _writec
0362 .dbline 297
0362 ; writed(0x00);
0362 0027 clr R16
0364 02DF xcall _writed
0366 .dbline 298
0366 ; writed(0x00);//external display interface control
0366 0027 clr R16
0368 00DF xcall _writed
036A .dbline 300
036A ;
036A ; writec(0x00);
036A 0027 clr R16
036C E7DE xcall _writec
036E .dbline 301
036E ; writec(0x22);
036E 02E2 ldi R16,34
0370 E5DE xcall _writec
0372 .dbline 302
0372 ; delay(3200);
0372 00E8 ldi R16,3200
0374 1CE0 ldi R17,12
0376 C8D0 xcall _delay
0378 .dbline 304
0378 ;
0378 ; writec(0x00);
0378 0027 clr R16
037A E0DE xcall _writec
037C .dbline 305
037C ; writec(0x07);//display off
037C 07E0 ldi R16,7
037E DEDE xcall _writec
0380 .dbline 306
0380 ; writed(0x00);
0380 0027 clr R16
0382 F3DE xcall _writed
0384 .dbline 307
0384 ; writed(0x05);
0384 05E0 ldi R16,5
0386 F1DE xcall _writed
0388 .dbline 308
0388 ; delay(50);
0388 02E3 ldi R16,50
038A 10E0 ldi R17,0
038C BDD0 xcall _delay
038E .dbline 310
038E ;
038E ; writec(0x00);
038E 0027 clr R16
0390 D5DE xcall _writec
0392 .dbline 311
0392 ; writec(0x07);//display off
0392 07E0 ldi R16,7
0394 D3DE xcall _writec
0396 .dbline 312
0396 ; writed(0x00);
0396 0027 clr R16
0398 E8DE xcall _writed
039A .dbline 313
039A ; writed(0x25);
039A 05E2 ldi R16,37
039C E6DE xcall _writed
039E .dbline 314
039E ; delay(100);
039E 04E6 ldi R16,100
03A0 10E0 ldi R17,0
03A2 B2D0 xcall _delay
03A4 .dbline 316
03A4 ;
03A4 ; writec(0x00);
03A4 0027 clr R16
03A6 CADE xcall _writec
03A8 .dbline 317
03A8 ; writec(0x07); //display off
03A8 07E0 ldi R16,7
03AA C8DE xcall _writec
03AC .dbline 318
03AC ; writed(0x00);
03AC 0027 clr R16
03AE DDDE xcall _writed
03B0 .dbline 319
03B0 ; writed(0x27);
03B0 07E2 ldi R16,39
03B2 DBDE xcall _writed
03B4 .dbline 320
03B4 ; delay(3200);
03B4 00E8 ldi R16,3200
03B6 1CE0 ldi R17,12
03B8 A7D0 xcall _delay
03BA .dbline 323
03BA ;
03BA ;
03BA ; writec(0x00);
03BA 0027 clr R16
03BC BFDE xcall _writec
03BE .dbline 324
03BE ; writec(0x07); //display on
03BE 07E0 ldi R16,7
03C0 BDDE xcall _writec
03C2 .dbline 325
03C2 ; writed(0x00);
03C2 0027 clr R16
03C4 D2DE xcall _writed
03C6 .dbline 326
03C6 ; writed(0x37);
03C6 07E3 ldi R16,55
03C8 D0DE xcall _writed
03CA .dbline -2
03CA L38:
03CA .dbline 0 ; func end
03CA 0895 ret
03CC .dbend
03CC .dbfunc e addr _addr fV
.even
03CC _addr::
03CC .dbline -1
03CC .dbline 330
03CC ; }
03CC ; //*****************************************************
03CC ; void addr(void)
03CC ; { writec(0x00);
03CC .dbline 330
03CC 0027 clr R16
03CE B6DE xcall _writec
03D0 .dbline 331
03D0 ; writec(0x44);//X address register;
03D0 04E4 ldi R16,68
03D2 B4DE xcall _writec
03D4 .dbline 332
03D4 ; writed(0x7f);
03D4 0FE7 ldi R16,127
03D6 C9DE xcall _writed
03D8 .dbline 333
03D8 ; writed(0x00);
03D8 0027 clr R16
03DA C7DE xcall _writed
03DC .dbline 335
03DC ;
03DC ; writec(0x00);
03DC 0027 clr R16
03DE AEDE xcall _writec
03E0 .dbline 336
03E0 ; writec(0x45);//Y address register;
03E0 05E4 ldi R16,69
03E2 ACDE xcall _writec
03E4 .dbline 337
03E4 ; writed(0x9f);
03E4 0FE9 ldi R16,159
03E6 C1DE xcall _writed
03E8 .dbline 338
03E8 ; writed(0x00);
03E8 0027 clr R16
03EA BFDE xcall _writed
03EC .dbline 340
03EC ;
03EC ; writec(0x00);
03EC 0027 clr R16
03EE A6DE xcall _writec
03F0 .dbline 341
03F0 ; writec(0x21);//GRAM ADDRESS SET
03F0 01E2 ldi R16,33
03F2 A4DE xcall _writec
03F4 .dbline 342
03F4 ; writed(0x00);
03F4 0027 clr R16
03F6 B9DE xcall _writed
03F8 .dbline 343
03F8 ; writed(0x00);
03F8 0027 clr R16
03FA B7DE xcall _writed
03FC .dbline 345
03FC ;
03FC ; writec(0x00);
03FC 0027 clr R16
03FE 9EDE xcall _writec
0400 .dbline 346
0400 ; writec(0x22);//WRITE DATA TO GRAM
0400 02E2 ldi R16,34
0402 9CDE xcall _writec
0404 .dbline -2
0404 L39:
0404 .dbline 0 ; func end
0404 0895 ret
0406 .dbend
0406 .dbfunc e addr4 _addr4 fV
0406 ; ylen -> y+6
0406 ; xlen -> y+4
0406 ; y -> R22
0406 ; x -> R20
.even
0406 _addr4::
0406 0E940000 xcall push_gset2
040A 622F mov R22,R18
040C 402F mov R20,R16
040E .dbline -1
040E .dbline 350
040E ; }
040E ; ///////////////////////////////////////////////////////////////////////////////////
040E ; void addr4(unsigned char x,unsigned char y,unsigned char xlen,unsigned char ylen)
040E ; { writec(0x00);
040E .dbline 350
040E 0027 clr R16
0410 95DE xcall _writec
0412 .dbline 351
0412 ; writec(0x44);//X address register;
0412 04E4 ldi R16,68
0414 93DE xcall _writec
0416 .dbline 352
0416 ; writed(x+xlen);
0416 042F mov R16,R20
0418 0C80 ldd R0,y+4
041A 000D add R16,R0
041C A6DE xcall _writed
041E .dbline 353
041E ; writed(x);
041E 042F mov R16,R20
0420 A4DE xcall _writed
0422 .dbline 355
0422 ;
0422 ; writec(0x00);
0422 0027 clr R16
0424 8BDE xcall _writec
0426 .dbline 356
0426 ; writec(0x45);//Y address register;
0426 05E4 ldi R16,69
0428 89DE xcall _writec
042A .dbline 357
042A ; writed(y+ylen);
042A 062F mov R16,R22
042C 0E80 ldd R0,y+6
042E 000D add R16,R0
0430 9CDE xcall _writed
0432 .dbline 358
0432 ; writed(y);
0432 062F mov R16,R22
0434 9ADE xcall _writed
0436 .dbline 360
0436 ;
0436 ; writec(0x00);
0436 0027 clr R16
0438 81DE xcall _writec
043A .dbline 361
043A ; writec(0x21);//GRAM ADDRESS SET
043A 01E2 ldi R16,33
043C 7FDE xcall _writec
043E .dbline 362
043E ; writed(y);
043E 062F mov R16,R22
0440 94DE xcall _writed
0442 .dbline 363
0442 ; writed(x);
0442 042F mov R16,R20
0444 92DE xcall _writed
0446 .dbline 365
0446 ;
0446 ; writec(0x00);
0446 0027 clr R16
0448 79DE xcall _writec
044A .dbline 366
044A ; writec(0x22);//WRITE DATA TO GRAM
044A 02E2 ldi R16,34
044C 77DE xcall _writec
044E .dbline -2
044E L40:
044E 0E940000 xcall pop_gset2
0452 .dbline 0 ; func end
0452 0895 ret
0454 .dbsym l ylen 6 c
0454 .dbsym l xlen 4 c
0454 .dbsym r y 22 c
0454 .dbsym r x 20 c
0454 .dbend
0454 .dbfunc e display_dot _display_dot fV
0454 ; c -> R20,R21
0454 ; s -> R12,R13
0454 ; d2 -> R22
0454 ; d1 -> R10
.even
0454 _display_dot::
0454 0E940000 xcall push_gset4
0458 622F mov R22,R18
045A A02E mov R10,R16
045C .dbline -1
045C .dbline 370
045C ; }
045C ; //////////////////////////////////////////////////////////////
045C ; void display_dot(unsigned char d1,unsigned char d2)
045C ; {
045C .dbline 372
045C ; unsigned int c,s;
045C ; addr();
045C B7DF xcall _addr
045E .dbline 373
045E ; for(c=0;c<160;c++)
045E 4427 clr R20
0460 5527 clr R21
0462 11C0 xjmp L45
0464 L42:
0464 .dbline 374
0464 ; {for(s=0;s<128;s++)
0464 .dbline 374
0464 CC24 clr R12
0466 DD24 clr R13
0468 07C0 xjmp L49
046A L46:
046A .dbline 375
046A .dbline 376
046A 0A2D mov R16,R10
046C 7EDE xcall _writed
046E .dbline 376
046E 062F mov R16,R22
0470 7CDE xcall _writed
0472 .dbline 377
0472 L47:
0472 .dbline 374
0472 C601 movw R24,R12
0474 0196 adiw R24,1
0476 6C01 movw R12,R24
0478 L49:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -