前言
USB作為從機設(shè)備時,管腳連接以及通訊的驗證方法其實就是下載一段簡單USB程序,在不需要任何驅(qū)動的前提下實現(xiàn)簡單的USB通訊。通過這個簡單程序的運行情況來判斷USB管腳和通訊是否正常。
問題分析
USB作為從機設(shè)備時,其硬件驗證相對簡單。當硬件工程師懷疑自己的硬件有問題時,就自己寫一個簡單的測試程序。但這對一般的硬件工程師來說還是有一定難度的。通過STM32CubeMX這個工具,這個過程就變的非常簡單了。方法如下:
1/在STM32CubeMX中選擇您需要使用的開發(fā)板,我們以STM32F401C-Discovery板子為例(在選擇板子的時候,是不需要需改時鐘配置+管腳配置的,所以流程更加簡單)
注意:如果你選擇的不是開發(fā)板,而是自己做的板子請參考如下簡易配置流程:
1.選STM32Fxxx
2.在PinOut項中配置RCC的HSE外部時鐘開啟(這個是必須的,除了STM32F0x2系列MCU)
3.開啟USB_OTG_HS/USB_OTG_FS/USB中的InternalFS PHY為Device Only
4.設(shè)置Middleware 中的USB_Device為HumanInterface device
5.配置時鐘的輸入為‘x’M(默認是25M,這里的‘x’是需要與實際連接晶體頻率相等),設(shè)置系統(tǒng)時鐘為72M(建議使用時鐘自動分配功能,際具體數(shù)據(jù)需要根據(jù)實際所選芯片的時鐘范圍來設(shè)置)
6.直接生成代碼運行即可
2/在Pinout中選擇USBOTG FS選項中的Device Only選項。
之后在Middleware中選擇USBDevice選項中的Human Interface deviceclass
3/直接生成工程,并編譯下載到STM32F401C-Discovery板子上就可以驗證了。如果可以看到HID的設(shè)備,那么就是USB部分的硬件聯(lián)系沒有什么問題了.
總結(jié):
該工程只是完成了一個USBHID類的枚舉工作,不需要工程師添加任何代碼,其作用就是為了驗證USB作為從機設(shè)備時的硬件管腳連接以及通訊是否有問題。且一般windows都是支持HID這個基本類,故此方法有廣泛的實用意義。
重要通知 - 請仔細閱讀
意法半導(dǎo)體公司及其子公司(“ST”)保留隨時對ST 產(chǎn)品和/ 或本文檔進行變更、更正、增強、修改和改進的權(quán)利,恕不另行通知。買方訂貨之前應(yīng)獲取關(guān)于ST 產(chǎn)品的最新信息。ST 產(chǎn)品的銷售依照訂單確認時的相關(guān)ST 銷售條款。
買方自行負責對ST 產(chǎn)品的選擇和使用, ST 概不承擔與應(yīng)用協(xié)助或買方產(chǎn)品設(shè)計相關(guān)的任何責任。
ST 不對任何知識產(chǎn)權(quán)進行任何明示或默示的授權(quán)或許可。
轉(zhuǎn)售的ST 產(chǎn)品如有不同于此處提供的信息的規(guī)定,將導(dǎo)致ST 針對該產(chǎn)品授予的任何保證失效。
ST 和ST 徽標是ST 的商標。所有其他產(chǎn)品或服務(wù)名稱均為其各自所有者的財產(chǎn)。
本文檔中的信息取代本文檔所有早期版本中提供的信息。