新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于 Azure USBx 開發 USB_OTG_HS MSC 應用的幾個問題

        基于 Azure USBx 開發 USB_OTG_HS MSC 應用的幾個問題

        作者: 時間:2024-04-16 來源: 收藏

        某客戶在使用 開發一款智能手表時,需要使用 實現 USB Storage 功能。建議客戶參考“STM32U575I-EVApplicationsUSBXUx_Device_”例程來實現。但是,客戶抱怨參考 U575 的例程也無法調試通過,程序在 USB_CoreInit()無法初始化成功。在支持解決了客戶初始化失敗的問題后,客戶反饋仍然無法調通
        storage 程序。
        本文主要介紹使用 USB_HS 開發 USBx 應用時的幾個問題點,詳細配置和移植過程,讀者可自行參考本文附件中的工程源碼。
        2. 問題調研與驗證
        客戶在使用 STM32CubeMX 生成 USBx Device 工程時采用的默認 RCC 時鐘樹配置如下:

        本文引用地址:http://www.104case.com/article/202404/457675.htm

        1713243669349061.png

        3. 問題分析與解決辦法
        USB 初始化失敗的問題既然能夠穩定復現,那么問題應該比較好找,經過查看 DS13633 和RM0456 對于 外設有如下相關描述。

        1713243704125544.png

        根據文檔描述,也就是說 這個 IP Core 工作于 60MHZ,它是由OTG_HS_PHY Clock 提供的,為了保證其精度必須使用外部晶振 HSE,且 OTG_HS_PHY 的時鐘頻率僅支持 16/19.2/20/24/26/32 這幾個頻率大小。
        在 STM32CubeMX 里將 USB_OTG_HS 時鐘重新配置如下:

        1713243748161538.png




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 五莲县| 庆元县| 屏南县| 南丹县| 福清市| 双城市| 巴中市| 区。| 平阳县| 安康市| 阳曲县| 泉州市| 会泽县| 邢台县| 克什克腾旗| 正宁县| 临城县| 中宁县| 兰州市| 乌鲁木齐市| 来宾市| 休宁县| 介休市| 江城| 黄平县| 松滋市| 黄浦区| 油尖旺区| 嵩明县| 临湘市| 桦南县| 镇巴县| 天长市| 同仁县| 从化市| 临城县| 江源县| 巩义市| 陕西省| 维西| 土默特右旗|