wjyspring 发表于 2007-9-21 12:04:47

请问怎样利用TOV0构成9位的T/C0计数器?

请问怎样利用TOV0构成9位的T/C0计数器?可以给个例子吗?谢谢~~~~~~~~~

machao 发表于 2007-9-22 10:43:40

理论上可以利用TOV0构成9位的T/C0计数器,实际上就是把TOV0周围T/C0的最高位(T/C0=255后,下一个脉冲,T/CO=0,TOV0=1)。但使用起来比较麻烦,需要软件很好的设计和配合,建议仅在特殊情况下使用,而且适合水平比较高的人使用。

alien2006 发表于 2007-9-22 13:43:33

我是用过TIMER1构成17位计数器,使能TIMER1溢出中断,设置一个TOV1COUNT的全局变量,每调用一次中断就TOV1COUNT++,然后是65535 * TOVICOUNT +TCNT1,这样就计很大的数值了,我现在是用来做频率计,1秒定时计数,计数完成后再清TOV1COUNT TCNT1,调用中断的过程应该不会对TIMER1计数有影响吧,这样计数只要1秒的定时准确,准确度还是很高的(当然开始计数和停止计数的指令还是会花几个周期的不过影响很小)
    不知道这样对不对,请大家指点指点。
页: [1]
查看完整版本: 请问怎样利用TOV0构成9位的T/C0计数器?