<menu id="6c4oc"><tt id="6c4oc"></tt></menu>
  • 新聞中心

    EEPW首頁 > 汽車電子 > 設計應用 > 藍牙車載產品的兼容性設計

    藍牙車載產品的兼容性設計

    —— Compatibility Design of Bluetooth Automobile Products
    作者:馬建輝 單鐵城 山東省科學院自動化研究所山東省汽車電子重點實驗室 馬共立 哈爾濱威克科技時間:2010-05-07來源:電子產品世界收藏

      引言

    本文引用地址:http://www.me-unplugged.com/article/108773.htm

      技術問世10余年,得到了廣泛應用,其中部分原因在于SIG組織為各種應用以Profile的形式定義了應用協議,這樣設備之間的互操作便有章可循,但即使如此,藍牙設備之間的互操作性又稱兼容性問題仍存在于幾乎所有藍牙應用中。筆者歷時兩年時間為某合資汽車廠商開發了一款藍牙車載產品,實現了免提通話、雙重呼叫管理、電話本自動下載與手動下載、流媒體音樂播放及遠程控制功能,期間測試了近100部手機和音樂播放器,遇到并解決了各種兼容性問題。結合產品開發過程中測試并解決兼容性問題的經驗,本文對兼容性問題出現的原因進行了分析,大致有以下三個方面的原因:具體應用本身定義不嚴格、應用上下文差異、引入協議帶來的兼容性。以下就這三個方面進行詳細分析并結合具體實例,說明其解決方法。

      應用定義不嚴格

      藍牙SIG組織定義了Profile,對各種功能的實現方式做了規范,并且定義了必選功能和可選功能,設備廠商可以對可選項有選擇得實現,這樣便會造成一定的差異。而且Profile并沒有對應用本身做嚴格定義,只是定義了功能,而應用是功能的集合體,Profile并沒有定義怎么由多個功能組合實現某個應用,這樣藍牙設備廠商在實現某一應用時便有了差異性。雙重呼叫是車載設備免提通話應用中兼容性最多的一種應用,下面分析下該應用出現兼容性問題的原因并舉例剖析其解決方法。

      對于免提通話而言,比較重要的幾個功能是呼叫建立提示CALL_SETUP、呼叫保持CALL_HELD、呼叫結果CALL、呼叫信息CLCC,手機在呼叫狀態產生變化時實時向免提設備端傳送這些提示消息,免提設備端便可以與手機的呼叫狀態保持一致,在免提設備端控制呼叫才符合預期。其中CALL_SETUP和CALL是必選功能,但對于雙重呼叫而言非常重要的CALL_HELD和CLCC卻是可選功能,雙重呼叫在免提剖面HFP(Hands-Free Profile)中定義為Three way calling,這也是一個可選功能。這樣在支持雙重呼叫時,各種手機便以自己的方式來支持或者部分支持,這樣便來了雙重呼叫的兼容性問題。下面以第二個呼叫為呼出為例剖析解決方法。

      當撥打第二個電話時,手機會發送CALL_SETUP=2消息,表示正在呼出,結果有對方拒接、對方接聽、未撥通這么幾種情況。顯然判斷出呼出結果是至關重要的,我們通過對手機進行測試然后根據其表現特性進行分類,將手機分為如下幾類:A-支持CALL_HELD不支持CLCC、B-支持CALL_HELD和CLCC、C-支持CLCC不支持CALL_HELD而且手機在Three way calling下不支持CALL、D-支持CLCC不支持CALL_HELD但手機在Three way calling下支持CALL、E-不支持CALL_HELD也不支持CLCC但手機在Three way calling下支持CALL、F-不支持CALL_HELD也不支持CLCC而且手機Three way calling下不支持CALL。

      對于支持CALL_HELD消息的AB類手機而言,我們可以通過CALL_HELD來判斷呼出結果,CALL_HELD=1表示對方接聽,CALL_HELD=0則表示對方拒接或未撥通;對于支持CLCC的CD類手機而言,如果手機在Three way calling下支持CALL,CALL=1則表示對方接聽,如果沒有CALL消息說明對方拒接或未撥通,這時需要在CALL_SETUP=0時讀取手機當前的呼叫信息,然后根據該呼叫信息更新免提設備端的呼叫狀態;對于不支持CLCC和CALL_HELD的EF類手機而言,如果手機在Three way calling下支持CALL,CALL=1則表示對方接聽,否則在CALL_SETUP=0時默認將呼叫結果處理為對方拒接,即這個時候無法判斷呼出結果。

      應用上下文差異

      藍牙是個對時間特性要求很嚴格的應用,每種藍牙行為及其每個階段必須在相應時間內完成,否則可能造成失敗或者長時間無法響應。應用的上下文是指在某個藍牙行為完成后,下面將要進行什么樣的藍牙行為,它是由藍牙設備的應用決定的,同類產品在應用上的差異便會帶來應用上下文上的差異,這樣便可能會帶來兼容性問題。比如在藍牙車載設備與藍牙手機互操作完成配對后,當車載設備實現配對后的自動連接時,便由于手機在配對完成后的處理有所不同而遇到了兼容性問題。車載設備實現了配對后的自動連接功能,在配對完成后車載設備讀取外部設備的SDP進行服務查詢以判斷外部設備類型(包括免提、音頻流、免提+音頻流三種類型)然后自動連接其免提或音頻流服務,結果造成部分手機讀取SDP失敗、部分手機自動連接失敗、部分手機處于長時間無法響應的狀態。


    上一頁 1 2 3 下一頁

    關鍵詞: 汽車電子 藍牙

    評論


    相關推薦

    技術專區

    關閉
    熟妇女的欲乱
    <menu id="6c4oc"><tt id="6c4oc"></tt></menu>