stm32支持波特小于1200问题

1、由于项目需求需要对stm32的波特率进行调整,能够支持300的波特率。

然后通过计算 


X 波特率计算器 Y是波特率   X的只能够是12位,最大值4096
300 =  72M/16*X
4800X = 72M
X=15000 
X=7500   Y = 600
X=3750  Y = 1200


300 = 50M/16*X      
X = 10416.666666666666666666666666667  Y = 300
X  = 5208.3333333333333333333333333333 

2、总结:

通过上面的计算,在50MHZ以上,要想设置600或者是300的波特率,根本是不可能。USARTDIV=是12位最大的数值是4096..

根据上面统计分析可以获得,如果把stm32串口时钟设置为12Mhz 时,USARTDIV=2500设个值便能够设置波特率设置为300。当然这里会影响

到其他串口的性能。



猜你喜欢

转载自blog.csdn.net/ljymoonlight/article/details/39205507
今日推荐