本帖最后由 吹水唔抹嘴 于 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]
波特频率为600可以用啊,刚刚在STM32F103vb上验证了,
能把你的初始化与发送函数,以及APB2时钟分频系数截图出来看看吗
把系统时钟降低到36Mhz,APB2时钟配置36Mhz,我是这样配置的,你可以试试看,
系统时钟72M,APB2 2分频,即36M,这样配置,600还是不行。不允许用36m
一周热门 更多>