📄 time.c
字号:
#include "Time.h"
#include <MC68HC908GZ32.h> /* include peripheral declarations */
#include "main.h"
#define DisableTimer
#define EnableTimer
void(* TimerFun[4])();
//fBUS = 8MHz
//10ms
void InitTimer(void)
{
__RESET_WATCHDOG(); /* kicks the dog */
TimerFun[0] = (void(*)())0;
TimerFun[1] = (void(*)())0;
TimerFun[2] = (void(*)())0;
TimerFun[3] = (void(*)())0;
//10 * 8 * 1000=
//PS = 8
T2SC = 0x063; // TOF TOIE TSTOP TRST - PS2 PS1 PS0
// 0 1 1 1 0 1 1
// 1000
T2MODH = 0x027;
T2MODL = 0x010;
T2SC_TSTOP = 0; //开始
}
void SetTimer(void(*p)(),unsigned char n)
{
if(n >= 4)
return;
DisableTimer;
TimerFun[n] = p;
EnableTimer;
}
void KillTimer(unsigned char n)
{
if(n >= 4)
return;
DisableTimer;
TimerFun[n] = (void(*)())0;
EnableTimer;
}
__interrupt TIM2Overisr(void)
{
T2SC_TOF = T2SC_TRST;
if((unsigned int)TimerFun[0])
(*TimerFun[0])();
if((unsigned int)TimerFun[1])
(*TimerFun[1])();
if((unsigned int)TimerFun[2])
(*TimerFun[2])();
if((unsigned int)TimerFun[3])
(*TimerFun[3])();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -