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

📄 key.lst

📁 成功的将UCOS操作系统
💻 LST
字号:
C51 COMPILER V8.02   KEY                                                                   08/05/2007 21:31:21 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE KEY
OBJECT MODULE PLACED IN .\Out File\Key.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Key.c LARGE BROWSE ORDER NOAREGS DEBUG OBJECTEXTEND PRINT(.\Out File\Key.ls
                    -t) TABS(6) OBJECT(.\Out File\Key.obj)

line level    source

   1          #define  Key
   2          #include <Key.h>
   3          
   4          // 主程序,通过调用"读键值" 和 "译码" 程序, 将键值返回给主调函数
   5          uchar Key_Word(void)
   6          {
   7   1         unsigned char key,m;
   8   1         unsigned char key_decode = 0xff  ;
   9   1      
  10   1         P1=0xf0;
  11   1         m=P1;
  12   1         if(m!=0xf0)            //有输入
  13   1           {
  14   2              key_delay(100,100);   //去抖
  15   2              P1=0xf0;
  16   2              m=P1;
  17   2              if(m!=0xf0)       //确认有键
  18   2                {
  19   3                   key=Read();
  20   3                   key_decode=Decode(key);
  21   3      
  22   3                   P1=0xf0;
  23   3                   while(P1!=0xf0);//等待键释放
  24   3                 }
  25   2            }
  26   1          return(key_decode);
  27   1      }
  28          
  29          
  30          
  31          
  32          //读键值 ------------------
  33          
  34          uchar Read(void)
  35          {
  36   1       uchar key,H,L;
  37   1       P1=0xf0;
  38   1       key_delay(1,10);
  39   1       H=P1&0XF0;
  40   1      //---------------
  41   1       key_delay(1,10);
  42   1       P1=0x0f;
  43   1       key_delay(1,10);
  44   1       L=P1&0X0F;
  45   1      //---------------
  46   1       key=H|L;
  47   1       key=~key;
  48   1       return(key);
  49   1      }
  50          //译码
  51          
  52          uchar Decode(uchar x)
  53          {
  54   1        uchar i,j,k;
C51 COMPILER V8.02   KEY                                                                   08/05/2007 21:31:21 PAGE 2   

  55   1        for(i=0;i<4;i++)
  56   1          for(j=0;j<4;j++)      
  57   1             {
  58   2               if(x==key_s[i][j])
  59   2               k=key_t[i][j];
  60   2             }
  61   1        return(k);
  62   1       }
  63          //////////////////////////////////////////
  64          
  65          void key_delay(uchar t1,t2)
  66          { 
  67   1        uchar i,j;
  68   1        for(i=0;i<t1;i++)
  69   1          for(j=0;j<t2;j++);
  70   1      }
  71          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    207    ----
   CONSTANT SIZE    =     32    ----
   XDATA SIZE       =   ----       2
   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 + -