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

📄 interruptservice.lst

📁 带时钟功能温度和湿度测量的仪器
💻 LST
字号:
C51 COMPILER V7.20   INTERRUPTSERVICE                                                      11/09/2002 21:11:14 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE INTERRUPTSERVICE
OBJECT MODULE PLACED IN InterruptService.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Interrupt\InterruptService.c BROWSE DEBUG OBJECTEXTEND PRINT(.\InterruptSer
                    -vice.lst) OBJECT(InterruptService.obj)

line level    source

   1          /*############################################################
   2          文件名:  InterruptService.c
   3          功能:    所有中断服务函数实现
   4          单位:    浙江工商大学-信电学院
   5          创建日期:2004-09-24
   6          创建人:  Houseivan
   7          修改人:  Houseivan
   8          修改日期:2005-03-11
   9          ############################################################*/
  10          #include"Includes.h"
  11          
  12          /*检查是否需要提供系统中断服务*/
  13          #if _SYS_INTERRUPT>0
  14                  extern uchar data MeasureTimer;         //测量用定时器1s=50x20ms
  15                  extern uchar data SampleTimer;          //系统数据刷新定时器1min=60x1s
  16                  extern uchar data StoreTimer;           //存储采样定时器1Hour=60x1min
  17          /*------------------中断函数声明地址区---------------------------------*/
  18          #if _DETECT_TASK>0
  19                  extern uint  data HumiCounter;          //湿度计数器
  20                  extern uint  data TempCounter;          //温度计数器
  21          
  22          /*############################################################
  23          名称: HumidityCounter()
  24          功能: 外部中断0用于代替counter1计数湿度脉冲 
  25          注意: 必须设置成边沿触发方式
  26          ############################################################*/
  27          void HumidityCounter() interrupt 0 
  28          {                           
  29   1           HumiCounter++;
  30   1      }
  31          
  32          #endif
  33          
  34          /*############################################################
  35          名称: TemperatureCounter()
  36          功能: 计数器0对温度频率进行计数
  37          注意: 结果存放到TempCounter
  38          void Temperature_Counter() interrupt 1 {}
  39          ############################################################*/
  40          
  41          /*############################################################
  42          名称: Extern1Service()
  43          功能: 保留外部中断1
  44          注意: 
  45          void  Extern1Service() interrupt 2 {}
  46          ############################################################*/
  47          //sbit  Wdog=P2^5;
  48          //#define ClearWatchDog()               {Wdog=1; ; ; ; ; Wdog=0;}
  49          /*############################################################
  50          名称: Timer20ms()
  51          功能: 20ms定时功能 
  52          注意: 1000ms=40 x 25 ms
  53                最大定时时间:42666.666666666666666666666666667us=43ms
  54                    40ms fosc=18.432M 0x112c /12MHZ 0x63c0
C51 COMPILER V7.20   INTERRUPTSERVICE                                                      11/09/2002 21:11:14 PAGE 2   

  55          ############################################################*/
  56          void Timer20ms() interrupt 3  
  57          {   
  58   1              //EnterCritical();
  59   1      
  60   1              MeasureTimer++;
  61   1              if(MeasureTimer>_MEASURE_ALARM)         //==50这个值要被使用
  62   1              {
  63   2                      MeasureTimer=0;
  64   2                      SampleTimer++;          //一分钟定时器
  65   2                      if(SampleTimer>_SAMPLE_ALARM)   //==60这个值要被使用
  66   2                      {       
  67   3                              SampleTimer=0;
  68   3                              StoreTimer++;   //一个小时定时器
  69   3                              if(StoreTimer>_STORE_ALARM)
  70   3                                      StoreTimer=0;
  71   3                      }
  72   2              }
  73   1              ClearWatchDog();
  74   1              TH1=_TIMER1_H;          
  75   1              TL1=_TIMER1_L;
  76   1              //ExitCritical();            
  77   1      }
  78          
  79          
  80          /*############################################################
  81          名称: ScomService()
  82          功能: 串行中断服务函数
  83          注意:  
  84          void ScomService() interrupt 4
  85          ############################################################*/
  86          /*############################################################
  87          名称: BaudSetupTimer2()
  88          功能: 串行中断服务函数
  89          注意:  该设备在本系统中作为波特率发生器使用
  90          ############################################################*/
  91          /*###########################################################
  92          void BaudSetupTimer2() interrupt 5
  93          {}
  94          ############################################################*/
  95          /*----------------------------------------------------------------------*/
  96          #endif


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