新四季網

電子設備的整體識別的製作方法

2023-07-06 14:27:01

電子設備的整體識別的製作方法
【專利摘要】本發明公開一種整體識別過程,該識別過程可以有利於附件(102)與主機設備(100)之間的可靠互操作,具體地講是在附件(102)包括多個部件和/或多個通信接口的情況下。在識別過程期間,附件(102)可以提供關於其能夠用來與主機通信的每個通信接口的信息,以及關於附件(102)具有的可用於與主機設備(100)進行交互的各種部件的信息。在後續互操作期間,主機設備(100)可以使用識別信息來確定對從附件(102)接收到的輸入的響應和/或確定將用於向附件(102)遞送信息的接口。
【專利說明】電子設備的整體識別
[0001] 相關申請的交叉引用
[0002] 本申請要求2012年6月8日提交的名稱為"Holistic Identification of an Electronic Device"的美國臨時申請61/657, 582,和名稱為"Holistic Identification of an Electronic Device"的美國非臨時申請13/685, 522的權益,出於所有目的該些申請的 全部公開內容W引用方式併入本文。

【背景技術】
[0003] 本公開總體涉及電子設備之間的數據通信,並且更具體地,涉及一個設備向另一 個設備的整體識別。
[0004] 諸如智慧型電話、平板電腦、媒體播放器等可攜式電子設備已變得無處不在。已創造 各種附件來與可攜式電子設備進行互操作,W擴展該些電子設備的功能性和/或增強用戶 體驗。附件的實例包括充電器、揚聲器底座、提供使用車輛控制臺來控制可攜式設備的選項 的車載底座、健身器材、健康狀態監測附件(例如,也率儀、血壓儀或血糖儀)等。可W將附 件設計成與在形狀因數和能力(例如,處理能力;固件版本;電池壽命;存在或不存在攝像 頭、麥克風或其它部件)方面不同的多種可攜式電子設備進行互操作。除"內部"部件的可 變性之外,附件還可W結合多個通信接口,W用於與可攜式設備進行通信的目的。
[0005] 為了向操作結合有附件的可攜式設備的用戶提供可靠地愉快體驗,可能期望的 是,驗證附件是否將與特定可攜式設備一起正確地操作。然而,可能附件的顯著多樣性W及 特定附件可W連接至其上的不同可攜式設備的數量和可能通信接口的數量使得該種驗證 變得困難。


【發明內容】

[0006] 本發明的某些實施例提供一種整體識別過程,該識別過程可W有利於附件與主機 設備(包括可攜式設備)之間的可靠互操作,具體地講是在附件包括多個部件和/或多個 通信接口的情況下。該過程可W執行為當附件經由第一接口在第一通信信道上連接至主機 時初始化通信的一部分。此時,附件可W提供識別信息,該識別信息包括關於附件能夠用來 與主機進行通信的每個通信接口(例如,USB、Wi-Fi、藍牙、UART W及任何其它接口)的信 息。附件隨後可經由其任一接口建立到主機的第二(或第H等)連接,並且主機可認識到 第二連接是到同一個附件的。基於此,主機在通過第二連接與附件通信時可W使用初始識 別信息。當附件已建立到主機的多個連接時,主機可W選擇用於特定通信的最佳路由。另 夕F,如果一個連接斷開,那麼主機可W繼續與附件進行通信,只要至少一個連接可用。可W 使得與各種接口通信的路由和重新路由對用戶透明。
[0007] 在一些實施例中,由附件提供的識別信息還可W包括關於附件具有的可用於與主 機設備進行交互的各種部件的信息。例如,附件可W提供關於關於其一個或多個顯示設備、 揚聲器、和/或用戶可操作輸入設備(例如,鍵盤、小鍵盤、按鈕、撥號盤、觸控螢幕、觸控板等) 的信息。附件還可W基於共同目的或共同物理位置來定義部件"束"或部件組群。主機設備 可W使用該信息通過W下方式來定製其與附件的交互:例如通過將特定信息路由發送到特 定附件部件、或通過根據哪個部件是輸入信號源而對來自附件的輸入信號做出不同響應。
[0008] 在互操作開始時獲得對附件的所有可用通信接口和/或部件的完整識別可W增 強主機設備與附件W協調方式進行互操作的能力。
[0009] 本發明的某些方面涉及向主機設備識別附件設備的方法。附件可W利用第一通信 接口建立與主機設備的通信信道,並且經由該通信信道向主機發送識別信息。識別信息可 W包括附件能夠用來與主機通信的至少一個其它通信接口的接口描述符。識別信息還可W 包括其它信息,諸如附件的多個部件(包括例如,音頻輸出部件、視頻輸出部件和/或用戶 輸入部件)中的每一個的部件描述符。在一些情況下,部件描述符可W包括識別部件待與 其相關聯的特定功能性的目的描述符。識別信息還可W包括例如基於具有共同的位置和/ 或共同的相關聯功能性或目的,使一些(或所有)部件相關聯成束的束描述符。
[0010] 本發明的某些方面涉及一種與附件進行通信的主機設備。該主機設備可W使用第 一通信接口、經由第一通信信道來檢測到附件的連接。經由該信道,主機可W接收來自附件 的識別信息。識別信息可W包括:接口描述符,其提供關於附件也能夠用來與主機通信的第 二通信接口的信息;W及另一個接口描述符,其提供關於第一通信接口的信息。如果主機接 受了識別信息,那麼主機可W使用第一通信接口和第二通信接口來與附件進行通信。例如, 主機設備可W確定將要發送給附件特定數據,並且可W選擇第一通信接口和第二通信接口 中的一者來發送該數據。又如,主機設備可W經由通信接口中的一者來接收來自附件的輸 入信號。基於輸入信號並且基於使用了哪一個通信接口來遞送輸入信號,主機可W確定將 要採取的動作。
[0011] 本發明的某些方面涉及一種與一個或多個附件進行通信的主機設備。該主機可W 使用第一通信接口、經由第一通信信道來檢測到第一附件的連接。經由該信道,主機可W接 收來自第一附件的識別信息。該信息可W包括第一附件能夠用來與主機通信的多個通信接 口的描述符。當第一附件保持連接時,主機設備可經由第二通信接口檢測連接請求並且可 W確定該連接請求是否由第一附件生成。如果連接請求是由第一附件生成的,那麼主機可 W使用第一通信接口和第二通信接口兩者來與第一附件進行通信。如果不是,那麼主機可 W使用第二通信接口來與第二附件進行通信,該第二附件可W提供其自身的識別信息。在 一些情況下,可能存在對在任何給定時間能夠連接至主機的附件的數量的限制。
[0012] 本發明的某些方面涉及具有多個部件(包括例如,音頻部件、視頻部件和/或用戶 輸入部件)的附件設備。附件設備也可W具有可操作為與主機設備通信的多個通信接口。 附件設備中的識別邏輯可W經由通信接口中的一者向主機設備提供識別信息。識別信息可 W包括每個部件的描述符和每個通信接口的描述符。該些描述符可W提供關於特定部件的 配置和/或能力(例如,適用的信號格式、尺寸、預期用途等)的信息。識別信息還可W包 括束描述符,該束描述符使兩個或更多個部件彼此相關聯從而定義一個束;該束描述符還 可W使附件的至少一個通信接口與該束相關聯。
[0013] 本發明的某些方面涉及具有能夠執行多種不同功能的執行邏輯和可操作為與附 件通信的多個通信接口的主機設備。控制和路由邏輯可W禪接在執行邏輯與通信接口之 間,並且控制和路由邏輯可W被配置為可選擇地將信息從執行邏輯路由發送至一個或另一 個主機通信接口。主機設備中的識別邏輯可W被配置為經由一個主機通信接口從附件設備 接收包含識別信息的識別消息。該信息可W包括附件的部件和/或通信接口的描述符。針 對從執行邏輯到一個主機通信接口的特定信息所選擇的路由路徑可W部分地基於識別信 息來確定,並且主機設備響應於從附件接收到的輸入信號而將要採取的動作可W部分地基 於是哪一個附件通信接口發送的輸入信號來確定。
[0014] W下【具體實施方式】連同附圖將提供對本發明的實質和優點的更好理解。

【專利附圖】

【附圖說明】
[0015] 圖1示出根據本發明的實施例的主機設備和附件。
[0016] 圖2是根據本發明的實施例的包括主機設備和附件的系統的簡化框圖。
[0017] 圖3示出根據本發明的實施例的可W實施的消息格式。
[0018] 圖4是示出根據本發明的實施例的識別消息的表。
[0019] 圖5是根據本發明的實施例的列出可W針對識別消息進行定義的參數的表。
[0020] 圖6是示出根據本發明的實施例的音頻部件描述符欄位的子欄位的表。
[0021] 圖7是示出根據本發明的實施例的視頻部件描述符欄位的子欄位的表。
[0022] 圖8是示出根據本發明的實施例的輸入部件描述符欄位的子欄位的表
[0023] 圖9是示出根據本發明的實施例的束描述符欄位的子欄位的表。
[0024] 圖10是根據本發明的實施例的可W在主機設備中實現的用於協商識別的過程的 流程圖。
[0025] 圖11是根據本發明的實施例的可W在附件中實現的識別過程的流程圖。
[0026] 圖12是根據本發明的實施例的用於主機設備的可W管理到一個或多個附件的多 個連接的過程的流程圖。
[0027] 圖13是根據本發明的實施例的可由主機設備用來處理從附件接收到的輸入信號 的過程的流程圖。
[0028] 圖14是根據本發明的實施例的可由主機設備用來處理從附件接收到的輸入信號 的過程的流程圖。

