[NXP i.MX 應用處理器教室] 如何在i.MX8M的平台上設計USB2.0接口,而不帶USB TYPE-C

由於i.MX8M發布,其所對應的開發板線路,在USB的接口設計是USB TYPE-C。
但是某些客人的需要,只需要USB2.0即可,不需要USB3.0,甚至USB TYPE-C。
為了使具有類似需求的客戶能夠順利完成設計,本文將教導大家如何設計"USB2.0"原理圖。

i.MX8MQ支持USB3.0並與USB2.0兼容。在開發板上,使用USB TYPE-C設計方案。
因此我們必須卸下USB TYPE-C,PD(power deliver)芯片和邏輯(CC logic)芯片。同時,將連接接口更改為MicroUSB和USB TYPE-A。

硬件設計:
一、首先:深入了解i.MX8M的IOMUX清單(USB相關訊號),如下


二、電路設計
A、USB電源(USB_V)與電流保護(Over Current)設計如下


B、USB1接口(Micro-USB)設計如下
      USB1被配置為雙重角色模式(HOST / Device),USB1_OTG_ID用於檢測


C、USB接口(USB Type-A)設計如下
      USB2被配置為HOST角色模式,USB2_OTG_ID用於檢測(接地)

補充關於USBx_OTG_ID和USBx_ID的說明

(1)個USBx_OTG_ID

         USBx_OTG_ID也稱為GPIO_ID。 在工作過程中,軟件根據ID引腳的電平從高到低或從低到高來更改設備(Device)和主機(HOST)之間的角色。

(2)個USBx_ID

         USBx_ID稱為USB PHY ID,也可以執行與USBx_OTG_ID相同的功能。

(3)使用USBx_OTG_ID或USBx_ID

         建議使用USBx_OTG_ID。但是,如果客戶想將USBx_ID用於i.MX8MQ,則可以透過配置USB_CTL0_ADDR [utmiotg_iddig_sel]寄存器



軟件調適:
一、IOMUX
根據實際應用,要使用的信號在dts文件中多路復用。 此步驟相對簡單,此處不再贅述。

二、在u-boot /Device tree 中調整USB配置
      客戶可以通過刪除imx8mm_evk_defconfi中的CONFIG_USB_TCPC以及刪除fsl-imx8mm-evk.dts中的typec_ptn5110_1 / 2依賴項來進行嘗試。
       (在uboot確實會檢查USB TYPE-C的狀態,如果它們被卸下,則會崩潰或卡住。)

--u-boot

CONFIG_USB_TCPC=n

 --Node of Device tree

&usb_dwc3_0 {       

      status = "okay";       

      /*extcon = <&typec_ptn5100>;*/       

      dr_mode = "otg";       

      hnp-disable;       

      srp-disable;       

      adp-disable;       

      maximum-speed = "high-speed";

};


以上,使用者需要遵守每一個步驟,即可以將USB2.0的接口,設計於i.MX8M的平台上,而不需要保留USB TYPE-C的接口。

技術文檔

類型標題檔案
硬件Schematics
硬件Specification

★博文內容參考自 網站,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論