本帖最后由 13524604375 于 2019-3-14 19:54 编辑
STM32F101R6B 这颗料在我们产品中URAT1一直都是使用波特率最高57600,没遇到问题。
今天有个案子需要用到115200波特率,我用该波特率初始化串口后,用多个串口调试软件收到的都是乱码,只要把该串口波特率降低为57600,软件收到的数据就正常了。
这段代码是驱动在计算BRR的整数和分数。
我也检查了驱动的公式,并手动计算了一遍57600和115200波特率BRR的整数和分数,都是OK的。
我用计算器依靠驱动里的公式算出来115200是 19.53125。
我用示波器观察了我司产品配置为115200时的bit宽度,5bit宽100μs,这也与115200波特率的位宽不符合。
请帮我分析一下问题可能出在哪里?
我用的8M晶振,检查过HSE,设置没问题 。
|