docs: 补充MUX丢包修复记录与回归结果
This commit is contained in:
+22
@@ -382,6 +382,28 @@ AT+RESET\r\n
|
||||
1. `AT+SAVE\r\n`
|
||||
2. `AT+RESET\r\n`
|
||||
|
||||
### 12.3 MUX 模式数据口有丢包
|
||||
|
||||
若 `MUX=1` 下出现“主机侧已发送,但设备对端收到数量明显偏少”的现象,优先按以下顺序检查:
|
||||
|
||||
1. 固件版本是否已经包含 `2026-04-18` 的 MUX 丢包修复。
|
||||
2. MUX 帧是否完整,尤其是:
|
||||
- `SYNC=0x7E`
|
||||
- `LEN_H/LEN_L`
|
||||
- `SRCID`
|
||||
- `DSTMASK`
|
||||
- `TAIL=0x7F`
|
||||
3. 上位机发送方式是否把一帧拆成多个不连续小片段,或在帧间插入无效字节。
|
||||
4. TCP 对端是否出现拥塞、窗口缩小或应用层不及时取数,导致发送路径出现背压。
|
||||
5. RTT 中是否存在链路错误、发送失败或持续重连现象。
|
||||
|
||||
当前版本的修复点如下:
|
||||
|
||||
1. MUX 解析器改为在整帧完整到齐前不推进 UART RX ring 读指针,避免半帧被破坏性消费。
|
||||
2. TCP 发送路径与 UART 写入路径不再把背压和短写静默视为成功,便于及早暴露链路承载问题。
|
||||
|
||||
现场回归结果:在修复后的固件中,MUX 模式持续发送 `670` 包,接收端 `670` 包全部到达,`0` 丢包。
|
||||
|
||||
## 13. 相关文件
|
||||
|
||||
- AT 命令实现:[config.c](/D:/code/STM32Project/TCP2UART/App/config.c)
|
||||
|
||||
Reference in New Issue
Block a user