主機給副機傳送消息

藍牙對耳在一些配對提示音上是對耳播報,但是有些提示音僅有主耳進行播報,那麼如何讓僅主耳播報的提示音變成對耳同時播報呢?

第一步:我們需要添加一個按鍵事件,這個按鍵事件會通過藍牙傳遞給副耳,副耳會接收到這個消息,之後再進行下一步:

bt_tws_user_key(0x16);//括號內的數字即爲傳遞的參數,上面是0x16

第二步:定義一個系統的消息,去處理第一步傳送過來的下一步動作,Bsp_key.h中定義傳遞的消息:

#define EVT_BT_PARING           0x7d4 //值需要在規定的範圍內

第三步:獲取第一步傳遞過來的參數,然後執行第二步創建的消息,bsp_bt.c中bt_emit_notice()下添加對應的操作,參數相等的時候即進行對應的動作:

	case BT_NOTICE_TWS_USER_KEY:
		if (param == 0x16) {//這裏的參數爲第一步定義的
			msg_enqueue(EVT_BT_PARING);//第二步定義的消息
		}
		break

第四步:實現EVT_BT_PARING,在fun.c中func_message()下

	case EVT_BT_DISCONNECT://同時播報連接斷開提示音	
	//需要實現的功能
	break;

這裏需要注意的是,如果操作的對象爲提示音,那還需要添加延時的動作,使得對耳的提示音儘可能的同步起來,延時函數如下:

bt_tws_sync_run();//括號內的參數爲延時的時間,*50ms

還不清楚的小夥伴可以添加我的個人微信 lqy—1997 (中間是三個英文的槓)進行交流。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章