彩屏仓配对流程优化(3.11)
📎 原始文档:https://www.kdocs.cn/l/csE72I6ReY1W 彩屏仓配对流程优化(3.11)
修改:本修改针对无法在耳机充电或者休眠的状态实现三击配对的问题做出修改,修改后能正常在任何时刻发起配对。
但是由于982的串口的原因,如当时正在通信,恰好碰上三击配对要发送指令,有可能出现配对失败的问题,此情况出现概率较少。
- app_commo.c
- void app_common_evt_512ms(void)前添加函数定义:
//三级按键配对处理函数
extern void app_close_deal_ear_full(u8 chl);
void key_tws_pair_det(void)
{
u8 chl = 0;
if(b_evt_pair) {
if(box_into_boat_mode){
return;
}
#if TCFG_HALL_ENABLE
if(!hall_status) {
sys_info.key_evt_pair_cnt++;
app_chargebox_api_send_power_close(0);
app_chargebox_api_send_power_close(1);
if(sys_info.key_evt_pair_cnt > 5) {
b_evt_pair = 0;
if(app_chargebox_api_send_pair()){
chargebox_api_send_tws_mac();
}
sys_info.key_evt_pair_cnt = 0;
}
} else {
b_evt_pair = 0;
if(app_chargebox_api_send_pair()){
chargebox_api_send_tws_mac();
}
sys_info.key_evt_pair_cnt = 0;
}
#endif
for(chl = 0; chl < 2; chl++) {
if (ear_info[chl].charge == 0) {
app_close_deal_ear_full(chl);
#if TCFG_HALL_ENABLE
vout_inserdet_en(chl, 0);
#endif
}
}
}
}
- 在void app_common_evt_512ms(void)最后调用key_tws_pair_det(void)

- 修改void app_common_evt_key(void) 如图:修改三击处理部分程序
if(b_evt_key_triple){
log_putchar('s');
b_evt_pair = 1;
b_evt_key_triple = 0;
#if TCFG_UI_ENABLE
ui_run_status(UI_STATTUS_SWITCH_MAC);
#endif
}

- app_main.c void sys_init(void) 里面添加一下标志初始化:
b_evt_pair = 0;
sys_info.key_evt_pair_cnt = 0;

app_var.h
SYS_INFO结构体里面添加变量u8 key_evt_pair_cnt:

添加以下标志位

event.h 添加以下宏定义标志位

chargebox_comm.c 修改app_chargebox_api_send_pair(void) 为bool类型

chargebox_comm.h 声明也修改成bool类型

uart_send.h 声明也修改成bool类型

修改耳机程序
