STM32
直播中

费加罗

9年用户 898经验值
私信 关注
[问答]

STM32F302的PB8作为UART3的RXD连接串口模块遇到的问题求解

STM32F302的PB8作为UART3的RXD连接串口模块。现在问题是:
1、DEBUG模式下,UART3能正常接收。
2、正常运行模式下,UART3无法接收。
3、上电后手动复位,UART3可以正常接收。
这是什么原因啊,请指教

回帖(2)

孙喆

2024-4-2 11:15:42
楼主在串口的接收脚上有没有加上拉电阻,如果没有,试试看有没有效果。
举报

王璐

2024-4-2 16:50:14
有可能是由于时钟配置不正确导致的问题。在DEBUG模式下,通常会打开调试接口的时钟。但在正常运行模式下,需要手动配置时钟使能。

可以尝试以下解决方案:

1. 确保在代码中正确配置UART3的时钟源和分频器。具体配置方法请参考芯片数据手册和HAL库文档。

2. 检查其他相关的时钟配置,例如系统时钟和GPIO时钟是否正确配置。

3. 确保使用正确的波特率、数据位、停止位和校验位配置串口模块。

4. 检查是否存在冲突的中断,特别是与串口相关的中断。

5. 在上电后手动复位时可以正常接收,可能是因为复位后重新配置了时钟,导致串口能正常工作。可以尝试在代码中添加软件复位或芯片复位。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分