添加异常飞控固件升级阻断数据数据发送引起的isp升级异常

This commit is contained in:
OPTOC
2025-10-28 14:57:41 +08:00
parent b53898c6b5
commit 4308315fa2
2 changed files with 7 additions and 2 deletions

View File

@@ -42,6 +42,9 @@ void sertrf_init(void)
//初始化环形buff //初始化环形buff
rb_init(&sertrf.data_handle_buffer, DATA_HANDLE_BUFFER_SIZE, sizeof(uint8_t)); rb_init(&sertrf.data_handle_buffer, DATA_HANDLE_BUFFER_SIZE, sizeof(uint8_t));
// 判断飞控是否进入 飞控固件强刷模式
sertrf.force_update = key_get_status();
//线程启动 //线程启动
sertrf_start(); sertrf_start();
@@ -102,7 +105,7 @@ void embedded_thread(void* arg)
{ {
uint8_t data[embedded_size ]; uint8_t data[embedded_size ];
// data[embedded_size] = '\0'; // data[embedded_size] = '\0';
if(!sertrf.stmisp_device.flag) if(!sertrf.stmisp_device.flag && !sertrf.force_update)
embedded_device_read(&sertrf.device, data, embedded_size,0); embedded_device_read(&sertrf.device, data, embedded_size,0);
Protocol_buf_decode(data, embedded_size); Protocol_buf_decode(data, embedded_size);
@@ -134,7 +137,7 @@ void pc_thread(void* arg)
sertrf.device.ble_one_connect_flag = 0; sertrf.device.ble_one_connect_flag = 0;
continue; continue;
} }
if(!sertrf.stmisp_device.flag) if(!sertrf.stmisp_device.flag && !sertrf.force_update)
embedded_device_write(&sertrf.device, data, pc_size); embedded_device_write(&sertrf.device, data, pc_size);
} }
// printf_chill_time(10,1000); // printf_chill_time(10,1000);

View File

@@ -77,6 +77,8 @@ typedef struct
// 记录错误信息 // 记录错误信息
protocol_status_e fc_protocol_status; //飞控连接端的协议状态 protocol_status_e fc_protocol_status; //飞控连接端的协议状态
// 判断是否使用强刷固件
uint8_t force_update;
}sertrf_t; }sertrf_t;
typedef struct __attribute__((packed)) typedef struct __attribute__((packed))