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

📄 display.lst

📁 一整套电梯控制器源程序
💻 LST
字号:
C51 COMPILER V6.12  DISPLAY                                                                06/02/2005 08:50:15 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE DISPLAY
OBJECT MODULE PLACED IN .\DISPLAY.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE .\DISPLAY.C DEBUG OBJECTEXTEND

stmt level    source

   1          #include "public.h"
   2          
   3          void insel_lamp(void)
   4          {
   5   1      	if(m_cInSelAllOffFlg==1){
   6   2      			m_cInSelLamp[0]=0x00;
   7   2      			m_cInSelLamp[1]=0x00;
   8   2      			m_cInSelLamp[2]=0x00;
   9   2      			m_cInSelAllOffFlg=0;
  10   2      	}
  11   1          //!!!24层以上的内选灯应该适用灯数组后3个字节
  12   1      //    XBYTE[((P2&0x60)|0x94)*256]=m_cInSelLamp[0];
  13   1      //    XBYTE[((P2&0x60)|0x95)*256]=m_cInSelLamp[1];
  14   1      //    XBYTE[((P2&0x60)|0x96)*256]=m_cInSelLamp[2];
  15   1          XBYTE[((P2&0x60)|0x94)*256]=m_cInSelLamp[3];
  16   1          XBYTE[((P2&0x60)|0x95)*256]=m_cInSelLamp[4];
  17   1          XBYTE[((P2&0x60)|0x96)*256]=m_cInSelLamp[5];
  18   1          P2=(P2&0x60)|0x9f;
  19   1      }
  20          
  21          void advancedoutput(void)
  22          {
  23   1      	uchar cTemp=0;
  24   1          //超载灯
  25   1          if(m_cOverLoadLampFlg==1){
  26   2              P2_6=1;
  27   2          }else if(m_cOverLoadLampFlg==0){
  28   2              P2_6=0;
  29   2          }
  30   1          //到站钟
  31   1          if(m_cArriveRingFlg==1){
  32   2              P2_5=1;
  33   2          }else if(m_cArriveRingFlg==0){ //(实际上,不可能执行到)
  34   2      
  35   2          }
  36   1          if(/*(m_cArriveRingFlg==1)&&*/(time_arrive2s_flg==1)){  //到站钟保持时间到
  37   2              P2_5=0;
  38   2              m_cArriveRingFlg=0;
  39   2              time_arrive2s_flg=0;
  40   2              time_arrive2s_count=TIMER_2s;
  41   2          }
  42   1      
  43   1          //蜂鸣器(间隔2秒,响一次)
  44   1      	 cTemp=P1_1;
  45   1          if(m_cBingFlg==1){
  46   2      		  P1_1=1;
  47   2          }else if(m_cBingFlg==0){        //确保停止响铃
  48   2      
  49   2          }
  50   1           if(time_bing2s_flg==1){
  51   2               time_bing2s_flg=0;
  52   2               time_bing2s_count=TIMER_2s;
  53   2      			m_cBingFlg=0;
  54   2      			P1_1=0;
  55   2           }
C51 COMPILER V6.12  DISPLAY                                                                06/02/2005 08:50:15 PAGE 2   

  56   1      }
  57          
  58          
  59          void chkcan(void)                                     //can总线正在通讯状态和通讯错误状态显示灯赋值片断。
  60          {
  61   1      if((XBYTE[((P2&0xe0)|0x0F)*256+2]&0x80)==0x80)     //总线状态为关闭时
  62   1         {P3_1=0;
  63   2      /*
  64   2          P2_7=0;
  65   2          _nop_();
  66   2          _nop_();
  67   2          _nop_();
  68   2          _nop_();
  69   2          _nop_();
  70   2          _nop_();
  71   2          _nop_();
  72   2          _nop_();
  73   2          _nop_();
  74   2          _nop_();
  75   2          _nop_();
  76   2          _nop_();
  77   2      
  78   2          P2_7=1;
  79   2      */
  80   2          can_init();
  81   2        }
  82   1      if((XBYTE[((P2&0xe0)|0x0F)*256]&0x01)!=0x00)     //总线状态为复位时
  83   1         {P3_1=0;
  84   2      /*
  85   2          P2_7=0;
  86   2          _nop_();
  87   2          _nop_();
  88   2          _nop_();
  89   2          _nop_();
  90   2          _nop_();
  91   2          _nop_();
  92   2          _nop_();
  93   2          _nop_();
  94   2          _nop_();
  95   2          _nop_();
  96   2          _nop_();
  97   2          _nop_();
  98   2      
  99   2          P2_7=1;
 100   2      */
 101   2          can_init();
 102   2        }
 103   1       if((XBYTE[((P2&0xe0)|0x0F)*256+2]&0x40)==0x40)    //错误寄存器为1时
 104   1         {P3_1=0;
 105   2      /*
 106   2          P2_7=0;
 107   2          _nop_();
 108   2          _nop_();
 109   2          _nop_();
 110   2          _nop_();
 111   2          _nop_();
 112   2          _nop_();
 113   2          _nop_();
 114   2          _nop_();
 115   2          _nop_();
 116   2          _nop_();
 117   2          _nop_();
C51 COMPILER V6.12  DISPLAY                                                                06/02/2005 08:50:15 PAGE 3   

 118   2          _nop_();
 119   2      
 120   2          P2_7=1;
 121   2      */
 122   2          can_init();
 123   2        }
 124   1       else
 125   1        {P3_1=1;
 126   2        }
 127   1      
 128   1       if((XBYTE[((P2&0xe0)|0x0F)*256+2]&0x02)==0x02){    //数据溢出
 129   2          P3_1=0;
 130   2      /*
 131   2          P2_7=0;
 132   2          _nop_();
 133   2          _nop_();
 134   2          _nop_();
 135   2          _nop_();
 136   2          _nop_();
 137   2          _nop_();
 138   2          _nop_();
 139   2          _nop_();
 140   2          _nop_();
 141   2          _nop_();
 142   2          _nop_();
 143   2          _nop_();
 144   2      
 145   2          P2_7=1;
 146   2      */
 147   2          can_init();
 148   2       }
 149   1      
 150   1       if(((XBYTE[((P2&0xe0)|0x0F)*256+2]&0x20)==0x20)||((XBYTE[((P2&0xe0)|0x0F)*256+2]&0x10)==0x10))//正在发送

⌨️ 快捷键说明

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