打印
[PIC®/AVR®/dsPIC®产品]

对1822的Timer0的两个疑问?

[复制链接]
1517|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dgdz2c|  楼主 | 2013-7-20 22:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1822的规格书P176页有这样的一段话:
Timer0 模块有8 个预分频比选项,范围从1:2 至1:256。预分频值可通过 OPTION 寄存器的 PS<2:0> 位进行选择。为了让 Timer0 模块使用 1:1 预分频值,必须通过将OPTION 寄存器的 PSA 位置 1 来禁止预分频器。预分频器是不可读写的。写 TMR0 寄存器的所有指令都会清零预分频器。
这里有两个疑问:
1)“预分频器是不可读写的”
在P177页描述分频比的寄存器时,PS<2:0>都是R/W的。
用软件仿真,也的确可以读出分频比的值。
2)“如果对TMR0进行操作了,那分频比就会被清。”
用软件操作如下代码:
TMR0 = 0;
OPTION_REG = 3;
TMR0 = 3; 如果按照规格书的意思,这句执行完后,OPTION_REG应该为0,但用软件仿真OPTION_REG值并没有变。



沙发
dgdz2c|  楼主 | 2013-7-20 22:28 | 只看该作者

使用特权

评论回复
板凳
dgdz2c|  楼主 | 2013-7-20 22:28 | 只看该作者
为什么一发就“结贴”?

使用特权

评论回复
地板
XIEYUANBIN| | 2013-7-21 19:18 | 只看该作者
预分频器的设置和预分频器的计数是两码事,你写OPTION_REG只是设置,另外有个计数器用来实现你的分频。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

61

帖子

1

粉丝