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

📄 keyfuncx.lst

📁 Keil 8051 C example RS232 to I2c
💻 LST
📖 第 1 页 / 共 2 页
字号:
 246   2                                                      case 1:
 247   2                                                      if(_DemoIndeX<(_DemoItemsCount[_DemoType])) _DemoIndeX++;
 248   2                                                      else _DemoIndeX=0;
 249   2                                                       ShowAL720DemoX(_DemoType,_DemoIndeX);
 250   2                                                      break;
 251   2                                                      }
 252   2       
 253   2                                              break;
 254   2                 case 0x01: // down
 255   2                                                      switch(_KeyPressLevel){
 256   2                                                      case 0:
 257   2                                                              if(_DemoType>0) --_DemoType;
 258   2                                                              else _DemoType=0x07;
 259   2                                                              _DemoIndeX=0;
 260   2                                                              SelectAL720DemoX(_DemoType);
 261   2                                                      break;
 262   2                                                      case 1:
 263   2                                                      if(_DemoIndeX>0) --_DemoIndeX;
 264   2                                                      else _DemoIndeX=(_DemoItemsCount[_DemoType]);
 265   2                                                               ShowAL720DemoX(_DemoType,_DemoIndeX);  
 266   2                                                      break;
 267   2                                                      }
 268   2      
 269   2                                              
 270   2                                              break;
 271   2              
 272   2                 case 0x02:
 273   2                                                      switch(_KeyPressLevel){
 274   2                                                      case 0:
 275   2                                                              
 276   2                                                                      if(_DemoType==0){//     
 277   2                                                              //      RunAL720DemoX(_DemoType,_DemoIndeX);
 278   2                                                                      PrintAString("        Ready!  ",20,0x40);
 279   2                                                                      _StateFlag=_AfterProcess;
 280   2                                                                      _KeyPressLevel=0x00;}
 281   2                                                                      else {
 282   2                                                                              _KeyPressLevel=0x01;
 283   2                                                                      _DemoIndeX=0;
 284   2                                                                      ShowAL720DemoX(_DemoType,_DemoIndeX);   
 285   2                                                                      }
 286   2                                                      break;
 287   2                                                      case 1:
 288   2                                                              if(_DemoIndeX==(_DemoItemsCount[_DemoType])){   _KeyPressLevel=0x00;
 289   2                                                                  PrintAString("                ",20,0x40);
 290   2       
 291   2                                                                      _KeyPressLevel=0;
 292   2      
 293   2                                                                      SelectAL720DemoX(_DemoType);
 294   2                                                                      _StateFlag=_Idle;//AfterProcess;
 295   2                                                              }
 296   2                                                               
 297   2                                                       
 298   2                                                              else{
 299   2                                 
 300   2                                                                      PrintAString("    Process...  ",20,0x40);
 301   2                                                                //  RunAL720DemoX(_DemoType,_DemoIndeX);
 302   2                                                                      PrintAString("        Ready!  ",20,0x40);
C51 COMPILER V7.07   KEYFUNCX                                                              05/17/2006 03:13:55 PAGE 6   

 303   2                                                                      _StateFlag=_AfterProcess;
 304   2                                      }
 305   2       
 306   2                                               
 307   2                                                      break;
 308   2                                                      }
 309   2      
 310   2                                              break;
 311   2      */
 312   2                              case 0x00:
 313   2                                               
 314   2                              case 0x01:
 315   2                                      
 316   2                              case 0x02:
 317   2                                      PrintAInt(_vx,0x40);
 318   2                              _vx++;
 319   2                                              break;
 320   2                         case 0x03:
 321   2                                              //      sprintf(_dx,"PCON=0x%2x",PCON);
 322   2                                                      PrintAString("PCON=0x",7,0x40);
 323   2                                                      _dx=PCON;
 324   2                                                      PrintAShortInt(_dx,0x48);
 325   2                                          break;
 326   2                         case 0x04:   
 327   2                                      //              sprintf(_dx,"SCON=0x%2x",SCON);
 328   2                                      //              PrintAString(_dx,9,0x40);
 329   2                                                      PrintAString("SCON=0x",7,0x40);
 330   2                                                      _dx=SCON;
 331   2                                                      PrintAShortInt(_dx,0x48);
 332   2                                              break;  
 333   2                         case 0x05: 
 334   2                                      //              sprintf(_dx,"TMOD=0x%2x",TMOD);
 335   2                                      //              PrintAString(_dx,9,0x40);
 336   2                                                      PrintAString("TMOD=0x",7,0x40);
 337   2                                                  _dx=TMOD;
 338   2                                                      PrintAShortInt(_dx,0x48);
 339   2                                              break;
 340   2                 case 0x06:  
 341   2                                      //              sprintf(_dx,"TCON=0x%2x",TCON);
 342   2                                      //              PrintAString(_dx,9,0x40);
 343   2                                                      PrintAString("TCON=0x",7,0x40);
 344   2                                                      _dx=TCON;
 345   2                                                      PrintAShortInt(_dx,0x48);
 346   2                                              break;
 347   2                         case 0x07: 
 348   2                                                      PrintAString("Initial UART",12,0x40);
 349   2                                              _FuncX|=_UARTInit;
 350   2                                              os_send_signal(_Init);
 351   2      
 352   2                                              break;
 353   2                 case 0x08:   
 354   2                                                      PrintAString("Initial IR",10,0x40);
 355   2                                                              _FuncX|=_IRInit;                                                
 356   2                                                              os_send_signal(_Init);
 357   2                                              break;
 358   2                         case 0x09:
 359   2                                                      PrintAString("IR interrupt",12,0x40);
 360   2                                              break;
 361   2                 case 0x0a: 
 362   2                                                      
 363   2                                              break;
 364   2                         case 0x0b:   
