飞思卡尔 UART 最高波特率的问题

举报
TopSemic嵌入式 发表于 2021/10/18 22:44:21 2021/10/18
3.8k+ 0 0
【摘要】 在ST的手册中可以看到有UART最高波特率的说明,比如对于STM32F051,在其官方手册中可以看到以下说明: , 其最高波特率为6 Mbit/s. 作为搞飞思卡尔的我也研究了一下它是如何计算出来的...

在ST的手册中可以看到有UART最高波特率的说明,比如对于STM32F051,在其官方手册中可以看到以下说明:
STM32F051
其最高波特率为6 Mbit/s.
作为搞飞思卡尔的我也研究了一下它是如何计算出来的:
stm32f051 波特率计算

这里写图片描述

这里写图片描述

这里写图片描述

最高的波特率是(48M*2)/16=6M

再来看看飞思卡尔UART最高的波特率,可惜的是在飞思卡尔手册中并没有直接说明最高可以达到多少,需要自己去计算。
先看KE系列:
这里写图片描述
对于KE02 20M 最高是:*1.25*Mbps(总线时钟最高为20M)
KE02 40M 最高也是1.25Mbps(总线时钟最高也是20M),
KE04和KE06,最高波特率是*1.5*Mbps(总线时钟最高为24M)

再看KL系列中比如KL03,只有一个LPUART
这里写图片描述

这里写图片描述
所以最高为48/4=12M bps,

再看KL02,也是只有一个UART,它的clock最高也是48M,所以UART 的波特率最高也是12 Mbps.

再看一下KL26,它有3个UART,一个是UART0,另外两个是UART1和UART2,UART0最高48M,所以波特率最高12Mbps,UART1和UART2的时钟为总线时钟,其计算公式为:
这里写图片描述
所以最高波特率为24M/(16)=1.5M

再看一下K系列中K60 100M,总共有6个,UART0和UART1的clock来自core clock,UART2到UART5的clock来自bus clock,
这里写图片描述
计算公式都为
这里写图片描述

所以:
这里写图片描述

对于UART0和UART1,其最高波特率为:6.25M bps
对于UART2到UART5,其最高波特率为:3.125M bps

总结:
计算uart的最高波特率首先要知道UART 的clock最高为多少,飞思卡尔不同的uart其时钟来源不同,另外要知道采样率的范围,对于时钟为bus clock的uart其采样率为16,lpuart范围是4到32.

文章来源: blog.csdn.net,作者:TopSemic嵌入式,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/wangwenxue1989/article/details/44262437

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。