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

📄 driver.lst

📁 KEIL C编译 到位监控程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.20   DRIVER                                                                10/13/2008 13:13:44 PAGE 1   


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

line level    source

   1          #include "Main.h"
   2          #include "AT89X51.h"
   3          #include <intrins.h>
   4          #include <absacc.h>
   5          
   6          extern bit timerHap;    //定时器到时
   7          
   8          BYTE bdata sensor;      //光电传感器状态保存, 用于去抖
   9          sbit CoinDoor = sensor^0;              //投币口 开/关到位否
  10          sbit CoinBox  = sensor^1;              //大钱箱 到位否
  11          sbit RmbOut   = sensor^2;              //纸币出 到位否
  12          sbit Coiner   = sensor^3;              //硬币机 到位否
  13          sbit RmbIn    = sensor^4;              //纸币进 到位否
  14          sbit Provider = sensor^5;              //刮票机 到位否
  15          sbit Door     = sensor^6;              //后门   到位否
  16          sbit AAA      = sensor^7;              // 保留   
  17          
  18          BYTE bdata lock;        //光电传感器状态保存, 用于去抖
  19          sbit CoinDoorCtl = lock^0;            //硬币投币口  开关
  20          sbit MainLampCtl = lock^1;            //维修照明灯 嵊州忠欧 0575-83218520 13967418522
  21          sbit CardLampCtl = lock^2;            //出卡处照明灯
  22          sbit Fan1Ctl     = lock^3;            //排风扇1
  23          sbit Fan2Ctl     = lock^4;            //排风扇2
  24          sbit CoinBoxCtl  = lock^5;            //加硬币门锁上否?
  25          sbit BigBoxDoor  = lock^6;            //钱箱门锁上否?
  26          sbit DoorLock    = lock^7;            //后门锁上否?
  27          
  28          BYTE bdata inputByte1;   //XBYTE[0x0000];
  29          sbit GDG10 = inputByte1 ^ 0;          //投币口 开/关 传感器
  30          sbit GDG11 = inputByte1 ^ 1;  
  31          sbit GDG12 = inputByte1 ^ 2; 
  32          sbit GDG13 = inputByte1 ^ 3; 
  33          sbit GDG14 = inputByte1 ^ 4;           //
  34          sbit GDG15 = inputByte1 ^ 5;           //
  35          sbit GDG16 = inputByte1 ^ 6;           //
  36          sbit GDG17 = inputByte1 ^ 7;           //
  37          
  38          BYTE bdata inputByte2;   //XBYTE[0x1000];
  39          sbit GDG20 = inputByte2 ^ 0;           //
  40          sbit GDG21 = inputByte2 ^ 1;           //
  41          sbit GDG22 = inputByte2 ^ 2;           //
  42          sbit GDG23 = inputByte2 ^ 3;           //
  43          sbit GDG24 = inputByte2 ^ 4;           //
  44          sbit GDG25 = inputByte2 ^ 5;           //
  45          sbit GDG26 = inputByte2 ^ 6;           //
  46          sbit GDG27 = inputByte2 ^ 7;           //
  47          
  48          BYTE bdata inputByte3;   //XBYTE[0x2000];
  49          sbit GDG30 = inputByte3 ^ 0;           //
  50          sbit GDG31 = inputByte3 ^ 1;           //
  51          sbit GDG32 = inputByte3 ^ 2;           //
  52          sbit GDG33 = inputByte3 ^ 3;           //
  53          sbit GDG34 = inputByte3 ^ 4;           //
  54          sbit GDG35 = inputByte3 ^ 5;           //
  55          sbit GDG36 = inputByte3 ^ 6;           //
