STM32F407 系列芯片自带有 USB OTG FS(全速)和 USB OTG HS(高速),其中 HS 需 要外扩高速 PHY 芯片实现,我们这里不做介绍。 STM32F407 的 USB OTG FS 是一款双角色设备 (DRD) 控制器,同时支持从机功能和主机 功能,完全符合 USB 2.0 规范的 On-The-Go 补充标准。此外,该控制器也可配置为“仅主机” ...
3. 开启usb clk,使能PHY,此时外部5V电源供给系统XuotgVBUS,gadget收到IRQ_USB_HSOTG中断要求重启OTG core 4. USB DP(高速设备为DP,低速设备为DM)上产生一个高电平脉冲,此时PC识别到一个USB设备插入,windows会提示用户 5. 后续就是SETUP,GET DISCRIPTOR的过程 作为主设备发现设备插入时: 1. 系统检测到ID脚上...
之前的初始化代码有问题,正确的代码如下:USBH_Init(&USB_OTG_Core,USB_OTG_HS_CORE_ID,&USB_ ....
OTG 主要用作Host 与Device 的切换,如当板子通过 USB 线连接到 USB 主机 (PC) 上时, 此时OTG 是加载成 USB Device;若当前板子是通过 OTG 线连接一个USB 设备,此时 OTG 则加载 成USB Host。 USB 外设特性 Complies with USB 2.0 Specification Supports High-Speed (HS, 480-Mbps), Full-Speed (FS, 12...
1. 系统检测到VBUS上的XEINT28上升沿触发中断,因为PC端会有一个5V从VBUS给过来,进入中断处理函数进一步确认ID脚状态,ID脚为低则状态错误,ID脚为高表示设备应该切换到从设备模式 2. 通知usb gadget使能vbus,按照device模式使能PHY。gadget在probe时注册了一个SPI软中断IRQ_USB_HSOTG,用于响应数据接收 ...
1. 系统检测到VBUS上的XEINT28上升沿触发中断,因为PC端会有一个5V从VBUS给过来,进入中断处理函数进一步确认ID脚状态,ID脚为低则状态错误,ID脚为高表示设备应该切换到从设备模式 2. 通知usb gadget使能vbus,按照device模式使能PHY。gadget在probe时注册了一个SPI软中断IRQ_USB_HSOTG,用于响应数据接收 ...
Android HS-USB OTG堆栈基于ID引脚检测来支持OTG模式,HS-USB OTG core代表HS-USB控制器。 OTG driver OTG驱动首先被加载,由它建立(set up)host controller driver(HCD主控制器驱动)和device controller driver(DCD设备控制器驱动)的transceive struct(收发器结构),在OTG注册了HCD和DCD后,OTG状态机才生效。
GD32F4xx系列MCU提供了一个USB2.0全速USBFS OTG接口模块和一个USB2.0 高速 USBHS接口模块,其中,USBHS若需要使用高速接口,需要外接USBHS高速PHY芯片,如果不外借高速PHY,其可以作为USBFS接口,因而GD32F4XX在不接外部高速PHY的情况下,其可以使用两个USBFS接口。
前面DWC_otg_core架构部分,已经介绍了控制和状态寄存器CSR的一些内容。从架构的角度看CSR块位于AHB时钟域,但是有两个特殊的,一个是电源和时钟门控寄存器PCGCCTL和控制器中断寄存器GINTSTS的b[31:29],这些寄存器位位于BIU从模块中,在断电模式下依然处于活动状态。为什么这两个不一样呢? 因为要进行低功耗管理,要对...
USB 功能模块包括了USB Host,USB Device 和OTG功能。 USB Host 目前已经支持上的功能有:Mass Storage,UVC。 USB Device 目前已经支持上的功能有:ADB,UAC。 OTG 主要用作Host 与Device 的切换,如当板子通过 USB 线连接到 USB 主机 (PC) 上时, 此时 OTG 是加载成 USB Device;若当前板子是通过 OTG 线连接一...