S3C2440一般默认的是一个USB DEVICE,一个USB HOST,即一个主口,一个从口,先来看看USB Device与USB Host相关知识。
USB Host:
最底层就是USB Host控制器了,上层是USB Host Controller Driver,该驱动负责和硬件通讯来传输数据,在WinCE中支持UHCI,OHCI和EHCI。Host Core Driver & Hub Driver是独立于硬件的USB协议栈,支持USB Host协议及USB Hub功能。最上层就是USB Host Class driver是USB Host的应用协议,目前在WinCE中,支持RNDIS,Print,Mass Storage和HID四种应用。
USB Device:
最底层是USB Device控制器,上层是USB Device Driver负责和硬件通讯。Device Core Driver是USB Device的协议栈。最上层是USB Device的应用层,目前在WinCE中支持RNDIS,Serial和Mass Storage三种应用。
在Catalog Items View中,
USB Function Driver:用于支持USB Device驱动。
USB Host Support:用于支持USB Host控制器驱动。
要将USB Device改成USB Host,硬件与软件都需要修改。
硬件方面,可参考原理图,好像是要改两个电阻;
软件方面:先要将USB Function驱动去掉,这个可set BSP_NOUSBFN=1即可,然后再修改MISCCR寄存器值,MISCCR [3]SEL_USBPAD:USB1 Host/Device select register. 0=Use USB1 as Device,1=USE USB1 as Host. 即将MISCCR第3位改成1,这个在初始化函数里修改,增加一行代码s2440IOP->MISCCR |= (1<<3);
关键字:S3C2440 WINCE6 USB DEVICE HOST
引用地址:
S3C2440 WINCE6将USB DEVICE改成USB HOST,实现两个USB HOST
推荐阅读最新更新时间:2026-03-19 13:12
基于OHCI协议的S3C2440 USB Host Driver之协议介绍(三)
OpenHCI通过两级仲裁在端点中选择哪一个服务。第一级是表级。每一个需要服务的端点类型在相应的类型表里。HC选择服务哪一个表。而在表内,端点都有差不多公平的机会被访问到。HCD通知设置HcPeriodicStart限制从帧开始到开始要服务周期表的时间。周期表服务时,当前帧下,中断表优先于同步表。当周期表服务完,控制和批量有可能会接着服务。 ED作为锚点,供一列TD依附在其上。当HC访问ED且找到一个有效的TD地址,HC完成与指定ED的单笔事务,TD表明了内存地址。 当一个TD所定义的所有数据都传输完,TD从他的ED上解下,且连到完成队列。 ED描述符 FA就是设备地址 EN就是端点地址 D为方向 S
[单片机]
使用stm32cubemx的usb-host-cdc库驱动EC20模块
开发环境: 开发板:正点原子F407探索者 代码生成工具:STM32CubeMX v5.4.0 IDE: eclipse + ac6工具链 实现功能: 单片机可以通过usb接口和EC20的AT指令虚拟串口通讯。 为了方便测试,配置串口2,将 模块- 单片机 方向的数据通过串口2发送到电脑,将电脑通过串口工具发送到单片机的数据,转发给模块。 开始 1、使用STM32CubeMX配置工程,生成基础代码 1.1.1 配置晶振 1.1.2 配置时钟 1.2.1 配置串口2 1.2.2 配置DMA 1.2.3 开串口中断 1.3.1 配置USB Host_Only,不使用VBUS SOF 1.3.2 在M
[单片机]
PIC32MZ 通过U盘在线升级 -- USB Host bootloader
上一篇博文介绍的PIC32MZ HID bootloader是其中之一,这次将要介绍的是PIC32MZ U盘bootloader,也是其中之一。大概在今年6月份,我有尝试过实现PIC32MZ U盘bootloader, 但没有成功。放假了,效率果然不一样,之前一直没能完成,这次也轻松搞定。PIC32MZ U盘bootloader也是在harmony的bootloader例程基础上修改而成。开发环境如下, 1. IDE: MPLABX IDE 4.01 2. Compiler: XC32 v1.40 3. Library: Harmony 1.07 4. Example: c:/microchip/harmony/v
[单片机]
汽车行驶记录仪中USB HOST相关模块的设计
本文介绍了基于单片机和USB HOST接口芯片在汽车行驶记录仪中实现USB HOST功能的相关模块设计,该模块很好地实现了汽车行驶记录仪中单片机向优盘大量数据的快速传输。
USB HOST相关模块的总体设计
汽车行驶记录仪中的USB HOST相关模块由单片机、USB HOST接口、FLASH、铁电存储体(FRAM)、实时时钟和电源管理等部分组成,其功能框图如图1所示。汽车行驶记录仪工作时,由单片机通过前端接口电路拾取汽车行驶状态的各种信息,包括车速、发动机转速和各种车辆开关信号等。汽车行驶记录仪以实时时钟为基准,把车辆信息按类别分别存入FRAM和FLASH。需要从汽车行驶记录仪中获取汽车记录状态信息时,用户
[嵌入式]
ROHM开发USB HOST音频解码器IC
ROHM株式会社(总部设在京都市),最近面向立体声组件、BoomBox、AV接收器等家居音响或便携式音响,且面向要求高电涌抗性的汽车音响,开发了拥有优越静电破坏抗性的USB HOST音频解码器IC「BU9457KV」(兼容MP3播放),「BU9458KV」(兼容MP3、WMA、AAC播放)。这两种产品从2009年7月开始供应样品(样品价格2,000日元/个),将于2009年10月开始各自以月产10万个规模批量生产。生产过程的前期工序在ROHM株式会社总部(京都市),装配工序在ROHM INTEGRATED SYSTEMS (THAILAND) CO. LTD.(泰国)完成。
近年,作为取代CD的音频文件记录的媒体,
[单片机]
嵌入式系统中USB-HOST协议栈的设计
1 引言 在移动设备大力发展的今天,移动设备间的大量数据交流的需求大大刺激了嵌入式USB主机系统的发展,这必然要求嵌入式系统必须提供USB的主机驱动。而传统意义上的LISB驱动程序的开发都是USB外设驱动程序的开发,主控制器驱动大部分由操作系统来提供,开发者所要做的就是调用操作系统提供的驱动程序的接口。两大主流操作系统中,Windows不公开源码而Linux的代码却不方便移植。对于目前使用μCOS,VxWorks和QNX等OS的嵌入式系统和一些无OS的单片机系统来说,建立好一整套方便移植的USB主机驱动程序将会有更大的意义。 2硬件平台 硬件平台的MCU选择的是TMS320 DM642,他是TIC6000产品系列中的一款,基
[应用]
USB-HOST实时数据采集嵌入式模块的实现
摘要:提出利用SL811HS和8位单片机实现USB-Host实时数据采集嵌入式模块。该系统的数据传输,遵守大规模存储协议和USB 1.1协议规范,可作为嵌入式设备的数据输入输出模块。它以文件的形式,与Slave端的USB移动存储器进行数据传输。
关键词:SL811HS USB-HOST 大规模存储协议 USB1.1
引言
随着数据采集系统、工控行业和嵌入式用户对移动存储的需求越来越大,传统的通过软盘、串行口(RS232/RS485)或以太网等传输数据的方式已不能满足当前数据存储和交换的需求。如何在嵌入式模块中实现USB移动存储已成为急需解决的问题。
本文提出利用SL811HS和8位单片机实现USB-HOST嵌入式模块的一
[应用]
汽车行驶记录仪中USB HOST相关模块的设计
USB HOST相关模块的总体设计 汽车行驶记录仪中的USB HOST相关模块由单片机、USB HOST接口、FLASH、铁电存储体(FRAM)、实时时钟和电源管理等部分组成,其功能框图如图1所示。汽车行驶记录仪工作时,由单片机通过前端接口电路拾取汽车行驶状态的各种信息,包括车速、发动机转速和各种车辆开关信号等。汽车行驶记录仪以实时时钟为基准,把车辆信息按类别分别存入FRAM和FLASH。需要从汽车行驶记录仪中获取汽车记录状态信息时,用户插入优盘,单片机自动识别优盘并加载驱动程序,当完成设备枚举和Bulk_Only传输协议后,单片机就可以把汽车行驶记录仪中记录的状态信息以文件的形式传输到优盘。本文重点介绍电源模块、USB H
[应用]