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