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

📄 key.lst

📁 里面包含了LCD显示
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.50   KEY                                                                   09/17/2007 09:47:23 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE KEY
OBJECT MODULE PLACED IN key.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE key.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //=========================================================
   2          //=========================================================
   3          #define  key_c
   4          #include "io.h"
   5          #include "main.h"
   6          #include "interrupt.h"
   7          #include "key.h"
   8          #include "lme2200.h"
   9          #include "ifr_ir.h"
  10          #include "lcd.h"
  11          #include "stc_eeprom.h"
  12          
  13          
  14          extern void tx2262(unsigned char d0,d1,d2);
  15          //****************************************************
  16          //function:指示灯的闪烁 
  17          //input   :无
  18          //output  :无
  19          //modify  :2007-8-24   
  20          //****************************************************
  21          void led_ray1(uchar u)
  22           { 
  23   1          uchar i;
  24   1          for(i=0;i<u;i++)
  25   1               {
  26   2                 Led_R=0;delay(20000);Led_R=1;delay(20000);
  27   2               }
  28   1       }
  29          
  30          void led_ray11(uchar u)
  31           { 
  32   1          uchar i;
  33   1          for(i=0;i<u;i++)
  34   1               {
  35   2                 Led_R=1;delay(20000);Led_R=0;delay(20000);
  36   2               }
  37   1       }
  38          
  39          //****************************************************
  40          //function:指示灯的闪烁         
  41          //input   :无
  42          //output  :无                  
  43          //modify  :2007-8-24   
  44          //****************************************************
  45          void led_ray2(uchar u)
  46           { 
  47   1          uchar i;
  48   1          for(i=0;i<u;i++)
  49   1               {
  50   2                 Led_G=0;delay(20000);Led_G=1;delay(20000);
  51   2               }
  52   1       }
  53          
  54          //****************************************************
  55          //function:key init
