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

📄 3 single key.lst

📁 很好的51单片机仿真模板。
💻 LST
字号:
C51 COMPILER V8.08   3_SINGLE_KEY                                                          10/27/2008 19:15:55 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE 3_SINGLE_KEY
OBJECT MODULE PLACED IN 3 SINGLE KEY.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 3 SINGLE KEY.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <reg52.h> 
   2          sbit BY1=P3^4;       //定义按键的输入端 S2 键 
   3          unsigned char count; //按键计数,每按一下,count 加 1 
   4          unsigned char temp; 
   5          unsigned char a,b; 
   6          
   7          void delay10ms(void) //延时程序 
   8          { 
   9   1              unsigned char i,j; 
  10   1              for(i=20;i>0;i--) 
  11   1              for(j=248;j>0;j--); 
  12   1      } 
  13          
  14          key()           //按键判断程序 
  15          { 
  16   1              if(BY1==0)  //判断是否按下键盘,当单片机上电时所有 IO 口为高电平,
  17   1              //S2 键一端接地另一端接 P3.4,所以当键被按下时 P3.4 口直接接地,此时检测
  18   1              //P3.4 肯定为低电平。 
  19   1              { 
  20   2                      delay10ms(); //延时,软件去抖动干扰 
  21   2                      if(BY1==0)   //再次检测确认按键按下 
  22   2                      { 
  23   3                              count++;     //按键计数加 1 
  24   3                              if(count==8) //计 8 次重新计数 
  25   3                              { 
  26   4                                      count=0;    //将 count 清零 
  27   4                              } 
  28   3                      } 
  29   2                      while(BY1==0);//等待按键释放,如果键未释放则一直在此等待。 
  30   2              } 
  31   1      } 
  32          
  33          move()         //广告灯向下移动移动函数 
  34          { 
  35   1              a=temp<<count;  //    这三句为一个循环移位,相当于前面提到的 
  36   1              b=temp>>(8-count);//   _crol_()函数,这里是自己写的过程,大家可对比 
  37   1              P1=a|b;    //下。 
  38   1      } 
  39           
  40          main() 
  41          { 
  42   1              count=0;  //初始化参数设置 
  43   1              temp=0xfe; 
  44   1              P1=0xff; 
  45   1              P1=temp; 
  46   1              while(1)  //永远循环,扫描判断按键是否按下 
  47   1              { 
  48   2                      key();    //调用按键识别函数 
  49   2                      move();   //调用广告灯移动函数 
  50   2              } 
  51   1      } 


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     91    ----
C51 COMPILER V8.08   3_SINGLE_KEY                                                          10/27/2008 19:15:55 PAGE 2   

   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      4    ----
   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 + -