定时器初值计算时该用65536还是65535?

2019-03-24 17:26发布

如题!
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
12条回答
huaiqiao
2019-03-25 09:37
lcofjp 发表于 2016-11-22 17:02
那么,16位寄存器最大能表示的是65535,那么是不是应该设置成0呢?

首先,队长您这个问题问的好。说实话,我现在已经对51淡忘好多了。。。。不过我还是查看了相关的资料来回答您的问题。那么下面我来 解答下,您来指正哈。
1、针对51单片机来说,定时器的工作方式有4种,具体的工作方式见下图:

1.png

2、针对队长提出的问题:
如果楼主使用的是定时器的工作方式0,如下的地方解释的比较清楚,我想我直接搬砖过来。

2.png

如果是定时器的工作方式1
3.png

显然,根据楼主的问题,这个地方他使用的是工作方式1.
这里的65536不是“16位寄存器”,其实我的回答也不够严谨,这个应该是16位的定时器所能装载的数是2^16=65536个,也是经过65536个机器周期计数器溢出一次。


一周热门 更多>