|
本人最近在学习单片机,发现很多程序里面都有关于定时器溢出值的设定
例如,在DS18B20温度测量与控制实验中,有这样的程序
TR1=0; //STOP Timer1
TH1=(-SYSCLK/us)>>8; //set Timer1 to overflow in us
TL1=-SYSCLK/us;
TR1=1; //STAR Timer1
While(TF==0); //wait for overflow
TF1=0; //clear overflow indicator
为什么TH1=(-SYSCLK/us)>>8;
TL1=-SYSCLK/us;
是设定定时器的溢出值呢?为什么还要负的SYSCLK,而且还要右移8位,多谢各位高手了
|
|