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

📄 timer.lst

📁 单片机开发列程
💻 LST
字号:
C51 COMPILER V8.01   TIMER                                                                 09/30/2007 11:14:56 PAGE 1   


C51 COMPILER V8.01, COMPILATION OF MODULE TIMER
OBJECT MODULE PLACED IN Timer.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Timer.c LARGE BROWSE DEBUG OBJECTEXTEND CODE SYMBOLS

line level    source

   1          #define __TIMER_H__
   2          
   3          #include "Config.h"
   4          /********************************************************************************************************
   5          **函数名称:T0Delay5ms
   6          **函数功能:使用T0延时5ms@40MHz
   7          **输    入:uchar DelayLoops    控制延时长短
   8          **输    出:无
   9          ********************************************************************************************************/
  10          /*
  11          void T0Delay5ms(uchar DelayLoops)
  12          {
  13              PERIPHEN1 |= BIT0;                  //使能T0
  14              //------------------------------------------------------
  15              //40MHz系统时钟,预先4分频,=>10MHz,5ms=>计数值为50000
  16              //------------------------------------------------------
  17              TH0 = 0x3C;
  18              TL0 = 0xB0;                         //5ms定时值 = 65536 - 50000
  19              
  20              T0T1CFG &= ~(BIT5 | BIT1 | BIT0);
  21              T0T1CFG |= 0x00;                    //T0门控禁止;输出禁止;16位操作模式
  22              
  23              T0T1CLKCFG &= 0xF0;  
  24              T0T1CLKCFG |= 0x02;                 //T0时钟4分频 
  25          
  26              T0CON  = 0x00;                      //向上计数,门控禁止,做计数器用
  27              T0CON |= BIT2;                      //T0运行
  28              do
  29              {
  30          #ifdef DOWNLOAD        
  31                  while((T0CON & BIT7) == 0);     //等待定时到
  32          #endif
  33                  TH0 = 0x3C;
  34                  TL0 = 0xB0;
  35                  T0CON &= ~BIT7;                 //清标志
  36                  DelayLoops --;    
  37              }
  38              while(DelayLoops != 0);       
  39          }
  40          */
  41          /********************************************************************************************************
  42          **函数名称:T1Delay5ms
  43          **函数功能:使用T1延时5ms@40MHz
  44          **输    入:uchar DelayLoops    控制延时长短
  45          **输    出:无
  46          ********************************************************************************************************/
  47          /*
  48          void T1Delay5ms(uchar DelayLoops)
  49          {
  50              PERIPHEN1 |= BIT1;                  //使能T1
  51              //------------------------------------------------------
  52              //40MHz系统时钟,预先4分频,=>10MHz,5ms=>计数值为50000
  53              //------------------------------------------------------
  54              TH1 = 0x3C;
  55              TL1 = 0xBF;
C51 COMPILER V8.01   TIMER                                                                 09/30/2007 11:14:56 PAGE 2   

  56          
  57              T0T1CFG &= ~(BIT6 | BIT4 | BIT3 | BIT2);    
  58              T0T1CFG |= 0x00;                    //T1门控禁止,时钟源为系统时钟,输出禁止,16位模式
  59              
  60              T0T1CLKCFG &= 0x0F;  
  61              T0T1CLKCFG |= 0x20;                 //T1时钟4分频 
  62              
  63              T1CON = 0x00;                       //向上计数,门控禁止,做计数器用
  64              T1CON |= BIT2;                      //T1运行
  65              do
  66              { 
  67          #ifdef DOWNLOAD
  68                  while((T1CON & BIT7) == 0);
  69          #endif        
  70                  TH1 = 0x3C;
  71                  TL1 = 0xB0;
  72                  T1CON &= ~BIT7;
  73                  DelayLoops --;                     
  74              }
  75              while(DelayLoops != 0);
  76          }
  77          */
  78          /********************************************************************************************************
  79          **函数名称:T2Init
  80          **函数功能:使用T2做中断延时前的初始化
  81          **输    入:无
  82          **输    出:无
  83          ********************************************************************************************************/
  84          void T2Init(void)
  85          {
  86   1          PERIPHEN1 |= BIT2;      //使能Timer2
  87   1          T2CON = 0x00;           //Timer2捕获使能
  88   1                                  //定时器功能
  89   1                                  //定时器停止
  90   1                                  //外部门控禁止
  91   1                                  //输出翻转禁止
  92   1                                  //向上计数
  93   1                                  //外部门控标志
  94   1                                  //溢出标志
  95   1      
  96   1          TH2 = 0x3C;
  97   1          TL2 = 0xB0;             //预置数
  98   1          T2CLKCFG = 0x03;        //系统时钟源
  99   1                                  //输出禁止
 100   1                                  //时钟64分频
 101   1          T2CON |= BIT2;          //Timer2开始运行
 102   1      }
 103          
 104          /********************************************************************************************************
 105          **函数名称:LEDFlashDelay
 106          **函数功能:未用的LED延时程序,会根据"Confug.h"的设置做自动设置
 107          **输    入:无
 108          **输    出:无
 109          ********************************************************************************************************/
 110          /*
 111          void LEDFlashDelay(void)
 112          {
 113              #define DELAYLOOP (OSCCLK / 200000) 
 114          
 115              T0Delay5ms(DELAYLOOP);
 116              //T1Delay5ms(DELAYLOOP);       
 117          }
C51 COMPILER V8.01   TIMER                                                                 09/30/2007 11:14:56 PAGE 3   

 118          */
C51 COMPILER V8.01   TIMER                                                                 09/30/2007 11:14:56 PAGE 4   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION T2Init (BEGIN)
                                           ; SOURCE LINE # 84
                                           ; SOURCE LINE # 85
                                           ; SOURCE LINE # 86
0000 43F404            ORL     PERIPHEN1,#04H
                                           ; SOURCE LINE # 87
0003 E4                CLR     A
0004 F59C              MOV     T2CON,A
                                           ; SOURCE LINE # 96
0006 758F3C            MOV     TH2,#03CH
                                           ; SOURCE LINE # 97
0009 758EB0            MOV     TL2,#0B0H
                                           ; SOURCE LINE # 98
000C 759D03            MOV     T2CLKCFG,#03H
                                           ; SOURCE LINE # 101
000F 439C04            ORL     T2CON,#04H
                                           ; SOURCE LINE # 102
0012 22                RET     
             ; FUNCTION T2Init (END)

C51 COMPILER V8.01   TIMER                                                                 09/30/2007 11:14:56 PAGE 5   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


PERIPHEN1. . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00F4H  1
size_t . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
T2Init . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
T2CLKCFG . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009DH  1
TH2. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008FH  1
TL2. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008EH  1
T2CON. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   009CH  1
wchar_t. . . . . . . . . . . . . . . .  TYPEDEF  -----  CHAR     -----  1
va_list. . . . . . . . . . . . . . . .  TYPEDEF  -----  PTR      -----  3


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     19    ----
   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 + -