xuanxianzhi 发表于 2008-7-22 12:21:11

请教马老师,关于第八章249页的2N分频的问题!!!!

第八章249页的2N分频例子的软件设计部分,您在书中提到TCNT0=OXFF是2分频,TCNT0=OXFE是4分频,TCNT0=0XFD是6分频。。。。。。。这句话没有懂啊!!能不能解释一下???
还有下段当中的那个PA0上输出1HZ方波(LED亮0.5S,暗0.5S)的设计,由于T0输入的频率为250HZ,所以分频系数为250,因此TCNT0的初值=255-124(OX83).......这个初值是怎么算的????
请帮助分解一下,看了挺长时间,可真不是太明白!!!谢谢马老师了!!!

machao 发表于 2008-7-22 16:46:00

TO设置成0xFF,外部第1个上升沿,TO中断,把I/O置低,同时又设置T0成0xFF。
            外部第2个上升沿,TO中断,把I/O置高,同时又设置T0位0xFF......

外部2个上升沿,I/O由高到低,再翻到高,是否2分频?

如果你明白了,后面就会自己计算了。

xuanxianzhi 发表于 2008-7-22 17:34:55

您上面的我懂了!!!(2分频)
4分频,TCNT0=OXFE,OXFE到OXFF是计两个数,也就是计两个周期的脉冲(4个高彽电平),然后实现4分频!!!
这么理解对吧???
那250/2=125!!
TCNT0=256(0XFF)-125,应该这么算吧!!!
      ==========
      ???什么概念

machao 发表于 2008-7-22 17:59:44

注意:0xFF不是256,是255!!

因此你可以认为,256是溢出,那么256-125 = 131
或者,T0最大为OXFF,255,减0为2分频、减1为4分、减2为6分、减3为8分.....
      因此,公式为0XFF - [(分频数/2)-1]。要分频250,则0xFF - [(250/2 -1] = 255 - 124 = 131。

两种方法都可以,看你如何理解。

我的计算公式转了一个弯,但T0最大只能为255。采用第1个公式,会给人的感觉能设置到256?

都是小学生算术,重要的是你理解定时/计数器如何工作。真正掌握了,怎样计算都可以。

xuanxianzhi 发表于 2008-7-23 08:41:41

谢谢马老师的讲解,我明白了!!!
还得更深入的体会马老师的书呀!!!

yikuang 发表于 2012-10-28 16:14:20

做下笔记!
页: [1]
查看完整版本: 请教马老师,关于第八章249页的2N分频的问题!!!!