耳机软件开机主要的两种方式:一个按键(MFB唤醒)开机(现在TWS一般都不带开机键);一个充电口(charge唤醒)断5V开机。
这里只简单阐述SDK默认充电断5V开机:
耳机唤醒复位都会跑到app_init()函数里面,再根据具体的开机原因及耳机状态决定是否触发app_ibrt_enter_limited_mode()/app_ibrt_ui_event_entry(event)接口;
详细代码断如下:
if(is_charging_poweron==false)
{
if(IBRT_UNKNOW == nvrecord_env->ibrt_mode.mode)
{
TRACE(0,"ibrt_ui_log:power on unknow mode");
app_ibrt_enter_limited_mode();
}
else
{
TRACE(1,"ibrt_ui_log:power on %d fetch out", nvrecord_env>ibrt_mode.mode);
app_ibrt_ui_event_entry(IBRT_FETCH_OUT_