📄 timer.lst
字号:
C51 COMPILER V8.02 TIMER 05/13/2009 18:47:49 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE TIMER
OBJECT MODULE PLACED IN timer.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE timer.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /****************************************Copyright (c)**************************************************
2 **
3 ** 成都和勤科技发展有限公司
4 **
5 **--------------文件信息--------------------------------------------------------------------------------
6 **文 件 名: timer.c
7 **创 建 人: 杨承凯
8 **创 建 日 期 : 2007年1月23日
9 **最后修改日期: 2007年4月3日
10 **描 述: 以定时器2为系统定时器,产生1ms的时基
11 ********************************************************************************************************/
12 #define _TIMER_C_
13
14 #include "std\Config.h"
15 #include "Timer.h"
16
17
18
19 //定时器中断次数
20 uint16 xdata g_CurCount;
21 bit g_Overflow=0;
22 uint16 tmp = -(unsigned int)(SYSCLK / (12000 /* 12*1000 */ )); //1ms中断一次
23
24 /****************************************************************************
25 * 名 称:TimerInit()
26 * 功 能:spi初始化函数
27 * 入口参数:无
28 * 出口参数:无
29 * 说 明:无
30 ****************************************************************************/
31 void TimerInit(void)
32 {
33 1 CKCON &= ~0x10;
34 1 TMR2CN = 0x00;
35 1 TMR2RLH = HIBYTE(tmp);
36 1 TMR2RLL = LOBYTE(tmp);
37 1 TMR2H = HIBYTE(tmp);
38 1 TMR2L = LOBYTE(tmp);
39 1 TR2 = 1; //定时器2允许
40 1 IE |= 0xA0;
41 1
42 1 }
43
44
45 /****************************************************************************
46 * 名 称:TimerInt()
47 * 功 能:Timer2中断程序
48 * 入口参数:无
49 * 出口参数:无
50 * 说 明:无
51 ****************************************************************************/
52 void TimerInt(void) interrupt 5
53 {
54 1 TF2H = 0;
55 1 g_CurCount++;
C51 COMPILER V8.02 TIMER 05/13/2009 18:47:49 PAGE 2
56 1 if(g_CurCount >= 300)
57 1 {
58 2 g_Overflow=1;
59 2 }
60 1 }
61
62 /****************************************************************************
63 * 名 称:RunTimer()
64 * 功 能:运行一个定时事件
65 * 入口参数:nTimerID 定时事件的ID号
66 * 出口参数:0 运行定时事件不成功
67 非0 运行定时事件成功
68 * 说 明:无
69 ****************************************************************************/
70 void RunTimer()
71 {
72 1 TMR2RLH = HIBYTE(tmp);
73 1 TMR2RLL = LOBYTE(tmp);
74 1 g_CurCount=0;
75 1 g_Overflow=0;
76 1 TR2 = 1;
77 1 }
78
79
80
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 92 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 2 ----
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -