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

📄 alarm.lst

📁 该程序完成了c8051外围电路的驱动和串口协议的编写。希望能给大家学习51单片机带来帮助
💻 LST
📖 第 1 页 / 共 4 页
字号:
C51 COMPILER V7.10   ALARM                                                                 09/18/2008 14:09:31 PAGE 1   


C51 COMPILER V7.10, COMPILATION OF MODULE ALARM
OBJECT MODULE PLACED IN alarm.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 20progress\alarm.c BROWSE DEBUG OBJECTEXTEND PRINT(.\alarm.lst) OBJECT(alar
                    -m.obj)

line level    source

   1          //*******************************************************************************
   2          //Copyright (c) 2007,派利斯电子(北京)有限公司 硬件部
   3          //文件名称: comm.c
   4          //摘    要: 本文件主要包含报警部分的程序
   5          //当前版本: D-1 
   6          //作    者:  佟文杰
   7          //完成日期: 4/16/2007
   8          //修 改 人:
   9          //修改原因:
  10          //修改日期:
  11          //*******************************************************************************
  12          #define ALARM_H
  13                                  
  14          #include "alarm.h"
  15          
  16          /*
  17          通道类型为轴振动时只有两级报警,即AlertHigh和DangerHigh
  18          
  19          报警倍增:软件可以选择2倍增、3倍增或不倍增,只有当91板上倍增端子短接后,各个模块按照软件设置的倍增方式进行
             -倍增。
  20          报警自锁
  21          报警旁路:模块被Bypass后,该模块面板上的Bypass LED 点亮,同时通过CAN总线上传旁路状态。
  22          报警延时
  23          OK状态: 当通道NOT OK,该通道不报警。通道由NOT OK状态进入OK状态时,振动通道报警Bypass 10秒,位移通道报警By
             -pass 1秒。
  24          */
  25          xdata struct Alarm AlarmModule;
  26          
  27          
  28          
  29          //报警模块
  30          
  31          /*****************************************************
  32          * 函数介绍: 设置报警回差值
  33          * 输入参数: 回差值 通道号
  34          * 输出参数: 无
  35          * 返回值 :      无
  36          *****************************************************/
  37          void SetFallingAlertL (unsigned char uchChannel, int iFallingAlertLow)
  38          {                                                          
  39   1              AlarmModule.iFallingAlertL[uchChannel - 1] = iFallingAlertLow;     
  40   1      }
  41          
  42          /*****************************************************
  43          * 函数介绍: 设置报警回差值
  44          * 输入参数: 回差值 通道号
  45          * 输出参数: 无
  46          * 返回值 :      无
  47          *****************************************************/
  48          void SetFallingAlertH(unsigned char uchChannel, int iFallingAlertHigh)
  49          {                                                  
  50   1              AlarmModule.iFallingAlertH[uchChannel - 1] = iFallingAlertHigh;         
  51   1      }
  52          
C51 COMPILER V7.10   ALARM                                                                 09/18/2008 14:09:31 PAGE 2   

  53          /*****************************************************
  54          * 函数介绍: 设置报警回差值
  55          * 输入参数: 回差值 通道号
  56          * 输出参数: 无
  57          * 返回值 :      无
  58          *****************************************************/
  59          void SetFallingDangerL (unsigned char uchChannel, int iFallingDangerLow)
  60          {                                                               
  61   1              AlarmModule.iFallingDangerL[uchChannel - 1] = iFallingDangerLow;         
  62   1      }
  63          
  64          /*****************************************************
  65          * 函数介绍: 设置报警回差值
  66          * 输入参数: 回差值 通道号
  67          * 输出参数: 无
  68          * 返回值 :      无
  69          *****************************************************/
  70          void SetFallingDangerH(unsigned char uchChannel, int iFallingDangerHigh)
  71          {                                                                                
  72   1              AlarmModule.iFallingDangerH[uchChannel - 1] = iFallingDangerHigh;          
  73   1      }
  74          
  75          /*****************************************************
  76          * 函数介绍: 设置报警下限
  77          * 输入参数: 门限值 通道号
  78          * 输出参数: 无
  79          * 返回值 :      无
  80          *****************************************************/
  81          void SetAlertLow(unsigned char uchChannel, int iAlertLow)
  82          {                                                                        
  83   1              AlarmModule.iAlertLow[uchChannel - 1] = iAlertLow;                              
  84   1      }
  85          
  86          /*****************************************************
  87          * 函数介绍: 设置报警上限
  88          * 输入参数: 门限值 通道号
  89          * 输出参数: 无
  90          * 返回值 :      无
  91          *****************************************************/
  92          
  93          void SetAlertHigh(unsigned char uchChannel, int iAlertHigh) 
  94          {                                                                
  95   1              AlarmModule.iAlertHigh[uchChannel - 1] = iAlertHigh;      
  96   1      }
  97          
  98          /*****************************************************
  99          * 函数介绍: 设置危险下限
 100          * 输入参数: 门限值 通道号
 101          * 输出参数: 无
 102          * 返回值 :      无
 103          *****************************************************/
 104          void SetDangerLow(unsigned char uchChannel, int iDangerLow) 
 105          {                                                         
 106   1              AlarmModule.iDangerLow[uchChannel - 1] = iDangerLow;            
 107   1      }
 108          
 109          /*****************************************************
 110          * 函数介绍: 设置危险上限
 111          * 输入参数: 门限值 通道号
 112          * 输出参数: 无
 113          * 返回值 :      无
 114          *****************************************************/
