51单片机用定时器计时应该如何计算?求大神支招
3个回答
展开全部
更多追问追答
追问
嗯嗯,谢谢,那么我如果用12MHz晶振,定时10Ms,就是(65536-10000)/256,是这个意思么
还是我减去10000后的结果是定时时长?
展开全部
当用定时器的方式1时,计算出的(65536-X)的值超过了256,也就是定时器的16位定时方式,这样需要给TH0送高8位,TL0送低位,所以,要计算出(65536-X)的高8位和低8位,(65536-X)/256就是计算出高8位,而(65536-X)%256就是计算出低8位,所以写成
TH0=(65536-X)/256(或者TH1)
TL0=(65536-X)%256(或者TL1)
TH0=(65536-X)/256(或者TH1)
TL0=(65536-X)%256(或者TL1)
更多追问追答
追问
嗯嗯,明白了,谢谢
追答
既然明白了,给个采纳呀!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
现在有专门的软件计算了, 不用自己算, 象STC-ISP里面就有
追问
介个我知道,有专门计算的软件,可是我想弄清楚是怎么计算的,比如TH0=(65536-X)/256,我就不明白为什么要除256呢
追答
除256是为了把高位赋值给TH0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询