C51 COMPILER V7.20   DRIVER                                                                10/13/2008 13:13:44 PAGE 2   

  56          sbit GDG37 = inputByte3 ^ 7;           //
  57          
  58          BYTE bdata outputByte1 = 0;   //XBYTE[0x0000];
  59          sbit OLT0 = outputByte1 ^ 0;           //
  60          sbit OLT1 = outputByte1 ^ 1;           //
  61          sbit OLT2 = outputByte1 ^ 2;           //
  62          sbit OLT3 = outputByte1 ^ 3;           //
  63          sbit OLT4 = outputByte1 ^ 4;           //
  64          sbit OLT5 = outputByte1 ^ 5;           //
  65          sbit OLT6 = outputByte1 ^ 6;           //
  66          sbit OLT7 = outputByte1 ^ 7;           //
  67          
  68          BYTE bdata outputByte2 = 0;   //XBYTE[0x1000];
  69          sbit OLT8 = outputByte2 ^ 0;  //控制投币口   开 关
  70          sbit OLT9 = outputByte2 ^ 1;  //控制维修灯   亮 灭 
  71          sbit OLTA = outputByte2 ^ 2;  //控制出卡处灯 亮 灭
  72          sbit OLTB = outputByte2 ^ 3;  //
  73          
  74          //sbit OLTC = outputByte2 ^ 4;
  75          //sbit OLTD = outputByte2 ^ 5;
  76          sbit OLTE = outputByte2 ^ 6;  //控制fan1 亮 灭
  77          sbit OLTF = outputByte2 ^ 7;  //控制fan2 亮 灭
  78          
  79          sbit LED_E = P3 ^ 2;          //指示灯
  80          
  81          sbit RELAY = P3 ^ 4;          //
  82          
  83          
  84          
  85          ////////////////////////////////////
  86          /*BYTE INPUT1()//for test
  87          {
  88          inputByte2 = XBYTE[0x1000];
  89          return inputByte2;
  90          }*/
  91          
  92          /*********************************************************************
  93          BYTE INPUT()//for test
  94          {
  95          inputByte1 = XBYTE[0x0000];
  96          return inputByte1;
  97          }
  98          *********************************************************************/
  99          //RELAY
 100          void control24V(BOOL relay) 
 101          { 
 102   1      OLT8=1;  //
 103   1      OLT9=1;
 104   1      OLTA=1;
 105   1      OLTB=1;
 106   1      XBYTE[0x1000]=outputByte2; //for test
 107   1      if (relay==OPEN) RELAY=0; //低电平控制24V有电
 108   1      else RELAY=1;
 109   1      }
 110          //
 111          void InCoinDoor(BOOL OpenClose) //test
 112          { 
 113   1      if (OpenClose==OPEN) 
 114   1          { 
 115   2          OLT8=0; 
 116   2              XBYTE[0x1000] = outputByte2;
 117   2          }//低电平控制门开
C51 COMPILER V7.20   DRIVER                                                                10/13/2008 13:13:44 PAGE 3   

 118   1      else   
 119   1          {
 120   2               OLT8=1;
 121   2           XBYTE[0x1000] = outputByte2;
 122   2          }
 123   1      }
 124          
 125          /*
 126          void OutCardLamp(BOOL OpenClose) //出卡处灯 亮灭
 127          { 
 128          if (OpenClose==OPEN) 
 129              { 
 130              OLTA=0; 
 131                  XBYTE[0x1000] = outputByte2;
 132              }//低电平控制门开
 133          else   
 134              {
 135                   OLTA=1;
 136               XBYTE[0x1000] = outputByte2;
 137              }
 138          }
 139          void MaintainLamp(BOOL OpenClose)  //维修灯
 140          {
 141                  OLTE = OpenClose;
 142                  OLTF = 0;
 143                  XBYTE[0x1000] = outputByte2;
 144          }*/
 145          /*********************开关到位情况 0--6****************XBYTE[0x0000]**************************/
 146          //GDG10  //0 硬币进口处 开关情况
 147          BOOL isInCoinDoor() ////   1门关 //0 门开 //1门完全开
 148          {
 149   1              inputByte1 = XBYTE[0x0000];
 150   1              
 151   1          if( GDG10 == 1)   
 152   1          {
 153   2          delay_1ms(1);
 154   2              inputByte1 = XBYTE[0x0000];
 155   2              if( GDG10 == 1)  //延时后 还是原来情况 
 156   2                 {
 157   3                       CoinDoor = 1;   //接受新情况
 158   3                 }
 159   2          }
 160   1          if( GDG10 == 0)   
 161   1          {
 162   2          delay_1ms(1);
 163   2              inputByte1 = XBYTE[0x0000];
 164   2              if( GDG10 == 0)  //延时后 还是原来情况 
 165   2                 {
 166   3                       CoinDoor = 0;   //接受新情况
 167   3                 }
 168   2          }
 169   1              return CoinDoor;
 170   1      }
 171          
 172          /******************************************************************/
 173          //GDG14  //1 硬币机钱箱是否到位
 174          BOOL isCoinBox() // 有币 出高电平
 175          {
 176   1              inputByte1 = XBYTE[0x0000];
 177   1              
 178   1          if( GDG14 == 1)   //有币
 179   1          {
C51 COMPILER V7.20   DRIVER                                                                10/13/2008 13:13:44 PAGE 4   

 180   2              //delay_1ms(1);
 181   2              inputByte1 = XBYTE[0x0000];
 182   2              if( GDG14 == 1)  //延时后 还是原来情况 
 183   2                 {
 184   3                       CoinBox= 1;   //接受新情况
 185   3                 }
 186   2          }
 187   1          else//( GDG14 == 0)   
 188   1          {
 189   2              //delay_1ms(1);
 190   2              inputByte1 = XBYTE[0x0000];
 191   2              if( GDG14 == 0)  //延时后 还是原来情况 
 192   2                 {
 193   3                       CoinBox=  0;   //接受新情况
 194   3                 }
 195   2          }
 196   1              return CoinBox;
 197   1      }
 198          //GDG15  //2 纸币出币机到位否
 199          BOOL isRmbOut() // 有币 出高电平
 200          {
 201   1              inputByte1 = XBYTE[0x0000];
 202   1              
 203   1          if( GDG15 == 1)   //有币
 204   1          {
 205   2              //delay_1ms(1);
 206   2              inputByte1 = XBYTE[0x0000];
 207   2              if( GDG15 == 1)  //延时后 还是原来情况 
 208   2                 {
 209   3                       RmbOut=1;   //接受新情况
 210   3                 }
 211   2          }
 212   1          else//( GDG15 == 0)   
 213   1          {
 214   2              //delay_1ms(1);
 215   2              inputByte1 = XBYTE[0x0000];
 216   2              if( GDG15 == 0)  //延时后 还是原来情况 
 217   2                 {
 218   3                       RmbOut=0;   //接受新情况
 219   3                 }
 220   2          }
 221   1              return RmbOut;
 222   1      }
 223          //GDG16  //3 硬币机到位否
 224          BOOL isCoiner() // 有币 出高电平
 225          {
 226   1              inputByte1 = XBYTE[0x0000];
 227   1              
 228   1          if( GDG16 == 1)   //有币
 229   1          {
 230   2              //delay_1ms(1);
 231   2              inputByte1 = XBYTE[0x0000];
 232   2              if( GDG16 == 1)  //延时后 还是原来情况 

⌨️ 快捷键说明

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