今天农巡车摄像头到单片机到esp32到网页问题(数据传输)

发布时间:2026/7/3 11:09:08

今天农巡车摄像头到单片机到esp32到网页问题(数据传输) 1. HSE_VALUE配置错误最根本的问题问题串口发出来全是乱码换各种波特率都不对。根本原因stm32f4xx.h里HSE_VALUE被设置成了 2500000025MHz但实际板子上的晶振是 8MHz。这导致STM32所有跟时钟有关的计算全部偏差包括串口波特率、PWM频率、定时器周期、delay时间全部是错的我也是服了才发现。解决把HSE_VALUE改成 8000000。教训移植别人的工程或者用模板工程时第一件事要确认时钟配置是否和自己的硬件匹配。2. CH340没接VCC导致乱码问题用CH340接STM32的PA2因为PA2是接的我的esp32RX端我想看看是否单片机的数据传到了esp32串口助手收到的是乱码。原因CH340的VCC没有接模块没有基准电压接收到的电平信号无法正确识别。解决给CH340的VCC接STM32的3.3V。教训串口模块必须供电且和目标设备共地缺一不可。3. 串口不共地导致通信异常问题STM32和ESP32串口通信收到乱码。原因两个设备没有共地电平基准不同接收方无法正确判断高低电平。解决用一根杜邦线把STM32的GND和ESP32的GND连在一起。教训任何两个设备之间做串口通信GND必须连通这是最基础也最容易忘的一步。4. ESP32网页不显示数据问题网页一直显示等待巡检数据没有变化。排查过程先用串口监视器手动发假数据测试ESP32解析逻辑再用CH340直接接STM32验证STM32有没有在发数据发现STM32发出来是乱码定位到HSE_VALUE问题改完HSE_VALUE后数据正常ESP32成功收到并显示解决修复HSE_VALUE确保波特率一致共地。对于我来说这个思想是很重要的5. OpenMV串口引脚冲突PA9被编码器和串口同时占用问题编码器初始化用了PA9OpenMV串口也用了PA9后初始化的把前面的覆盖掉导致编码器左后轮失效。解决把OpenMV通信改到USART3PC10/PC11彻底避开编码器引脚。调试思路总结今天整个调试过程体现的核心思路是分段隔离验证先验证最小单元不跑整车其实主要是方便先单独让STM32发一条固定字符串验证串口本身能不能工作逐段排查STM32→CH340→串口助手一段一段确认不要一上来就接全套硬件区分硬件问题和软件问题乱码是硬件/配置问题没数据是逻辑问题两类问题排查方向完全不同改一个验一个我每次只改一个变量波特率、GND、VCC不要同时改多个否则不知道是哪个起了作用

相关新闻