查看: 2174|回复: 3

[其他] NXP微处理器小数波特率设置

[复制链接]
  • TA的每日心情
    开心
    2017-7-13 13:55
  • 签到天数: 193 天

    连续签到: 1 天

    [LV.7]常住居民III

    2

    主题

    1276

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    3232
    最后登录
    1970-1-1
    发表于 2016-3-15 13:17:07 | 显示全部楼层 |阅读模式

    对于波特率的计算,想必大家都非常清楚,在51时代,我们常用11.0592MHz晶振或其整数倍的晶振来实现精确的波特率。但是随着ARM的出现,以及ARM外设的丰富、倍频的应用,想获取精确的波特率好像不容易实现了,特别是在需要使用USB的情况下,我们必须选择能够参数480MHz频率的晶振,那么12MHz晶振就成为我们不二的选择,波特率计算公式:


    BPS = PCLK / (16×(256xUnDLM+UnDLL))

          通过以上的计算公式,我们不难发现,要想获取精确的波特率是不可能的,虽然在速度不高的情况下,我们可以取近似值也可以进行正常的串口通信,但是如果要在波特率特别高的情况下,我们还用这种方法是不能正常通信的。那么怎么来解决这个问题呢?

           其实厂商在设计芯片的时候已经为我们想到了,在选择波特率时候,当实际波特率与目标波特率之间存在的误差在1.1%范围内是可以正常通信的。所以,我们只要能够用一个寄存器来实现波特率的误差调节,使其误差在允许的范围以内就可以了。为实现这一目标,NXP设计了一个叫做小数分频的寄存器FDR。
    我知道答案 目前已有3人回答
    回复

    使用道具 举报

    该用户从未签到

    40

    主题

    500

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1089
    最后登录
    2025-1-13
    发表于 2016-3-16 09:39:01 | 显示全部楼层
    学习了,谢谢!!!
    xingxiny75@gmail.com.png
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-5-3 11:19
  • 签到天数: 10 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    50

    主题

    1万

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    14090
    最后登录
    2024-4-19
    发表于 2016-3-16 09:25:19 | 显示全部楼层
    这个知识点学习了。 9.png

    8.png

    7.png

    6.png

    5.png

    4.png

    3.png

    2.png

    1.png

    0.png

    该会员没有填写今日想说内容.
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    开心
    2020-1-12 00:23
  • 签到天数: 745 天

    连续签到: 1 天

    [LV.9]以坛为家II

    27

    主题

    1万

    帖子

    26

    金牌会员

    Rank: 6Rank: 6

    积分
    6868
    最后登录
    2020-7-15
    发表于 2016-3-15 14:22:50 | 显示全部楼层
    这个知识点学习了。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-23 03:27 , Processed in 0.123012 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表