fix: 0xC0 帧通过回调直接驱动网络上报

loop_uart_proto:
- 新增 lup_sensor_cb_t 回调类型 + lup_set_sensor_callback
- lup_process_frame 收到 0xC0 → 调用注册的回调推送数据

tcp_json_srv:
- json_sensor_callback: 检查 g_report_active → 解析 → TCP 发送
- tcp_json_srv_init: 注册回调

usart_biz:
- uart_srv: 0xC0 由回调直接 TCP 推送,BLE 连接时也转发 BLE
- 移除旧的 _report_flag 轮询路径

数据流: ISR → lup_process_frame(校验) → json_sensor_callback → WCHNET_SocketSend
This commit is contained in:
wangfq
2026-07-02 14:15:28 +08:00
parent 7c2927d836
commit 6acd788d13
4 changed files with 62 additions and 13 deletions

View File

@@ -236,4 +236,8 @@ void lup_frame_reset(void);
/* --- Process a complete frame (call from main loop context) --- */
void lup_process_frame(const uint8_t *pkg, uint16_t len);
/* --- Sensor report callback (called when valid 0xC0 frame received) --- */
typedef void (*lup_sensor_cb_t)(const uint8_t *pkg, uint16_t len);
void lup_set_sensor_callback(lup_sensor_cb_t cb);
#endif /* __LOOP_UART_PROTO_H__ */