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

📄 main.lst

📁 这是一个产品的开发项目(基本程序)。有按键计算
💻 LST
📖 第 1 页 / 共 2 页
字号:
 195   3                                                              else if(S_==4){ if( ++v_pag21_>99)v_pag21_=0; }
 196   3                                                              else if(S_==5){ if( ++v_pag22_>99)v_pag22_=0; }
 197   3                                                              else if(S_==6){ if( ++v_pag23_>99)v_pag23_=0; }
 198   3                                                  else if(S_==7){ if( ++v_pag30_>99)v_pag30_=0; }
 199   3                                                              else if(S_==8){ if( ++v_pag31_>99)v_pag31_=0; }
 200   3                                                              else if(S_==9){ if( ++v_pag32_>99)v_pag32_=0; }
 201   3                                                              else if(S_==10){ if( ++v_pag33_>99)v_pag33_=0; }
 202   3                                                              else if(S_==11){ if( ++v_pag40_>99)v_pag40_=0; }
 203   3                                                              else if(S_==12){ if( ++v_pag41_>99)v_pag41_=0; }
 204   3                                                              else if((S_==0x50)||(S_==0x51))OffSet__moto( 0x40,1);
 205   3                                                              break;
 206   3                          case _MINUS_:   //按键"-"
 207   3                                                  if(S_==1)     { if( --v_pag10_>99)v_pag10_=99; }
 208   3                                                              else if(S_==2){ if( --v_pag11_>99)v_pag11_=99; }
 209   3                                                          else if(S_==3){ if( --v_pag20_>99)v_pag20_=99; }                                              
 210   3                                                              else if(S_==4){ if( --v_pag21_>99)v_pag21_=99; }                
 211   3                                                          else if(S_==5){ if( --v_pag22_>99)v_pag22_=99; }    
 212   3                                                          else if(S_==6){ if( --v_pag23_>99)v_pag23_=99; }
 213   3                                                              else if(S_==7){ if( --v_pag30_>99)v_pag30_=99; }
 214   3                                                          else if(S_==8){ if( --v_pag31_>99)v_pag31_=99; }                                              
 215   3                                                              else if(S_==9){ if( --v_pag32_>99)v_pag32_=99; }                
 216   3                                                          else if(S_==10){ if( --v_pag33_>99)v_pag33_=99; }   
 217   3                                                          else if(S_==11){ if( --v_pag40_>99)v_pag40_=99; }
 218   3                                                              else if(S_==12){ if( --v_pag41_>99)v_pag41_=99; }
 219   3                                                              else if((S_==0x50)||(S_==0x51))OffSet__moto( 0x40,0);
 220   3                                                  break;                                                                                      
 221   3                                              
 222   3                          case _DOWN_:    //按键"下                   
 223   3                                                              if(++S_>12)S_=1;
 224   3                                                              break;    
 225   3                          case _UP_  :    //按键"上
 226   3                                                              if(--S_==0)S_=12;
 227   3                                                  break;      
 228   3                          case _RIGHT_:   //按键"右"   
 229   3                                                  break;
 230   3                          case _LEFT_ :   //按键"左"
 231   3                                                  break;
 232   3              
 233   3                              case _YB_   :   //按键"预备" 
 234   3                                                              if( S_==0x00)     
 235   3                                                              {
 236   4                                                                       S_=0x50; //状态是"预备"
 237   4                                                                       Set__moto  (0xfa00,0);
 238   4                                                              }
