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

📄 timer.lst

📁 基于c8051f020的应用
💻 LST
字号:
C51 COMPILER V7.06   TIMER                                                                 06/25/2008 15:44:08 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE TIMER
OBJECT MODULE PLACED IN TIMER.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\c51.exe TIMER.C DB OE

stmt level    source

   1          //********************************************************************************************************
             -******************
   2          #include <c8051F020.h>
   3          #include "HEAD.H"
   4          //********************************************************************************************************
             -******************
   5          void Timer3_Init(void)
   6          {
   7   1              TMR3CN = 0x04;  // TR3   = 1;运行控制位.0:停止 1:启动
   8   1                                              // T3M   = 0;使用系统时钟的12分频
   9   1                                              // T3XCKL= 0;时钟源由T3M决定
  10   1      
  11   1              //TMR3RLH = 0x63;       // 初始值:0x63BF=15535=25ms
  12   1              //TMR3RLL = 0xBF;
  13   1              TMR3RLH = 0x3C; // 初始值:0x3CB0=15535=25ms
  14   1              TMR3RLL = 0xB0;
  15   1      
  16   1              EIE2 |= 0x01;   // Enable Timer3 Interrupt.
  17   1      }
  18          //********************************************************************************************************
             -******************
  19          // 定时器3用于25ms定时
  20          void Timer3_Interrupt(void) interrupt 14
  21          {               
  22   1              TMR3CN &=~0x80; //  清除中断标志位
  23   1      
  24   1              Timer3++;
  25   1              if(Timer3%RunLedFre==0x00)      // 
  26   1              {
  27   2                      LED1_CHANGE;
  28   2                      DI_Station();
  29   2              }
  30   1      
  31   1              HollSpaceTime++;
  32   1              if(HollSpaceTime>=40)
  33   1              {
  34   2                      HollSpaceTime=0x00;
  35   2              }
  36   1      
  37   1              if(WorkStation==0xBB)
  38   1              {
  39   2                      if(Timer3%TestTime==0x00)
  40   2                      {
  41   3                              HollSigNum=TH2*256 + TL2;
  42   3                              RTUaddress4[6]=HollSigNum>>8;
  43   3                              RTUaddress4[7]=HollSigNum;
  44   3      
  45   3                              HollDate[HollDataNum]=HollSigNum;
  46   3                              HollDataNum++;
  47   3                              if(HollDataNum>=HollDateLong)
  48   3                              {
  49   4                                      WorkStation=0x00;
  50   4                              }
  51   3                      }
  52   2              }
C51 COMPILER V7.06   TIMER                                                                 06/25/2008 15:44:08 PAGE 2   

  53   1              // 瞬时转速测试
  54   1              if(TempT2==TL2)
  55   1              {
  56   2                      Tem2Con++;
  57   2              }
  58   1              else
  59   1              {
  60   2                      if(Tem2Con<=40*2)
  61   2                      {
  62   3                              InstantaneousSpeed=60*40/(float)Tem2Con;
  63   3                      }
  64   2                      TempT2=TL2;
  65   2                      Tem2Con=0x00;
  66   2              }
  67   1              if(Tem2Con>40*2)
  68   1              {
  69   2                      InstantaneousSpeed=0;
  70   2                      TempT2=TL2;
  71   2                      Tem2Con=0x00;
  72   2              }
  73   1      }
  74          //********************************************************************************************************
             -******************
  75          void Timer0_Init(void)
  76          {
  77   1              TMOD  |= 0x01;  // 方式1:T0:16位定时器
  78   1      }
  79          //********************************************************************************************************
             -******************
  80          void Timer0_ReSet(void)
  81          {
  82   1              TH0   = 0x8C;   // 初始值:0xFCBE=64702=0.4ms
  83   1              TL0   = 0xBE;
  84   1              ET0   = 1 ;             // Enable TIMER0 Interrupt.
  85   1              TR0   = 1;              // 定时器0运行控制位
  86   1      }
  87          //********************************************************************************************************
             -******************
  88          void Timer0_Interrupt(void) interrupt 1
  89          {
  90   1              TF0   = 0;              // 软件清除标志位
  91   1              TR0   = 0;              // 定时器0运行控制位
  92   1              ET0   = 0;              // 禁止T0中断   
  93   1          
  94   1              RTU_Data();
  95   1              ComFlag=0x00;
  96   1              
  97   1      }
  98          //********************************************************************************************************
             -******************
  99          // The End
 100          //********************************************************************************************************
             -******************
 101          
 102          
 103          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    415    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
C51 COMPILER V7.06   TIMER                                                                 06/25/2008 15:44:08 PAGE 3   

   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 + -