STM32 串口1USART1波特率不能设为600

2019-08-14 00:21发布

本帖最后由 吹水唔抹嘴 于 2017-9-13 15:17 编辑

    最近发现STM32 串口1USART1波特率不能设为600(因为有需要,所以设为600),串口2-5可以。从网上找的解决方法,https://wenku.baidu.com/view/63f6cc4667ec102de3bd891b.html。我外设晶振12M,8倍频。也就是要把APB2的分频系数改为2或以上RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV2;,但是将波特率设为600,依然失败。。。还有更好的办法吗?
[img]file:///C:UsersAdministratorAppDataRoamingTencentUsers1759398017QQWinTempRichOle{0ZG4%$94UKVWL@B5[}}~P1.png[/img][img]file:///C:UsersAdministratorAppDataRoamingTencentUsers1759398017QQWinTempRichOle~KXBL@K%P189Q%$V2W[_`1L.png[/img][img]file:///C:UsersAdministratorAppDataRoamingTencentUsers1759398017QQWinTempRichOleCRR82S`$FT@Q~K6]M1[A0@4.png[/img]

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
zsl666888
1楼-- · 2019-08-14 03:42
 精彩回答 2  元偷偷看……
huanghan
2楼-- · 2019-08-14 07:32
本帖最后由 huanghan 于 2017-9-13 19:59 编辑
zsl666888 发表于 2017-9-13 16:45
顶!!!

波特频率为600可以用啊,刚刚在STM32F103vb上验证了,
吹水唔抹嘴
3楼-- · 2019-08-14 07:37
huanghan 发表于 2017-9-13 19:57
波特频率为600可以用啊,刚刚在STM32F103vb上验证了,

能把你的初始化与发送函数,以及APB2时钟分频系数截图出来看看吗
huanghan
4楼-- · 2019-08-14 08:07
吹水唔抹嘴 发表于 2017-9-14 10:28
能把你的初始化与发送函数,以及APB2时钟分频系数截图出来看看吗

把系统时钟降低到36Mhz,APB2时钟配置36Mhz,我是这样配置的,你可以试试看,
吹水唔抹嘴
5楼-- · 2019-08-14 11:39
huanghan 发表于 2017-9-14 17:15
把系统时钟降低到36Mhz,APB2时钟配置36Mhz,我是这样配置的,你可以试试看,

系统时钟72M,APB2 2分频,即36M,这样配置,600还是不行。不允许用36m

一周热门 更多>