新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 嵌入式系统中USB控制的Host/Slave模式的应用

嵌入式系统中USB控制的Host/Slave模式的应用

作者:时间:2013-10-26来源:网络收藏

引言

目前,USB 设备产品的应用非常广泛,但市场上能够提供/Slave两种模式的芯片并不多,本系统采用CYPRESS公司的SL811HST芯片作为USB接口的控制芯片,实现/Slave两种工作模式。

系统介绍

本系统是以三星公司的S3C44B0X为嵌入式处理器,为操作系统的专用PDA,通过无线方式实现与上位机的通信,同时也可通过USB接口直接控制USB打印机输出。其中芯片采用CYPRESS公司的SL811HST芯片,它有两种工作模式/Slave。模式的改变是由该芯片M/S脚的电平值决定,其值可以通过软件设置来改变。当置M/S脚为低电平时,它是Host模式,可以直接控制打印机;当置M/S脚为高电平时,它是,可以下载PC的最新资料,同时可对PDA充电电池充电。

硬件设计

三星公司的S3C44B0X是一款专为手持设备和通用设备而设计的,16/32位RISC 结构的嵌入式处理器。

CYPRESS公司的SL811HST是嵌入式的USB 主机或外设接口控制器。其基本功能如下:

1) 支持USB 1.1 的全速和低速设备;

2) 虚拟的外部总线,使得仅需占用和外接CPU 的1 根地址线A0,数据线为8位;

3) 16 个内部寄存器,可以对USB Host 进行充分的控制;内部多达256 字节的RAM,为USB 传输建立了足够的缓冲区;

4) 操作电压为3.3V,但是I/O 端口为5V Tolerant,因此可以自由地和5V 或3.3V 的CPU 系统连接;

5) 可接12MHz 或48MHz外置晶振,对其操作通过16个寄存器来完成。

GPE5是Host/控制管脚,它同时同步控制USB接口的负载方式。GPE4口可以监视USB接口上是否有主USB设备插入,如果有,VUSB为高电平;没有则为低电平。GPE3口用于显示USB设备是否处于就绪或相应的Host/工作状态

软件设计

在Linux操作系统中,驱动程序的加载方式为:

1) 将驱动程序作为可加载的模块(Module),在系统超级用户(Root)权限下使用insmod命令动态加载,使之成为系统核心的一部分。对于USB 设备而言,由于可热插拔,一般采用模块化的设备驱动程序。

2) 将设备驱动程序的源代码加进系统内核,编译移植到嵌入式系统,系统启动后将自动加载驱动。USB 协议栈程序一般采用这种方法加入内核,进而产生一个叫做“USB 核心”的子系统。这个子系统提供了许多数据结构、宏定义、功能函数和应用程序接口(API)来对硬件或设备进行支持。

晶振相关文章:晶振原理

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