共用方式為


支援USB充電裝置的USB篩選驅動程式

如果函式控制器使用內建 Synopsys 和 ChipIdea 驅動程式,請撰寫支援偵測濕度的篩選條件驅動程式。 如果您要撰寫專屬函式控制器的用戶端驅動程式,則會藉由實作 EVT_UFX_DEVICE_PROPRIETARY_CHARGER_SET_PROPERTYEVT_UFX_DEVICE_PROPRIETARY_CHARGER_RESETEVT_UFX_DEVICE_DETECT_PROPRIETARY_CHARGER,在用戶端驅動程式中整合EVT_UFX_DEVICE_PROPRIETARY_CHARGER_SET_PROPERTY/附加偵測。

USB 函式堆疊可讓裝置,例如手機或平板電腦,在聯機到主機和 USB 電池時收費,如 BC) 1.2 規格所定義的 USB 電池充電 (。

  • 裝置可用於充電的埠有兩種類型。 裝置可以從專用充電埠 (DCP) 隨附的裝置上收費。 或者,當裝置連線到計算機時,裝置可以從標準下游埠或充電下游埠。 這兩種情況都符合 USB BC 1.2 規格

  • 某些電池未遵循規格。 USB 函式堆疊可讓裝置從那些專屬的 USB 電池充電。

若要支援符合規格規範和專屬的電池,則需要這些作業。

  • 裝置能夠在連接或中斷連結 USB 主機或充電裝置時偵測到。
  • 裝置能夠偵測 BC 1.2 規格所定義的不同 USB 充電埠。
  • 針對 BC 1.2 規格所定義的 USB 充電裝置,裝置會收取 BC 1.2 規格目前允許的最大金額。
  • 裝置能夠偵測專屬的USB充電裝置。
  • 對於專屬的USB電池,請判斷裝置可以繪製的目前數量上限。
  • 通知操作系統有關連接的 USB 埠類型。
  • 防止裝置透過OS中的USB提取目前,即使USB主機已連線,且裝置已使用主機自行設定也一樣。

這些作業是由 USB 函式類別延伸模組處理, (UFX) /client 驅動程式 配對,以及載入為 USB 函式裝置堆疊中較低篩選器的篩選條件驅動程式。 驅動程式會管理從 USB 埠偵測開始的 USB 充電,以通知電池堆疊何時可以開始充電,以及裝置可以繪製的最大目前數量。

以下是裝置堆疊的架構表示法。

USB 充電。

當 USB 埠連接到裝置時,用戶端驅動程式會收到較低篩選驅動程式或中斷的通知。 此時,客戶端驅動程式會透過與 USB 硬體通訊來執行埠偵測,並將埠類型回報給 UFX。 或者,它可以要求篩選驅動程式。 在此情況下,篩選驅動程式會與USB硬體協調以執行USB埠偵測,並將偵測到的埠類型傳回給客戶端驅動程式,而客戶端驅動程式會將它傳遞給UFX。

根據埠類型,UFX 會決定裝置可以繪製的目前數量上限,並將該資訊傳送至充電匯總驅動程式 (CAD) 。 CAD 會驗證資訊。 如果目前的 有效,CAD 會將要求傳送至電池類別驅動程式,以開始充電至指定的目前最大值。 電池類別驅動程式會將充電要求轉送至電池迷你類別驅動程序進行處理。 如果充電要求指定了附加專屬的電池,而電池迷你類別會處理專屬的電池,迷你類別驅動程式就可以嘗試以其判斷為適當的目前最大值來充電。 否則,電池迷你類別最多只能收取 CAD 所指定的最大目前電量。