C51 COMPILER V7.50   MAIN                                                                  01/03/2009 21:23:34 PAGE 5   

 239   3                                                              break;                                   
 240   3                              case _ONOFF_:   //按键"开/关"
 241   3                                                  if(S_==0x50 )
 242   3                                                              {     
 243   4                                                                    S_=0x51;  //状态是"工作"  
 244   4                                        Set__moto  (0x1f400,0);
 245   4                                                              }
 246   3                                                              else if(S_==0x51 )
 247   3                                                              {
 248   4                                                                    S_=0x00;//状态是开始画面          
 249   4                                                Set__moto  (0,1);//回到0位置
 250   4                                                              }
 251   3                                                  break;
 252   3                          }
 253   2                              if(_key)
 254   2                              {
 255   3                      switch(S_)
 256   3                              {
 257   4                              case 0:  F_pag0();   
 258   4                                                      break;
 259   4                      
 260   4                              case 1:                                 
 261   4                              case 2:     if(S_ ==1)       
 262   4                                                       char_in_String_10(v_pag10_,12, sdyl,1);//设定压力
 263   4                                                      else char_in_String_10(v_pag10_,12, sdyl,0);
 264   4                                                      if(S_ ==2)
 265   4                                                               char_in_String_10(v_pag11_,12, sdsj,1);//设定时间
 266   4                                                      else char_in_String_10(v_pag11_,12, sdsj,0);
 267   4                                              dispString (0, 0, 1, sdyl);
 268   4                                                      dispString (1, 0, 1, sdsj);
 269   4                                                      dispString (2, 0, 1, kong);
 270   4                                      dispString (3, 0, 1, kong);
 271   4                                                      //delaySec(1);
 272   4                                                      break;
 273   4                              case 3:  
 274   4                              case 4:  
 275   4                              case 5:  
 276   4                              case 6:    
 277   4               
 278   4                                          if(S_ ==3)         
 279   4                                                       char_in_String_10(v_pag20_,12, ybsd,1);//预备速度
 280   4                              else char_in_String_10(v_pag20_,12, ybsd,0);
 281   4                                                      if(S_ ==4)         
 282   4                                                               char_in_String_10(v_pag21_,12, sds2,1);//设定压力      
 283   4                                                      else char_in_String_10(v_pag21_,12, sds2,0);
 284   4                                                      if(S_ ==5)         
 285   4                                                       char_in_String_10(v_pag22_,12, jysj,1);//加压时间
 286   4                                                      else char_in_String_10(v_pag22_,12, jysj,0);
 287   4                                                      if(S_ ==6)        
 288   4                                                       char_in_String_10(v_pag23_,12, sdsj,1);//工作时间 
 289   4                                                  else char_in_String_10(v_pag23_,12, sdsj,0);
 290   4                                                      dispString (0, 0, 1, ybsd);
 291   4                                                      dispString (1, 0, 1, sds2);
 292   4                                                      dispString (2, 0, 1, jysj);
 293   4                                                      dispString (3, 0, 1, sdsj);     
 294   4                                                      //delaySec(1);
 295   4                                                      break;
 296   4                              case 7:  
 297   4                              case 8:  
 298   4                              case 9:  
 299   4                              case 10:        
 300   4                                          if(S_ ==7)         
C51 COMPILER V7.50   MAIN                                                                  01/03/2009 21:23:34 PAGE 6   

 301   4                                                       char_in_String_10(v_pag30_,12, jmsj,1);//精磨时间
 302   4                              else char_in_String_10(v_pag30_,12, jmsj,0);
 303   4                                                      if(S_ ==8)         
 304   4                                                               char_in_String_10(v_pag31_,12, jmyl,1);//精磨压力
 305   4                                                      else char_in_String_10(v_pag31_,12, jmyl,0);
 306   4                                                      if(S_ ==9)         
 307   4                                                       char_in_String_10(v_pag32_,12, sdsd,1);//手动速度
 308   4                                                      else char_in_String_10(v_pag32_,12, sdsd,0);
 309   4                                                      if(S_ ==10)        
 310   4                                                       char_in_String_10(v_pag33_,12, wtsd,1);//微调速度
 311   4                                                  else char_in_String_10(v_pag33_,12, wtsd,0);
 312   4                                          dispString (0, 0, 1, jmsj);//精磨时间
 313   4                                                      dispString (1, 0, 1, jmyl);//精磨压力
 314   4                                                      dispString (2, 0, 1, sdsd);//手动速度
 315   4                                                      dispString (3, 0, 1, wtsd);//微调速度
 316   4                                                      //delaySec(1);//F_pag3();
 317   4                                                      break;//精磨时间
 318   4                              
 319   4                              case 11:    
 320   4                              case 12:        
 321   4                                          if(S_ ==11)         
 322   4                                                       char_in_String_10(v_pag40_,12, wtjl,1);//微调距离
 323   4                              else char_in_String_10(v_pag40_,12, wtjl,0);
 324   4                                                      if(S_ ==12)         
 325   4                                                               char_in_String_10(v_pag41_,12, ybjl,1);//预备距离
 326   4                                                      else char_in_String_10(v_pag41_,12, ybjl,0);
 327   4                                          dispString (0, 0, 1, wtjl);//微调距离
 328   4                                                      dispString (1, 0, 1, ybjl);//预备距离
 329   4                                                      dispString (2, 0, 1, kong);
 330   4                                                      dispString (3, 0, 1, kong);
 331   4                                                      //delaySec(1);//F_pag4();
 332   4                                          break;//微调距离
 333   4                              case 0x50:  F_pag4();break;//工作...
 334   4                  case 0x51:  F_pag5();break;//工作...
 335   4                              }
 336   3                              S=S_;
 337   3                              }
 338   2                      }       
 339   1      
 340   1      }
 341          //===============================================
 342          void F_pag0 (void)
 343          {
 344   1              //lcdClear();//输入参数:X=行(0-3), Y=列(0-7), speed=显示等待(毫秒), msg=显示数据
 345   1                      dispString (0, 0, 1, "                ");
 346   1                      dispString (1, 0, 1, "     MPZ-1T     ");
 347   1                      dispString (2, 0, 1, "  自动金相磨抛  ");
 348   1              dispString (3, 0, 1, "                ");
 349   1                      delaySec(1);
 350   1      }
 351          void F_pag4 (void)
 352          {
 353   1              //lcdClear();//输入参数:X=行(0-3), Y=列(0-7), speed=显示等待(毫秒), msg=显示数据
 354   1                      dispString (0, 0, 1, kong);
 355   1                      dispString (1, 0, 1, "  准备...       ");
 356   1                      dispString (2, 0, 1, kong);
 357   1                      dispString (3, 0, 1, kong);
 358   1      }
 359          void F_pag5 (void)
 360          {
 361   1              //lcdClear();//输入参数:X=行(0-3), Y=列(0-7), speed=显示等待(毫秒), msg=显示数据
 362   1                      dispString (0, 0, 1, kong);
C51 COMPILER V7.50   MAIN                                                                  01/03/2009 21:23:34 PAGE 7   

 363   1                      dispString (1, 0, 1, "  工作...       ");
 364   1                      dispString (2, 0, 1, kong);
 365   1                      dispString (3, 0, 1, kong);
 366   1      }
 367          unsigned int scan_key(void){
 368   1          static unsigned char key_S=1;//允许按键处理标志
 369   1              key_new.u8[0] = P2 & 0x89;      
 370   1              key_new.u8[1] = P1;     
 371   1              if(key_new.u16 != 0)//有按键按下
 372   1                      {
 373   2                              if(key_S==1)    //允许按键处理
 374   2                                      key_S=0;        //按键恢复前将不再处理标志
 375   2                              else            //按键已处理
 376   2                                      key_new.u16=0;//按键数据清零;不要重复处理
 377   2                      }
 378   1              else                                                            //无按键按下
 379   1                      {             
 380   2                              key_S=1;        //准备接受按键
 381   2                      }
 382   1              return (key_new.u16  ) ;
 383   1      }
 384          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2124    ----
   CONSTANT SIZE    =    102    ----
   XDATA SIZE       =    228    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      7    ----
   IDATA SIZE       =     17    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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