单片机溢出率的计算

2019-04-15 12:46发布

看了好几本书籍,讲到波特率的计算时,引出的溢出率。但是都没有定义溢出率。真是令人气愤啊!估计写书的人,当年也是直接套公式过来的。。。也或许他觉得这个很简单。。
没办法,只有自己猜测了。溢出率=?溢出速率。如果是这样的话,那么溢出一次的时间=(0x100-初始值)*(12/fosc)   //fsoc为频率
【这里选取定时器1,工作模式2,频率经过12分频。即进入定时器1模式2下的频率为fosc/12(个人理解:每秒的脉冲次数,用于计数)。那么12/fosc就为一次脉冲数的时间,即计数器增加一的时间。】那么溢出率=1/溢出一次的时间;                 
验证下看看:初始值  0xfd;溢出率=1/溢出一次时间=1/ {(0x100-0xfd)*(12/11.0592M)}=307200波特率=( (2^SMOD)/32 )*溢出率   //串口工作模式1           =9600   //SMOD=0
虽然说,直接看公式也行,但是我不理解的话,感觉很莫名其妙。当然有些公式在自己水平之外的也不会深究,如上面的波特率公式。。

如果有什么错误的话,欢迎指出。大笑







小记:人们因为对生活的某种向往而来到一座城市;          而让他们留下来的往往是一个人!