【具體實施方式】
[0029] 本發明的某些實施例提供一種整體識別過程,該整體識別過程可W有利於附件與 主機設備(包括可攜式設備)之間的可靠互操作,具體地講是在附件包括多個部件和/或 多個通信接口的情況下。該過程可W執行為當附件經由第一接口在第一通信信道上連接至 主機時初始化通信的一部分。此時,附件可W提供識別信息,該識別信息包括關於附件能夠 用來與主機通信的每個通信接口(例如,USB、Wi-Fi、藍牙、UART W及任何其它接口)的信 息。附件隨後可W經由其任一接口建立到主機的第二(或第H等)連接,並且主機可W認 識到第二連接是到同一個附件的。基於此,主機在通過第二連接與附件通信時可W使用初 始識別信息。當附件已建立到主機的多個連接時,主機可W選擇用於特定通信的最佳路由。 另外,如果一個連接斷開,那麼主機可W繼續與附件進行通信,只要至少一個連接可用。可 W使得與各種接口通信的路由和重新路由對用戶透明。
[0030] 在一些實施例中,由附件提供的識別信息還可W包括關於附件具有的可用於與主 機設備進行交互的各種部件的信息。例如,附件可W提供關於關於其一個或多個顯示設備、 揚聲器、和/或用戶可操作輸入設備(例如,鍵盤、小鍵盤、按鈕、撥號盤、觸控螢幕、觸控板等) 的信息。附件還可W基於共同目的或共同物理位置來定義部件"束"或部件組群。主機設備 可W使用該信息通過W下方式來定製其與附件的交互:例如通過將特定信息路由發送到特 定附件部件、或通過根據哪個部件是輸入信號源而對來自附件的輸入信號做出不同響應。
[0031] 在互操作開始時獲得對附件的所有可用通信接口和/或部件的完整識別可增強 主機設備與附件W協調方式進行互操作的能力。
[0032] 圖1示出根據本發明的實施例的主機設備100和附件102。
[0033] 主機設備100可W是例如手持設備,諸如媒體播放器、智慧型電話或個人數字助理; 平板電腦;膝上型計算機;臺式計算機;或能夠與附件設備進行通信的任何其它電子設備。 在一些實施例中,主機設備100可W是可攜式設備(可攜式設備是指容易由用戶從一個地 方攜帶到另一個地方的設備),但該不是必需的。在所示實例中,主機設備100是平板電腦, 該平板電腦具有由邊框106包圍的顯示區域104,和控制按鈕108。插座連接器110提供在 主機設備100的按鈕處(例如,凹進到外殼中),W允許附件物理地連接至主機設備100。
[0034] 附件102可W是能夠與主機設備100進行交互的任何附件,諸如揚聲器底座或揚 聲器系統、媒體控制臺、汽車音響主機等。在所示實例中,附件102是多部件、多功能設備, 諸如機動車輛中提供的娛樂和信息系統。音響主機112協調各種部件的操作。該些部件可 W包括;例如前置揚聲器114 ;後置揚聲器116 ;帶有顯示器120和輸入控制項122的前控制 臺單元118 ;帶有其自身的顯示器126和輸入控制項128的後控制臺單元124 ; W及安裝在轉 向盤132中的另外的控制項130。附件102可W對多種服務提供支持。例如,附件102可W在 前顯示器120上向駕駛員呈現導航信息同時在後顯示器126上呈現電影或其它娛樂。在一 些實施例中,附件102可W將不同的音頻流提供到不同的揚聲器。因此,例如,可W使用後 置揚聲器116來提供與後顯示器126上正在呈現的電影相關聯的音頻,同時可W使用前置 揚聲器114來向駕駛員和任何前座乘客提供不同的音頻流(例如,來自無線電臺)。
[0035] 在所示實例中,附件102具有位於前控制臺單元118內或附近的插頭連接器134, 該插頭連接器134可W插入到插座連接器110中W提供附件102與主機設備100之間的電 連接和機械連接。在一些實施例中,電連接可W包括電力連接和數據連接兩者,從而允許附 件102向主機設備100遞送電力和/或從主機設備100接收電力。雖然連接器110與134 之間的直接連接是一個選項,但應當理解,一些實施例可W使用間接連接,例如經由纜線或 適配器。在一些實施例中,除了或代替如由連接器110和134提供的有線信號路徑,主機設 備100和附件102能夠例如使用射頻通信技術(諸如Wi-Fi或藍牙、近場通信技術、紅外通 信等)來進行無線通信。在一些實施例中,可W在主機設備100與附件102之間同時建立 多個通信路徑,其中選擇性地在不同路徑上路由發送不同類型的信息。
[0036] 通過例如經由連接器110和134進行通信,主機設備100和附件102可W進行互操 作W支持各種功能性。例如,在一些實施例中,主機設備100可W流出媒體內容供附件102 呈現,並且還可W向附件102提供狀態信息(例如,關於當前正在播放的媒體軌道的信息) W便例如在顯示器120和/或顯示器126上呈現給用戶。用戶可操作附件102的控制項122、 128或130來控制媒體內容的回放(例如播放/暫停)或對不同軌道的選擇。又如,附件 1〇2(或主機100)可W包括用於例如從FM、AM或衛星發射器接收媒體內容的無線電接收器 (未示出)。可使用可攜式設備100 (或附件102)來控制無線電接收器的操作,例如頻道或 節目選擇。許多其它類型的互操作也是可能的。
[0037] 另外,主機設備100和附件102可W使用各種不同的通信信道或路徑進行通信。 例如,如插圖140中所示,主機設備100可W支持多個不同的通信接口或埠。埠可W包 括:有線埠,諸如USB(通用串行總線)埠 142、UART(通用異步接收器/發射器)埠 144和模擬A/V埠 146 ; W及無線埠,諸如Wi-Fi埠 148和藍牙埠 150。在一些實 施例中,有線埠 142、144、146可W使用連接器110的硬體來實現W提供信號路由。無線 埠 148、150可W使用合適的天線硬體來實現。相似地,附件102的音響主機112可W支 持多個不同的通信接口或埠 152。在該實例中,埠包括USB埠 154、UART埠 156和 藍牙埠 158。根據特定配置細節,主機設備100可W經由在同一時間(或在不同時間)與 不同功能性相關的多個不同埠與附件102進行通信。
[003引例如,如插圖160中所示,主機設備100可W支持接收來自用戶的輸入和/或產生 向用戶的輸出的各種虛擬交互設備,包括應用程式(a卵)162、媒體回放引擎164和移動電 話引擎166。在一些情況下,多個虛擬設備可W同時活動。控制和路由邏輯168可W協調從 虛擬設備162-166到附件102和從附件102到虛擬設備162-166的信息遞送。
[0039] 為了優化信息遞送,可能有用的是控制和路由邏輯168具有關於附件102的"整 體"信息,諸如指示什麼部件可用於與主機設備100進行互操作、出於什麼目的W及經由什 麼埠或接口的信息。例如,如果控制和路由邏輯168 了解顯示器120被定位成向車輛駕 駛員呈現信息、而顯示器126被定位成向後座乘客呈現媒體內容,那麼控制和路由邏輯168 可W實施確保內容被適當遞送的路由規則。例如,可W將來自呼入的呼叫者ID信息路由發 送到顯示器120,而將電影流送到顯示器126。又如,如果電話打進來,那麼控制和路由邏輯 168可W繼續將媒體內容遞送到後顯示器126和揚聲器116(可能W降低的音量)同時將來 自電話呼叫的音頻提供到前置揚聲器114。
[0040] 當控制和路由邏輯168接收來自附件的信息時,整體識別信息也可能是有用的。 例如,可W將來自後座控制項128的輸入解釋為控制正在向後座流送的媒體(例如,播放、暫 停、資產選擇),而可W將來自轉向盤控制項130的輸入解釋為控制不同的操作,例如發起或 終止電話呼叫、或控制正在被遞送到前座的不同媒體流。
[0041] 為了有利於互操作,主機設備100和附件102可W協商該樣一種操作協定;限定它 們將互相支持的功能性並且還指定附件102的各種部件和能力。在一些實施例中,該協定 是在主機設備100和附件102建立連接時協商的,並且協商該協定可W是設備識別過程的 一部分。
[0042] 例如,附件設備102的音響主機112可W包括附件側識別邏輯170,該附件側識別 邏輯利用附件的每個部件的部件描述符172。"部件"可W是例如能夠與主機設備100交互 的特定埠(通信接口)或特定輸入/輸出設備,並且描述符172可W包括關於每個部件 的信息。在圖1的實施例中,部件的實例可W包括前控制臺顯示器120、前控制臺鍵盤122、 前置揚聲器114、轉向盤控制項130、後顯示器126、後控制項128和後置揚聲器116, W及USB端 口 154、UART 埠 156 和藍牙埠 158。
[0043] 在一些情況下,部件描述符172還可W包括"束"描述符,該種"束"描述符識別部 件組並將部件組關聯成具有特定目的的邏輯單元。因此,例如,可W將後顯示器126、後控制項 128和後置揚聲器116進一步識別為目的為例如"乘客娛樂"的一束部件。可W將部件和束 描述符例如定義在存儲於音響主機112中的附件固件內,並且在識別過程期間通過附件側 識別邏輯170將其提供給主機設備100,該種操作的實例在下文進行描述。
[0044] 在識別過程期間,主機設備100內的主機側識別邏輯174可W接收來自附件側識 別邏輯170的識別信息,包括部件和束描述符172。使用該信息,主機設備100可W確定如 何與附件102進行交互,例如控制和路由邏輯168應當如何引導用戶輸入和用戶輸出。
[0045] 在一些實施例中,主機設備100和附件設備102可W經由任何一個可用埠或接 口來建立初始通信信道。例如,如果用戶將連接器110和134連接,那麼可W首先建立主機 側UART埠 144與附件側UART埠 156之間的物理連接。又如,用戶可W發起無線配對而 不需要將設備物理連接;例如,主機側藍牙埠 150和附件側藍牙埠 158可W建立配對。
[0046] -旦初始信道已建立,附件側識別邏輯170就可W經由該信道向主機設備100發 送識別消息。在一些實施例中,識別消息表示對主機設備100與附件102之間的互操作條 款的提議。該提議可W包括:識別附件的信息;用於附件將使用來與主機設備進行交互的 每個部件的部件描述符172 ; W及其它信息,例如指示在附件102與主機設備100之間的互 操作期間待調用的特定功能性的信息。主機側識別邏輯174可W接收識別消息並確定接受 還是拒絕操作提議。該種確定可W通過參考提議內的信息W及關於主機設備100的能力 和/或安全設置的信息來做出。主機側識別邏輯174可W將其確定傳達給附件側識別邏輯 170。如果提議被接受,那麼附件102和主機設備100可W開始進行互操作。在進行互操作 時,附件102和主機設備100可W建立其它通信信道;在一些情況下,初始建立的信道可W 關閉,並且附件和主機可W保持連接(並且能夠繼續進行互操作),只要至少一個信道是連 續開放的。如果提議被拒絕,那麼附件102可W提交修改後提議,並且協商可W繼續直到附 件102呈現被主機100接受的提議。
[0047] 應當理解,圖1的主機設備和附件是例示性的,並且可W進行變型和修改。主機 設備和/或附件可W實現任何功能性組合。在一些實施例中,並非附件向主機呈現識別信 息,而是主機可W向附件呈現識別信息,並且附件可W作出接受或拒絕來自主機的提議的 決定。
[0048] 可W使用各種消息格式和信號發送技術來傳達識別消息和決定,其中細節取決於 附件協議。決策過程可W實施結合關於附件和/或主機的任何可用信息的多個規則。合適 的格式和過程的實例在下文進行了描述。
[0049] 主機設備和附件可W實現為經由一個或多個接口進行通信的單獨計算設備W支 持互操作。圖2是根據本發明的實施例的包括主機設備202和附件204的系統200的簡化 框圖。在該實施例中,主機設備202(例如,實現圖1的主機設備100)可W提供計算、通信、 媒體回放和/或其它能力。主機設備202可W包括處理子系統210、存儲設備212、用戶接 口 214、網絡接口 216和附件輸入/輸出(I/O)接口 218。主機設備202還可W包括其它部 件(未明確示出),諸如電池、電力控制器和可操作為提供各種增強能力的其它部件。
[0050] 存儲設備212可W例如使用磁碟、快閃記憶體存儲器或任何其它非暫時性存儲介質或介 質組合來實現,並且可W包括易失性和/或非易失性介質。在一些實施例中,存儲設備212 可W存儲:介質對象,諸如音頻文件、視頻文件、圖像或圖片文件;關於用戶聯繫人的信息 (姓名、地址、電話號碼等);關於用戶安排的約會和事件的信息;便隻;和/或其它類型的 信息。在一些實施例中,存儲設備212還可W存儲待由處理子系統210執行的一個或多個 應用程式(例如,視頻遊戲程序、個人信息管理程序、媒體回放程序等)。
[0051] 用戶接口 214可W包括;輸入設備,諸如觸控板、觸控螢幕、滾輪、點擊輪、撥號盤、按 鈕、開關、小鍵盤、麥克風等;W及輸出設備,諸如視頻屏幕、指示燈、揚聲器、耳機接口等,連 同支持性電子設備(例如,數模或模數轉換器、信號處理器等)。用戶可W操作用戶接口 214 的輸入設備來調用主機設備202的功能性,並且可W通過用戶接口 214的輸出設備來查看 和/或收聽來自主機設備202的輸出。
[0052] 處理子系統210可W實現為一個或多個集成電路,例如一個或多個單核或多核微 處理器或微控制器,該些微處理器或微控制器的實例在本領域中是已知的。在操作中,處理 系統210可W控制主機設備202的操作。在各種實施例中,處理子系統210可W響應於程序 代碼執行各種程序,並且可W維護多個同時執行的程序或進程。在任何給定時間,待執行的 一些或全部程序代碼可W駐留在處理子系統210和/或諸如存儲設備212的存儲介質中。
[0053] 通過合適的編程,處理子系統210可W為主機設備202提供各種功能性。例如,在 一些實施例中,處理子系統210可W實現圖1的控制和路由邏輯168和/或主機側識別邏 輯174中的一些或全部。處理子系統210還可W執行其它程序來控制主機設備202的其它 功能,包括可存儲在存儲設備212中的應用程式;在一些實施例中,該些應用程式可例如通 過生成待發送至附件204的消息和/或通過從附件204接收消息來與附件204進行交互。 因此,例如,在不同時間(或同時)處理子系統210可W提供不同的虛擬設備(例如,圖1 的app 162、媒體播放器164和/或電話166)。
[0054] 網絡接口 216可W為主機設備202提供語音和/或數據通信能力。在一些實施例 中,網絡接口 216可W包括;用於訪問無線語音和/或數據網絡(例如,使用蜂窩電話技術、 先進數據網絡技術諸如3G或邸GE、Wi-Fi (IE邸802. 11系列標準)或其它移動通信技術, 或它們的任何組合)的射頻(R巧收發器部件、用於短範圍無線聯網(例如,使用藍牙標準) 的部件、GI^接收器部件和/或其它部件。在一些實施例中,除了或代替無線接口,網絡接口 216可W提供有線網絡連接性(例如W太網)。網絡接口 216可W使用硬體部件(例如,驅 動電路、天線、調製器/解調器、編碼器/解碼器,W及其它模擬和/或數位訊號處理電路) 與軟體部件的組合來實現。
[00巧]附件I/O接口 218可允許主機設備202與諸如附件204的各種附件進行通信。 例如,附件I/O接口 218可W支持到計算機、外部鍵盤、揚聲器底座或媒體回放站、數字 相機、無線電調諧器、車載娛樂系統或音響主機、家庭控制系統、外部視頻設備、存儲器讀 卡器等的連接。在一些實施例中,附件I/O接口 218可W包括連接器,諸如對應於各種 iPod\ iPhone"'衝IiPacf產品W及支持電路中所使用連接器的連接器。連接器可W提供 用於電力和接地的連接,W及用於諸如通用串行總線扣SB)、火線(16邸1394標準)和/或 通用異步接收器/發射器扣ART)的一個或多個數據通信接口的連接。在一些實施例中,連 接器提供專用的電力和接地觸點,W及可用於並行地實現不同通信技術的一定數量(例如 四個)的可編程數字數據觸點;例如,可W將兩個引腳指派為USB數據引腳(D+和D-)並且 可W將兩個其它引腳指派為串行發送/接收引腳(例如,實現UART接口);針對特定通信 技術的引腳指派可W在連接正在建立時進行協商。在一些實施例中,連接器還可W提供用 於音頻和/或視頻信號的連接,該些音頻和/或視頻信號可W模擬和/或數字格式傳輸至 主機設備202或從主機設備202傳輸。因此,附件I/O接口 218可W支持多個通信信道,並 且給定附件可使用該些信道中的任一個或全部。在一些實施例中,除了或代替有線通信信 道,附件I/O接口 218可W支持無線通信(例如,經由Wi-Fi、藍牙或其它無線協議)。
[0056] 附件204 (例如,實現圖1的附件102)可W包括控制器230、用戶接口設備232、附 件專用硬體234、主機I/O接口 236和驗證模塊238。附件204代表可W與主機設備進行互 操作的一大類附件,並且此類附件在能力、複雜性和形狀因數方面可能有很大不同。各種附 件可W包括圖2中未明確示出的部件,包括但不限於;具有固定或可移除的存儲介質的存 儲設備(磁碟、快閃記憶體存儲器等);視頻屏幕、揚聲器或用於連接至外部音頻/視頻設備的端 口;相機部件,諸如鏡頭、圖像傳感器和用於相機部件的控制項(例如,光圈、變焦、曝光時間、 峽速率等);用於記錄音頻(單獨或與視頻記錄結合)的麥克風;等等。此外,一些附件可 W提供可連接至另一個附件並且與其通信的另外的接口(未示出)。
[0057] 控制器230可包括例如執行程序代碼W便執行與附件204相關聯的各種功能的一 個或多個單核或多核微處理器和/或微控制器。例如,在附件230結合有用戶可操作控制項 (例如,圖1的控制項122)的情況下,控制器230可解釋用戶對控制項的操作並且作為響應調用 附件204的功能性;在一些情況下,所調用的功能性可W包括向主機設備202發送消息和/ 或從主機設備202接收消息。又如,控制器220可W實現圖1的一些或全部附件側識別邏 輯 170。
[005引用戶接口 232可W包括;用戶可操作輸入設備,諸如觸控板、觸控螢幕、滾輪、點擊 輪、撥號盤、按鈕、開關、小鍵盤、麥克風等;W及輸出設備,諸如視頻屏幕、指示燈、揚聲器、 耳機接口等,連同支持性電子設備(例如,數模或模數轉換器、信號處理器等)。根據特定附 件204的具體實施,用戶可W操作用戶接口 232的輸入設備來調用附件204的功能性。
[0059] 附件專用硬體234可W包括可存在於附件204中W啟用其功能性的任何其它部 件。例如,在各種實施例中,附件專用硬體234可W包括;使用固定或可移除的存儲介質的 一個或多個存儲設備;GI^接收器;網絡接口;電源和/或電力管理電路;環境傳感器(例 女口,溫度傳感器、壓力傳感器、加速度計、化學傳感器等);等等。應當理解,可通過提供適當 的附件專用硬體234來支持任何類型的附件功能性。
[0060] 主機I/O接口 236可允許附件204與主機設備202進行通信。根據本發明的一些 實施例,主機I/O接口 236可W包括與主機設備202中所包括的連接器直接配對的連接器, 諸如與各種iPod\ iPhone"巧iPacT'產品中所使用的連接器互補的連接器。該種連接器 可用於向主機設備202供應電力和/或從主機設備202接收電力,用於發送和/或接收呈 模擬和/或數字格式的音頻和/或視頻信號,並且用於使用諸如USB、UART和/或火線的一 個或多個數據通信接口來傳達信息。也可W使用其它連接器;例如,主機I/O接口 236可W 結合標準USB連接器,並且可經由適配器纜線連接至主機設備202的附件I/O接口 218。在 其它實施例中,除了或代替有線通信信道,主機I/O接口 236可W支持無線通信(例如,經 由Wi-Fi、藍牙或其它無線協議)。
[0061] 驗證模塊238可W向主機設備202提供驗證信息,例如W便驗證附件204的身份。 例如,驗證模塊238可W存儲數字證書,該種數字證書可在主機I/O接口 236與附件I/O接 口 218之間建立連接時提供給主機設備202。驗證模塊238還可W包括密碼邏輯。在一些 實施例中,為了驗證附件204的身份,主機設備202可W發送將由附件204使用私有密鑰進 行數字籤名(例如,編碼)的隨機數(random nonce)(例如,隨機生成的字符串),並且驗證 模塊238可W存儲私有密鑰W及編程控制邏輯或硬連線控制邏輯,W便利用所存儲的私有 密鑰來對該隨機數進行籤名可W實施多種驗證機制。
[0062] 附件204可W是與主機設備202交互的任何電子裝置。在一些實施例中,附件204 可W通過對主機設備202或遠程用戶接口的操作來提供遠程控制,該遠程用戶接口可W同 時包括輸入控制項和輸出控制項(例如,用於顯示從主機設備202獲得的當前狀態信息的顯示 屏)。在各種實施例中,附件204可W控制主機設備202的任何功能並且還可W從主機設備 202接收數據。在其它實施例中,主機設備202可W控制附件204的操作,諸如從附件204 的存儲介質檢索所存儲的數據、通過結合到附件204中的相機發起圖像捕獲操作等。
[0063] 應當理解,本文描述的系統配置和部件是例示性的,並且可W做出變型和修改。主 機設備和/或附件可能具有本文並未明確描述的其它能力(例如,行動電話、全球定位系統 (GP巧、寬帶數據通信、網際網路連通性等)。根據具體實施,該些設備可W進行互操作,W便提 供由任一(或兩個)設備支持的任何功能性或提供在每個設備中部分地實現的功能性。在 一些實施例中,主機設備可W具有經由附件設備不可訪問或不可調用的一些功能性。同樣, 附件設備可W具有經由主機不可訪問或不可調用的一些功能性。
[0064] 根據需要,主機設備202和附件204的相應I/O接口 218、236處的連接器可W是 互補的或不互補的。在兩個連接器不互補的情況下,可W提供適配器(未示出)來連接兩 個設備。雖然在本文中將連接器描述為具有引腳(該術語通常與具有用於連接多個部件的 電線的常規電子設備相關聯),但應當理解,連接器可W用其它信號路徑(例如,光信號發 送)代替。另外,在一些實施例中,一些連接可W是無線的,並且在提供無線接口的情況下 可W省略連接器。
[0065] 此外,儘管本文參考特定塊描述了主機設備和附件,但應當理解,定義該些塊是為 了描述方便,而並非意在暗示部件部分的特定物理布置。此外,塊不必對應於物理上不同的 部件。可W配置塊W執行各種操作,例如通過對處理器編程或提供適當的控制電路,並且根 據初始配置是如何獲得的,各個塊可W是可重新配置的或不可重新配置的。可W在包括利 用電路和軟體的任意組合實現的電子設備在內的多種裝置中實現本發明的實施例。
[0066] 主機設備202的附件I/O接口 218和附件204的主機I/O接口 236包括允許主 機設備202與附件204連接並且隨後與附件204脫離連接的接口。如本文所用,每當主機 設備和附件的相應接口之間建立通信信道時主機設備和附件"連接",並且當該信道終止時 "斷開連接"。該種連接可經由例如利用配對連接器的直接物理連接來實現;例如經由纜線 的間接物理連接來實現;和/或例如經由藍牙的無線連接來實現。
[0067] 在一些實施例中,主機設備和附件可W在連接時通過根據"附件協議"交換消息和 數據進行通信。消息和數據例如可W使用由相關接口提供的任何有線或無線傳輸介質來傳 達。
[0068] 附件協議可W定義可在主機設備202與連接至其上的任何附件(諸如,附件204) 之間進行交換的消息"全域(universe)"。消息格式可W包括例如用於指示接下來是消息 代碼的起始位或位序列,該起始位或位序列之後是可由接收器解釋並起作用的實際消息代 碼。至少一些消息代碼可W具有由協議定義的一個或多個相關聯參數,並且除消息代碼之 夕F,消息可W包括用於任何此類參數的值。在一些情況下,協議還可W規定接收器在未接收 到與消息代碼相關聯的特定參數的情況下或與消息代碼一起接收到預期外參數的情況下 的行為。針對不同的消息,參數的數量可W不同,並且在一些情況下,參數可W具有可變長 度。在一些實施例中,消息代碼可W被定義成使得給定消息代碼僅在一個方向上有效。也 可W使用其它消息結構。
[0069] 附件協議還可W定義消息交換的格式。例如,附件協議可W規定使用一個或多個 分組來發送消息,每個分組均具有標頭和有效載荷。標頭提供基本信息(例如,啟動指示 符;分組長度;分組序列號;與分組相關聯的會話的標識符,如下所述),而有效載荷提供全 部或部分消息數據。分組還可W包括如本領域中已知的錯誤檢測代碼或錯誤校正代碼。
[0070] 在一些實施例中,可W將消息在邏輯上分為"通用"消息集和"任選"消息集。可 W要求使用附件協議的每個附件和每個主機設備都支持至少通用消息集。該消息集可W包 括使得主機設備和附件能夠彼此識別並驗證它們本身,W便提供關於它們的部件和/或接 口的信息並且協商它們將互相支持的功能性。通用消息集還可W包括主機設備可用來驗證 所支持的附件的身份和能力(或反之亦然)的驗證消息,並且如果驗證不成功的話可能阻 止附件(或主機設備)調用某些(或所有)任選消息。
[0071] 任選消息集可W包括與給定附件可能或可能不支持的各種功能性相關的消息。例 女口,任選消息集可W包括;允許附件識別主機設備的待調用的功能的簡單遠程消息,可用於 獲得與在附件上複製主機設備的全部或部分用戶接口相關的信息(從而支持更高級的遠 程控制)的遠程用戶接口消息,允許用戶通過操作主機設備來控制附件中的無線電調諧器 和/或通過操作附件來控制主機設備中的無線電調諧器的消息,促進數據對象在主機設備 與附件之間的傳輸的消息,等等。可W在附件協議中定義任選消息的任意組合,並且不要求 給定的附件或主機設備支持所有(或甚至任一條)任選消息。
[0072] 圖3針對在附件協議中定義的一些或所有消息示出根據本發明的實施例的可實 施的消息300的格式。每條消息300可W W消息起始("B0M")標記302開始。BOM標記 302可W是例如用於指示接下來是消息的特定字節代碼、字符或字符序列。消息標識符(消 息ID)304可W跟在BOM標記302之後;該個標識符指示正在發送哪個消息。在一些實施例 中,所有消息標識符都具有相同的長度(Lm),根據協議將要支持的消息的總數量,該長度可 W是例如1個字節或2個字節。
[0073] 在消息ID 304之後的可W是與消息ID相關聯的零個或多個參數/值對306。不 同的消息ID可W具有不同數量的相關聯參數(包括對於一些消息ID,零參數),並且根據 具體實施,與特定消息ID相關聯的一些或所有參數可W是任選的。為了允許靈活性,每個 參數/值對可W包括顯示參數標識符(參數ID) 308,緊跟其後的是用於該參數的值310。對 於所有參數,參數ID可W具有固定長度(例如,1個字節),其中向與特定消息ID相關聯的 每個參數指派不同的ID。值310的長度可W取決於參數ID。與識別和協商互操作能力相 關聯的參數ID和值的實例在下文進行了描述。在最後一個參數/值對306之後,消息300 可W例如W消息結束("E0M")標記330結束。像BOM標記302,E0M標記330可W是例如 特定字節、字節代碼、字符或字符序列。EOM標記330可W是與BOM標記302不同的值並且 不同於與參數ID相關聯的任何字節代碼。
[0074] 在一些實施例中,符合附件協議的每條消息都使用消息300的格式,包括由兩個 設備發送的消息。消息300的接收者可W通過W下方式來解析該消息:識別BOM標記302, 將接下來的Lm字節解釋為消息ID 304,隨後基於該消息ID來解釋所包括的每個參數/值 對306。因此,例如,與用於"設定視頻解析度"消息的消息ID相關聯的為6的參數ID可W 表示該相關聯值指示W像素為單位的屏幕尺寸,而與"設定音頻採樣率"消息相關聯的為6 的參數ID則表示該相關聯值指示每砂樣本數量。
[0075] 如W上所指出,參數值的長度可W取決於參數ID。解析所接收消息的接收器可讀 取參數ID 308,確定相關聯值所期望長度(Lv)(例如,W字節為單位),並且因此將接下來 的Lv字節解釋為值。除非接下來的字節對應於指派給EOM標記330的字節代碼(在該種 情況下消息被認為是完整的),否則可W將接下來的字節解釋為下一個參數值。
[0076] 顯式參數/值對(而不是例如,假定參數次序)的使用提供了靈活性。例如,可W 為與特定消息ID 304相關聯的一些或所有參數指派默認值,並且發送者可W將使用默認 值的任何參數從消息300中省略。該可W減小消息長度。此外,當協議隨時間推移而發展 (例如,W便適應新設備和/或新功能性)時,可W向消息添加新參數。只要為在消息的初 始定義建立之後添加到消息的任何新參數定義默認值,便可W維持正向和反向兼容性。即 使設備不發送特定參數(例如,因為它實施早於新參數定義的較舊版本的協議),接收者仍 然可W解析消息並做出適當的動作。在一些實施例中,協議可W規定:如果設備接收到具有 已識別的消息ID但未識別的參數ID的消息,那麼設備應當忽略該未識別的參數。該可W 允許實施較舊版本協議的設備與較新設備進行互操作,而任一設備均不必協商版本特定的 差異。
[0077] 如上所述,消息300可W包括與附件到主機設備(和/或反之亦然)的識別相關 W及與協商該些設備將協同實現的功能性(在本文中也被稱為操作協定)相關的消息。圖 4是示出根據本發明的實施例的識別消息的表400。對於列402中的每條消息,在列404中 指示有效方向(主機到附件或附件到主機);列406描述每條信息可W包括的參數。
[0078] 主機可W向附件發送IDStart消息W發起識別過程。在該實例中,IDStart消息 不包括參數;它僅僅指示主機已準備好從附件接收識別消息。在一些實施例中,IDStart消 息可W包括提供關於主機設備的基本信息(例如,製造商和型號標識符、固件版本等)的參 數。在一些實施例中,主機可W向附件發送單獨消息(未示出)來提供主機識別信息。
[0079] 附件可W向主機發送IDIn化消息W提供識別提議。IDIn化消息可W包括多個"信 息項"作為參數,每個"信息項"可W具有相關聯的值。W下參照圖5來描述具體實例。在 一些實施例中,單個IDIn化消息可W包括;關於附件的所有識別信息,包括製造商和型號 信息;附件提議允許發送和/或接收的附件協議消息的列表;識別附件可與之交互的應用 程序的信息;關於附件的設置和偏好的信息;關於附件的電源和/或功率消耗特性的信息; 關於附件所支持的通信接口(例如,USB、UART或其它串行埠、藍牙、Wi-Fi、其它無線傳 輸)的信息;W及描述附件中所包括的特定部件或部件組群的信息。根據具體實施,IDInfo 命令可W W任何所需細節程度向主機提供關於附件的部件、能力和所提議功能性的完整信 息。因此,在一些實施例中,附件可W通過發送IDIn化信息來呈現與主機互操作的提議。
[0080] 主機可W向附件發送IDAcc巧t消息W指示提議(例如,如通過IDIn化消息所傳 達的)被接受;主機可W向附件發送IDReject消息W指示提議已被拒絕。在一些實施例 中,主機基於IDIn化命令中的信息和其自身的規則集來確定接受還是拒絕提議。實例在下 文進行了描述。
[0081] 主機可W向附件發送IDTimeout消息W指示超時狀況。例如,如果主機發送 IDStart消息並且附件未在設定時間周期內用IDIn化消息作出響應,那麼主機可發送 IDTimeout消息W指示將不接受未來的消息,包括IDIn化消息。在附件發送IDIn化消息而 由於某種原因主機未收到該消息的情況下,IDTimeout消息可W提醒附件該問題;該條消 息可W防止附件無限期地等待來自主機的響應。
[0082] 附件可W發送IDCancel消息W指示它不打算完成識別過程(識別過程可包括操 作協定的協商)。如果附件確定它將不會重試,那麼可W例如在附件接收到IDReject消息 之後發送該條消息。響應於IDCancel消息,主機設備可W終止到附件的連接或例如通過發 送新IDStart消息重新開始識別。在一些實施例中,已完成識別過程的附件可W在任何時 間發送IDCancel消息W重新識別它本身,並且主機可W通過發送新IDStart消息來響應。
[0083] 附件可W發送ID化date消息W便在該消息已被接受之後更新識別。在一些實施 例中,可W將可使用ID化date消息進行更新的參數限制到IDIn化消息的參數子集。因此, 例如,可W允許附件通過發送ID化date消息來改變其名稱、用戶偏好設置或部件或接口的 狀態,但不允許附件改變其可發送或接收的消息的列表、或添加或移除部件或接口。(不允 許使用ID化date的改變可W通過發送IDCancel和重新識別做出。)
[0084] 如W上所指出,IDIn化消息可W包括所有關於附件的識別信息。圖5是列出根據 本發明的實施例的可針對IDIn化消息進行定義的參數的實例的表500。列502中列出的每 個參數均具有決定其長度和有效數值範圍(列506)的參數類型(列504),該有效數值範圍 指示一條IDIn化消息中可W包括的參數實例的數量。針對每個參數,更新列508指示該參 數是否也可W包括在ID化date消息中。不能包括在ID化date消息中的任何參數可W由附 件例如通過發送IDCancel消息和新IDIn化消息來改變。
[0085] 第一組參數510包括提供關於附件的基本信息(例如,其名稱、製造商、型號、序 號、固件版本W及硬體版本)的參數。該些參數中的每一個都可W被定義為具有固定長度 (例如,32個字符)的"字符串"類型。如列506中所指示的那樣,在一些實施例中,要求附件 為該些參數中的每一個提供恰好一個值。因此,主機可W拒絕未能指定該些參數的IDIn化 消息。
[0086] 第二組參數512包括識別來自附件協議的附件提議允許發送和接收的特定消息 的參數。此類消息被稱為包括在所提議的"有效"子集中。在該實例中,使用單獨參數來指 定附件可發送的消息(消息發送列表)和附件可接收的消息(消息接收列表)。每個參數 可W被定義為"數組"類型,並且數組中的每個元素可W恰好是消息代碼的尺寸Lm(例如,1 或2個字節);因此,每個參數的值可W是適當消息代碼的列表。預期的是,列表的長度可 W根據附件功能性和協議具體實施的細節(例如,什麼樣的通信使用不同消息與使用具有 不同參數值的相同消息)而變化。
[0087] 為了允許可變長度的列表,在一些實施例中,數組型參數值的長度可W是可變的。 例如,數組可W W尺寸指示符(例如,用於指示數組中元素數量的一個或兩個字節)開始, 之後是數組的元素(在該種情況下為待發送或接收的消息的實際消息代碼)。尺寸指示符 還可W指示每個元素的尺寸(所有元素的尺寸可W相同),或可W基於數組相關聯的參數 ID來確定元素尺寸。基於參數ID,接收器可W認識到接下來是數組,讀取尺寸指示符,隨後 讀取數組的每個元素。
[0088] 在所示實施例中,附件指定待發送的恰好一個消息列表和待接收的恰好一個消息 列表。如上所述,在一些實施例中,可W將消息全域分為通用消息集和任選消息集,並且協 議可W規定通用消息始終包括在有效子集中,不管它們是否包括在附件的列表中。因此,例 女口,與識別相關的消息(例如,圖4中列出的消息)可W包括在通用消息集中,並且主機可 W從附件通過發送IDIn化消息對IDStart消息作出響應的事實推斷出附件支持該些消息。 在一些實施例中,如果附件不打算發送除通用消息之外的任何消息,那麼附件可W發送具 有空數組(例如,包含一個具有空值的條目的數組)的消息列表參數。
[0089] 在一些實施例中,識別待發送的消息和待接收的消息的信息可W在單個列表中呈 現或分為多個列表。在一些實施例中,每個消息代碼僅在一個方向上有效,並且呈現單個列 表不會導致歧義。在一些實施例中,一些消息代碼可W在兩個方向上有效,並且附件可W例 如通過向消息代碼附加方向指示符或通過提供待發送和接收的消息的單獨列表(例如,女口 圖5中所示)來指示它是否打算發送和/或接收特定消息。
[0090] 可發送和/或接收的消息的列表可能是過度包括的。目P,附件實際上不需要發送 包括在消息發送列表中的每一條消息或接收包括在消息接收列表中的每一條消息。在一些 實施例中,消息列表(如果被主機接受的話)使附件與W下操作協定綁定;(1)附件同意不 向主機發送不在消息發送列表上的任何消息(除了協議假定為可發送的任何消息,諸如圖 4中的識別消息),並且主機可W忽略附件發送的任何此類消息。(2)附件不期望接收不在 消息接收列表上的任何消息。(3)附件對消息接收列表上的任何消息的接收將不會導致附 件向主機發送錯誤消息。
[0091] 第H組參數514包括與附件與特定主機設備上可能或可能未安裝的特定應用程 序進行互操作相關的參數。例如,IDIn化消息可W包括用於指定附件被設計成與其進行互 操作的應用程式的標識符的優選App參數。標識符可W是字符串,諸如指派給應用程式的 名稱或唯一代碼(例如,在應用程式通過其分發的應用程式商店處),並且主機設備可W使 用標識符來確定該應用程式是否已安裝。一些附件可W選擇不指定特定應用程式;因此, IDIn化消息可W包括優選App參數的零個或一個實例。
[0092] 此外或相反,IDIn化消息可W包括用於提供關於附件支持特定應用程式專用協議 的能力的信息的App協議參數。(應用程式專用協議允許使用附件協議作為導管在附件與 應用程式之間傳遞消息,其中附件協議與此類消息的內容無關。)
[0093] 在該實例中,可W使用用於參數值的結構化"欄位"類型來提供應用程式專用協議 信息。在一些實施例中,欄位類型參數值可W實現為一組固定長度欄位,其中對於特定參數 而言每個欄位的欄位定義和長度是固定的。可替代地,欄位類型參數值可W非常類似於圖3 中所示的參數列表那樣使用鍵/值對來實施,但是在單個參數內而不是作為單獨參數。在 一些實施例中,要求包括針對欄位類型參數進行定義的所有鍵/值對,W便有利於解析。字 段類型參數是否可W嵌套在欄位類型參數內是一個設計選擇問題。
[0094] 用於App協議參數的欄位可W包括;例如包含所支持的應用程式專用協議的名 稱的固定長度字符串;提供用於應用程式專用協議的識別號的固定長度整數;和/或根據 主機設備是否具有能夠使用已識別協議的安裝應用程式來識別待採取的動作的字節代碼 (例如,如果未發現該種應用程式,那麼可W指示主機在應用程式商店中搜索合適的應用程 序、詢問用戶是否應當進行搜索或什麼都不做)。在一些情況下,附件可能不支持應用程式 專用協議,並且在一些情況下,附件可W支持多於一種應用程式專用協議;因此,IDIn化消 息可W包括任意數量(零或多個)的App協議參數實例。
[0095] 第四組參數516包括與附件在操作中對基於語言和/或區域差異的支持相關的參 數。例如,鍵盤附件能夠支持基於語言和/或區域的不同字符設定;顯示信息的附件也能夠 使用不同語言或使用同一種語言的不同區域性變體(例如,在英語的情況下,英國拼寫與 美國拼寫)來呈現信息。能夠支持不同語言和/或區域的附件可W使用當前語言和/或當 前區域參數來識別當前所選的語言和/或區域,例如,作為包含該語言或區域的公認名稱 的字符串。因為在給定時間僅一種語言和一個區域可W是當前的,所W IDIn化消息中可W 包括任一參數的不超過一個實例。
[0096] 如果附件支持多種語言和/或多個區域,那麼附件可W使用所支持語言和所支持 區域的參數來提供所支持語言和/或區域的列表。可W包括每個參數的任意數量的實例, 其中參數值是包含某一語言或區域的公認名稱的字符串。在一些實施例中,假定支持當前 語言和區域,並且不需要同時使用"當前"和"所支持"參數來提供。
[0097] 第五組參數518包括與附件電力和電力管理相關的參數。例如,根據附件是否和 如何向主機提供電力,充電器類型參數可W指示一組枚舉電力類型中的一種。類型可W包 括;例如"通過",用於指示附件從外部源汲取電力並將電力中的至少一些傳遞給主機;"自 供電",用於指示附件從內部源(例如,其本身的電池、太陽能電池板等)汲取電力並可將電 力中的至少一些提供給主機;W及"無",用於指示附件不向主機提供電力。在一些實施例 中,要求IDIn化命令包括充電器類型參數,其中枚舉選項中的一個作為一個值。
[009引在一些實施例中,可W包括最大電流供應參數,W便指定附件可向主機供應的最 大電流量。可W將電流指定例如為表示最大電流(W毫安(mA)為單位)的固定長度整數 (例如,8位)。在一些實施例中,如果IDIn化命令指示充電器類型為"無",那麼可W省略 最大電流供應參數。此外,一些實施例可W指定主機將假定的用於每種充電器類型的最大 電流供應參數的默認值,並且如果默認值對於附件是可接受的話,那麼IDIn化命令可W省 略最大電流供應參數。
[0099] 在一些實施例中,可W包括最大電流消耗參數,W便指定附件將從主機汲取的最 大電流量。再次,可W將電流指定例如為表示最大電流(W HiA為單位)的固定長度整數 (例如,8位)。一些實施例可W指定主機將假定的用於最大電流消耗參數的默認值,並且如 果該默認值對於附件是可接受的話,那麼IDIn化命令可W省略最大電流消耗參數。實際上 不要求附件在任何時間都從主機汲取指定的最大電流(或實際上任何電流)。
[0100] 第六組參數520包括與附件支持的每個通信接口相關的參數。預期的是,每個附 件都應當支持至少一個通信接口,但附件可W具有多個接口,並且根據具體實施,一些附件 可W使用多個接口來與同一個主機設備通信。參數520允許附件提供用於每個可用接口的 描述符。在任何給定情況下,IDIn化命令可W包括該組中的至少一個參數的至少一個實例, 並且根據可用的接口,可W包括多個參數和/或一個參數的多個實例。
[0101] 對於每個接口,欄位可W包括適當的描述信息。例如,對於任何接口,欄位可W包 括待與該接口相關聯的數字標識符、該接口的名稱W及用於指示該接口是否支持附件協議 通信的位。特定接口的描述符還可W指示特定於該類型接口的其它信息。例如,USB主機 設置描述符可W包括關於附件的USB主機接口所支持的一個或多個音頻採樣率的信息。藍 牙設置描述符可W指示所支持的藍牙版本或風格(例如,經典的、低能的、北歐的)、藍牙接 口的MAC地址、將使用的配對方法(例如,PIN代碼或安全樣本配對)W及PIN代碼(如果 需要的話)。更一般地,用於特定接口的描述符可W包括(例如,作為子欄位)主機將用來 在該接口上建立連接的任何信息。
[0102] 第走組參數522包括與附件的各種用戶輸入/輸出部件相關的描述符。例如,音 頻部件描述符可W提供關於音頻輸入/輸出設備(諸如揚聲器、揚聲器系統、麥克風、耳機 接口或頭戴式耳機)的信息。視頻部件描述符可W提供關於顯示設備(諸如視頻屏幕)的 信息。輸入部件描述符可W提供關於用戶輸入設備(諸如鍵盤、小鍵盤、操縱杆、軌跡球、觸 控板、觸控螢幕等)的信息。束描述符可W將部件組定義為附件內的邏輯子系統。
[0103] 圖6是示出根據本發明的實施例的音頻部件描述符的子欄位的表600。對於每個 子欄位(列602),指出了類型(列604)和另外的信息(列606)。部件ID可W是由附件指 派的整數;可W要求每個部件都具有唯一標識符。部件名稱可W是用於將人類可讀的名稱 與部件相關聯的字符串(例如,"前置揚聲器"、"後置揚聲器"、"藍牙頭戴式耳機"),並且不 同部件可W具有相同的名稱。
[0104] 部件種類可W是多個預定義種類類型中的一種,並且可W向主機設備指示音頻部 件的某些方面或特性。例如,用於音頻部件的所定義的種類類型的集可W包括;臺式計算機 揚聲器(小環境、單個用戶);家庭影院(多揚聲器、大環境);麥克風(能夠提供由聲音生 成的音頻信號的部件);器械(能夠提供音頻輸入的音樂器械或聲音合成器);頭戴式耳機 (供個人使用的揚聲器加麥克風);音頻-視頻裝置(能夠供應或接收與音頻時間相關的視 頻的部件,諸如攝像機或TV);電話(帶有獨立於主機的其自身的到電話服務的連接的頭戴 式耳機);轉換器(能夠改變音頻信號的格式的部件);錄音機(具有獨立於主機捕獲和記 錄聲音的能力的部件);W及音頻路由器(能夠選擇性地將音頻遞送到在附件內或連接至 附件的不同端點或從該些端點選擇性地遞送音頻的部件)。除了或代替該些實例,可W定義 其它種類類型,例如可W將車輛中的前置揚聲器和後置揚聲器區分開。
[0105] 連接類型可W指示主機可W使用哪些通信信道或接口來向部件發送音頻和/或 從部件接收音頻。連接類型的實例可W包括,例如模擬(線性輸入/線性輸出);USB主機 模式(其中附件起到USB主機的作用);USB設備模式(其中附件起到USB設備的作用)。 可W例如通過參考指派給參數組520中的一個接口描述符的接口標識符來識別連接類型。 在一些情況下,在每個音頻部件描述符中提供單個連接類型。一些實施例允許針對同一個 音頻部件識別多種連接類型,並且主機設備可W基於當前操作狀況(例如,哪些通道當前 是開放的、正在如何使用各信道等)動態地選擇音頻路由路徑。
[0106] 採樣率子欄位可W用於指示附件支持的一個或多個採樣率。該信息可W是有用 的,例如如果主機設備確定用於提供或接收音頻的採樣率。主機可W將其選擇限制於附件 所支持的採樣率,從而消除對附件管理採樣率轉換的需要。
[0107] 圖7是示出根據本發明的實施例的視頻部件描述符的子欄位的表700。對於每個 子欄位(列702),指出了類型(列704)和另外的信息(列706)。部件ID可W是由附件指 派的整數;可W要求每個部件都具有唯一標識符。部件名稱可W是用於將人類可讀的名稱 與部件相關聯的字符串(例如,"TV"、"前控制臺"、"後控制臺"),並且不同部件可W具有相 同的名稱。部件名稱的再利用可能是有幫助的,例如如果用戶將在邏輯上將兩個部件認為 是單個設備(例如,"TV"通常同時具有顯示器和揚聲器)。
[010引部件種類可W是多個預定義種類類型中的一種,並且可W向主機設備指示視頻部 件的某些方面或特性。例如,用於視頻部件的所定義的種類類型的集可W包括;計算機監視 器(與計算機相關聯的能夠獨立於主機設備進行操作的顯示器);TV(能夠接收電視傳輸的 顯示器);可攜式顯示器(具有適於用戶攜帶的具有小外形因數的顯示器);前車輛控制臺 (在車輛的前座中可見的顯示器);後車輛控制臺(位於車輛的前座後方並且駕駛員不可見 的顯示器);相機(能夠提供來源視頻的設備);攝像機(能夠記錄視頻和音頻的設備,帶有 至少用於回放的小屏幕)。除了或代替該些實例,可W定義其它種類類型。
[0109] 連接類型可W指示主機可使用哪些通信信道或接口來向指定部件發送視頻和/ 或從指定部件接收視頻;該子欄位可W類似於音頻部件描述符的連接類型子欄位。
[0110] 可W使用另外的子欄位來指定顯示器的性質。可W在像素和/或物理維度(例如, 釐米或英寸)方面指定顯示器尺寸。屏幕模式子欄位可W用於指示顯示器將如何呈現來自 主機的圖像,例如圖像將W插圖(例如,較大顯示區域內的窗口或其它區域)還是全屏幕的 方式呈現。屏幕模式還可W指示其它特性,諸如顯示器是W全屏幕(4:3縱橫比)模式或寬 屏幕(16:9縱橫比)模式或兩種模式操作。信號格式可W指示由顯示器識別的視頻信號類 型,例如NTSC或PAL。信號質量可W指示顯示器是標準的或高清晰度的。同步延遲可W提 供關於顯示器的視頻延遲的信息,W便在視頻和時間相關音頻正在被遞送到不同部件的情 況下有利於音頻與視頻的同步。
[0111] 圖8是示出根據本發明的實施例的輸入部件描述符的子欄位的表800。對於每個 子欄位(列802),指出了類型(列804)和另外的信息(列806)。部件ID可W是由附件指 派的整數;可W要求每個部件都具有唯一標識符。部件名稱可W是用於將人類可讀的名稱 與部件相關聯的字符串(例如,"鍵盤"、"觸控螢幕"、"轉向盤控制項"),並且不同部件可W具有 相同的名稱。如W上所指出,部件名稱的再利用可能是有幫助的,例如如果用戶將在邏輯上 將兩個部件認為是單個設備。
[0112] 部件種類可W是多個預定義種類類型中的一種,並且可W向主機設備指示輸入部 件的某些方面或特性。例如,用於輸入部件的所定義的種類類型的集可W包括;小鍵盤(10 鍵);鍵盤(完整字符數字鍵盤);媒體控制項(帶有用於播放、暫停、選擇媒體資產等的控制項 的設備);指向設備(滑鼠、軌跡球、筆);觸控板;觸控螢幕;多觸控螢幕(能夠基於一個或多個 手指的觸摸和/或運動來識別手勢的觸控螢幕);軟鍵組(用於一組可編程的按鈕);旋鈕; W及輪。除了或代替該些實例,可W定義其它種類類型。
[0113] 對於每個部件種類,可W定義另外的子欄位,W提供可幫助主機解釋從控制項所接 收的信號的關於控制項的信息。例如,在觸控螢幕的情況下,另外的信息可W指示觸敏表面的分 辨率;在帶有止動器的旋鈕的情況下,另外的信息可W指示止動器的數量。在軟鍵組的情況 下,另外的信息可W指示按鈕的數量和布置。
[0114] 連接類型可W指示主機可W使用哪些通信信道或接口來從所指定的部件接收輸 入信號;該子欄位可W類似於音頻部件描述符的連接類型子欄位。
[0115] 圖9是示出根據本發明的實施例的束描述符的子欄位的表900。對於每個子欄位 (列902),指出了類型(列904)和另外的信息(列906)。束ID可W是由附件指派的整數; 可W要求由附件定義的每個束都具有唯一標識符。束名稱可W是用於將人類可讀的名稱與 束相關聯的字符串(例如,"前座控制臺"、"後座控制臺")。
[0116] 目的子欄位可W用於指示與特定束相關聯的目的。該"目的"可W表示束打算支 持的特定交互類型(例如,媒體回放、媒體記錄、電話通信)。在操作中,主機可W使用該目 的來選擇在特定交互期間將使用的束;W下描述實例。如同用於單獨部件的種類代碼,目的 可W是枚舉類型,其中預定義類型對應於對向主機識別可能有用的任何目的。在一些實施 例中,除了或代替束描述符,目的子欄位可W包括在部件描述符中。
[0117] 束欄位還可W例如通過提供指代指派給每個所包括部件的標識符的一系列部件 標識符(例如,如圖6至圖8中所示)來識別待包括在束中的每個部件。在一些實施例中, 每個束還可W包括一個或多個相關聯的接口,例如通過包括指派給圖5的組520中的一個 或多個接口參數的標識符。在一些實施例中,多個接口在每個束中可W優選次序進行指定。 當根據與束相關聯的目的與附件進行通信時,主機設備可W利用當前在其上建立通信信道 的最優選接口。
[0118] 應當理解,本文所述的消息格式、消息W及參數是例示性的,並且可W進行變型和 修改。除了或代替W上所示實例,還可W針對IDIn化命令定義其它參數。例如,附件還可 W提供關於其它能力的信息,諸如導航(例如使用GI^等)、環境控制項(例如附件的控制照 明、恆溫器設置等的能力)等。部件和束可W與附件的任一種能力相關聯。
[0119] 在一些實施例中,IDIn化命令可W通過推斷指示附件具有某些能力。例如,消息列 表參數中的一個或兩個可能包括有關向主機設備遞送GI^坐標和/或從主機設備接收GPS 坐標的消息;由此,主機可W推斷出附件能夠產生和/或消耗GI^信息。又如,消息發送列 表可能包括來自主機設備的請求視頻流的消息;由此,主機可W推斷出附件能夠接收視頻 流。
[0120] 可W使用W上所述的結構化欄位參數或使用其它技術來提供部件和接口描述符。 例如,附件可W提供消息序列,每條消息定義一個部件,而不是在單個IDIn化消息中包括 所有部件。(在此類實施例中,附件可W在最後一條定義部件的消息後發送"ID完成"消息, W便主機可W確定何時已接收到所有消息。)附件可W將識別限於所提議用於與主機設備 進行互操作的部件,並且基於附件對發送到主機或從主機接收的信號的處理或解釋程度而 進一步限制識別。例如,如果附件能夠將來自它自身的用戶輸入設備的用戶輸入信號解釋 為符合附件協議的消息,那麼附件不需要提供關於其輸入控制項的細節。相似地,如果附件不 提議呈現從主機設備流出的視頻,那麼附件不需要提供關於其可能具有的任何視頻顯示設 備的信息。
[0121] 可W改變部件描述符的特定結構,並且可W使用任何結構,只要部件識別為主機 提供了足夠的信息W便將附件的邏輯模型構造為輸入和/或輸出部件的集(或此類部件的 組群或束),其中每個部件(或束)是經由一個或多個接口可訪問的。在一些實施例中,可 W將同一個附件內的不同部件(或束)與特定目的相關聯,該些特定目的可W包括可與附 件一起使用的主機的特定功能性。附件協議可W基於存在於至少一些主機設備中的功能性 來定義一組已識別目的。如下所述,主機設備可W使用部件識別信息來解釋從附件接收到 的輸入信號和/或將輸出信號經由一個或多個可用通信信道路由發送到附件。
[0122] 本文所述的實施例可W提供用於附件到主機設備的識別並建立主機與附件之間 的操作協定的穩健且靈活的技術。在W下意義上可W將識別過程描述為"整體的":附件遞 送關於其能力、部件和可用通信接口的足夠信息W允許主機設備將附件的邏輯模型構造為 部件集(或部件束),每個部件集均與特定功能或目的相關聯並且可經由一個或多個特定 通信接口訪問。該進而可W允許主機設備確定用於在互操作過程中與特定附件交換的信號 的最佳路由。就部件和束描述符是在附件固件中進行定義的情況來說,識別和路由優化可 W對用戶透明地進行管理。
[0123] 此外,在識別還包括附件期望調用(例如,使用上述消息列表)的功能性的指示的 實施例中,主機還可W驗證附件是否具有能夠支持其提議使用的功能性的部件。該可W進 一步有利於平滑和可靠的互操作。
[0124] 該些技術可W在例如該樣的上下文中使用:其中主機能夠與具有用W實現寬範圍 的附件依賴功能性的不同能力的多個不同部件進行互操作。現將描述識別過程的實例和基 於識別結果的互操作的實例。
[0125] 圖10是根據本發明的實施例的可在主機設備(例如,圖1的主機設備100或圖2 的主機設備202)中實現的用於協商識別的過程1000的流程圖。
[0126] 當主機檢測到與附件的連接時,過程1000可W在框1002處開始。例如,附件可W 連接至主機設備上的連接器,如圖1中所示,並且所連接的附件可W將該連接器上的一個 或多個引腳牽拉到特定電壓,從而指示附件的存在。附件還可W請求經由無線協議(例如, 藍牙或Wi-Fi)的連接,並且主機可W建立可用於交換附件協議消息的連接來作出響應。
[0127] 在框1004處,主機可W例如通過發送如上所述的IDStart消息來請求附件識別其 本身。主機還可W在框1006處啟動驗證過程W驗證附件的真實性。在一些實施例中,驗證 過程可W包括;請求並從附件接收數字證書,確認數字證書的有效性(例如,通過將其與已 知良好和/或已知不良的證書的列表進行比較),W及向附件發出隨機數或質疑W便附件 使用私有密鑰來進行數字籤名並返回;所籤名的隨機數可W由主機設備使用與數字證書相 關聯的公共密匙進行驗證。可W例如使用附件協議的通用消息集中的消息來實現驗證請求 和響應。(就識別消息而言,可W假定所有附件和所有主機都能夠發送和接收驗證消息,並 且主機可W將附件未能對驗證消息作出適當響應或根本不響應解釋為驗證過程失敗。)在 一些實施例中,驗證過程可W在後臺運行,而過程1000繼續進行識別。在其它實施例中,過 程1000可W在框1006處等待驗證完成,並且只有在驗證成功時才進一步進行。
[0128] 在框1008處,過程1000可W等待來自附件的IDIn化消息。在一些實施例中,主 機不會無限期地等待。例如,在框1010處,過程1000可W確定自從發送IDStart消息是否 已經過超時周期。該周期可W是例如100毫砂、2砂或任何其它所需時間周期。如果超時周 期已過去,那麼在框1012處,過程1000可W退出,同時向附件發送如W上所述的IDTimeout 消息。為了在超時之後重新嘗試識別,附件可重新建立連接,從而在框1002處重新開始過 程1000。根據具體實施,重新建立連接可能或可能不要求設備的物理斷開和重新連接或其 它用戶幹預(例如按壓附件上的重置按鈕)。在一些實施例中,主機不具有超時周期,並且 過程1000可W-直等待IDIn化消息,只要附件保持連接。
[0129] 如果在框1010處超時周期未過去,那麼在框1014處過程1000可W確定是否已接 收到完整的IDIn化消息。在一些實施例中,單個IDIn化消息可W分割成多個分組來傳輸 到主機,並且可能的是,在某個時刻僅已接收IDIn化消息的一部分。如果消息不是完整的, 那麼過程1000可W繼續等待(框1008)直到接收到完整的消息或超時發生。(在一些實 施例中,部分IDIn化消息的接收可W重置超時間隔,W允許附件具有更多的時間來使消息 完整。)在一些實施例中,附件可W發送多個IDIn化消息,每個包含識別信息的一部分,並 且框1014可W包括檢測指示附件已完成發送IDIn化消息的不同消息(例如,"ID完成"消 息)。
[0130] 一旦已接收到完整的IDIn化消息,那麼在框1016處主機設備可W解析所接收的 消息並且例如通過應用各種決策規則來確定接受還是拒絕該消息。例如,在框1018處,主 機設備可W讀取一個或多個所提議的有效消息列表(例如,圖5的消息發送列表和消息接 收列表參數),並且確定主機是否能夠接收所有可發送消息和發送所有可接收消息。如果主 機不具有該種能力,那麼可W拒絕識別。
[0131] 類似地,在框1020處,主機可W至少部分地基於由附件提供的信息來執行其它兼 容性測試。例如,可W使用製造商和型號信息和/或部件描述符來確定附件的某些能力,諸 如它是否能夠提供GI^坐標或接收視頻。如果附件在其消息發送列表中包括"發送GI^坐 標"消息但不知其是否能夠提供GI^坐標,那麼兼容性測試可能會失敗。類似地,如果附件 在其消息接收列表中包括"視頻請求"消息但不知其是否能夠接收視頻信號,那麼另一種兼 容性測試也可能會失敗。又如,如果消息列表指示附件可W請求視頻或音頻流,但附件未識 別到具有足W接收該流的帶寬的接口,那麼另一種兼容性測試可能會失敗。在一些實施例 中,測試可W基於是否已知附件不能夠做其消息列表暗示其能夠做的某些事情,而不是基 於已知的能力。
[0132] 在一些實施例中,並非依賴於關於特定附件的能力(或其不具有的能力)的明確 信息,而是主機設備可W從消息列表推斷出附件具有某些能力。例如,如果附件指示它可W 發送"視頻請求"消息,那麼主機可W推斷出附件能夠接收視頻信號。在一些實施例中,任 選消息集可W包括在協商待遞送到附件的視頻信號格式並控制(例如,啟動和停止)視頻 供給時所需要的一組消息,並且主機可W要求附件支持整組該些消息或不支持該些消息中 的任何一個。
[0133] 在一些實施例中,可能已知特定主機設備與特定附件型號不兼容,並且該種已知 的不兼容性也可W是兼容性測試失敗的依據。
[0134] 還可W定義兼容性測試來強制執行關於設備行為的用戶期望。例如,如果用戶可 W與特定附件進行交互W定義存儲在主機設備上的媒體資產的播放列表(例如,通過調用 智能播放列表功能性或操作由附件提供用於從主機的媒體資產資料庫中選擇資產的遠程 接口),用戶可W合理地期望能夠與該附件進行交互W播放該種播放列表。因此,如果附件 提議的有效消息列表包括與定義附件上的播放列表相關的消息但不包括與播放該種播放 列表相關的消息,那麼測試可被定義為是失敗的。
[01巧]在框1024處,主機可W確定在框1006處開始的驗證過程是否成功。例如,成功可 能要求附件呈現已知良好的證書(或不在已知不良列表上的證書)並且成功籤名隨機數。 成功還可能要求特定證書對於特定附件有效,例如,基於附件型號和/或附件已包括在所 提議有效消息列表中的消息。也可W應用其它條件來確定驗證是否成功。
[0136] 如果通過了框1018、1020和1024處的所有測試,那麼在框1026處過程1000可W 接受識別,例如發送如上所述的IDAcc巧t消息。過程1000可W在此退出,同時識別完成。 應當理解,主機和附件可W保持連接並且可W開始根據所協商的操作協定,例如使用主機 在框1026處接受的提議中的任何或所有部件、接口和有效消息來進行互操作。該可W包括 如上所述的消息發送和/或消息接收列表中的消息,W及默認情況下被視為有效消息的任 何消息(例如,如上所述的通用消息)。
[0137] 如果框1018、1020或1024處的任一測試失敗,那麼在框1028處主機可W例如通 過發送IDReject消息來拒絕識別。在一些實施例中,IDReject消息可W包括指示識別為 何被拒絕的原因代碼。例如,可W指派不同的原因代碼來指示特定的失敗狀況,諸如驗證失 敗、主機無能力接收消息發送列表上的至少一條消息、主機無能力發送消息接收列表上的 至少一條消息、一條或多條消息與所識別或所推斷出的附件特性的不兼容性、消息集不足 W支持相關聯的功能性等。在一些實施例中,在特定消息或缺失特定部件描述符導致拒絕 的情況下,原因代碼還可W包括識別有問題的消息或缺失的部件描述符的信息。此類消息 可W有利於附件的重試嘗試,但並不要求該類消息。
[0138] 在發送IDReject消息之後,過程1000可W返回至框1008, W允許附件利用新 IDIn化消息來重試識別。在一些實施例中,如果識別由於驗證失敗而被拒絕,那麼過程 1000可W退出而不是允許附件重試。
[0139] 在所示實例中,過程1000不限制附件重試的數量。在一些實施例中,過程1000可 W通過W下方式強加限制;例如通過每次執行框1028時使重試計數器遞增並且如果計數 器達到上限(例如,3次重試)則退出而不是返回至框1008。在一些實施例中,過程1000 可W通過實施"全局超時"來限制重試,該"全局超時"限制在過程1000發送IDStart消息 的第一時間與所提議識別被接受的時間之間經過的時間;如果在全局超時周期結束時還沒 有建立操作協定,那麼過程1000可W退出。如果過程1000由於過量重試(包括全局超時 期滿和/或超過重試數量限制)而退出,那麼附件可W仍然繼續嘗試識別,但在框1012處 可能要求斷開連接/重新連接序列。
[0140] 在一些實施例中,附件可W在過程1000期間的任何時刻處例如通過發送如上所 述的IDCancel消息來取消識別過程。如果正在執行過程1000時在主機處接收到取消消息, 那麼過程1000可W退出。此時,在主機與附件之間的適當位置處不存在操作協定,並且主 機可W鎖定(例如,通過忽略)與附件的進一步通信。為了重新開始,可能要求附件如上所 述斷開連接和重新連接,從而在框1002處重新開始過程1000。
[0141] 如果在過程1000成功完成之後(例如,在框1026之後)接收到取消消息,那麼主 機可W重新開始過程1000 W獲得來自附件的新識別信息,例如而不需要斷開連接/重新連 接序列。在該種情況下,一些實施例可能不要求重新驗證(例如,可W省略框1006和1024), 只要主機和附件保持連接。
[0142] 圖11是根據本發明的實施例的可在附件(例如圖1的附件102或圖2的附件204) 中實現的識別過程1100的流程圖。當附件建立到主機的連接時,過程1100在框1102處開 始。例如,附件上的連接器可W與主機上的配對連接器接合(例如,如圖1中所示),或附件 可W使用無線通信協議來定位主機並且將主機識別為能夠經由附件協議進行通信的設備。 無論通信信道的細節如何,框1102都可W包括附件提醒主機其存在並且準備好使用附件 協議進行通信的操作。
[0143] 在框1104處,附件可接收來自主機的例如如上所述的IDStart消息。在框1106 處,附件可發起與主機的驗證過程;該過程可W與在如上所述的過程1000的框1006處發起 的過程互補。如同過程1000,框1106處的驗證可W在後臺與過程1100的其它操作同時執 行,或過程1100可在框1106處等待直到驗證完成並且僅響應於成功驗證來進一步繼續進 行。
[0144] 在框1108處,附件可W向主機發送IDIn化消息;該IDIn化消息可W包括附件對 有效消息列表的提議及其部件和接口的描述符。在一些實施例中,附件可W具有準備好的 IDIn化消息,該消息響應於IDStart消息而自動發送。在一些實施例中,附件可W實時地創 建或修改IDIn化消息。例如,如果IDStart消息(或從主機接收到的一些其它初步消息或 信號)提供關於特定主機或其能力的信息,那麼附件可W基於該信息來修改其一個或多個 有效消息列表,例如,W便基於該特定主機的特性移除已知該特定主機不支持的消息,或選 擇將優化附件的互操作的有效消息。又如,附件可W基於關於其連接至其上的特定主機的 信息而包括或省略某些部件或接口描述符。
[0145] 在框1110處,附件可W接收來自主機對IDIn化消息的響應。在所示實施例中,有 效響應為IDAccept和IDReject。如果在框1112處接收到IDReject,那麼在框1114處附 件可W確定是否重試識別。確定可W基於各種決策標準,諸如附件已經嘗試或重試並失敗 的次數、是否有任何備用選項(下文描述)落下、和/或如果IDReject消息中提供任何原 因代碼將如何。
[0146] 如果決策是進行重試,那麼在框1116處附件可修改IDIn化消息。在重試時可W 實施各種策略來修改IDIn化消息。例如,附件可W具有W優選程度遞減的順序布置的用於 識別的一個或多個準備好的"備用"選項。第一選項(框1108處初始通過時發送)可提供 最佳的操作體驗;後續備用選項可W逐漸偏離該個最佳選項,例如,通過移除或減少功能性 或通過利用可提供類似(如果不相同)功能性的較低效的集來替換更高效的有效消息集。 在框1116處,附件可W選擇備用選項序列中的下一個IDIn化消息。
[0147] 在IDReject消息包括原因代碼(例如,如上所述)的實施例中,附件可W在修改 IDIn化消息和/或確定是否重試時使用該信息。例如,如果原因代碼將消息發送或消息接 收列表上的特定消息識別為拒絕的原因,那麼附件可W移除引起問題的消息,假定仍然可 W提供可接受的功能性(並且如果不能提供,那麼附件可W在框1114處確定不進行重試)。 或如果原因代碼將特定部件或接口(或特定部件或接口的缺失)識別為拒絕的原因,那麼 附件可修改其部件或接口描述符並重試。
[0148] 修改後IDIn化消息可W在框1108處發送,並且如果接收到另一個拒絕,那麼附 件可W在框1114處再次確定是否進行重試。如果在任何時刻附件確定不重試,那麼過程 1100可W在框1118處發送IDCancel消息並且在框1120處退出。在一些實施例中,不發送 IDCancel ;如上所述,主機側識別可W實施超時,並且可W將在超時周期內未收到來自附件 的響應解釋為取消。在一些實施例中,在退出過程1100之後,附件可W與主機斷開連接並 且重新連接至主機W便重新開始過程1100並且再次嘗試。
[0149] 如果在框1112處IDIn化命令未被拒絕,那麼期望附件在框1122處接收 IDAcc巧t。在該種情況下,識別成功完成,並且附件可W在框1124處開始與主機進行互操 作。儘管過程1100可退出,但主機和附件可W保持連接並且可W開始根據所協商的操作協 定,例如使用主機在框1122處接受的提議中的任何或所有部件、接口和有效消息來進行互 操作。該可W包括如上所述的消息發送和/或消息接收列表中的消息,W及默認情況下被 視為有效消息的任何消息(例如,如上所述的通用消息)。
[0150] 在過程1100中,如果附件響應於IDIn化消息既不接收IDAccept也不接收 IDRe ject,那麼該被視為錯誤。(在一些實施例中,該種情況也可能發生在主機在附件發送 IDIn化之前或之後發送IDTimeout的情況下。)在該種情況下,可W在框1126處重置連接, 並且過程1100可W返回至框1102 W嘗試重新建立連接並且從最初重新開始識別過程。在 一些實施例中,重置連接可能要求附件與主機的物理斷開或其它用戶幹預(例如,按壓附 件上的重置按鈕)。例如,如果主機在附件確定的超時周期內根本不響應,或如果響應不是 IDAccept 或 IDReject,那麼可 W到達框 1126。
[0151] 應當理解,圖10和圖11的識別過程是例示性的並且可W進行變型和修改。可並 行執行按序列描述的步驟,可改變步驟的次序,且可修改、組合、添加或省略步驟。例如,女口 果需要,驗證過程可W在任何時間(包括主機向附件發送IDStart之前或主機接收IDIn化 之後)開始或全部省略。主機用於確定接受或拒絕特定識別提議的測試可W任何順序執 行,並且可W使用任何數量的測試和任意測試組合。在一些情況下,測試結果可W取決於 IDIn化消息和驗證信息兩者的內容;例如,可W基於由附件呈現的特定數字證書來限制發 送或接收某些消息或使用某些接口的能力。
[0152] 在識別失敗(例如,超時發生或附件取消)的情況下,根據具體實施,附件或主機 設備(或兩者)可W提醒用戶。此類提醒可W採取W下形式:屏幕上通知、指示燈點亮、聲 音等。用戶隨後可採取適當的動作來解決故障,諸如使附件斷開連接並重新連接(例如,使 連接器脫離接合併重新接合、按壓重置按鈕等)。
[0153] 如上所述,識別操作(例如,過程1000和1100)的成功完成使主機和附件置於如 下狀態:其中它們能夠交換消息並且已經商定規定每個設備將從另一個設備接受哪些消息 W及哪些接口可用於彼此通信的操作協定。
[0154] 在一些實施例中,如上所指出,附件可W在識別(例如,過程1000和1100)成功完 成之後發送ID化date消息。ID化date消息可W包括用於先前使用IDInfo消息所指定的一 個或多個參數的新值。如上所述,ID化date消息可W僅限於更新IDIn化消息中的參數的 子集(例如,改變關於先前識別的接口或部件的信息)。在ID化date消息不影響主機與附 件之間的現有操作協定的情況下,主機可W只更新相關信息並且使用更新後信息來繼續與 附件進行交互。
[0155] 例如,在一些實施例中,附件可W在如上所述的IDIn化消息中提供其當前語言和 /或區域設置。在識別之後,主機可W利用指示可能不同於當前設置的推薦語言和/或區域 設置的消息來回復。(推薦可W基於主機設備本身的設置、基於附件的當前設置和所支持的 語言/區域、基於諸如主機設備或附件的當前位置的其它信息等。)如果附件接受推薦,那 麼附件可W發送指示新當前語言和/或區域設置的ID化date消息。又如,用戶可W通過直 接與附件交互來改變附件上的語言和/或區域設置,並且附件可W發送ID化date消息來將 該種改變通知給主機。
[0156] 在一些實施例中,可W使用ID化date消息來發送對附件的接口和設置的更新。例 女口,附件可W決定激活先前識別為不可用於附件協議通信的接口,或停用先前識別為可用 的埠。當附件使用ID化date激活接口時,主機可W將先前協商的操作協定應用於新激活 的接口。在一些實施例中,附件無法使用ID化date消息來添加未使用IDIn化識別的接口, 但可W使用ID化date來改變與使用IDIn化識別的任何埠相關的設置。
[0157] 如果附件確定需要對操作協定做出改變,那麼附件可W發送IDCancel消息而不 是ID化date,隨後將如上所述進行重新識別。如果主機確定需要對操作協定做出改變(例 女口,響應於I孤Pdate或任何其它事件或情況),那麼主機可W發送新的IDStart消息,從而 重新調用識別過程。
[015引一旦識別完成,附件和主機可W根據商定的條款進行互操作。例如,主機可W在確 定如何處理輸入信號和/或如何路由發送輸出信號時使用從附件獲得的信息。
[0159] 在一些實施例中,附件可W同時連接在多個接口上並且可W使不同接口在不同時 間連接或斷開。可能有用的是,主機設備確定一個附件是否連接在多個接口上或不同附件 是否連接在不同接口上。
[0160] 圖12是根據本發明的實施例的用於主機設備(例如,圖1的主機設備100)的可 管理到一個或多個附件的多個連接的過程1200的流程圖。在框1202處,主機設備可W檢 測第一接口上的到附件的連接。在框1204處,附件可W使用第一接口向主機識別其本身。 例如,可W使用上述的過程1000和1100。識別可W包括關於附件可在其上連接至主機的 所有接口的信息,即使在任何其它接口上尚未建立連接。此時,主機設備連接至一個"已知" 附件。
[0161] 在框1206處,當已知附件在第一接口上保持連接時,主機設備可能檢測到"未知" 附件的第二連接(例如,在第二接口上)。在框1208處,主機設備可W確定未知附件是該已 知附件還是不同的附件。例如,在一些實施例中,主機可W使用在框1204處從已知附件接 收到的附件信息。如上所述,附件識別可W包括提供關於已知附件能夠用於與主機設備進 行通信的每個接口的信息。該信息可W包括接口的名稱和/或其它標識符。如果第二連接 提供與已知附件先前所提供的相同的名稱和/或其它標識符,那麼主機設備可W檢測到該 種匹配並將"未知"附件識別為與已知附件相同。
[0162] 另選地,在一些實施例中,已知附件可W經由第一連接發送附件協議消息來指示 它正在建立第二連接。例如,附件協議可W定義ActivateInte計ace消息,該消息帶有包 括正經由其建立新連接的接口的標識符或名稱的參數。(該標識符已經在框1204處的 識別期間提供給主機)。附件可W在建立第二連接之前或之後的規定時間間隔內經由第 一連接發送ActivateInte計ace消息。如果主機在第二連接和將同一個接口識別為第二 連接的Activateinterhce消息的約定時間間隔內檢測到兩者,那麼主機可W確定第二 連接是到已知附件的另一個連接。如果檢測到第二連接而在約定時間間隔內未接收到 ActivateInterhce消息,那麼主機可W確定第二連接是到不同附件的連接。也可W使用其 它技術。
[0163] 如果主機確定第二連接上的附件是已知附件,那麼在框1210處主機可W應用來 自框1204的附件識別信息,並且使用第一連接和第二連接的任意組合來與附件進行通信。 例如,如下所述,信息可W基於與不同連接相關聯的信息類型和/或目的而選擇性地路由 發送到一個連接或另一個連接。
[0164] 如果在框1208處主機確定第二連接上的附件不是已知附件,那麼在框1212處主 機可W確定是否已達到同時連接的附件數量的上限。該上限可W建立在主機固件中,並且 可W是例如一個附件、兩個附件或任何其它數量。特定上限是設計選擇問題,並且可能受如 下考慮的影響:諸如主機設備的處理能力、各信道的可用通信帶寬、與維持到多個附件的連 接相關聯的電力消耗等。如果已達到上限,那麼在框1214處主機設備可W例如通過向第 二附件發送指示拒絕的消息或通過斷開第二連接而拒絕連接。如果未達到上限,那麼在框 1216處主機設備可W請求第二附件識別其本身。
[0165] 可W重複過程1200來允許建立到同一個附件或到多個附件的另外的連接。在一 些實施例中,可W存在關於到單個附件的同時連接數量的上限(除關於所連接附件的數量 的上限之外),並且如果達到該個限制,主機設備可W拒絕到單個附件的另外的連接。在一 些實施例中,只要至少一個到附件的連接保持連接,那麼附件(或主機)可W動態地發起或 終止連接(包括第一連接),而不要求附件進行重新識別;只有當不存在到附件的連接的時 間點發生時,才要求附件進行重新識別。
[0166] 不要求每個連接都支持附件協議。在一些實施例中,第一連接應當支持附件協議, W便使用上述過程來提供整體識別。然而,後續連接不需要使用附件協議。因此,例如,可W 使用串行埠(例如,UART)來建立第一連接,並且在識別期間,附件可W指示其具有藍牙 接口。然後,可W使用藍牙接口建立第二連接。主機可W確定第二連接是到同一個附件(例 女口,如上所述)的,並且可W使用藍牙連接向附件傳達藍牙兼容信息(例如,藍牙音頻)。同 時,主機可W繼續使用附件協議經由第一連接進行通信。
[0167] 在一些實施例中,主機可W利用其具有到同一個附件的兩個或更多個連接的事 實,例如,通過選擇用於特定通信類型的最佳接口。例如,主機可W使用UART連接來傳達短 控制消息,使用藍牙連接來傳達語音數據(例如,電話呼叫),並且使用USB連接來傳達音樂 或其它高質量音頻數據(該可能得益於USB與藍牙相比更高的帶寬)。
[0168] 相似地,主機可W實施路由規則,在該些規則中偏好特定連接接口用於特定類型 的信息傳輸。例如,對於音頻數據,可能優選高帶寬,並且可W將連接接口從高帶寬到低帶 寬的優選順序進行"排名"(例如,按照該種順序,為USB、Wi-Fi、藍牙)。對於短消息(例 女口,附件協議消息),可能優選低帶寬連接(例如,UART優於USB)。當主機設備開始向附件 發送特定類型的數據時,主機設備可W選擇對於該類型數據而言當前連接至附件的最優選 的連接接口。另外,如果主機正在使用的連接接口斷開,那麼主機可將信息傳輸重新引導至 當前連接的下一個最優選連接接口。可W使得路由選擇和重新路由對用戶透明;主機可W 基於當前狀況(例如,哪個或哪些連接是可用的和/或正在傳輸什麼類型的信息)而自動 選擇路由行為。
[0169] 圖13是根據本發明的實施例的可由主機設備(例如,圖1的主機設備100)用來 處理從附件(例如,圖1的附件102)接收到的輸入信號的過程1300的流程圖。過程1300 可W例如在W上所述的識別過程1000和1100成功完成之後的任何時間發生。
[0170] 在框1302處,主機設備接收來自附件的輸入信號。可W經由附件當前在其上連接 的任何通信信道來接收該信號。(可W使用單獨的過程(例如,上述過程1200)來處理請求 連接新信道的信號。)在框1304處,主機設備可W確定附件內的哪個部件(或部件束或部 件組)是輸入信號源。例如,主機可W確定是哪個接口遞送了輸入信號,隨後將與該接口相 關聯的部件或束識別為源(例如,基於上述描述符)。又如,輸入信號本身可W包括源部件 或束的部件ID或束ID ;因此,可W區分開附件內的不同源,即使它們使用同一個通信信道 或接口。
[0171] 在框1306處,主機設備可W基於輸入信號和源來確定響應。在框1308處,主機設 備可W執行響應。因此,主機設備可W根據信號源做出不同的響應。
[0172] W例示方式,考慮圖1的系統。附件102具有可向主機100提供輸入的若干不同 部件。例如,後控制臺控制項128可W包括用於媒體資產的啟動、暫停、重新開始或停止回放; 調節後置揚聲器116的音量;瀏覽媒體資產集合(例如,存儲在主機設備100的資料庫中的 資產);等等的按鈕或其它控制項。轉向盤控制項130還可W包括與通過前置揚聲器114播放 媒體資產相關的按鈕或其它控制項,並且前控制臺控制項122可W包括與播放媒體資產、進行 電話呼叫W及進行其它操作相關的控制項。
[0173] 假設在特定時間,主機設備100正在向後置揚聲器116流送音頻內容。主機設備 100可W接收源自後控制臺控制項128的指示播放/暫停按鈕事件的信號作為輸入信號。基 於源,主機設備100可W確定意圖在於切換正被遞送到後置揚聲器116的音頻內容的播放/ 暫停狀態。相似地,主機設備100可W接收源自轉向盤控制項130的指示播放/暫停按鈕事 件的信號作為輸入信號。主機設備100可W基於該信號來確定將採取的不同動作。例如, 主機設備100可W將該信號解釋為用於開始向前置揚聲器114流送相同音頻內容的請求, 並且將源自轉向盤控制項130的指示播放/暫停按鈕事件的後續輸入信號解釋為用於停止向 前置揚聲器114流送音頻內容的請求。該些操作可W在不影響至後置揚聲器116的流送的 情況下執行。
[0174] 又如,主機設備100可W根據特定輸入信號的源而執行相同動作的修改後版本。 例如,如果輸入信號是從轉向盤控制項130或前控制臺控制項122接收的,那麼主機設備100可 W假定駕駛員正在操作該些控制項並且駕駛員沒有正在看主機設備102的顯示器104。因此, 主機設備100可W保持其顯示器104關閉,即使所考慮的操作通常將涉及打開顯示器。如 果輸入信號是從後控制臺控制項128接收的,那麼該種假定可能不適用,並且主機設備100可 W打開其顯示器。
[01巧]主機設備100還可W使用附件信息來管理由除附件輸入之外的事件驅動的交互 (或正在進行的交互的改變)。圖14是根據本發明的實施例的可由主機設備(例如,圖1 的主機設備100)用來與附件(例如,圖1的附件102)進行交互的過程1400的流程圖。類 似的過程1300,過程1400可W例如在W上所述的識別過程1000和1100成功完成之後的任 何時間發生。
[0176] 在框1402處,主機設備可W檢測到觸發與附件的交互(或正在進行的交互的改 變)的事件。例如,附件可能已請求當特定事件(諸如主機設備的位置或運動改變、主機設 備周圍的環境照明改變、來電呼叫或接收到電子郵件或文本消息等)發生時得到通知。
[0177] 在框1404處,主機設備可W選擇附件的應當與其進行交互的特定部件(或如上所 述的部件束)。在一些實施例中,該選擇是基於編程到主機設備中的路由規則,如應用於關 於主機所連接的特定附件的部件(或束)的信息。路由規則可W將特定事件或事件類別與 特定目的和/或部件種類(例如,W上參照圖6至圖8所述的目的和部件種類)相關聯。 [017引例如,如果附件已識別到與電話通信的目的相關聯的部件(或束),那麼主機設備 可W與同電話呼叫有關的那個部件(或束)進行交互。因此,如果框1402處的事件對應於 檢測到來電,那麼主機設備可W提醒附件的電話通信部件。又如,如果框1402處的事件與 流媒體相關(例如,到達流結束或主機與流的源脫離接觸),那麼主機設備可W將該事件的 通知提供給附件的與媒體內容回放相關聯的部件(或束)。
[0179] 在框1406處,主機設備可W使用適當接口生成向在框1404處所選的部件(或束) 的輸出,該接口可W是與先前提供給主機設備的附件識別信息(例如,上述描述符)中的部 件或束相關聯的接口。接口選擇可W基於W下信息:關於當前所連接的接口(該可W例如 通過實施上述過程1200得知)、與由附件識別的特定部件(或束)相關聯的優選接口、和/ 或與由主機設備識別的特定目的相關聯的優選接口。因此,主機可W經由適合於信息的目 的或期望用途的接口來向附件或附件的特定部件遞送信息。
[0180] 雖然已相對於特定實施例描述了本發明,但是本領域的技術人員應當認識到,許 多修改都是可W的,並且參照一個實施例進行描述的特徵可應用於其它實施例。在一些實 施例中,並不是可連接至主機的每個附件都需要識別其本身;成功的識別可W是使用附件 協議的任何進一步通信的條件,但可W支持附件協議之外的其它(受限的)功能性。例如, 充電器可能能夠向主機設備提供電力而不需要發送任何識別消息。又如,主機設備可W具 有不實施附件協議的埠(例如,模擬音頻輸出埠,諸如耳機接口),並且對於此類埠 可能不要求識別。
[0181] 在一些實施例中,如果所提議的識別被拒絕,那麼不要求選擇重試的附件重新發 送其所有參數(除非附件取消該過程或斷開連接)。可W要求附件重新發送完整的消息列 表而不是對先前列表的修正,W及附件確定應當改變的任何其它參數。要求附件呈現單個 完整的消息列表(或兩個單獨的列表,一個用於所有發送的消息並且一個用於所有接收的 消息)可W有利於主機設備對修訂後提議的考慮,並且可W比實施一系列指令來從先前呈 現的列表中移除單獨消息和/或向先前呈現的列表添加單獨消息更為簡單。
[0182] 在一些實施例中,當識別正在進行時,可W阻止附件發送與識別不相關的任何消 息。例如,主機可W忽略可能接收到的任何此類消息。在其它實施例中,主機在識別過程期 間可W暫時允許至少一些不相關的消息(例如,通過接收並根據它們做出動作),並且如果 過程W失敗告終或如果該些消息不在所協商的操作協定範圍內,那麼在識別之後開始阻止 或忽略消息。同樣,在一些實施例中,附件可W選擇忽略或處理在識別過程期間可能接收到 的與識別不相關的消息。
[0183] 另外,雖然W上描述是參考附件向主機設備識別自身進行描述的,但是了解本教 導內容的本領域技術人員將認識到,該些角色可W顛倒。可W實施類似的消息和過程W允 許主機向附件整體識別自身。還可W實施雙向識別,例如其中一個設備呈現關於其本身的 信息並且另一個設備利用其本身的信息來響應。在任何特定的具體實施中,對待交換的可 接受消息集的協商可W發生在任一方向上(例如,如上所述,附件提議/主機決定,或在相 反方向上,其中主機提議並且附件決定)。
[0184] 可使用專用部件和/或可編程處理器和/或其它可編程設備的任意組合來實現本 發明的實施例。本文所述的各種過程可W任何組合方式在相同處理器或不同處理器上實 現。在部件被描述為被配置為執行某些操作的情況下,可例如通過設計電子電路W執行操 作、通過對可編程電子電路(諸如微處理器)進行編程W執行操作或它們的任何組合,來實 現此類配置。儘管上述實施例可引用具體硬體和軟體部件,但本領域的技術人員將會知道, 也可W使用硬體和/或軟體部件的不同組合,並且被描述為在硬體中實現的特定操作也可 能在軟體中實現,或反之亦然。
[0185] 可W在各種計算機可讀存儲介質上編碼並存儲結合本發明各特徵的電腦程式; 合適的介質包括磁碟或磁帶、光學存儲介質諸如光碟(CD)或DVD (數字多功能盤)、快閃記憶體存 儲器,W及其它非暫態介質。(應當理解,數據的"存儲"不同於使用暫時性介質(諸如載 波)的數據傳播。)可將用程序代碼編碼的計算機可讀介質與兼容的電子設備封裝在一起, 或者所述程序代碼可獨立於電子設備提供(例如,經由網際網路下載或作為單獨封裝的計算 機可讀存儲介質)。
[0186] 因此,儘管已相對於具體實施例描述了本發明,但應當理解,本發明意在覆蓋W下 權利要求範圍之內的所有修改和等價形式。
【權利要求】
1. 一種向主機設備識別附件設備的方法,所述方法包括: 由所述附件與所述主機設備建立通信信道,其中所述通信信道是使用第一通信接口建 立的;以及 由所述附件經由所述通信信道向所述主機發送識別信息,其中所述識別信息包括所述 附件能夠用來與所述主機進行通信的至少一個其它通信接口的接口描述符。
2. 根據權利要求1所述的方法,其中所述識別信息還包括多個部件中的每一個的部件 描述符,所述多個部件包括音頻輸出部件、視頻輸出部件或用戶輸入部件中的至少一者。
3. 根據權利要求2所述的方法,其中所述多個部件中的至少一個的所述部件描述符還 包括識別所述部件待與其相關聯的特定功能性的目的指示符。
4. 根據權利要求2所述的方法,其中所述識別信息還包括將所述多個部件中的至少一 些部件關聯成束的束描述符。
5. 根據權利要求1所述的方法,其中所述第一通信接口是藍牙接口、UART接口、USB接 口或Wi-Fi接口中的一種。
6. 根據權利要求1所述的方法,其中所述至少一個其它通信接口包括藍牙接口、UART 接口、USB接口或Wi-Fi接口中的至少一種。
7. -種由主機設備與附件進行通信的方法,所述方法包括: 由所述主機設備經由第一通信信道檢測至附件的連接,其中所述第一通信信道使用第 一通信接口; 由所述主機設備經由所述第一通信信道接收來自所述附件的識別信息,其中所述識別 信息包括接口描述符,所述接口描述符提供關於所述附件能夠用來與所述主機進行通信的 第二通信接口的信息; 由所述主機設備確定是否接受所述識別信息;以及 在所述識別信息被接受的情況下,由所述主機設備使用所述第一通信接口和所述第二 通信接口與所述附件進行通信。
8. 根據權利要求7所述的方法,其中所述識別信息還包括提供關於所述第一通信接口 的信息的接口描述符。
9. 根據權利要求7所述的方法,其中使用所述第一通信接口和所述第二通信接口與所 述附件進行通信包括: 由所述主機設備確定將向所述附件發送特定數據; 由所述主機設備選擇所述第一通信接口和所述第二通信接口之一用於發送所述特定 數據;以及 由所述主機設備使用所選擇的通信接口發送所述特定數據。
10. 根據權利要求7所述的方法,其中使用所述第一通信接口和所述第二通信接口與 所述附件進行通信包括: 經由所述第一通信接口或所述第二通信接口從所述附件接收輸入信號; 由所述主機設備確定響應於所述輸入信號將採取的動作,其中所述確定部分地基於所 述輸入信號並且部分地基於使用所述通信接口中的哪一個來遞送所述輸入信號;以及 由所述主機設備採取所確定的動作。
11. 一種用於由主機設備與附件進行通信的方法,所述方法包括: 由所述主機設備經由第一通信信道檢測至第一附件的連接,其中所述第一通信信道使 用第一通信接口; 由所述主機設備經由所述第一通信信道接收來自所述第一附件的識別信息,其中所述 識別信息包括所述第一附件能夠用來與所述主機進行通信的多個通信接口的多個描述符, 所述多個通信接口包括所述第一通信接口和第二通信接口; 由所述主機設備經由所述第二通信接口檢測連接請求; 由所述主機設備確定所述連接請求是否由所述第一附件生成;以及 在所述連接請求是由所述第一附件生成的情況下,使用所述第一通信接口和所述第二 通信接口與所述第一附件進行通信。
12. 根據權利要求11所述的方法,還包括在所述連接請求不是由所述第一附件生成的 情況下: 由所述主機設備確定當前是否連接有最大數量的附件;以及 在當前連接有少於最大數量的附件的情況下,由所述主機設備請求使用所述第二通信 接口的所述附件提供識別信息。
13. 根據權利要求11所述的方法,其中使用所述第一通信接口和所述第二通信接口與 所述第一附件進行通信包括: 由所述主機設備確定將向所述第一附件發送特定數據; 由所述主機設備選擇所述第一通信接口或所述第二通信接口之一用於發送所述特定 數據;以及 由所述主機設備使用所述第一通信接口或所述第二通信接口中的所選擇的一個來發 送所述特定數據。
14. 根據權利要求13所述的方法,其中所述選擇基於所述第一通信接口和所述第二通 信接口的相應帶寬特性。
15. 根據權利要求11所述的方法,其中使用所述第一通信接口和所述第二通信接口與 所述第一附件進行通信包括: 經由所述第一通信接口或所述第二通信接口之一從所述附件接收特定消息; 由所述主機設備確定響應於所述特定消息將採取的動作,其中所述確定部分地基於所 述特定消息並且部分地基於所述消息是經由所述第一通信接口還是所述第二通信接口接 收的;以及 由所述主機設備採取所確定的動作。
16. -種附件設備,包括: 多個部件,所述多個部件包括音頻部件、視頻部件或用戶輸入部件中的至少一個; 多個通信接口,所述多個通信接口可操作以與主機設備進行通信;和 識別邏輯,所述識別邏輯被配置為經由所述多個通信接口中的第一個向所述主機設備 發送包含識別信息的識別消息, 其中所述識別信息包括所述多個部件中的每一個的部件描述符和所述多個通信接口 中的每一個的接口描述符。
17. 根據權利要求16所述的附件設備,其中所述識別信息還包括束描述符,所述束描 述符將所述多個部件中的兩個或更多個彼此相關聯從而定義束。
18. 根據權利要求17所述的附件設備,其中所述束描述符還將所述多個通信接口中的 至少一個與所述束相關聯。
19. 根據權利要求16所述的附件設備,其中所述多個部件包括視頻部件,並且所述視 頻部件的所述部件描述符包括關於所述視頻部件的視頻能力的信息。
20. 根據權利要求16所述的附件設備,其中所述多個部件包括音頻部件,並且所述音 頻部件的所述部件描述符包括關於所述音頻部件的音頻能力的信息。
21. -種主機設備,包括: 被配置為執行多種功能的執行邏輯; 可操作以與附件進行通信的多個主機通信接口; 耦接在所述執行邏輯與所述多個主機通信接口之間的控制和路由邏輯,所述控制和路 由邏輯被配置為可選擇地將信息從所述執行邏輯路由發送到所述多個主機通信接口中的 一個;和 識別邏輯,所述識別邏輯被配置為經由所述多個主機通信接口中的第一個從附件設備 接收包含識別信息的識別消息, 其中所述識別信息包括多個附件部件中的每一個的部件描述符和多個附件通信接口 中的每一個的接口描述符。
22. 根據權利要求21所述的主機設備,其中所述控制和路由邏輯進一步被配置為使得 用於特定信息從所述執行邏輯到所述主機通信接口中的一個的路由部分地基於所述識別 信息確定。
23. 根據權利要求21所述的主機設備,其中所述執行邏輯進一步被配置為經由所述 多個主機通信接口中的一個來接收源自所述附件的輸入信號,並且響應於所接收的輸入信 號來確定將採取的動作,其中所述確定部分地基於所述輸入信號並且部分地基於關於以下 情況的確定:所述輸入信號是所述識別信息中所識別的所述附件通信接口中的哪一個發送 的。
【文檔編號】G06F13/38GK104350483SQ201380028189
【公開日】2015年2月11日 申請日期:2013年5月13日 優先權日:2012年6月8日
【發明者】S·拉蒂, E·W·福奧, J·J·耶, G·高勒姆百斯基 申請人:蘋果公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