单片机89c51 的时钟频率为6 MHZ,若要求定时1MS 定时,计时器工作于吗,,模式一 其

单片机89c51 的时钟频率为6 MHZ,若要求定时1MS 定时/计时器工作于模式一, 其定时/计时器的初值为

void Timer1Init(void) //1毫秒@6.000MHz
{
AUXR |= 0x40; //定时器时钟1T模式
TMOD &= 0x0F; //设置定时器模式
TL1 = 0x90; //设置定时初值
TH1 = 0xE8; //设置定时初值
TF1 = 0; //清除TF1标志
TR1 = 1; //定时器1开始计时
}
上面的是定时器初始化的全部程序追问

亲 谢谢你 不过我想知道定时/计时器的初值为?是怎样得到的

追答

初值就是TL1和TH1,这是要根据单片机的时钟频率以及定时时间具体计算的

追问

亲 不会呀 求指教

追答

定时器1是16位的计数器,根据单片机的时钟频率,比如6Mhz,那时钟周期就是1\6微秒,定时1Ms,就是要计数6000,而计数器每过一个时钟周期就自加一次,直到加到ffff,就产生定时中断,那定时器的初值就是ffff-6000(ffff是16进制,6000是十进制)

温馨提示:答案为网友推荐,仅供参考
相似回答