串口通信发送后无响应|极简排查步骤(实战总结)

直接按顺序排查,90% 问题都能快速定位,全是实战踩坑总结:

  1. 先看串口是否被独占(只允许一个程序打开)

    关闭所有串口调试助手、其他上位机、虚拟机、串口模拟器,只留你的程序运行。

    → 串口被占用,发的数据根本出不去。

  2. 检查发送的【数据总长度】对不对

    对比协议格式,数一下字节数:

    有没有少字段、缺字节、多字节

    帧头、功能码、长度、数据、CRC、帧尾必须完整。

    → 长度不对,MCU 直接解析失败,不回复。

  3. 检查【数据长度字段】是否正确占位

    即使没有数据(空包),长度字段必须写 0x00不能省略

    → 少了长度字段,MCU 帧结构错位,直接丢弃。

  4. 确认发送模式是【纯十六进制 HEX 模式】

    绝对不能发字符串、ASCII、中文、空格,必须发纯十六进制字节。

    → 模式错了,MCU 收到全是乱码,不回复。

  5. 核对 CRC16 校验是否正确(必须用 MODBUS 标准)

    用标准 CRC16/MODBUS 算法,低字节在前,高字节在后。

    校验范围:帧头 ~ 数据域,不包含帧尾

    → CRC 错 = 数据包无效,MCU 直接扔掉。

  6. 检查串口参数是否完全一致

    波特率、数据位、停止位、校验位,必须和 MCU 一模一样。

    → 参数不对,收发全是乱码。

  7. 检查硬件接线

    TX 接 RX,RX 接 TX,GND 共地,不要接反。

    → 接线错,发得再对也收不到。


一句话总结

先看串口被没被占 → 再看数据包长度对不对 → 再看空数据有没有占位 → HEX 模式 + 正确 CRC,必通!

相关推荐
liulian091628 分钟前
Flutter 三方库 flutter_local_auth 的鸿蒙化适配指南
flutter·华为·学习方法·harmonyos
SuperHeroWu735 分钟前
【鸿蒙基础入门】概念理解和学习方法论说明
前端·学习·华为·开源·harmonyos·鸿蒙·移动端
亘元有量-流量变现1 小时前
抓住鸿蒙流量红利!2026华为应用商店ASO优化全解
华为·harmonyos·aso优化
特立独行的猫a2 小时前
使用 vcpkg 为OpenHarmony(鸿蒙PC)构建 OpenSSH 命令行工具
harmonyos·openharmony·命令行·openssh·vcpkg·鸿蒙pc
音视频牛哥2 小时前
纯血鸿蒙(HarmonyOS NEXT)下,如何实现低延迟RTSP、RTMP播放器音视频解码?
华为·音视频·harmonyos·鸿蒙rtmp播放器·鸿蒙rtsp播放器·harmonyos rtsp·鸿蒙next播放器
特立独行的猫a3 小时前
OpenSSH 介绍及使用Lycium框架移植到鸿蒙 PC(OpenHarmony)平台的实践总结
harmonyos·openssh·鸿蒙pc·lycium_plusplus·三分库移植
轻口味3 小时前
HarmonyOS 6 轻相机应用开发2:贴纸效果实现
音视频·harmonyos·鸿蒙·播放器
HwJack203 小时前
跨模块资源共享的破局之道:HarmonyOS HSP 资源访问“避坑与升华”指南
华为·harmonyos
liulian09164 小时前
【Flutter for OpenHarmony】原生卡片 Widget 集成实战:从零构建待办清单桌面组件
flutter·华为·学习方法·harmonyos
想你依然心痛4 小时前
HarmonyOS 6游戏开发实战:基于悬浮导航与沉浸光感的“光影迷宫“解谜游戏
游戏·华为·harmonyos·悬浮导航·沉浸光感