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

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

3.3.4 CH372接口电路 .................................. 27 3.3.5 单片机扩展RAM接口电路 .......................... 28

第4章 USB数据采集系统设备固件编写 ........................... 28

4.1 固件设计方案及工作流程 ................................ 29

4.1.1固件的设计思想 .................................. 29 4.1.2固件的工作流程 .................................. 29 4.2固件开发 .............................................. 30

4.2.1主循环模块(MAINLOOP.C) .......................... 30 4.2.2外接口模块 ...................................... 31 4.2.3 CH375_INIT初始化模块 ........................... 31 4.2.4上传数据块模块 .................................. 31 4.2.5上传中断数据模块 ................................ 31

第5章 USB设备驱动程序及应用程序 ............................. 32

5.1驱动开发工具的选择 .................................... 32 5.2 WDM概述 .............................................. 32 5.3 主要模块设计 .......................................... 33

5.3.1 初始化模块 ...................................... 34 5.3.2即插即用管理模块 ................................ 34 5.3.3 I\\O控制模块..................................... 37 5.4 应用程序设计与实现 .................................... 37

5.4.1 操作例程及初始化 ................................ 38 5.4.2 设备读写接口程序的实现 .......................... 39 5.4.3 数据传输程序的设计和实现 ........................ 40 5.5 用户应用程序的具体实现 ................................ 45

结束语 ....................................................... 46 致谢 ......................................................... 47 参考文献 ..................................................... 47 附录一 ....................................... 错误!未定义书签。 附录二 ....................................... 错误!未定义书签。

第1章 绪论

1.1 引言

现代工业生产和科学研究对数据采集系统的要求日益提高,目前比较通用的方法已逐渐不能适应其要求。例如在PC机及工控机内安装数据采集板卡,如AD卡、422卡或485卡等。这些数据采集系统存在以下缺陷:安装麻烦;价格昂贵;受计算机插槽数量、地址、终端资源的限制,可扩展性差;在一些电磁干扰性强的测试现场,无法专门对其做电磁屏蔽,导致采集的数据失真等。

USB是Universal Serial Bus的简称,译为通用串行总线。USB是一种外设总线,所不同的是,它是由In、Compaq、Digital、IBM、Microsoft、NEC及Northern ecom等几家计算机和通信公司联合制订的,并成为了行业标准。目前USB 1.1标准得到了广泛支持。2000年初,USB 2.0标准问世,USB 2.0以480Mbs的传输速率得到了广泛关注,在一定基础上代表了计算机接口的发展趋势。

1.2 USB的特点

USB作为新一代的计算机接口,具备如下特点:

(1)低成本。为了把外围设备连接到计算机上去,USB提供了一种低成本的解决方案,所有系统的智能机制都驻留在主机并嵌入芯片组中,方便了外设的制造。

(2)热插拔。USB实现了真正的“即插即用”功能。设备连接后由USB自检测,并且由软件自动配置,完成后立刻就能使用,不需要用户进行干涉。在操作系统方面,由主机负责扫描总线上的所有接口,自动识别USB设备的插拔,并相应的加载或卸载设备驱动程序,实现了即插即用功能。

(3)单一的连接器类型。USB定义了一种简单的连接器,仅使用一个四芯电缆,即可用来连接任何一个USB设备。多个连接器可以通过USB集线器连接。

(4)最多可通过网络连接127个设备,每个USB总线支持127个设备的连

图1.1 树形拓扑结构示意图

接,其树形拓扑结构如图1.1所示。

在图1.1中,每个Hub集线器可向上连接到另一个Hub,深度可达5层。由于协议中规定使用8位数据寻址,因此每一个主机最多可连接127个设备。(其中0x00地址用于缺省地址,在设备刚入网或复位时使用)

(5)如图1.1所示,无论多少个设备连接在系统中,主机只给USB主控制器分配固定的IO地址和中断向量,不会额外占用系统资源。

(6)USB有两种设备传输率:1.5Mbs和12Mbs,并且两种速率能够自适应转换。USB 2.0的传输速率可达480Mbs。

(7)独立供电。USB设备提供总线供电和自供电两种方式,通过集线器向设备提供电源。当外设的电源要求电压为5伏且电源小于500mA

时,可以直接从USB总线获取电源,这样USB设备就无需专用电源线,从而降低了设备的成本。

(8)错误检测和恢复。USB事物处理包括错误检测机制,它们用于确保数据无错误发送。在发生错误时,事物处理可以重新进行。

(9)电源保护。如果连续3ms没有总线活动,则USB会自动进入挂起状态,处于挂起状态的设备消耗的电流不超过500uA。

(10)支持四种类型的传输方式。USB定义了四种不同的传输类型来满足不同设备的需求,这些传输类型包括等待传输、块传输、中断传输和控制传输。

基于USB总线的数据采集系统,充分利用了USB总线的优点,有效解决了传统数据采集系统的缺陷,是数据采集系统设计的一种较好选择。

1.3 USB实时数据采集系统的实现方案

USB数据采集系统的硬件模块包括多路模拟开关、AD转换器、微控制器和USB接口芯片等。硬件总体结构如图1.2所示。

多 路 信 号

图1.2 USB实时数据采集系统的硬件模块

系统的模拟开关、AD转换器均采用传统的设计方法,根据系统功能、采集的精度、速率、通道数等诸元素选择合适的芯片。微控制器采用了Atmel公司的AT89C51, USB接口芯片采用CH372。

USB数据采集系统的软件包括USB设备驱动程序、设备固件、主机端应用程序三部分。我主要负责使用Delphi语言进行USB设备驱动程序