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

📄 main.lst

📁 简单的LCD多级菜单显示
💻 LST
字号:
C51 COMPILER V7.50   MAIN                                                                  08/30/2007 15:27:04 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg52.h>
   2          #include<lcdxianshi.c>
   3          #include <func.h>
   4          void (*current_operation_index)();
   5          uchar func_index=0;
   6          //#define       ad0809 XBYTE      //数据采集存储
   7          //#define 
   8          typedef struct
   9             {
  10                  uchar current;
  11                  uchar up;
  12                  uchar down;
  13                  uchar enter;
  14                  void (*current_operation)();
  15                  } key_table;
  16          key_table code table[28]=
  17           {
  18              {0,7,1,3,(*jiemian)},
  19              {1,0,2,4,(*jiemian1)},
  20                  {2,1,8,5,(*jiemian2)},
  21                  {3,0,3,3,(*dianyashow)},
  22                  {4,0,4,4,(*bijiaohanshu)},
  23                  {5,0,6,5,(*boxinghanshu)},
  24                  {6,0,6,6,(*boxing1hanshu)},
  25                  {7,0,7,7,(*cuowuhanshu)},
  26                  {8,0,5,8,(*cuowuhanshu1)}
  27           };
  28          void main(void)
  29          {       clear_LCD();
  30   1              smNop();
  31   1              initial_LCD();
  32   1              smNop();
  33   1              clear_LCD();
  34   1          while(1)
  35   1          {  uchar key; 
  36   2                delay(10);
  37   2                key=keyscan1();          //读取键盘值
  38   2                if(key!=0)
  39   2                {     key=keyscan1(); 
  40   3              switch(key)
  41   3             {
  42   4                   case 0x18:
  43   4                                      func_index=table[func_index].up;    //向上翻
  44   4                                      break;
  45   4               case 0x12:
  46   4                                      func_index=table[func_index].enter;//回车
  47   4                                      break;
  48   4                   case 0x14:
  49   4                                      func_index=table[func_index].down;//向下翻
  50   4                                      break;
  51   4                   default:    
  52   4                                      break;
  53   4      
  54   4              }
  55   3                          clear_LCD();   //清屏
C51 COMPILER V7.50   MAIN                                                                  08/30/2007 15:27:04 PAGE 2   

  56   3                              delay(250);
  57   3            }
  58   2                      key=0;                   //必须此处清零,不然无限执行SWITCH
  59   2                current_operation_index=table[func_index].current_operation;
  60   2                (*current_operation_index)();//执行当前操作函数
  61   2              }
  62   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    423    ----
   CONSTANT SIZE    =    196    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      5      17
   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 + -