C51 COMPILER V7.10   ALARM                                                                 09/18/2008 14:09:31 PAGE 3   

 115          void SetDangerHigh(unsigned char uchChannel,unsigned int iDangerHigh ) 
 116          {                                                                               
 117   1              AlarmModule.iDangerHigh[uchChannel - 1] = iDangerHigh;          
 118   1      }
 119          
 120          /*****************************************************
 121          * 函数介绍: 设置软件倍增状态
 122          * 输入参数: 倍增状态值 通道号
 123          * 输出参数: 无
 124          * 返回值 :      无
 125          *****************************************************/
 126          void SetTripleStatusALM(unsigned char uchChannel, unsigned char status)//软件倍增状态
 127          {                                          
 128   1              if (status != 0) status++;
 129   1       
 130   1              AlarmModule.uchTriple[uchChannel - 1] = status;                          
 131   1      }
 132          
 133          /*****************************************************
 134          * 函数介绍: 设置硬件旁路状态
 135          * 输入参数: 旁路状态值
 136          * 输出参数: 无
 137          * 返回值 :      无
 138          *****************************************************/
 139          void SetBypassStatusALM(unsigned char uchChannel, unsigned char uchBypassStatus)
 140          {
 141   1              AlarmModule.uchSystemBypassStatus[uchChannel - 1] = uchBypassStatus;
 142   1      }
 143          
 144          /*****************************************************
 145          * 函数介绍: 设置自锁状态
 146          * 输入参数: 自锁状态值 通道号
 147          * 输出参数: 无
 148          * 返回值 :      无
 149          *****************************************************/
 150          void SetLatchStatus(unsigned char uchChannel, unsigned char uchLatchStatus)
 151          {                                                          
 152   1              AlarmModule.uchLatch[uchChannel - 1]= uchLatchStatus;            
 153   1      }
 154          
 155          //--------------------------------------------------------------------------------------------------
 156          //函数名称:void SetEnableStatusALM( unsigned char uchChannel, unsigned char uchEnableStatus)     
 157          //功    能:设置通道使能
 158          //输入参数:通道号,使能状态
 159          //返    回:无
 160          //完成日期:4/16/2007
 161          //--------------------------------------------------------------------------------------------------
 162          void SetEnableStatusALM( unsigned char uchChannel, unsigned char uchEnableStatus)//主框架程序调用
 163          {
 164   1              AlarmModule.uchEnable[uchChannel - 1] = uchEnableStatus;
 165   1              if (AlarmModule.uchEnable[uchChannel - 1] != 0) 
 166   1              {
 167   2                      InitChannel(uchChannel);
 168   2              }
 169   1      
 170   1              if (uchChannel == 2)      //初始化参数时,初始化到第二个通道时对报警模块的参数进行调整
 171   1              {
 172   2                      if (AlarmModule.uchChannelType[0] == 22)
 173   2                      {
 174   3                              if ((AlarmModule.uchEnable[0] == 0)     || (AlarmModule.uchEnable[1] == 0))
 175   3                              {
 176   4                                      AlarmModule.uchEnable[1] = 0;
C51 COMPILER V7.10   ALARM                                                                 09/18/2008 14:09:31 PAGE 4   

 177   4                                      AlarmModule.uchEnable[0] = 0;
 178   4                              }
 179   3                              else if ((AlarmModule.uchEnable[0] == 1) && (AlarmModule.uchEnable[1] == 1))
 180   3                              {
 181   4                                      AlarmModule.uchEnable[0] = 1;
 182   4                                      AlarmModule.uchEnable[1] = 1;   //此else可以不要        
 183   4                              }
 184   3                      }
 185   2              }
 186   1      }
 187          
 188          /*****************************************************
 189          * 函数介绍: 设置系统时钟
 190          * 输入参数: 系统时钟
 191          * 输出参数: 无
 192          * 返回值 :      无
 193          *****************************************************/
 194          void SetHeartbeatALM(unsigned int uiHeartbeatValue) // 100ms tick rate
 195          {                                                                                                                                        //变量的初始化问题,看程序的执行顺序
 196   1              AlarmModule.uiCurrentHeartbeat =  uiHeartbeatValue;
 197   1      }
 198          
 199          //--------------------------------------------------------------------------------------------------
 200          //函数名称:void SetOKStatusALM(unsigned char uchChannel, unsigned char uchOKStatus)      
 201          //功    能:设置通道OK状态
 202          //输入参数:通道号,OK状态
 203          //返    回:无
 204          //完成日期:4/16/2007
 205          //--------------------------------------------------------------------------------------------------
 206          void SetOKStatusALM(unsigned char uchChannel, unsigned char uchOKStatus)

⌨️ 快捷键说明

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