新闻  |   论坛  |   博客  |   在线研讨会
为什么51系列单片机常用11.0592MHz的晶振设计
yanqin | 2009-04-17 18:37:04    阅读:1289   发布文章

   现在有许多极好的编译程序能显示代码,在速度和尺寸两方面都是非凡有效的。现代的编绎器非常适应寄存器和变量的使用方面,比手动编译有较好的优越性,甚至在其它常规方面,所以C应是看代码方面最合适的。 
    
   答1:因为它能够准确地划分成时钟频率,与UART(通用异步接收器/发送器)量常见的波特率相关。特别是较高的波特率(19600,19200),不管多么古怪的值,这些晶振都是准确,常被使用的。 

   答2:当定时器1被用作波特率发生器时,波特率工作于方式1和方式3是由定时器1的溢出率和SMOD的值(PCON.7------双倍速波特率)决定: 

   方式1、3波特率=(定时器1的溢出率) 

   特殊时,定时器被设在自动重袋模式(模式2,TMOD的高四位为0100B),其为: 

   方式1、3波特率=11.0592MHZ晶振的一些典型波特率如下:

   更换一种计算方式,它将以修改公式达到我们需求的波特率来计算出晶振。 

   最小晶振频率=波特率x384x2SMOD 

   这就是我们所需波特率的最小晶振频率,此频率能成倍增加达到我们需求的时钟频率。 

   例如:波特率为19.2KH2的最小晶振频率: 

   3.6864=19200x384x2(波特率为19.2K的SMOD为1) 

   11.0592=3.6864x3 

   其中TH1是由倍乘数(3)确定 

   TH1=256-3=253=0FDH 

   用来确定定时器的重装值,公式也可改为倍乘数的因子: 

   晶振频率=波特率x(256-TH1)x384x2SMOD 

   这是波特率为19.24K的晶振频率。 

   以上的例子可知,被乘数(3)是用来确定TH1: 

   TH1=256-3=253=0FDH 

   19.2K波特率的晶振为 

   11.0592=19200x(256-0FDH)x384x2(19.2k的SMOD为1) 

   其它值也会得出好的结果,但是11.0592MHZ是较高的晶振频率,也允许高波特率。


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客