📄 stimer.h
字号:
//////////////////////////////////
// timer.h //
// design by: 刘俐训 //
//////////////////////////////////
#ifndef STIMER_H
#define STIMER_H
#define LED P1_3
// #define LED1 P2_0
#define LEDON 0
#define LEDOFF 1
#define BUZZER P3_5
#define BUZZERON 0
#define BUZZEROFF 1
#ifndef enable
#define enable() EA=1
#define disable() EA=0
#endif
#ifndef NULL
#define NULL (void *)0
#endif
void beep(unsigned char times, unsigned char tick);
// 蜂鸣 times: 次数,tick:每次响的时间和暂停的时间,10毫秒一个单位
void delay(unsigned int time);
//延时程序,time: 毫秒
#define DiUserTimer(); ET0 = 0;
// 禁止用户定时器
void dummy(void);
// 空操作 相当于延时4指令周期
unsigned int GetTickCount(void);
// 获取系统运行比较精确毫秒数,速度比较慢
unsigned int GetTenTickCount(void);
// 获取系统运行毫秒数
// 该函数将忽略毫秒数的个位,即只能获得10的倍数的数值,但是速度块很多
void InitTimer(unsigned long sysclk);
//初始化10毫秒系统时钟,并开始运行
//sysclk: 系统时钟 = 晶振频率 ÷ 机器周期
//成功返回1,失败返回0。
void InitUserTimer( unsigned char rldval, unsigned char startval);
//初始化用户定义时钟,定时时间由用户给出,并开始运行
//cycles: 机器周期数,要求:60 <= cycles <= 255;
//每次中断后调用用户程序TimerEvent()。
//为方便用户的实时性要求,UserTimer中断级别高于系统时钟
void led(unsigned char ltick);
// set led Tick Interval, 0: off, 0xff: on, other: flash
// 1-->10ms
// void led1(unsigned char ltick);
// set led Tick Interval, 0: off, 0xff: on, other: flash
// 1-->10ms
void SoftDelayCyl(unsigned char double_cycles);
//在softdly.a51里面定义
// start clock output
void StartCLKO(unsigned int div);
#define UserTimer() TF0=1;
// 强制用户定时器中断
// do nothing, just waste some time
void dummy(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -