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

📄 isr.lst

📁 DS1820智能温控系统,使用1602液晶显示,51单片机控制,KEIL开发
💻 LST
字号:
C51 COMPILER V8.02   ISR                                                                   05/06/2008 21:10:54 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE ISR
OBJECT MODULE PLACED IN ISR.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ISR.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include "hardware.h"
   2          #include "ISR.H"
   3           /*void beer()
   4           {        unsigned char j;
   5                    int i=100;
   6            while(i--)
   7            {
   8               P3_0=0;
   9                   for(j=0;j<70;j++);
  10                   P1_0=1;
  11                   for(j=0;j<70;j++);
  12             }
  13            }       */
  14          unsigned char key_old=0,key_new=0,key=0,key_pressed_time=0,time_out=0;
  15          void Count_2_interrupt(void) interrupt 5
  16          {
  17   1       TF2=0;
  18   1       P2=1;
  19   1       if(key)return;                        //如果上次按键未处理,则返回
  20   1       KEY_IN=0xFF;                          //释放IO
  21   1                          
  22   1       if((KEY_IN&0x0F)==0x0F)               //按键释放
  23   1        {
  24   2         if(!key_old)                        //如果上次无按键按下
  25   2          {
  26   3          
  27   3           return;                           //返回
  28   3          }
  29   2         else                                //如果上次有按键按下
  30   2          {
  31   3           if(key_pressed_time>100)          //按键时间超过一秒,长按键码
  32   3            {
  33   4             key=key_old+0x80;               //长按键码等于普通按键码加0x80
  34   4            }
  35   3           else if(key_pressed_time>0)
  36   3            {
  37   4             key=key_old;
  38   4            }
  39   3           key_old=0;
  40   3          }
  41   2        
  42   2         return;
  43   2        }
  44   1       else                                  //按键按下
  45   1        {
  46   2         key_new=0;
  47   2         if(!ENTER)key_new+=KEY_ENTER;       //ENTER键按下
  48   2         if(!DOWN)key_new+=KEY_DOWN;         //DOWN键按下
  49   2         if(!UP)key_new+=KEY_UP;             //UP键按下
  50   2         if(!MENU)key_new+=KEY_MENU;         //MENU键按下
  51   2         if(key_new==key_old)                //如果按键按下长于10ms
  52   2          { 
  53   3           if(key_pressed_time>100)          //如果按键按下超过1s
  54   3            {
  55   4             
C51 COMPILER V8.02   ISR                                                                   05/06/2008 21:10:54 PAGE 2   

  56   4             return;
  57   4            }
  58   3           else
  59   3            {
  60   4             key_pressed_time++;
  61   4            }
  62   3          }
  63   2         else
  64   2          {
  65   3              // beer();
  66   3               
  67   3           key_pressed_time=0;
  68   3          }
  69   2         key_old=key_new;                    //保存本次按键值
  70   2        }
  71   1      
  72   1      }


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