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

📄 scankey.lst

📁 智能打铃系统(MCU)端程序
💻 LST
字号:
C51 COMPILER V7.06   SCANKEY                                                               12/17/2006 14:56:13 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE SCANKEY
OBJECT MODULE PLACED IN ScanKey.OBJ
COMPILER INVOKED BY: E:\My Electronic\Tools\Design tools\keil7.06\C51\BIN\C51.EXE ScanKey.c LARGE OPTIMIZE(SIZE)

stmt level    source

   1          #include <REG52.H>
   2          
   3          void delay_ms(unsigned int ms);
   4          
   5          unsigned char  ScanKey(void)
   6          {
   7   1              unsigned char uc_Temp_1,uc_Temp_2,key;
   8   1              P1=0xff;                    //P1口置高电平,准备输入
   9   1              P1=0x0f;                                        //P1口高4位作为输出,输出0,低四位作为输入                                      
  10   1              if((P1&0x0f) != 0x0f)           //如果按键有反应
  11   1              {
  12   2                      delay_ms(5);       //延时去抖
  13   2                      P1=0x0f;        
  14   2                      if((P1&0x0f) != 0x0f)       //如果为真,则确实有按键按下
  15   2                      {
  16   3                              uc_Temp_1=P1;           //把这时P1口状态保存在一个变量中                                                                                                
  17   3                              P1=0xf0;                        //把P1口高四位置输入,低四位作为输出,注意:这就是'线翻转' (即输入输出翻转)的本质所在                                            
  18   3                              uc_Temp_2=P1;       //把这时P1口状态保存在一个变量中
  19   3                              key=(uc_Temp_1|uc_Temp_2);
  20   3                              while(P1!=0xf0);
  21   3                              switch (key)
  22   3                              {
  23   4                                      case 0xE7:      return (0);
  24   4                                      case 0xEE:      return (1);
  25   4                                      case 0xDE:      return (2);
  26   4                                      case 0xBE:      return (3);
  27   4                                      case 0xED:      return (4);
  28   4                                      case 0xDD:      return (5);
  29   4                                      case 0xBD:      return (6);
  30   4                                      case 0xEB:      return (7);
  31   4                                      case 0xDB:      return (8);
  32   4                                      case 0xBB:      return (9);
  33   4                                      default:        return key;
  34   4                              }                                                                                                                                       
  35   3                      }
  36   2              }
  37   1              return (0xff);
  38   1      }


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