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

📄 lcd_hg1286.lis

📁 基于ATmega8开发的关于医疗康复的机器人
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0394 02E0              ldi R16,2
 0396 62DE              rcall _dis
 0398                   .dbline 203
 0398           ;       lcd_dis(3,0x2,(Minutes+temp2*6));       
 0398 20900000          lds R2,_temp2
 039C 86E0              ldi R24,6
 039E 829D              mul R24,R2
 03A0 1001              movw R2,R0
 03A2 80E0              ldi R24,<_Minutes
 03A4 90E0              ldi R25,>_Minutes
 03A6 280E              add R2,R24
 03A8 391E              adc R3,R25
 03AA 3982              std y+1,R3
 03AC 2882              std y+0,R2
 03AE 22E0              ldi R18,2
 03B0 03E0              ldi R16,3
 03B2 87DE              rcall _lcd_dis
 03B4                   .dbline 204
 03B4           ;       lcd_dis(3,0x3,(Minutes+temp2*6+2));
 03B4 20900000          lds R2,_temp2
 03B8 86E0              ldi R24,6
 03BA 829D              mul R24,R2
 03BC 1001              movw R2,R0
 03BE 80E0              ldi R24,<_Minutes+2
 03C0 90E0              ldi R25,>_Minutes+2
 03C2 280E              add R2,R24
 03C4 391E              adc R3,R25
 03C6 3982              std y+1,R3
 03C8 2882              std y+0,R2
 03CA 23E0              ldi R18,3
 03CC 03E0              ldi R16,3
 03CE 79DE              rcall _lcd_dis
 03D0                   .dbline 205
 03D0           ;       lcd_dis(3,0x4,(Minutes+temp2*6+4));
 03D0 20900000          lds R2,_temp2
 03D4 86E0              ldi R24,6
 03D6 829D              mul R24,R2
 03D8 1001              movw R2,R0
 03DA 80E0              ldi R24,<_Minutes+4
 03DC 90E0              ldi R25,>_Minutes+4
 03DE 280E              add R2,R24
 03E0 391E              adc R3,R25
 03E2 3982              std y+1,R3
 03E4 2882              std y+0,R2
 03E6 24E0              ldi R18,4
 03E8 03E0              ldi R16,3
 03EA 6BDE              rcall _lcd_dis
 03EC                   .dbline 206
 03EC           ;       lcd_dis(3,0x5,dao);                                     //显示“到!”
 03EC 80E0              ldi R24,<_dao
 03EE 90E0              ldi R25,>_dao
 03F0 9983              std y+1,R25
 03F2 8883              std y+0,R24
 03F4 25E0              ldi R18,5
 03F6 03E0              ldi R16,3
 03F8 64DE              rcall _lcd_dis
 03FA                   .dbline 207
 03FA           ;       lcd_dis(3,0x6,(dao+2)); 
 03FA 80E0              ldi R24,<_dao+2
 03FC 90E0              ldi R25,>_dao+2
 03FE 9983              std y+1,R25
 0400 8883              std y+0,R24
 0402 26E0              ldi R18,6
 0404 03E0              ldi R16,3
 0406 5DDE              rcall _lcd_dis
 0408                   .dbline -2
 0408           L43:
 0408                   .dbline 0 ; func end
 0408 2296              adiw R28,2
 040A 0895              ret
 040C                   .dbend
 040C                   .dbfunc e delay_1us _delay_1us fV
                        .even
 040C           _delay_1us::
 040C                   .dbline -1
 040C                   .dbline 217
 040C           ; }     
 040C           ; /********************延时函数***************
 040C           ; *函    数:dalay
 040C           ; *函数功能:软件延时
 040C           ; *入口参数:无
 040C           ; *返 回 值:无
 040C           ; *备    注:
 040C           ; ****************************************************/ 
 040C           ; void delay_1us(void)                  //1us延时函数
 040C           ; {
 040C                   .dbline 218
 040C           ;       asm("nop");
 040C 0000              nop
 040E                   .dbline -2
 040E           L47:
 040E                   .dbline 0 ; func end
 040E 0895              ret
 0410                   .dbend
 0410                   .dbfunc e delay_nus _delay_nus fV
 0410           ;              i -> R20,R21
 0410           ;              n -> R10,R11
                        .even
 0410           _delay_nus::
 0410 00D0              rcall push_xgset300C
 0412 5801              movw R10,R16
 0414                   .dbline -1
 0414                   .dbline 222
 0414           ; }
 0414           ; 
 0414           ; void delay_nus(unsigned int n)        //N us延时函数
 0414           ; {
 0414                   .dbline 223
 0414           ;       unsigned int i=0;
 0414 4427              clr R20
 0416 5527              clr R21
 0418                   .dbline 224
 0418           ;       for (i=0;i<n;i++);
 0418 02C0              rjmp L52
 041A           L49:
 041A                   .dbline 224
 041A           L50:
 041A                   .dbline 224
 041A 4F5F              subi R20,255  ; offset = 1
 041C 5F4F              sbci R21,255
 041E           L52:
 041E                   .dbline 224
 041E 4A15              cp R20,R10
 0420 5B05              cpc R21,R11
 0422 D8F3              brlo L49
 0424           X10:
 0424                   .dbline 225
 0424           ;               delay_1us();
 0424 F3DF              rcall _delay_1us
 0426                   .dbline -2
 0426           L48:
 0426                   .dbline 0 ; func end
 0426 00C0              rjmp pop_xgset300C
 0428                   .dbsym r i 20 i
 0428                   .dbsym r n 10 i
 0428                   .dbend
 0428                   .dbfunc e delay_1ms _delay_1ms fV
 0428           ;              i -> R16,R17
                        .even
 0428           _delay_1ms::
 0428                   .dbline -1
 0428                   .dbline 228
 0428           ; }
 0428           ; void delay_1ms(void)                  //1ms延时函数
 0428           ; {
 0428                   .dbline 230
 0428           ;       unsigned int i;
 0428           ;       for (i=0;i<1140;i++);
 0428 0027              clr R16
 042A 1127              clr R17
 042C 02C0              rjmp L57
 042E           L54:
 042E                   .dbline 230
 042E           L55:
 042E                   .dbline 230
 042E 0F5F              subi R16,255  ; offset = 1
 0430 1F4F              sbci R17,255
 0432           L57:
 0432                   .dbline 230
 0432 0437              cpi R16,116
 0434 E4E0              ldi R30,4
 0436 1E07              cpc R17,R30
 0438 D0F3              brlo L54
 043A           X11:
 043A                   .dbline -2
 043A           L53:
 043A                   .dbline 0 ; func end
 043A 0895              ret
 043C                   .dbsym r i 16 i
 043C                   .dbend
 043C                   .dbfunc e delay_nms _delay_nms fV
 043C           ;              i -> R20,R21
 043C           ;              n -> R10,R11
                        .even
 043C           _delay_nms::
 043C 00D0              rcall push_xgset300C
 043E 5801              movw R10,R16
 0440                   .dbline -1
 0440                   .dbline 233
 0440           ; }
 0440           ; void delay_nms(unsigned int n)        //N ms延时函数
 0440           ; {
 0440                   .dbline 234
 0440           ;       unsigned int i=0;
 0440 4427              clr R20
 0442 5527              clr R21
 0444                   .dbline 235
 0444           ;       for (i=0;i<n;i++)
 0444 03C0              rjmp L62
 0446           L59:
 0446                   .dbline 236
 0446           ;       delay_1ms();
 0446 F0DF              rcall _delay_1ms
 0448           L60:
 0448                   .dbline 235
 0448 4F5F              subi R20,255  ; offset = 1
 044A 5F4F              sbci R21,255
 044C           L62:
 044C                   .dbline 235
 044C 4A15              cp R20,R10
 044E 5B05              cpc R21,R11
 0450 D0F3              brlo L59
 0452           X12:
 0452                   .dbline -2
 0452           L58:
 0452                   .dbline 0 ; func end
 0452 00C0              rjmp pop_xgset300C
 0454                   .dbsym r i 20 i
 0454                   .dbsym r n 10 i
 0454                   .dbend
 0454                   .dbfunc e display _display fV
                        .even
 0454           _display::
 0454 4A93              st -y,R20
 0456 5A93              st -y,R21
 0458                   .dbline -1
 0458                   .dbline 240
 0458           ; }  
 0458           ;  
 0458           ; void display(void)
 0458           ; {
 0458                   .dbline 241
 0458           ;       switch(page){
 0458 40910000          lds R20,_page
 045C 5527              clr R21
 045E 4030              cpi R20,0
 0460 4507              cpc R20,R21
 0462 69F0              breq L67
 0464           X13:
 0464 4130              cpi R20,1
 0466 E0E0              ldi R30,0
 0468 5E07              cpc R21,R30
 046A 81F0              breq L68
 046C           X14:
 046C 4230              cpi R20,2
 046E E0E0              ldi R30,0
 0470 5E07              cpc R21,R30
 0472 89F0              breq L69
 0474           X15:
 0474 4330              cpi R20,3
 0476 E0E0              ldi R30,0
 0478 5E07              cpc R21,R30
 047A 91F0              breq L70
 047C           X16:
 047C 15C0              rjmp L65
 047E           L67:
 047E                   .dbline 242
 047E           ;               case 0: page0();flag=1;page=1;break;    //欢迎界面
 047E 60DE              rcall _page0
 0480                   .dbline 242
 0480 81E0              ldi R24,1
 0482 80930000          sts _flag,R24
 0486                   .dbline 242
 0486 80930000          sts _page,R24
 048A                   .dbline 242
 048A 0EC0              rjmp L65
 048C           L68:
 048C                   .dbline 243
 048C           ;               case 1: page1();flag=0;           break;        //参数设置页面
 048C 85DE              rcall _page1
 048E                   .dbline 243
 048E 2224              clr R2
 0490 20920000          sts _flag,R2
 0494                   .dbline 243
 0494 09C0              rjmp L65
 0496           L69:
 0496                   .dbline 244
 0496           ;               case 2: page2();flag=0;           break;        //开始界面
 0496 A1DE              rcall _page2
 0498                   .dbline 244
 0498 2224              clr R2
 049A 20920000          sts _flag,R2
 049E                   .dbline 244
 049E 04C0              rjmp L65
 04A0           L70:
 04A0                   .dbline 245
 04A0           ;               case 3: page3();flag=0;       break;    //结束界面
 04A0 BCDE              rcall _page3
 04A2                   .dbline 245
 04A2 2224              clr R2
 04A4 20920000          sts _flag,R2
 04A8                   .dbline 245
 04A8                   .dbline 246
 04A8           ;               default:break;
 04A8           L65:
 04A8                   .dbline -2
 04A8           L63:
 04A8                   .dbline 0 ; func end
 04A8 5991              ld R21,y+
 04AA 4991              ld R20,y+
 04AC 0895              ret
 04AE                   .dbend
 04AE           ;       }       
 04AE           ; }

⌨️ 快捷键说明

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