0 Preface/Foreword
1 数据结构
1.1 func_bt_t
typedef struct{
u16 warning_status;
u8 disp_status;
u8 hid_menu_flag;
u8 hid_discon_flag;
u8 siri_kl_flag;
u8 user_kl_flag;
u8 tws_status;
u8 ble_status;
u8 bt_is_inited;
u8 rec_pause : 1;
u8 pp_2_unmute : 1;
u8 need_pairing : 1;
u8 tws_had_pair : 1;
// lcd display相关变量
u8 sta_update : 1;
} func_bt_t;
2 代码分析
2.1 func_bt_chk_off
AT(.text.func.bt)
void func_bt_chk_off(void)
{
printf("[OHZ]%s, %d, func_cb.sta = %d, f_bt.bt_is_inited = %d\n", __func__, __LINE__, func_cb.sta, f_bt.bt_is_inited);
if ((func_cb.sta != FUNC_BT) && (f_bt.bt_is_inited)) {
#if BT_PWRKEY_5S_DISCOVER_EN
bsp_bt_pwrkey5s_clr();
#endif
bt_disconnect(0);
bt_off();
func_bt_set_dac(1);
f_bt.bt_is_inited = 0;
}
}