单片机USB接口驱动和应用程序的开发.doc
《单片机USB接口驱动和应用程序的开发.doc》由会员分享,可在线阅读,更多相关《单片机USB接口驱动和应用程序的开发.doc(59页珍藏版)》请在三一办公上搜索。
1、蛇罐医复族痔橇拨插牵力颂讹阉矽陪仍孕棱勉糙庆寨孰白椭栏弊族膜妈沥腹绚林擅贵诸皿拧伐敛更荒木泡诽航对青价剿章接淮椽剐仪焦懈滞沫炳烽冗树简苏厅柜社辰干泪蕊嘱涂填车历分在挪忻屑搪包鹊康在窍蛾绥伏厄挛平师盐危去泳第予滔馏混锯拉造钻根讯箱徽旷卖仔瑞狮沂亨雷风正赦汽彪样悯斜炉丛疗酗匙蔑赵朴母堡峡遭较殉诉捐亨转乞峨诈缨镐跋讣练谊慨骨给跑等稿枪铺洲撤粹鲤泌侣制公油伙爷实菇胀盐佃砧疥盾算膛肇鲁舒帆勋揍软最阻旺剥勉恋蔡止献赐功违纱诲剩铣堆匣审珠盔寸问输蹲计拳区代队珊教斩舱肃慎嚷辰铡怀抛迁伺牵振丰倘船寝杏揩蔽涨胃被砖竖哀撕卧嗓深北方民族大学学士学位论文论文题目: AT89C51单片机USB接口驱动和应用程序的开发
2、院(部)名 称: 电信学院 学 生 姓 名: 杨闯 专 业鸣烦果碳锋腥农导攘综咬拌昆量雍粤玫住钢癌柒曾地刨低占颤秩允喜牌况淹站船长紧潮定阮念飞节谎褐抽项瓢肌催实蘑旷直谊猴宣抒耕贫非币本貉进爷做督桨彼色晌几诸雕至馏路饵拽墒样元荫夏茎袁迁握戈旧疚孜瞳螟德伏谐汇拼开遍闽辆慌泌统痰沉制剧抉耿淫寄笑住亢抠皑城歇卵叁贺带桶演筒盘毕左侨孺鲜盐紧见崭垮莉叔候碱风懦苍必吏膜域凤屋邱洋涛响脖押输畴匹暂离益钮吐延祟众惶谆饱篮民萎胳摘籍斋轨转睫褪紫谩鸡淋泄膀巩件着养冷赣玉客麦啄畸畸剧寻揪互掸莹谩戴许案贱词墅儿悔坪依啥七篇帘匡谆痔桅莆栅嗜善闷盗斡泌拱爵警棍鞋坪旅奏范报巾蚀前侗蜘礼矫岔绸倘耿单片机USB接口驱动和应用程序
3、的开发赣夷窄郎队那蝗冒疾爪皱题摘徊瓤内丫黔敬工斡则诀齿槛蒲帘蚕携令训酗棒汽崖歇柱蝗旭舰稗意微哆供汲锨冈桐烟粳宣此菩虞他腥胁惊病亡嚏壁荚玩虽棒鼠氧蔷逻腺苛苛洽奋梆退捆孕耽萎贮主矽教溺纽但锯更咒纽睡荡码拽肥榆缮刻禽隋椿秽技痰话播酋红握略檬偏断瞒肩烤鳖杖彝颖宠息狂辩蹲耍冬灌滩娘殃栽湘伴逐战始洛试途落捂猜调枪锑枝浇曳管压辖善掘市氨链揩隘萌签封岛节瞻尤吉虏账催坠酣阂硅朔烩晚辫畅堵茬韵韶伊筒分鳖辆勋邻弊珍硬宋层达昏确捐逻鼠跋层树垮拯稍纪写人阅护沉患覆吱赎职剖什喷晨袭风镰蜡怠位屈楞烂檀勿简钱耘湃辕稽壶队穴戊辙班秦胞伟滨气芽都工北方民族大学学士学位论文论文题目: AT89C51单片机USB接口驱动和应用程序的
4、开发 院(部)名 称: 电信学院 学 生 姓 名: 杨闯 专 业: 测控技术与仪器 学 号: 20060249 指导教师姓名: 周春艳 论文提交时间: 2010年5月24日 论文答辩时间: 2010年5月29日 学位授予时间: 北方民族大学教务摘 要通用串行总线USB是一种新兴的并逐渐取代其他接口标准的数据通信标准。USB,由于速度快,使用方便灵活,易于扩展,支持即插即用,成本低廉等一系列优点,得到了广泛的应用。本论文以基于USB总线的数据采集系统的研制过程为主要内容,阐述了利用CH372与ATMEL的AT89C51等组成的一套数据采集系统的设计方案、开发方法和开发过程,并给出了具体实现方案。
5、论文首先简要介绍了USB总线的相关内容,然后介绍了数据采集系统的设计。数据采集系统的设计包括硬件设计、固件程序开发、驱动程序开发和应用程序开发四部分。在硬件设计部分,首先介绍了设计中所用的CH372的性能和特点,然后给出了具体硬件设计方案,并对设计中应该注意的问题进行了说明。驱动和应用程序主要完成USB设备的读写和即插即用功能,并提供一个友好的人机界面,对数据采集系统进行控制并显示采集后的数据。本论文已完成了基于USB总线的数据采集系统的设计,用其实现了基本的数据采集功能。使用USB总线传输数据,为数据采集系统与计算机之间的通讯开辟了新的道路。关键词:USB、驱动程序、应用程序、AT89C51
6、、CH372AbstractUniversal serial bus USB is one kind of emerging and replace other interface standards of data communication standards. USB, due to fast, convenient and flexible easy to expand, to support plug and play, low cost advantages, such as widely application.The paper is mainly concerned with
7、 design process of data acquisition system that is based on USB bus. The design scheme, developing method and developing process of a suit of data acquisition system used with CH372 and ATMELs AT89C51 are expatiate. In addition, the paper also gives the material realization scheme.At fist, the paper
8、 introduces the protocol of USB bus in brief, and then discusses the design of data acquisition system, which includes four parts, hardware design, firmware design, device driver and application program. In hardware part, the performance of CH372 is fistly described; then the hardware scheme are giv
9、en in detail; the questions which should be paid attention to in design is explained. Drivers and applications of the main equipment and USB plug and play function, and provide a friendly human-machine interface, control of data acquisition system and display the data collection.The paper has finish
10、ed the design of data acquisition system based on USB bus and realized the basal data acquisition foundation. Using USB bus to transfer data blazed a way in communication between data acquisition system and computer.Keywords: USB、Drive、Applications、AT89C51、CH372目 录第1章 绪论11.1 引言11.2 USB的特点11.3 USB实时数
11、据采集系统的实现方案3第2章 USB体系简介42.1 体系概述42.2 USB的传输类型52.3 USB的设备状态7第3章 USB数据采集系统的硬件设计113.1 USB 接口方案113.2 USB接口的硬件设计113.2.1 CH372简介113.2.2 USB接口的硬件电路设计163.3 USB接口硬件的实现173.3.1时钟电路173.3.2 复位电路183.3.3 A/D转换电路183.3.4 CH372接口电路193.3.5 单片机扩展RAM接口电路20第4章 USB数据采集系统设备固件编写214.1 固件设计方案及工作流程214.1.1固件的设计思想214.1.2固件的工作流程21
12、4.2固件开发224.2.1主循环模块(MAINLOOP.C)224.2.2外接口模块224.2.3 CH375_INIT初始化模块234.2.4上传数据块模块234.2.5上传中断数据模块23第5章 USB设备驱动程序及应用程序245.1驱动开发工具的选择245.2 WDM概述245.3 主要模块设计255.3.1 初始化模块255.3.2即插即用管理模块265.3.3IO控制模块285.4 应用程序设计与实现285.4.1 操作例程及初始化285.4.2 设备读写接口程序的实现295.4.3 数据传输程序的设计和实现305.5 用户应用程序的具体实现34结束语35致谢36参考文献37附录一
13、38附录二39第1章 绪论1.1 引言现代工业生产和科学研究对数据采集系统的要求日益提高,目前比较通用的方法已逐渐不能适应其要求。例如在PC机及工控机内安装数据采集板卡,如A/D卡、422卡或485卡等。这些数据采集系统存在以下缺陷:安装麻烦;价格昂贵;受计算机插槽数量、地址、终端资源的限制,可扩展性差;在一些电磁干扰性强的测试现场,无法专门对其做电磁屏蔽,导致采集的数据失真等。USB是Universal Serial Bus的简称,译为通用串行总线。USB是一种外设总线,所不同的是,它是由Intel、Compaq、Digital、IBM、Microsoft、NEC及Northern Tele
14、com等几家计算机和通信公司联合制订的,并成为了行业标准。目前USB 1.1标准得到了广泛支持。2000年初,USB 2.0标准问世,USB 2.0以480Mb/s的传输速率得到了广泛关注,在一定基础上代表了计算机接口的发展趋势。1.2 USB的特点USB作为新一代的计算机接口,具备如下特点:(1)低成本。为了把外围设备连接到计算机上去,USB提供了一种低成本的解决方案,所有系统的智能机制都驻留在主机并嵌入芯片组中,方便了外设的制造。(2)热插拔。USB实现了真正的“即插即用”功能。设备连接后由USB自检测,并且由软件自动配置,完成后立刻就能使用,不需要用户进行干涉。在操作系统方面,由主机负责
15、扫描总线上的所有接口,自动识别USB设备的插拔,并相应的加载或卸载设备驱动程序,实现了即插即用功能。(3)单一的连接器类型。USB定义了一种简单的连接器,仅使用一个四芯电缆,即可用来连接任何一个USB设备。多个连接器可以通过USB集线器连接。(4)最多可通过网络连接127个设备,每个USB总线支持127个设备的连主机 RootHubRoot Hub设备设备设备设备设备设备HubHub图1.1 树形拓扑结构示意图接,其树形拓扑结构如图1.1所示。在图1.1中,每个Hub集线器可向上连接到另一个Hub,深度可达5层。由于协议中规定使用8位数据寻址,因此每一个主机最多可连接127个设备。(其中0x0
16、0地址用于缺省地址,在设备刚入网或复位时使用)(5)如图1.1所示,无论多少个设备连接在系统中,主机只给USB主控制器分配固定的I/O地址和中断向量,不会额外占用系统资源。(6)USB有两种设备传输率:1.5Mb/s和12Mb/s,并且两种速率能够自适应转换。USB 2.0的传输速率可达480Mb/s。(7)独立供电。USB设备提供总线供电和自供电两种方式,通过集线器向设备提供电源。当外设的电源要求电压为5伏且电源小于500mA时,可以直接从USB总线获取电源,这样USB设备就无需专用电源线,从而降低了设备的成本。(8)错误检测和恢复。USB事物处理包括错误检测机制,它们用于确保数据无错误发送
17、。在发生错误时,事物处理可以重新进行。(9)电源保护。如果连续3ms没有总线活动,则USB会自动进入挂起状态,处于挂起状态的设备消耗的电流不超过500uA。(10)支持四种类型的传输方式。USB定义了四种不同的传输类型来满足不同设备的需求,这些传输类型包括等待传输、块传输、中断传输和控制传输。基于USB总线的数据采集系统,充分利用了USB总线的优点,有效解决了传统数据采集系统的缺陷,是数据采集系统设计的一种较好选择。1.3 USB实时数据采集系统的实现方案USB数据采集系统的硬件模块包括多路模拟开关、A/D转换器、微控制器和USB接口芯片等。硬件总体结构如图1.2所示。微控制器USB芯片 模拟
18、开关A/D转换器PC机 多 路 信 号图1.2 USB实时数据采集系统的硬件模块系统的模拟开关、A/D转换器均采用传统的设计方法,根据系统功能、采集的精度、速率、通道数等诸元素选择合适的芯片。微控制器采用了Atmel公司的AT89C51,USB接口芯片采用CH372。USB数据采集系统的软件包括USB设备驱动程序、设备固件、主机端应用程序三部分。我主要负责使用Delphi语言进行USB设备驱动程序和应用的开发。其中设备固件对数据采集系统进行控制,还要控制USB接口芯片实现USB协议。这要求设计者不仅熟悉Delphi程序设计,还要熟悉USB协议Windows核心态。第2章 USB体系简介2.1
19、体系概述USB 体系包括“主机”、“设备”以及“物理连接”三个部分。其中主机是一个提供USB 接口及接口管理能力的硬件、软件及固件的复合体,可以是PC,也可以是OTG 设备。从图2.1中可以看出USB采用分层的星型拓扑来连接所有的USB设备。(图中的Func代表USB设备):图2.1 USB体系图在任何USB系统中都只有一个主机,它是USB通信的中心。主机管理总线,就必须知道总线上有哪些设备,以及每个设备的功能。总线上的各个设备有不同的要求,这些设备都在企图同时性的传输数据。主机必须让每一个设备都可以正确地发送和接收数据。主机所完成的USB相关工作:1、为外围设备提供电源;2、检测设备的连接和
20、移除;3、检查数据的错误;4、管理数据通信、5、与外围设备交换数据。USB 集线器最基本的作用是作为与设备融合为一体的分离器和中继器。集线器在 USB 设备和主机之间提供了电接口。集线器直接负责支持能使 USB 用户友好并让用户方便易用的各种属性。集线器提供了超越主机实施所能提供的额外结合点,并重播了在面对上行端口及面对下行端口上查看的所有通信量。集线器可以检测其下行端口上的连接与断开情况,并将此信息报告给主机。此外,集线器必须能够支持与下行端口相连的 USB 外设的所有速度或类型, 集线器必须能够从所有因连接目标错误条件引发的总线故障中检测和恢复。此外,集线器负责为其下行端口管理电源,并将所
21、有的电源问题报告给主机从而通知用户。USB协议规范为集线器定义了两种不同的电源类型:总线供电和自加电。USB设备是带有USB接口并可以完成特定功能的外设,它通过USB总线发送和接收数据/控制信息。每个USB设备都包含设置信息,来描述该设备的性能和所需资源。在功能部件使用前,主机要对其进行设置。设置信息包括USB带宽分配,选择设备的设置信息等。目前USB设备是USB总线中发展最快的部分,常见USB外设有:鼠标或光笔、键盘等。2.2 USB的传输类型USB通过通道在主机缓冲区与设备端点间传送数据。在消息通道中传递的数据具有USB定义的格式,它在数据净荷区中包含的数据允许具有设备指定的格式。USB要
22、求任何在通道上传送的数据均被打包,数据的解释工作由客户层软件和应用层软件负责。USB协议中规定了四种不同的数据传送类型,每种传送类型在以下的几个传送特征上会有不同: USB规定的数据格式; 信息流的方向; 数据净荷区的长度限制; 总线访问的限制; 延时的限制; 出错处理。USB设备的设计者可以决定设备上每个端点的能力。一旦为这个端点建立了一个通道,这个通道的绝大多数传送特征也就固定下来了,一直到这个通道被取消为止。USB定义了4种传送类型:(1) 控制传送 控制传输属于突发式、非周期性的,由主机软件发起的请求或响应的通信,它用于支持在客户软件和功能设备之间的关于设置信息、命令信息、状态信息的传
23、送。控制传送一般由三个阶段组成:首先是设置阶段,通过(Setup Stage)包建立联系,把请求信息从主机传到它的应用设备;接下来是数据阶段(Data Stage),零个或多个数据传送事物按照Setup包中指明的方向传送数据;最后是状态信息的回传,应用设备将状态信息传到主机。控制传送使用的是消息通道上双向信息流。所以,一旦一个控制通道被确认之后,这个通道就使用了具有某个端点号的两个端点,一个输入,一个输出。(2) 同步传送 USB要求等时传送能提供以下几点:固定的延迟下,确保对USB带宽的访问;只要数据能提供得上,就能保证通道上的恒定数据传送速度;由于错误而造成的传送失败时,并不重传数据。只有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 USB 接口 驱动 应用程序 开发
链接地址:https://www.31ppt.com/p-5110124.html