1223be9ca9478eb51692cfb3f8fb429ff97e709b
- 修复ACK丢失导致的死锁问题:修改onCsRelease()逻辑,只有在ESP32发送 有效v2请求帧时才清除s_txPending,避免dummy poll误清待发ACK - 优化缓冲区管理和信用机制:实现增量式flash缓冲区排空(drainFlashBufferOne), 避免一次性排空阻塞主循环;CREDIT计算同时考虑ISR DATA队列待处理数量 - 添加重复序列处理增强:当DATA仍在主循环排队时优先回复ACK(type=0x80), 避免ESP32长时间接收WAIT导致连接中断 - 修复缓冲区满时的数据包丢失:在handleLinkMessage中同步排空已写入槽位, 腾出空间后继续处理当前包,防止永久DUP-SEQ错误 - 优化主循环处理顺序:先处理ISR DATA队列并及时回复ACK,再进行flash写入, 减少ESP32超时重发导致的断续问题 - 增加FLASH写入错误检查:验证fmc_word_program返回状态,写入失败时及时 返回避免数据损坏
Description
No description provided
1.2 MiB
Languages
C
81.2%
C++
17.3%
Assembly
1.5%