FAE你好。我们的单板使用UART5遇到了问题,请帮忙确认。
我们的单板使用24MHz有源时钟,PLL倍频到144MHz,HCLK、APB1、APB2均工作在144MHz。
UART5配置如下:
运行状态下寄存器信息:
现在遇到的问题是实际发送的波特率不对:(发送的一个数据应该为0x02,发送的波特率高于设定值)
时钟异常可以排除,输入的24MHz以及同个环境下SDIO的32MHz输出均正常。USART1的波特率115200也正常。
请问下还有什么地方可以排查?谢谢。
FAE你好。我们的单板使用UART5遇到了问题,请帮忙确认。
我们的单板使用24MHz有源时钟,PLL倍频到144MHz,HCLK、APB1、APB2均工作在144MHz。
UART5配置如下:
运行状态下寄存器信息:
现在遇到的问题是实际发送的波特率不对:(发送的一个数据应该为0x02,发送的波特率高于设定值)
时钟异常可以排除,输入的24MHz以及同个环境下SDIO的32MHz输出均正常。USART1的波特率115200也正常。
请问下还有什么地方可以排查?谢谢。
试试把检验改为 无校验?
看着像是检验引起的问题。
我试过307的R1开发板使用115200波特率2~8串口都能DMA查询方式正常跑ModbusRTU测试。
串联一模式调试信息输出没测试。
同个单板,串口1试过无校验是OK的,有校验也会出问题。
看了下串口1和串口5,@38400波特率,在无校验位的情况下均正常,开始校验后发送异常接收正常,请FAE确认下是否有配置问题。谢谢。
弱弱的问一句,带校验的数据位宽不应该是9吗?
您好,如果定义了奇校验或偶校验,数据位长度要设置为9位,你可以将数据位长度设置为9位试一下,如下图
确实是数据长度配置的问题,通信已正常,谢谢。