打印

书上一个2407的例子,时间比较寄存器的重载条件为什么选保

[复制链接]
1584|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
snakeemail|  楼主 | 2007-12-28 19:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    T1CON=0x100C;                // Timer1为连续增计数模式,预分频值为1,使用内部时钟
/*  0001,0000,0000,1100 =0x100C
    00~~ ~~~~ ~~~~ ~~~~ [Free,Soft] 00:一旦仿真挂起后,定时器1立即停止
    ~~0~ ~~~~ ~~~~ ~~~~ [reserved] 
    ~~~1 0~~~ ~~~~ ~~~~ [TMODE1,TMODE0] 10: 连续增计数模式
    ~~~~ ~000 ~~~~ ~~~~ [TPS2-TPS0] 000:预定标系数, x/1
    ~~~~ ~~~~ 0~~~ ~~~~ [T2SWT1] 0:定时器2使用自身的周期寄存器  
    ~~~~ ~~~~ ~0~~ ~~~~ [TENABLE] 0: 定时器1不工作
    ~~~~ ~~~~ ~~00 ~~~~ [ TCLKS1, TCLKS0] 00: 使用内部CPU时钟 
    ~~~~ ~~~~ ~~~~ 11~~ [[#ff0080]TCLD1, TCLD0] 11: 保留    [/#] 
    ~~~~ ~~~~ ~~~~ ~~0~ [TECMPR] 0: 禁止定时器比较操作     
    ~~~~ ~~~~ ~~~~ ~~~0 [SELT1PR]0: 该位在定时器1中保留
*/
TCLD1, TCLD0. Timer Compare Register Reload Condition.
00 When counter is 0
01 When counter value is 0 or equals period register value
10 Immediately
11 Reserved 为什么选这一项,这不是保留的选项吗?如果不想比较寄存器重载,只要平时不改变比较寄存器,选10都可以呀。

相关帖子

沙发
玄德| | 2007-12-29 00:36 | 只看该作者

因为不想用“比较寄存器的重载”。

如果用不到“比较寄存器的重载”功能,选这一项是最保险,甚至是必须的。
只有这一项,不会产生任何重装载的事件。

使用特权

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

本版积分规则

547

主题

1910

帖子

8

粉丝