完整版AT89C51单片机USB接口驱动和应用程序的开发毕业论文.docx
《完整版AT89C51单片机USB接口驱动和应用程序的开发毕业论文.docx》由会员分享,可在线阅读,更多相关《完整版AT89C51单片机USB接口驱动和应用程序的开发毕业论文.docx(41页珍藏版)》请在冰豆网上搜索。
完整版AT89C51单片机USB接口驱动和应用程序的开发毕业论文
北方民族大学
学士学位论文
论文题目:
AT89C51单片机USB接口驱动和应用程序的开发
院(部)名称:
电信学院
学生姓名:
杨闯
指导教师姓名:
周春艳
论文提交时间:
2010年5月24日
论文答辩时间:
2010年5月29日
学位授予时间:
北方民族大学教务摘要
通用串行总线USB是一种新兴的并逐渐取代其他接口标准的数据通信标准。
USB,由于速度快,使用方便灵活,易于扩展,支持即插即用,成本低廉等一系列优点,得到了广泛的应用。
本论文以基于USB总线的数据采集系统的研制过程为主要内容,阐述了利用CH372与ATMEL的AT89C51等组成的一套数据采集系统的设计方案、开发方法和开发过程,并给出了具体实现方案。
论文首先简要介绍了USB总线的相关内容,然后介绍了数据采集系统的设计。
数据采集系统的设计包括硬件设计、固件程序开发、驱动程序开发和应用程序开发四部分。
在硬件设计部分,首先介绍了设计中所用的CH372的性能和特点,然后给出了具体硬件设计方案,并对设计中应该注意的问题进行了说明。
驱动和应用程序主要完成USB设备的读写和即插即用功能,并提供一个友好的人机界面,对数据采集系统进行控制并显示采集后的数据。
本论文已完成了基于USB总线的数据采集系统的设计,用其实现了基本的数据采集功能。
使用USB总线传输数据,为数据采集系统与计算机之间的通讯开辟了新的道路。
关键词:
USB、驱动程序、应用程序、AT89C51、CH372
Abstract
UniversalserialbusUSBisonekindofemergingandreplaceotherinterfacestandardsofdatacommunicationstandards.USB,duetofast,convenientandflexibleeasytoexpand,tosupportplugandplay,lowcostadvantages,suchaswidelyapplication.
ThepaperismainlyconcernedwithdesignprocessofdataacquisitionsystemthatisbasedonUSBbus.Thedesignscheme,developingmethodanddevelopingprocessofasuitofdataacquisitionsystemusedwithCH372andATMEL’sAT89C51areexpatiate.Inaddition,thepaperalsogivesthematerialrealizationscheme.
Atfist,thepaperintroducestheprotocolofUSBbusinbrief,andthendiscussesthedesignofdataacquisitionsystem,whichincludesfourparts,,firmwaredesign,devicedriverandapplicationprogram.Intheindetail;thequestionswhichshouldbepaidattentiontoindesignisexplained.DriversandapplicationsofthemainequipmentandUSBplugandplayfunction,andprovideafriendly-machineinterface,controlofdataacquisitionsystemanddisplaythedatacollection.
ThepaperofdataacquisitionsystembasedonUSBbusandrealizedthebasaldataacquisitionfoundation.UsingUSBbustotransferdatablazedawayincommunicationbetweendataacquisitionsystemandcomputer.
Keywords:
USB、Drive、Applications、AT89C51、CH372
目录
第1章绪论1
1.1引言2
1.2USB的特点2
1.3USB实时数据采集系统的实现方案2
第2章USB体系简介2
2.1体系概述2
2.2USB的传输类型2
2.3USB的设备状态2
第3章USB数据采集系统的硬件设计2
3.1USB接口方案2
3.2USB接口的硬件设计2
3.2.1CH372简介2
3.2.2USB接口的硬件电路设计2
3.3USB接口硬件的实现2
3.3.1时钟电路2
3.3.2复位电路2
3.3.3AD转换电路2
3.3.4CH372接口电路2
3.3.5单片机扩展RAM接口电路2
第4章USB数据采集系统设备固件编写2
4.1固件设计方案及工作流程2
4.1.1固件的设计思想2
4.1.2固件的工作流程2
4.2固件开发2
4.2.1主循环模块(MAINLOOP.C)2
4.2.2外接口模块2
4.2.3CH375_INIT初始化模块2
4.2.4上传数据块模块2
4.2.5上传中断数据模块2
第5章USB设备驱动程序及应用程序2
5.1驱动开发工具的选择2
5.2WDM概述2
5.3主要模块设计2
5.3.1初始化模块2
5.3.2即插即用管理模块2
5.3.3I\O控制模块2
5.4应用程序设计与实现2
5.4.1操作例程及初始化2
5.4.2设备读写接口程序的实现2
5.4.3数据传输程序的设计和实现2
5.5用户应用程序的具体实现2
结束语2
致谢2
参考文献2
附录一2
附录二2
第1章绪论
1.1引言
现代工业生产和科学研究对数据采集系统的要求日益提高,目前比较通用的方法已逐渐不能适应其要求。
例如在PC机及工控机内安装数据采集板卡,如AD卡、422卡或485卡等。
这些数据采集系统存在以下缺陷:
安装麻烦;价格昂贵;受计算机插槽数量、地址、终端资源的限制,可扩展性差;在一些电磁干扰性强的测试现场,无法专门对其做电磁屏蔽,导致采集的数据失真等。
USB是UniversalSerialBus的简称,译为通用串行总线。
USB是一种外设总线,所不同的是,它是由Intel、Compaq、Digital、IBM、Microsoft、NEC及NorthernTelecom等几家计算机和通信公司联合制订的,并成为了行业标准。
目前USB1.1标准得到了广泛支持。
2000年初,USB2.0标准问世,USB2.0以480Mbs的传输速率得到了广泛关注,在一定基础上代表了计算机接口的发展趋势。
1.2USB的特点
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,并且两种速率能够自适应转换。
USB2.0的传输速率可达480Mbs。
(7)独立供电。
USB设备提供总线供电和自供电两种方式,通过集线器向设备提供电源。
当外设的电源要求电压为5伏且电源小于500mA时,可以直接从USB总线获取电源,这样USB设备就无需专用电源线,从而降低了设备的成本。
(8)错误检测和恢复。
USB事物处理包括错误检测机制,它们用于确保数据无错误发送。
在发生错误时,事物处理可以重新进行。
(9)电源保护。
如果连续3ms没有总线活动,则USB会自动进入挂起状态,处于挂起状态的设备消耗的电流不超过500uA。
(10)支持四种类型的传输方式。
USB定义了四种不同的传输类型来满足不同设备的需求,这些传输类型包括等待传输、块传输、中断传输和控制传输。
基于USB总线的数据采集系统,充分利用了USB总线的优点,有效解决了传统数据采集系统的缺陷,是数据采集系统设计的一种较好选择。
1.3USB实时数据采集系统的实现方案
USB数据采集系统的硬件模块包括多路模拟开关、AD转换器、微控制器和USB接口芯片等。
硬件总体结构如图1.2所示。
多
路
信
号
图1.2USB实时数据采集系统的硬件模块
系统的模拟开关、AD转换器均采用传统的设计方法,根据系统功能、采集的精度、速率、通道数等诸元素选择合适的芯片。
微控制器采用了Atmel公司的AT89C51,USB接口芯片采用CH372。
USB数据采集系统的软件包括USB设备驱动程序、设备固件、主机端应用程序三部分。
我主要负责使用Delphi语言进行USB设备驱动程序和应用的开发。
其中设备固件对数据采集系统进行控制,还要控制USB接口芯片实现USB协议。
这要求设计者不仅熟悉Delphi程序设计,还要熟悉USB协议Windows核心态。
第2章USB体系简介
2.1体系概述
USB体系包括“主机”、“设备”以及“物理连接”三个部分。
其中主机是一个提供USB接口及接口管理能力的硬件、软件及固件的复合体,可以是PC,也可以是OTG设备。
从图2.1中可以看出USB采用分层的星型拓扑来连接所有的USB设备。
(图中的Func代表USB设备):
图2.1USB体系图
在任何USB系统中都只有一个主机,它是USB通信的中心。
主机管理总线,就必须知道总线上有哪些设备,以及每个设备的功能。
总线上的各个设备有不同的要求,这些设备都在企图同时性的传输数据。
主机必须让每一个设备都可以正确地发送和接收数据。
主机所完成的USB相关工作:
1、为外围设备提供电源;2、检测设备的连接和移除;3、检查数据的错误;4、管理数据通信、5、与外围设备交换数据。
USB集线器最基本的作用是作为与设备融合为一体的分离器和中继器。
集线器在USB设备和主机之间提供了电接口。
集线器直接负责支持能使USB用户友好并让用户方便易用