USB接口芯片SL811HS在51单片机系统中的应用
USB接口芯片SL811HS在51单片
机系统中的应用
摘要:介绍了CYPRESS公司生产的主,从双工作模式USB接口芯片SL811HS的性能与内部结构,给出了SL811HS芯片在单片机系统中扩展,,,接口的硬件电路,同时给出了该系统的USB驱动程序及实现,盘读写功能的应用程序。
, 引言
,,,(通用串行总线)是,,,,,、,,,、,,-,,,,,,,、,,,等公司联合提出的、最近几年逐步在,,领域广为应用的新型接口技术。,,,接口通用性好、实时性强、传输方式多样、成本低、支持即插即用、易于扩展且便于使用,这些优点使其得到许多硬件厂商的青睐。目前各种类型的,,,产品已大量涌入市场,同时也被广泛地用在,,机及嵌入式系统中。
,,,的拓扑结构中居核心地位的是,,,,(也称为主机),任何一次,,,数据传输都必须由主机发起和控制,所有的,,,外设都只能和主机建立连接,任何两个外设之间或是两个主机之间无法直接通信。而目前,扮演主机角色的大多是个人电脑,,。而我们买到和使用的,,,移动设备都是,,,外设(,,,,;,),如,,,的移动硬盘、,,,接口的数码相机等。所有这些设备都只能在,,上或通过,,来进行文件和数据交换。没有了,,,这些设备就“失灵”了(指数据交换的功能)。
,,系列单片机以其优越的性能、成熟的技术高可靠性、高性价比吸引了大量国内用户,被广泛应用于测控和自动化领域。用,,系列单片机实现,,,主机接口,进而实现对,,,外设的控制,对提高整个系统的数据存储、数据传输、设备控制等性能都有很大的作用。本文使用,,系列单片机,,,,,,和,,,接口芯片,,,,,,,设计了一个,,,主机接口,通过该接口
可实现对,,,外设,盘的读写控制,从而实现单片机数据采集系统的海量数据存储,。
, ,,,,,,,的结构性能
,,,,,,,是,,,,,,,公司生产的、可支持全速数据传输的,,,控制芯片该芯片采用,,脚,,,,和,,脚,,,,两种封装形式,且内含,,,主,从控制器,支持全速(,,,,,,,,,,),低速,,,,,,,,, 数据传输,并能自动识别低速或全速设备。,,,,,,,所提供的接口遵从,,,,(,标准,可与微处理器、微控制器、,,,,相连,也可直接与,,,、,,,,,,及其它总线相连。,,,,,,,的数据接口与微处理器进行接口可提供,位数据,,,或双向,,,通道,并能以从机操作方式支持,,,数据传输。此外,通过中断支持还可以轻松地与,,,,,,,,、,,,,,及其它众多类型的标准微处理器或微控制器相连。,,,,,,,内部有一个,,,字节的,,,,可用做控制寄存器或数据缓冲器。,,,,,,,的内部结构框图如图,所示。
,和微控制器的硬件接口
图,所示是,,系列微控制器,,,,,,与,,,,,,,的连接电路。在该设计硬件时,由于所选用的,,系列单片机,,,,,,及其周围元件的工作电压为,,,而,,,,,,,的工作电压为,(,,,所以系统应同时提供,,和,(,,电源;虽然,,,,,,,可以使用,,,,,晶振,但在实际使用过程中发现,如果晶振质量不太好,电路稳定性就会比较差,因此,设计时推荐使用,,,,,晶振;由于,,,,,,,的中断请求输出的是高电平,因此需要用反向器把它变换成低电平以满足,,,,,,中断输入要求;此外,,,,,,,,是低电平复位;其,,,插座的电源接口也应作,,,,,限流处理以保护系统。
, 软件设计
,,,软件设计分为,部分,一是针对,,,,,,,芯片编写,,,主机控制器驱动程序;二是系统调用驱动程序来完成,盘数据读写的应用程序。
,(, 主控制器驱动程序设计
,,,设备驱动程序是开发,,,外设的关键,,,,
协议
离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载
的复杂性导致了,,,驱动程序内容的多样性。本文只介绍主机完成,盘数据读写功能所需的主要模块,包括初始化模块、枚举模块、读字节模块、写字节模块、读缓冲区模块、写缓冲区模块等。
初始化模块用来设置,,,,,,,的主,从机工作模式、全速或低速工作方式、内部数据缓冲区结构等;而枚举主要是指主机监测到,盘插入时,主机和,盘之间产生的一个过程。当枚举发生时,主机首先自动发出查询请求,,盘回应这个请求,并送出设备的,,,,,,,,和,,,,,;,,,然后由主机根据这两个,,装载相应的设备驱动程序,以完成枚举过程。通过枚举不但可为,盘设定设备地址,而且可以得到,盘端点的描述
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
及,盘支持协议,之后就可以根据,盘所属的子类及协议对,盘进行操作。
在本系统中,,,,,,,,占用的地址空间为,,,,,,,,,,,,,,下面的读写函数中采用“自动地址增加模式”来降低,,,,,,,读写设备时占用的系统资源:
,,,,, ,,,,,,,,;,,, ,,,,,_,,,,_,, ,,,,,,;
,,,,,主机控制寄存器地址
,,,,, ,,,,,,,,;,,, ,,,,,_,,,, _,,_ ,,,,,,;
,,,,,主机数据基址
,,,,,,,,,(,,,,,,,, ;,,, ,,,,,,,, ,,,,,,,, ;,,, ,,,,,)
{ ,,,,,_,,,, ,,,,,,,,;
,,,,, ,,,, ,,,,,,;}
,,,,,,,, ;,,,,,,,,(,,,,,,,, ;,,, ,,,,,,,)
{ ,,,,,_,,,, ,,,,,,,,;
,,,,,,,,,,,_,,,,;}
下面是读写缓冲区的代码函数:
,, ,,,, ,缓冲区起始偏移地址
,, , ,进行缓冲区读写操作时的数据指针
,, ; ,进行缓冲区读写操作时的数据数量
,,,,,,,,,,,,,,,,(,,,,,,,, ;,,, ,,,,, ,,,,,,,, ;,,, ,,, ,,,,,,,, ;,,,;)
{ ,,,,,_,,,, ,,,,,;
,,,,,(;,,)
{ ,,,,,,,,,,_,,,,;}
}
,,,,,,,,,,,,,,,,,(,,,,,,,, ;,,, ,,,,, ,,,,,,,, ;,,, ,,, ,,,,,,,, ;,,,;)
{ ,,,,, ,,,, ,,,,,;
,,,,, (;,,)
{ ,,,,,_,,,,,,,,,;}
}
,(, 应用程序设计
,,,总线一般包含四种基本数据传输类型:控制传输、中断传输、批传输以及同步传输,本系统使用的是控制传输和批腀输。這面以爱国者迷你王,盘为例,介绍在该盘上建立目录及写文件的具体方法。
爱国者迷你王(,,,)属,,,,,,,,,,,;,,,,,支持,,,,,,,,,传输,命令集为,,,,传输命令集。,,,,,,,,,传输时,其命令、数据及状态均通过,,,,端点传送。爱国者迷你王(,,,)有三个端点,端点,为缺省控制通道,端点,为,,,,,,,端点,端点,为,,,,,,端点。首先要用,,,,(读,,,;,,)及 ,,,,;,,,;,,,命令读取,盘参数,随后即可对,盘进行读写。
其中,,,,,,,,,,,,,的值为,,,,,,,,,,, ,表示当前发送的是一个,,,;将,,,,,,,的内容在状态阶段原样发送给,,,,可以验证命令执行的是否正确;,,,,,,,,,,,,,,,,,,,,,,为数据阶段要传送的字节数;,,,,,,,,,,表明数据阶段传送的方向;,, -,,,,,,是保留位,通常可以置零;,,,,,,,用于指明该命令传送给哪个逻辑单元;,,,,,,,,,,,,为后续字符串中命令字节的长度,,,,,,为真正要传送的命令。,,,命令发出后,,盘从,,,中解析出,,-,,,然后执行相应的操作,之后返回一个,,,命令块,表明命令执行情况。爱国者迷你王(,,,)每次至少读取或写入,,,字节,因此在改写某些字节时,必须把整个逻辑块一次读出,修改后再一次性写入。
用,,,,,,控制,,,,,,,来读写,盘的工作过程可以简单地概括为:当,,,,,,,从,,,总线检测到,盘插入后,通过中断方式将
此信息通知系统,系统通过调用枚举模块可以获得与此次传输有关的各种参数,并根据具体的传输参数调用数据读写模块以对,,,,,,,的控制寄存器和数据寄存器进行相应的操作,最终完成对,盘的读写。其写文件
流程
快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计
图见图,所示。
, 结束语
使用,,,主机接口控制器,,,,,,,实现对,盘的读写,可为数
目前该
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
据采集系统大容量数据存储提供一种通用、方便和可靠的解决方案,已成功应用到笔者自主研发的温室环境信息采集系统中,并经过长时间测试证明了它的实用性和可靠性。由于,,,,,,,同时具有从机工作模式,因此,也可将此方案经简单修改后开发,,,接口从设备,从而满足不同场合的需要。