概述
定时器初始化需要六步:
void TimerInit()
{
TMOD = 0X01;
TH0 = (65536 - X) /256;//(65536-X)为定时器初值,如定时10ms,则X=1000
TL0 = (65536 - X)%256;
EA = 1;
ET0 = 1;
TR0 = 1;
}
中断函数:
void Timer0 interrupt 1
{
TH0 = (65536-X)/256;
TL0 = (65536-X)%256;
num++;
if(num>100)
num = 1;
}
/
Step1: 设置系统CLK
Setp2: 设置timer工作模式
TMOD = 0x20;
Step3: 设置timer clk源
CKCON = 0x80;
step4: 设置定时值
TL1 = 0x0F;
TH1 = 0x0F;
step5: 启动timer
TCON = 0x40;
(TR1 = 1)
step6: timer中断允许
IE = 0x80
(ET1 = 1)
step7: 全部中断使能
EA = 1;
step8: 编写中断函数
void Timer1_ISR (void) interrupt 3
{
static int counter = 0;
if((counter++) == LED_TOGGLE_RATE)
{
LED = ~LED; // Toggle the LED
counter = 0;
}
}
最后
以上就是跳跃项链为你收集整理的51定时器初始化步骤的全部内容,希望文章能够帮你解决51定时器初始化步骤所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复