C51 COMPILER V7.50   KEY                                                                   09/17/2007 09:47:23 PAGE 2   

  56          //input   :无
  57          //output  :无
  58          //modify  :2007-8-24   
  59          //****************************************************
  60          void key_init(void)
  61           {
  62   1          b_keyonoff = 0;
  63   1              b_keypush  = 0;
  64   1              b_password = 0;
  65   1              b_pwerror  = 0;
  66   1              b_pwerror1 = 0;
  67   1              cycle      = 0;
  68   1              cycle1     = 0;
  69   1              b_study    = 0;
  70   1              b_err      = 0;
  71   1              keyvalue   = 0;
  72   1              keybuff    = 0xff;
  73   1              b_key_2second  = 0;
  74   1              b_key_2second1 = 0;
  75   1              b_key_2second2 = 0;
  76   1              b_key_5second  = 0;
  77   1              Key1_flag=Key2_flag=Key3_flag=0;
  78   1       }
  79          
  80          //****************************************************
  81          //function:scan key      
  82          //input   :无
  83          //output  :无
  84          //modify  :2007-8-24     
  85          //****************************************************
  86          void scan_key(void)     
  87           { 
  88   1        
  89   1         uchar i=0;
  90   1         if(b_keypush==0)
  91   1          {
  92   2                P1=0x1F;key9=0;
  93   2                delay(10);
  94   2                if(P1==0x1F)return;
  95   2                delay(500);
  96   2                P1=0x1F;
  97   2                delay(2000);
  98   2                if(P1==0x1F)return;
  99   2                b_keyonoff=0;
 100   2      
 101   2            for(i=0;i<4;i++)
 102   2                 {
 103   3                   if(i==0)
 104   3                        {
 105   4                          key6=1;key7=1;key8=1;key9=0;
 106   4                              if(!key1)
 107   4                                {keybuff=1;b_keypush=1;i=4;}
 108   4                              else if(!key2)
 109   4                                {keybuff=4;b_keypush=1;i=4;}
 110   4                              else if(!key3)
 111   4                                {keybuff=7;b_keypush=1;i=4;}
 112   4                              else if(!key4)
 113   4                                {keybuff=11;b_keypush=1;i=4;}
 114   4                              else if(!key5)
 115   4                                {keybuff=17;b_keypush=1;Key1_flag=1;second1=0;i=4;}                     
 116   4                        }
 117   3                       else if(i==1)
C51 COMPILER V7.50   KEY                                                                   09/17/2007 09:47:23 PAGE 3   

 118   3                        {
 119   4                              key6=1;key7=1;key8=0;key9=1;
 120   4                              if(!key1)
 121   4                                {keybuff=2;b_keypush=1;i=4;}
 122   4                              else if(!key2)
 123   4                                {keybuff=5;b_keypush=1;i=4;}
 124   4                              else if(!key3)
 125   4                                {keybuff=8;b_keypush=1;i=4;}
 126   4                              else if(!key4)
 127   4                                {keybuff=0;b_keypush=1;i=4;}
 128   4                              else if(!key5)
 129   4                                {keybuff=18;b_keypush=1;Key2_flag=1;second1=0;i=4;}
 130   4                        }
 131   3                       else if(i==2)
 132   3                        {
 133   4                              key6=1;key7=0;key8=1;key9=1;
 134   4                              if(!key1)
 135   4                                {keybuff=3;b_keypush=1;i=4;}
 136   4                              else if(!key2)
 137   4                                {keybuff=6;b_keypush=1;i=4;}
 138   4                              else if(!key3)
 139   4                                {keybuff=9;b_keypush=1;i=4;}
 140   4                              else if(!key4)
 141   4                                {keybuff=12;b_keypush=1;i=4;}
 142   4                              else if(!key5)
 143   4                                {keybuff=19;b_keypush=1;Key3_flag=1;second1=0;i=4;}
 144   4                        }
 145   3                       else if(i==3)
 146   3                        {
 147   4                         key6=0;key7=1;key8=1;key9=1;
 148   4                              if(!key1)
 149   4                                {keybuff=13;b_keypush=1;i=4;}
 150   4                              else if(!key2)
 151   4                                {keybuff=14;b_keypush=1;i=4;}
 152   4                              else if(!key3)
 153   4                                {keybuff=15;b_keypush=1;i=4;}
 154   4                              else if(!key4)
 155   4                                {keybuff=16;b_keypush=1;i=4;}
 156   4                        }
 157   3                 }
 158   2              }
 159   1         else
 160   1          {  
 161   2                
 162   2                if(key1&&key2&&key3&&key4&&key5)
 163   2                 {
 164   3                    b_keypush=0;b_keyonoff=1;
 165   3                        Key1_flag=Key2_flag=Key3_flag=0;
 166   3                        keyID=keybuff;           
 167   3                 }
 168   2              }
 169   1       }
 170          
 171          //***************************************************##########################################
 172          //****************************************************
 173          //function:      
 174          //input   :无
 175          //output  :无
 176          //modify  :2007-9-11   
 177          //*****************************************************
 178          bit Find_ifrcode(void)
 179           {
C51 COMPILER V7.50   KEY                                                                   09/17/2007 09:47:23 PAGE 4   

 180   1         temp[4]=eeprom_read(0x8000);temp[5]=eeprom_read(0x8001);
 181   1         if((temp[4]==ifr_buf[0])&&(temp[5]==ifr_buf[1]))
 182   1                {
 183   2                      return 1;
 184   2            }
 185   1         else 
 186   1           {
 187   2                 return 0;
 188   2               }
 189   1      
 190   1       }
 191          
 192          //****************************************************
 193          //function:学习红外    
 194          //input   :无
 195          //output  :无     
 196          //modify  :2007-9-11    
 197          //*****************************************************
 198          
 199          void study_code(void)
 200            {
 201   1               uchar b,a=0;
 202   1               bit b_value=0;
 203   1               if(!b_ifr)return;
 204   1           b_ifr=0;
 205   1               if(Find_ifrcode())
 206   1                 {
 207   2                   b=eeprom_read(0x8200);
 208   2                       led_ray11(1);
 209   2                       for(a=2;a<b;a++)
 210   2                         {    
 211   3                           if(eeprom_read(0x8000+a)==ifr_buf[2])
 212   3                                 {
 213   4                                    
 214   4                                        b_value=1;
 215   4                                 }
 216   3                               if(!b_value)
 217   3                                 {
 218   4                                   eeprom_eares(0x8200);
 219   4                                       eeprom_write(0x8200,b+1);
 220   4                                       eeprom_write(0x8000+b,ifr_buf[2]);
 221   4                                 }
 222   3                         }
 223   2                 }
 224   1               else
 225   1                 {  
 226   2                       eeprom_eares(0x8000);
 227   2                       eeprom_write(0x8000,ifr_buf[0]);
 228   2                       eeprom_write(0x8001,ifr_buf[1]);                 
 229   2                       eeprom_write(0x8002,ifr_buf[2]);
 230   2                       eeprom_eares(0x8200);
 231   2                       eeprom_write(0x8200,3);
 232   2                       led_ray11(3);
 233   2                 }
 234   1      
 235   1        }             
 236          //****************************************************
 237          //function:keyexe        
 238          //input   :无                    
 239          //output  :无                  
 240          //modify  :2007-9-11  
 241          //****************************************************
C51 COMPILER V7.50   KEY                                                                   09/17/2007 09:47:23 PAGE 5   

 242          void keyexe(void)
 243           {
 244   1         if(!b_password)return;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -