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

📄 submenu.lst

📁 sed1335液晶驱动,包括菜单,已经在DSPIC30F6014A上调试通过.
💻 LST
📖 第 1 页 / 共 3 页
字号:
 400   4                                      break;
 401   4                              case KEY_OK:
 402   4                                      switch(ucSubMenu)
 403   4                                      {
 404   5                                      case COM_PROTOCOL:
 405   5                                              ComChangeProtocol();
 406   5                                              break;
 407   5                                      case COM_BAUDRATE:
 408   5                                              ComChangeBaudRate(&ucComSetting);
 409   5                                              break;
 410   5                                      case COM_ADDRESS:
 411   5                                              ComChangeAddress(&ucComSetting);
 412   5                                      }
 413   4                                      goto DispCom;
 414   4                                      break;
 415   4                              case KEY_ESCAPE:
 416   4                                      return  TRUE;
 417   4                              }
 418   3                      }
 419   2              }
 420   1              return  TRUE;
 421   1      }
 422                                          
 423          BOOL    TimeMenu(void)
 424          {
 425   1              return  TRUE;
 426   1      }
 427          //      LAYRE1_MEASURE          MeasureMenu(unsigned char)
C51 COMPILER V7.07   SUBMENU                                                               03/10/2006 09:06:41 PAGE 8   

 428          //      |
 429          //      --1.
 430          BOOL    MeasureCommonMenu(void)
 431          {
 432   1              return TRUE;
 433   1      }
 434          //      |
 435          //      --2.    
 436          BOOL    MeasureIdleMenu(void)
 437          {
 438   1              return TRUE;
 439   1      }
 440          //      |
 441          //      --3.
 442          BOOL    MeasureDualMenu(void)
 443          {
 444   1              return TRUE;
 445   1      }
 446          BOOL    FunctionZeroMenu(void)
 447          {
 448   1              return TRUE;
 449   1      }
 450          
 451          BOOL    FunctionCalibrationMenu(void)
 452          {
 453   1              return TRUE;
 454   1      }
 455          //      LAYER1_VEHICLE_MSG              VehicleMsgMenu();
 456          //      |
 457          //      --1.
 458          #define         REG_NO_X0               (unsigned char)8
 459          #define         REG_NO_Y0               (unsigned char)36
 460          
 461          BOOL    VehicleRegNo(void)
 462          {
 463   1              unsigned char ColumnY,RowX,ucLength;
 464   1              ucLength = 0;
 465   1              ClearLCD(0x28,2,        10,36,200);
 466   1              DispASCIIStr(VehicleMsgMenuString[VEHICLE_MSG_REG_NO-1+
 467   1                      sizeof(VehicleMsgMenuString)/sizeof(VehicleMsgMenuString[0])/2*g_ucLanguageIndex],
 468   1                                              14,10,0);
 469   1              for (ColumnY=0;ColumnY<6;ColumnY++)
 470   1              {//ucTemp = ColumnY*5 +RowX;
 471   2                      for(RowX=0;RowX<12;RowX++)
 472   2                              DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,0);
 473   2              }
 474   1              ColumnY=3;
 475   1              RowX=6;
 476   1              DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,1);
 477   1              while(TRUE)
 478   1              {
 479   2                      g_ucKeyData = 0;
 480   2                      if(!SleepAndQueryMsg(1000))
 481   2                      {
 482   3                              switch(g_ucKeyData)
 483   3                              {
 484   4                              case KEY_ESCAPE:
 485   4                                      return  TRUE;
 486   4                              case KEY_LEFT:
 487   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,0);
 488   4                                      if(RowX==0)
 489   4                                              RowX = 11;
C51 COMPILER V7.07   SUBMENU                                                               03/10/2006 09:06:41 PAGE 9   

 490   4                                      else
 491   4                                              RowX--;
 492   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,1);
 493   4                                      break;
 494   4                              case KEY_RIGHT:
 495   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,0);
 496   4                                      if(RowX==11)
 497   4                                              RowX = 0;
 498   4                                      else
 499   4                                              RowX++;
 500   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,1);
 501   4                                      break;
 502   4                              case KEY_UP:
 503   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,0);
 504   4                                      if(ColumnY==0)
 505   4                                              ColumnY = 5;
 506   4                                      else
 507   4                                              ColumnY--;
 508   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,1);
 509   4                                      break;
 510   4                              case KEY_DOWN:
 511   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,0);
 512   4                                      if(ColumnY==5)
 513   4                                              ColumnY = 0;
 514   4                                      else
 515   4                                              ColumnY++;
 516   4                                      DispRegNO(RowX,ColumnY,REG_NO_X0+RowX*2,REG_NO_Y0+ColumnY*20,1);
 517   4                                      break;
 518   4                              case KEY_OK:
 519   4                                      RegNoData[ucLength++] = RowX;
 520   4                                      RegNoData[ucLength++] = ColumnY;
 521   4                                      DispRegNO(RowX,ColumnY,10+ucLength,180,0);
 522   4                                      break;
 523   4                              }
 524   3                      }
 525   2              }
 526   1              return  TRUE;
 527   1      }
 528          //      |
 529          //      --2.
 530          BOOL    VehicleRPM(void)
 531          {
 532   1              return  TRUE;
 533   1      }
 534          //      |
 535          //      --3.
 536          #define         FUEL_TYPE_X0            12
 537          #define         FUEL_TYPE_Y0            48
 538          #define         FUEL_TYPE_WIDTH         30
 539          BOOL    VehicleFuelType(void)
 540          {
 541   1              g_ucFuelType = 1;
 542   1              ClearLCD(0x28,2,        10,36,200);
 543   1              DispASCIIStr(VehicleMsgMenuString[VEHICLE_MSG_FUEL_TYPE-1+
 544   1                      sizeof(VehicleMsgMenuString)/sizeof(VehicleMsgMenuString[0])/2*g_ucLanguageIndex],
 545   1                                              14,10,0);
 546   1              DispSubMenuContent(FuelTypeMenuString,FUEL_TYPE_MAX_NUM,
 547   1                                              FUEL_TYPE_X0,FUEL_TYPE_Y0,              FUEL_TYPE_WIDTH);
 548   1              DispSubMenuNum(g_ucFuelType,FUEL_TYPE_MAX_NUM,
 549   1                                      FUEL_TYPE_X0,FUEL_TYPE_Y0,FUEL_TYPE_WIDTH);
 550   1              DispASCIIStr(CommonTip[TIP_ASK_SAVE_ID + COMMON_TIP_NUM*g_ucLanguageIndex],     16,180, 0);
 551   1              while(TRUE)
C51 COMPILER V7.07   SUBMENU                                                               03/10/2006 09:06:41 PAGE 10  

 552   1              {
 553   2                      g_ucKeyData = 0;
 554   2                      if(!SleepAndQueryMsg(1000))
 555   2                      {
 556   3                              switch(g_ucKeyData)
 557   3                              {
 558   4                              case KEY_UP:
 559   4                                      if(g_ucFuelType == 1)
 560   4                                              g_ucFuelType = FUEL_TYPE_MAX_NUM;
 561   4                                      else
 562   4                                              (g_ucFuelType)--;
 563   4                                      DispSubMenuNum(g_ucFuelType,FUEL_TYPE_MAX_NUM,
 564   4                                                                      FUEL_TYPE_X0,FUEL_TYPE_Y0,FUEL_TYPE_WIDTH);
 565   4                                      break;
 566   4                              case KEY_DOWN:
 567   4                                      if(g_ucFuelType == FUEL_TYPE_MAX_NUM)
 568   4                                              g_ucFuelType = 1;
 569   4                                      else
 570   4                                              (g_ucFuelType)++;
 571   4                                      DispSubMenuNum(g_ucFuelType,FUEL_TYPE_MAX_NUM,  
 572   4                                                                      FUEL_TYPE_X0,FUEL_TYPE_Y0,FUEL_TYPE_WIDTH);
 573   4                                      break;
 574   4                              case KEY_OK:
 575   4                                      //WriteToIIC for save
 576   4                                      //Write24c02(&g_ucFuelType,IIC_ADDR_FUEL_LANGUAGE,1)
 577   4                                      
 578   4                                      DispASCIIStr(CommonTip[TIP_SAVED_ID + COMMON_TIP_NUM*g_ucLanguageIndex],        
 579   4                                                                      16,180, 0);
 580   4                                      break;
 581   4                              case KEY_ESCAPE:
 582   4                                      return  TRUE;
 583   4                              }
 584   3                      }
 585   2              }
 586   1              return  TRUE;
 587   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2165    ----
   CONSTANT SIZE    =    793    ----
   XDATA SIZE       =     21    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1      33
   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 + -