C51 COMPILER V7.07   KEYFUNCX                                                              05/17/2006 03:13:55 PAGE 7   

 365   2                                      //      break;  
 366   2                         case 0x0c: 
 367   2                                      //      break;
 368   2                 case 0x0d:   
 369   2                                      //      break;
 370   2                         case 0x0e: 
 371   2                                      //      break;
 372   2                         case 0x0f:
 373   2                                      //      break;
 374   2                 case 0x10: 
 375   2                                      //      break;
 376   2                         case 0x11:   
 377   2                                      //      break;
 378   2                         case 0x12: 
 379   2                                      //      break;
 380   2                 case 0x13:   
 381   2                                      //      break;
 382   2                         case 0x14: 
 383   2                                      //      break;
 384   2                         case 0x15:
 385   2                                      //      break;
 386   2                 case 0x16: 
 387   2                                      //      break;
 388   2                         case 0x17:   
 389   2                                      //      break;
 390   2                         case 0x18:
 391   2                                      //      break;
 392   2                 case 0x19:   
 393   2                                      //      break;
 394   2                         case 0x1a:
 395   2                                      //      break;
 396   2                         case 0x1b:
 397   2                                      //      break;
 398   2                 case 0x1c: 
 399   2                                      //      break;
 400   2                         case 0x1d:   
 401   2                                      //      break;  
 402   2                         case 0x1e: 
 403   2                                      //      break;
 404   2                 case 0x1f:   
 405   2                                      //      break;
 406   2                         case 0x20: 
 407   2                                      //      break;
 408   2                         case 0x21:
 409   2                                      //      break;
 410   2                 case 0x22: 
 411   2                                      //      break;
 412   2                         case 0x23:   
 413   2                               
 414   2                                              break;
 415   2                       }
 416   1         }
 417          
 418           
 419          
 420          void DispatchKeyFunction(unsigned char _charx){
 421   1                              FunctionDispatch(_charx);
 422   1              
 423   1              /*
 424   1                      switch(_StateFlag){
 425   1                              case _Initiate:
 426   1                                                      _DemoType=0;_DemoIndeX=0;
C51 COMPILER V7.07   KEYFUNCX                                                              05/17/2006 03:13:55 PAGE 8   

 427   1                                                      SelectAL720DemoX(_DemoType);
 428   1                                                      _StateFlag=_Idle;
 429   1                              break;
 430   1                              case _Ready:
 431   1                                                      if(_DemoType==0){       PrintAString("       ",7,0x48);}
 432   1                                                      else{
 433   1                                                  ShowAL720DemoX(_DemoType,_DemoIndeX);
 434   1                                                      }
 435   1                                                              _StateFlag=_Idle;
 436   1                              break;
 437   1                              case _AfterProcess:
 438   1                                                      ShowAL720DemoX(_DemoType,_DemoIndeX);// SelectAL720DemoX(_DemoType);//
 439   1                                                              _StateFlag=_Idle;
 440   1                              break;
 441   1                              default:        FunctionDispatch(_charx);
 442   1                              break;
 443   1                      }
 444   1      */
 445   1      
 446   1       
 447   1               
 448   1      }
 449          
 450          code unsigned char _KeyBoardMap[]={
 451          0,1,4,7,
 452          0x0a,2,5,8,
 453          0x0b,3,6,9,
 454          0x0f,0x0e,0x0d,0x0c
 455          };
 456          
 457          unsigned char KeyPressDecode(void){  
 458   1      unsigned char _dx;
 459   1      unsigned char _Mask=0x01;
 460   1      char _ix,_jx; 
 461   1       
 462   1                              _ix=0;      
 463   1                      do{
 464   2                              P1=~_Mask;
 465   2                              _dx=(P1&0xf0);
 466   2                                      _Mask=_Mask<<1;
 467   2                               _ix++;
 468   2                      } 
 469   1                      while((_dx==0xf0)&&(_ix<4)); 
 470   1                                      --_ix;
 471   1      
 472   1                      _dx=(~_dx&0xf0);
 473   1                       _jx=0;
 474   1                      while(_dx!=0x10){
 475   2                              _dx>>=1;
 476   2                              _jx++;
 477   2                      }  
 478   1                      _dx=(3-_jx)*4+_ix; 
 479   1                 
 480   1                              P1=0xf0;  
 481   1             return(_KeyBoardMap[_dx]);                       
 482   1      }       
 483          
 484           


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    745    ----
C51 COMPILER V7.07   KEYFUNCX                                                              05/17/2006 03:13:55 PAGE 9   

   CONSTANT SIZE    =    763    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       5
   IDATA SIZE       =   ----    ----
   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 + -