You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LPC43xx与ESP32 UART通信故障排查:配置缺失问题

问题:LPC43xx与ESP32 UART通信无响应

背景信息

  • 硬件接线已确认正确(RX与TX交叉连接),ESP32之间的UART通信正常,但LPC43xx端无法接收数据
  • LPC43xx代码基于libopencm3开发:
    • 使用引脚7_1(对应U2_TXD,功能6)、7_2(对应U2_RXD,功能6),引脚功能参考UM10503 datasheet
    • GPIO关联配置正确:GPIO3_9对应7_1,GPIO3_10对应7_2,方向配置无误
    • 系统PLL1时钟为204MHz,UART仅在此代码块中初始化,波特率按LPC USART章节公式精确计算为3MHz
    • 测试代码采用while循环实现,后续计划迁移至SCT定时器

故障现象

  • 无编译或运行报错,但调用uart_rx_data_ready始终返回UART_RX_NO_DATA
  • 人为中断TX/RX线路时,ESP32端代码有响应,但LPC43xx端完全无任何反馈(曾添加LED提示分支验证)
  • 初步判断UART未正常工作,缺少关键配置项

问题解决(更新)

  • 按@romkey建议降低波特率:将波特率调整为281250后,通信恢复正常
  • 实现3MHz波特率通信:在引脚SCU配置中添加SCU_CONF_EHS_FAST参数后,成功稳定运行3MHz波特率
  • 发现核心配置遗漏:固件中CLK_M4_UART2寄存器被设置为0,导致UART2时钟被禁用,这是问题的主要原因之一

内容的提问来源于stack exchange,提问作者Johannes Hevrøy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 17:37:00