⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jhd12864.lis

📁 ds1302事实时钟+12864液晶显示 4094
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 039E 2227              clr R18
 03A0 0027              clr R16
 03A2 44DE              rcall _W_1byte
 03A4                   .dbline 377
 03A4           ;       delay_1ms(2);
 03A4 02E0              ldi R16,2
 03A6 10E0              ldi R17,0
 03A8 35DE              rcall _delay_1ms
 03AA                   .dbline 378
 03AA           ;       cmd=0x02;                       //地址归位
 03AA 42E0              ldi R20,2
 03AC                   .dbline 379
 03AC           ;       W_1byte(0,0,cmd);       //写指令
 03AC 4883              std y+0,R20
 03AE 2227              clr R18
 03B0 0027              clr R16
 03B2 3CDE              rcall _W_1byte
 03B4                   .dbline 380
 03B4           ;       delay_1ms(2);
 03B4 02E0              ldi R16,2
 03B6 10E0              ldi R17,0
 03B8 2DDE              rcall _delay_1ms
 03BA                   .dbline 381
 03BA           ;       cmd=0x80;                       //设置DDRAM地址
 03BA 40E8              ldi R20,128
 03BC                   .dbline 382
 03BC           ;       W_1byte(0,0,cmd);       //写指令
 03BC 4883              std y+0,R20
 03BE 2227              clr R18
 03C0 0027              clr R16
 03C2 34DE              rcall _W_1byte
 03C4                   .dbline 383
 03C4           ;       delay_1ms(2);                   //延时
 03C4 02E0              ldi R16,2
 03C6 10E0              ldi R17,0
 03C8 25DE              rcall _delay_1ms
 03CA                   .dbline -2
 03CA           L94:
 03CA                   .dbline 0 ; func end
 03CA 2196              adiw R28,1
 03CC 4991              ld R20,y+
 03CE 0895              ret
 03D0                   .dbsym r cmd 20 c
 03D0                   .dbend
 03D0                   .dbfunc e variable_display _variable_display fV
 03D0           ;           word -> R20,R21
 03D0           ;     Y_position -> R12
 03D0           ;     X_position -> R10
                        .even
 03D0           _variable_display::
 03D0 00D0              rcall push_xgset303C
 03D2 C22E              mov R12,R18
 03D4 A02E              mov R10,R16
 03D6 2297              sbiw R28,2
 03D8 4885              ldd R20,y+8
 03DA 5985              ldd R21,y+9
 03DC                   .dbline -1
 03DC                   .dbline 450
 03DC           ; }
 03DC           ; 
 03DC           ; /*
 03DC           ; void main()
 03DC           ; {
 03DC           ; 
 03DC           ;    DDRC=0xFF;
 03DC           ;    PORTC=0xFF;
 03DC           ;   // port_init();
 03DC           ;    LCD_Init();
 03DC           ;       delay_1ms(50);
 03DC           ;       LCD_Init();                             //初始化两边是关键,否则液晶上电重起将不能显示
 03DC           ;       
 03DC           ;       while(1)
 03DC           ;       {       
 03DC           ; 
 03DC           ;               
 03DC           ;               asm("nop");
 03DC           ;               asm("nop");
 03DC           ;               delay_1ms(500);
 03DC           ;               Char_Set_XY(0,0,"ST7920_3_wires");
 03DC           ;               Char_Set_XY(2,1,"反白练习");
 03DC           ;               Char_Set_XY(0,2,"可以单字反白或不");
 03DC           ;               Char_Set_XY(3,3,"反白");
 03DC           ;               delay_1ms(1000);
 03DC           ;               
 03DC           ;               Set_Draw();  //不加此句将不能正常反白
 03DC           ;               delay_1ms(100);
 03DC           ;               Set_White(1,1,8,0);                     //第1行,第1个汉字位置到第8汉字位置反白
 03DC           ;               Set_White(1,2,8,0);                     //第2行,第3个汉字位置到第6汉字位置反白
 03DC           ;               Set_White(1,3,8,0);                     //第3行,第1个汉字位置到第8汉字位置反白
 03DC           ;               Set_White(1,4,8,0);                     //第4行,第4个汉字位置到第5汉字位置反白
 03DC           ;               delay_1ms(2000);
 03DC           ;               
 03DC           ;               Set_White(1,1,1,1);                     //第1行,第4个汉字位置等取消反白
 03DC           ;               delay_1ms(1000);
 03DC           ;               Set_White(2,2,2,1);                     //第2行,第5个汉字位置等取消反白
 03DC           ;               delay_1ms(1000);
 03DC           ;               Set_White(3,3,3,1);                     //第3行,第6个汉字位置等取消反白
 03DC           ;               delay_1ms(1000);
 03DC           ;               Set_White(4,4,4,1);                     //第4行,第4个汉字位置等取消反白
 03DC           ;               delay_1ms(1000);
 03DC           ;               
 03DC           ;               //Set_White(1,1,1,1);                   //
 03DC           ;               //Set_White(3,2,3,1);                   //
 03DC           ;               //Set_White(2,3,2,1);                   //
 03DC           ;               //Set_White(5,4,5,1);                   //
 03DC           ;               //delay_1ms(1000);
 03DC           ;               
 03DC           ;               //Set_White(1,1,8,1);                   //第1行,第1个汉字位置到第8汉字位置取消反白
 03DC           ;               //Set_White(1,2,8,1);                   //第2行,第1个汉字位置到第8汉字位置取消反白
 03DC           ;               //Set_White(1,3,8,1);                   //第3行,第1个汉字位置到第8汉字位置取消反白
 03DC           ;               //Set_White(1,4,8,1);                   //第4行,第1个汉字位置到第8汉字位置取消反白
 03DC           ;               //Set_Char();
 03DC           ; 
 03DC           ;       
 03DC           ;       }
 03DC           ;       
 03DC           ; }
 03DC           ; */
 03DC           ; 
 03DC           ; 
 03DC           ; /*
 03DC           ; 在任一位置显示一数字变量
 03DC           ; */   
 03DC           ; void variable_display(uchar X_position ,uchar Y_position , uint word )
 03DC           ; {
 03DC                   .dbline 451
 03DC           ;    switch(word)
 03DC 4030              cpi R20,0
 03DE 4507              cpc R20,R21
 03E0 09F4              brne X41
 03E2 2EC0              rjmp L98
 03E4           X41:
 03E4           X31:
 03E4 4130              cpi R20,1
 03E6 E0E0              ldi R30,0
 03E8 5E07              cpc R21,R30
 03EA 09F4              brne X42
 03EC 31C0              rjmp L100
 03EE           X42:
 03EE           X32:
 03EE 4230              cpi R20,2
 03F0 E0E0              ldi R30,0
 03F2 5E07              cpc R21,R30
 03F4 09F4              brne X43
 03F6 34C0              rjmp L102
 03F8           X43:
 03F8           X33:
 03F8 4330              cpi R20,3
 03FA E0E0              ldi R30,0
 03FC 5E07              cpc R21,R30
 03FE 09F4              brne X44
 0400 37C0              rjmp L104
 0402           X44:
 0402           X34:
 0402 4430              cpi R20,4
 0404 E0E0              ldi R30,0
 0406 5E07              cpc R21,R30
 0408 09F4              brne X45
 040A 3AC0              rjmp L106
 040C           X45:
 040C           X35:
 040C 4530              cpi R20,5
 040E E0E0              ldi R30,0
 0410 5E07              cpc R21,R30
 0412 09F4              brne X46
 0414 3DC0              rjmp L108
 0416           X46:
 0416           X36:
 0416 4630              cpi R20,6
 0418 E0E0              ldi R30,0
 041A 5E07              cpc R21,R30
 041C 09F4              brne X47
 041E 40C0              rjmp L110
 0420           X47:
 0420           X37:
 0420 4730              cpi R20,7
 0422 E0E0              ldi R30,0
 0424 5E07              cpc R21,R30
 0426 09F4              brne X48
 0428 43C0              rjmp L112
 042A           X48:
 042A           X38:
 042A 4830              cpi R20,8
 042C E0E0              ldi R30,0
 042E 5E07              cpc R21,R30
 0430 09F4              brne X49
 0432 46C0              rjmp L114
 0434           X49:
 0434           X39:
 0434 4930              cpi R20,9
 0436 E0E0              ldi R30,0
 0438 5E07              cpc R21,R30
 043A 09F4              brne X50
 043C 49C0              rjmp L116
 043E           X50:
 043E           X40:
 043E 4FC0              rjmp L97
 0440           L98:
 0440                   .dbline 453
 0440           ;    {
 0440           ;    case 0 : Char_Set_XY(X_position,Y_position,"0");break;
 0440 80E0              ldi R24,<L99
 0442 90E0              ldi R25,>L99
 0444 9983              std y+1,R25
 0446 8883              std y+0,R24
 0448 2C2D              mov R18,R12
 044A 0A2D              mov R16,R10
 044C 3DDE              rcall _Char_Set_XY
 044E                   .dbline 453
 044E 47C0              rjmp L97
 0450           L100:
 0450                   .dbline 454
 0450           ;    case 1 : Char_Set_XY(X_position,Y_position,"1");break;
 0450 80E0              ldi R24,<L101
 0452 90E0              ldi R25,>L101
 0454 9983              std y+1,R25
 0456 8883              std y+0,R24
 0458 2C2D              mov R18,R12
 045A 0A2D              mov R16,R10
 045C 35DE              rcall _Char_Set_XY
 045E                   .dbline 454
 045E 3FC0              rjmp L97
 0460           L102:
 0460                   .dbline 455
 0460           ;    case 2 : Char_Set_XY(X_position,Y_position,"2");break;
 0460 80E0              ldi R24,<L103
 0462 90E0              ldi R25,>L103
 0464 9983              std y+1,R25
 0466 8883              std y+0,R24
 0468 2C2D              mov R18,R12
 046A 0A2D              mov R16,R10
 046C 2DDE              rcall _Char_Set_XY
 046E                   .dbline 455
 046E 37C0              rjmp L97
 0470           L104:
 0470                   .dbline 456
 0470           ;    case 3 : Char_Set_XY(X_position,Y_position,"3");break;
 0470 80E0              ldi R24,<L105
 0472 90E0              ldi R25,>L105
 0474 9983              std y+1,R25
 0476 8883              std y+0,R24
 0478 2C2D              mov R18,R12
 047A 0A2D              mov R16,R10
 047C 25DE              rcall _Char_Set_XY
 047E                   .dbline 456
 047E 2FC0              rjmp L97
 0480           L106:
 0480                   .dbline 457
 0480           ;    case 4 : Char_Set_XY(X_position,Y_position,"4");break;
 0480 80E0              ldi R24,<L107
 0482 90E0              ldi R25,>L107
 0484 9983              std y+1,R25
 0486 8883              std y+0,R24
 0488 2C2D              mov R18,R12
 048A 0A2D              mov R16,R10
 048C 1DDE              rcall _Char_Set_XY
 048E                   .dbline 457
 048E 27C0              rjmp L97
 0490           L108:
 0490                   .dbline 458
 0490           ;    case 5 : Char_Set_XY(X_position,Y_position,"5");break;
 0490 80E0              ldi R24,<L109
 0492 90E0              ldi R25,>L109
 0494 9983              std y+1,R25
 0496 8883              std y+0,R24
 0498 2C2D              mov R18,R12
 049A 0A2D              mov R16,R10
 049C 15DE              rcall _Char_Set_XY
 049E                   .dbline 458
 049E 1FC0              rjmp L97
 04A0           L110:
 04A0                   .dbline 459
 04A0           ;    case 6 : Char_Set_XY(X_position,Y_position,"6");break;
 04A0 80E0              ldi R24,<L111
 04A2 90E0              ldi R25,>L111
 04A4 9983              std y+1,R25
 04A6 8883              std y+0,R24
 04A8 2C2D              mov R18,R12
 04AA 0A2D              mov R16,R10
 04AC 0DDE              rcall _Char_Set_XY
 04AE                   .dbline 459
 04AE 17C0              rjmp L97
 04B0           L112:
 04B0                   .dbline 460
 04B0           ;    case 7 : Char_Set_XY(X_position,Y_position,"7");break;
 04B0 80E0              ldi R24,<L113
 04B2 90E0              ldi R25,>L113
 04B4 9983              std y+1,R25
 04B6 8883              std y+0,R24
 04B8 2C2D              mov R18,R12
 04BA 0A2D              mov R16,R10
 04BC 05DE              rcall _Char_Set_XY
 04BE                   .dbline 460
 04BE 0FC0              rjmp L97
 04C0           L114:
 04C0                   .dbline 461
 04C0           ;    case 8 : Char_Set_XY(X_position,Y_position,"8");break;
 04C0 80E0              ldi R24,<L115
 04C2 90E0              ldi R25,>L115
 04C4 9983              std y+1,R25
 04C6 8883              std y+0,R24
 04C8 2C2D              mov R18,R12
 04CA 0A2D              mov R16,R10
 04CC FDDD              rcall _Char_Set_XY
 04CE                   .dbline 461
 04CE 07C0              rjmp L97
 04D0           L116:
 04D0                   .dbline 462
 04D0           ;    case 9 : Char_Set_XY(X_position,Y_position,"9");break;
 04D0 80E0              ldi R24,<L117
 04D2 90E0              ldi R25,>L117
 04D4 9983              std y+1,R25
 04D6 8883              std y+0,R24
 04D8 2C2D              mov R18,R12
 04DA 0A2D              mov R16,R10
 04DC F5DD              rcall _Char_Set_XY
 04DE                   .dbline 462
 04DE                   .dbline 463
 04DE           ;    default:  break;
 04DE           L97:
 04DE                   .dbline -2
 04DE           L95:
 04DE                   .dbline 0 ; func end
 04DE 2296              adiw R28,2
 04E0 00C0              rjmp pop_xgset303C
 04E2                   .dbsym r word 20 i
 04E2                   .dbsym r Y_position 12 c
 04E2                   .dbsym r X_position 10 c
 04E2     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -