天天看點

STM32 USB On-The-Go Host and Device Library複合裝置分析

最近在搞USB,需要用到複合裝置,網上看來看去都是用的舊版本的USB庫。

看官網ST更新了USB的固件庫,适用于STM32F105/7xx, STM32F2xx 和STM32F4xx等系列。決定采用最新的,畢竟應該是優化了不少功能的。

目前最新的版本,Device庫為1.2.1,Host庫為2.2.1,OTG庫為2.2.1

STM32 USB On-The-Go Host and Device Library複合裝置分析

這個版本的庫在檔案分類上做得很好,一眼就能知道這個檔案是關于什麼方面的驅動的。關于新版庫的檔案結構解析可以參考STM32 之 标準外設版USB驅動庫詳解(架構+檔案+函數+使用說明+示例程式)這篇博文,說的很詳細。

下面講解我在使用這個USB庫時遇到的問題及解決辦法。

我需要用STM32F207的開發闆通過USB口來模拟滑鼠+鍵盤+HID通訊的功能。硬體連接配接是接到單片機的PB14,PB15腳,也即OTG_HS端口。我沒有用到外置的PHY,隻想用HS端口實作FS的功能。網上關于用OTG_HS端口實作OTG_FS功能的文章比較少,折騰了了半天才弄明白。具體如何修改可以參見我的博文:STM32 HS端口改為FS步驟。

滑鼠+鍵盤的功能好實作,主要是配置好HID配置描述符和報告描述符即可。2種裝置共用1個端點(輸入端點1),網上關于鼠

繼續閱讀