AVRWARE++开发笔记10:晶振频率的选择

来源:互联网 发布:java 棋牌类游戏开发 编辑:程序博客网 时间:2024/06/05 02:22

    这篇日志说一下有关晶振频率的选择问题。

    先给出AVR串口波特率的计算公式:
UBRR0 = (F_CPU / (16 * u32_BaudRate) - 1)

    我们希望产生115200波特率,看选择不同晶振频率得到的结果。

    1、7.3728M
        UBRR0 = 7372800 / 1843200 - 1 = 3        取整后误差是0

    2、8.0000M
        
UBRR0 = 8000000 / 1843200 - 1 = 3.34     取整后误差是0.34 / 3.34 = 10%

    
3、11.0592M
        
UBRR0 = 11059200 / 1843200 - 1 = 5        取整后误差是0
 

    4、12.0000M
        
UBRR0 = 12000000 / 1843200 - 1 = 5.51     取整后误差是0.51 / 5.51 = 9%

    
5、14.7456M
        UBRR0 = 14745600 / 1843200 - 1 = 7         取整后误差是0

    由此可见晶振的频率取值非常重要,我现在板子上是12.0000M晶振,希望115200波特率,根本就调不出来。挖掘事情的真相,可以使人变得富有。

原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163 
 CSDN:http://blog.csdn.net/qingwufeiyang12346
 
原创粉丝点击