无忧商务网,免费信息发布推广平台,您可以 [登陆后台] 或 [免费注册] 无忧商务网 | 企业黄页 | 产品库存 | 供求信息 | 最新报价 | 企业资讯 | 展会信息
黄页信息| 库存信息| 技术服务| 供应信息| 求购信息| 二手信息| 加工信息| 供求库| 报价库| 展会库| 代理信息| 保健| 生活黄页| 食谱| 网络黄页| 水族休闲| 人力HR| 招聘
首页>>生活网>>生活保健>>3C小百科-消费性电子-其他
51单片机控制SL811HS的USB主机底层驱动

基于USB接口的设备使用方便,性价比高,因此在人们的工作和生活中得到了广泛的应用,如U盘、移动硬盘、移动光驱、USB摄像头、USB鼠标键盘等。同时,51 系列单片机以其成熟的技术和高性价比吸引了大量国内用户,被广泛应用于测控和自动化领域。因此,如果在51 单片机系统中增加USB 主机接口,实现对USB 从机设备的控制,则该单片机系统可充分利用现有的各种USB从机设备,大大扩展单片机系统的功能。<BR><BR>       本设计实现了在51单片机系统中增加USB主机功能,采用普通51单片机外接专用USB接口芯片的方案。这种方案虽然会使系统传输速度受到限制,而且在稳定性方面有所欠缺,但此方案设计灵活性高,且易于移植,为低成本产品的开发提供了广阔前景。设计中采用的51单片机是Atmel公司的AT89S52芯片,USB主机功能的扩展通过外接专用USB接口芯片SL811HS实现。CYPRESS公司的USB接口芯片SL811HS可以工作在主机或从机模式,支持USB1.1的全速和低速数据传输。工作在主机模式时,SL811HS可以自动检测外设的插拔动作,可以按照外处理器(如单片机)的要求自动把数据整合为USB协议数据包进行数据传输。<BR><BR>
<P align=center><IMG style="WIDTH: 250px; HEIGHT: 239px" height=239 alt=系统硬件示意图 hspace=0 src="http://www.dzdqw.com/jishu/UploadFiles_9637/200610/20061010225422539.gif" width=250 border=0><BR>图 1 系统硬件示意图</P>
<P>       本文将介绍单片机AT89S52控制SL811HS的硬件设计和底层驱动的编写,其中重点讲述底层驱动的设计。</P>
<P><FONT color=#ff0033><STRONG>   <FONT color=#000000>    硬件设计<BR></FONT></STRONG></FONT><BR>       系统的硬件原理图如图1所示。AT89S52的供电电压为5V,SL811HS的为3.3V。尽管供电电压不同,但根据芯片引脚的信号噪声容限参数分析可知,AT89S52与SL811HS之间的引脚可以直接相连,不需要电平转换或缓冲。<BR><BR></P>
<P align=center><IMG height=168 src="http://www.dzdqw.com/jishu/UploadFiles_9637/200610/20061010225422543.gif" width=250 border=0><BR>表1 USB主机枚举操作驱动的层次关系</P>
<P><STRONG><FONT color=#000000>       软件设计<BR></FONT></STRONG><BR>       USB主机驱动是一个高低层子程序的组合,实现USB传输和控制的过程是较高层子程序调用较低层子程序的过程。编写USB主机驱动时,可接从低层往高层的顺序逐层进行。<BR><BR>       以USB主机枚举从机设备的操作为例,实现该功能所需要的各层子程序层次关系如表1所示。本文将介绍较低层的几个子程序的实现,包括读写SL811HS内部寄存器、传输事务的实现、设备插拔检测、复位等,其中,&#8220;传输事务的实现&#8221;是关键和难点,同时也是本文的重点。<BR><BR><STRONG>       单片机读写SL811HS<BR><BR>       内部寄存器<BR><BR></STRONG>       读写SL811HS内部寄存器子程序是最低层的子程序,系统所进行的各种操作主要都是通过调用这些子程序读写SL811HS内部寄存器实现的。例如,通过读取SL811HS的状态寄存器获取SL811HS的状态信息可以实现设备插拔检测、设备速度检测等,通过向SL811HS的相关控制寄存器写入控制字节可以实现USB总线复位以及USB数据传输等操作。<BR><BR><STRONG>       SL811HS内部寄存器<BR><BR></STRONG>       从编程结构的角度来看,SL811HS内部寄存器一共有256个单元,每个单元是一个字节,其中地址为[00H]~[0FH]的前16个单元是SL811HS的状态寄存器或控制寄存器(统称为特殊寄存器),其余的是数据缓冲寄存器。表2列出了16个特殊寄存器的名称和主要功能含义。<BR><BR></P>
<P align=center><IMG height=304 src="http://www.dzdqw.com/jishu/UploadFiles_9637/200610/20061010225422843.gif" width=400 border=0><BR>表2 SL811HS内部特殊寄存器简介<BR></P>
<P><STRONG>       单片机读写SL811HS<BR><BR>       内部寄存器的实现</STRONG><BR><BR>       按照SL811HS的读写控制信号时序图编写单片机读写SL811HS内部寄存器的子程序,使各控制引脚上按照规定的时序给出符合要求的信号脉冲。 在这个程序中,单片机指令周期的大小将直接影响输出信号的保持时长和时序关系。<BR></P>
相关资讯
类别浏览
安徽 北京 福建 甘肃 广东 广西 贵州 海南 河北 河南 黑龙江 湖北 湖南 吉林 江苏 宁夏 青海 山东 山西 陕西 上海 四川 天津 新疆 西藏 云南 浙江 重庆 辽宁 江西 内蒙古
无忧商务网 版权所有 Copyright © 2020.6 www.cn5135.com All Rights Reserved. 湘ICP备12008603号
本站所有产品都是会员自行发布,所有信息都有对方的企业名片和联系方式,如果您需要咨询产品具体参数和细节,请直接联系和咨询厂商,谢谢。
行业子站: 机械 库存 建材 物流 礼品 能源 农业 汽摩 食品 通讯 五金 玩具 矿产 印刷 休闲 服务 服装 化工 环保 电子 纺织 电工 电脑 电器 办公 安全 包装 仪器 家居