(完整版)AT89C51单片机USB接口驱动和应用程序的开发毕业设计

发布时间 : 星期日 文章(完整版)AT89C51单片机USB接口驱动和应用程序的开发毕业设计更新完毕开始阅读

和应用的开发。其中设备固件对数据采集系统进行控制,还要控制USB接口芯片实现USB协议。这要求设计者不仅熟悉Delphi程序设计,还要熟悉USB协议Windows核心态。

第2章 USB体系简介

2.1 体系概述

USB 体系包括“主机”、“设备”以及“物理连接”三个部分。其中主机是一个提供USB 接口及接口管理能力的硬件、软件及固件的复合体,可以是PC,也可以是OTG 设备。

从图2.1中可以看出USB采用分层的星型拓扑来连接所有的USB设

备。(图中的Func代表USB设备):

图2.1 USB体系图

在任何USB系统中都只有一个主机,它是USB通信的中心。主机管理总线,就必须知道总线上有哪些设备,以及每个设备的功能。总线上的各个设备有不同的要求,这些设备都在企图同时性的传输数据。主机必须让每一个设备都可以正确地发送和接收数据。

主机所完成的USB相关工作:1、为外围设备提供电源;2、检测设备的连接和移除;3、检查数据的错误;4、管理数据通信、5、与外围设备交换数据。

USB 集线器最基本的作用是作为与设备融合为一体的分离器和中继器。集线器在 USB 设备和主机之间提供了电接口。集线器直接负责支持

能使 USB 用户友好并让用户方便易用的各种属性。集线器提供了超越主机实施所能提供的额外结合点,并重播了在面对上行端口及面对下行端口上查看的所有通信量。

集线器可以检测其下行端口上的连接与断开情况,并将此信息报告给主机。此外,集线器必须能够支持与下行端口相连的 USB 外设的所有速度或类型, 集线器必须能够从所有因连接目标错误条件引发的总线故障中检测和恢复。此外,集线器负责为其下行端口管理电源,并将所有的电源问题报告给主机从而通知用户。USB协议规范为集线器定义了两种不同的电源类型:总线供电和自加电。

USB设备是带有USB接口并可以完成特定功能的外设,它通过USB总线发送和接收数据控制信息。每个USB设备都包含设置信息,来描述该设备的性能和所需资源。在功能部件使用前,主机要对其进行设置。设置信息包括USB带宽分配,选择设备的设置信息等。目前USB设备是USB总线中发展最快的部分,常见USB外设有:鼠标或光笔、键盘等。

2.2 USB的传输类型

USB通过通道在主机缓冲区与设备端点间传送数据。在消息通道中传递的数据具有USB定义的格式,它在数据净荷区中包含的数据允许具有设备指定的格式。USB要求任何在通道上传送的数据均被打包,数据的解释工作由客户层软件和应用层软件负责。

USB协议中规定了四种不同的数据传送类型,每种传送类型在以下的几个传送特征上会有不同:

● USB规定的数据格式; ● 信息流的方向;

● 数据净荷区的长度限制;

● 总线访问的限制; ● 延时的限制; ● 出错处理。

USB设备的设计者可以决定设备上每个端点的能力。一旦为这个端点建立了一个通道,这个通道的绝大多数传送特征也就固定下来了,一直到这个通道被取消为止。

USB定义了4种传送类型:

(1) 控制传送 控制传输属于突发式、非周期性的,由主机软件发起的请求或响应的通信,它用于支持在客户软件和功能设备之间的关于设置信息、命令信息、状态信息的传送。控制传送一般由三个阶段组成:首先是设置阶段,通过(Setup Stage)包建立联系,把请求信息从主机传到它的应用设备;接下来是数据阶段(Data Stage),零个或多个数据传送事物按照Setup包中指明的方向传送数据;最后是状态信息的回传,应用设备将状态信息传到主机。控制传送使用的是消息通道上双向信息流。所以,一旦一个控制通道被确认之后,这个通道就使用了具有某个端点号的两个端点,一个输入,一个输出。

(2) 同步传送 USB要求等时传送能提供以下几点:固定的延迟下,确保对USB带宽的访问;只要数据能提供得上,就能保证通道上的恒定数据传送速度;由于错误而造成的传送失败时,并不重传数据。只有高速设备可以使用等时传送。USB设备要求一个帧内不能有超过90%的时间用于等时传送或中断传送(因为吗,每帧都得保留10%的时间用于控制传送)。等时传送不支持因总线错误而进行的重传。接收器可以判断是否发生了一个错误。一般情况下,可以由握手信号来通知发送者包是否被成功的接收。对于等时传送来说,定时比正确性和重传更重要。考虑到总线的错误率较

联系合同范文客服:xxxxx#qq.com(#替换为@)