(机械电子工程专业论文)usb总线数据采集控制系统的开发与应用.pdf_第1页
(机械电子工程专业论文)usb总线数据采集控制系统的开发与应用.pdf_第2页
(机械电子工程专业论文)usb总线数据采集控制系统的开发与应用.pdf_第3页
(机械电子工程专业论文)usb总线数据采集控制系统的开发与应用.pdf_第4页
(机械电子工程专业论文)usb总线数据采集控制系统的开发与应用.pdf_第5页
已阅读5页,还剩83页未读 继续免费阅读

(机械电子工程专业论文)usb总线数据采集控制系统的开发与应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要u s b 是近年来在计算机领域日益流行的一种总线形式。由于它的诸多优点,有关u s b 在各方面应用的研究正在不断开展。在数据采集领域,基于u s b 的数据采集装置不但具有速度快,容易扩展等特点,而且由于即插即用的功能,使它能适合更广泛的应用场合。本文首先回顾了以往不同型式的数据采集系统,然后在扼要地介绍了u s b l 1原理的基础上,提出了一种基于u s b 的数据采集控制系统的总体方案。本文在第三章详细介绍了硬件电路的设计:在第四章详细介绍了软件的设计,该软件包括固件程序、驱动程序和应用程序三大部分,每个部分都给出了详细的开发步骤。本文在第五章具体论述了该方案在生物信号分析处理系统的具体应用,这既是本课题开发的u s b 数据采集系统应用的一个例子,也是本课题所承担的任务。关键词:数据采集串行通用总线固件程序a b s t r a c tu s bi sat y p eo fc o m p u t e rb u sw h i c hi n c r e a s i n g l yp r e v a i l si nr e c e n ty e a r s w i t hu s bh a v i n gm a n ya d v a n t a g e s ,t h er e s e a r c ho fa p p l i c a t i o na b o u tu s bi nm a n yf i e l d si sd e v e l o p i n g i nt h ef i e l do fd a t aa c q u i s i t i o n ,d a t aa c q u i s i t i o nd e v i c e sb a s e do nu s bn o to n l yh a v et h ea d v a n t a g eo fs p e e do nd a t aa c q u i s i t i o n ,b e i n gc o n v e n i e n t l ye x p a n d e d ,b u ta l s oa r ea b l et ob ea p p l i e dt om o r eb r o a df i e l d sw i t hp n pf u n c t i o n t h ep a p e rf i r s t l yr e v i e w sd i f f e r e n tt y p e so fd a t aa c q u i s i t i o ns y s t e m ,t h e na f t e rb r i e fi n t r o d u c t i o no fu s b1 1p r o t o c o l ,as e to fd e s i g ns c h e m eo fd a t aa c q u i s i t i o na n dc o n t r o ls y s t e mb a s e do nu s bi sp u tf o r w a r d i nt h et h i r dc h a p t e r , t h eh a r d w a r ed e s i g ni sd e t a i l e d l yi n t r o d u c e da n di nt h ef o u r t hc h a p e r ,t h es o f t w a r ed e s i g ni sd e t a i l e d l yi n t r o d u c e d ,w h i c hi n c l u d e st h r e ep a r t s ,f i r e w a r es o f t w a r ed e s i g n ,u s bd e v i c ed r i v e rd e s i g na n dp ca p p l i c a t i o nd e s i g n ,e a c hp a r ti n c l u d e sd e t a i l e ds t e p so fd e v e l o p m e n t i nt h ef i f t hc h a r p t e r , t h ea r t i c l ed e t a i l e d l yd i s c u s sh o wt h es c h e m ei sa p p l i e di nb i o l o g i cs i g n a lc o l l e c t i o na n dp r o c e s ss y s t e m ,w h i c hi saa p p l i e de x a m p l eo fd a t aa c q u i s i t i o na n dc o n t r o ls y s t e mb a s e do i lu s bb yt h es u b j e c tg r o u pa n di sa l s oap a r to ft a s ka s s u m e db yt h es u b j e c tg r o u p a u t h o r :c a ol i g a n g( m e c h a n i c a la n de l e c t r o n i ce n g i n e e r i n g )d i r e c t e db yp r o f z h uh o n g t a ok e yw o r d s :d a t aa c q u i s i t i o nu s bf i r e w a r et t独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得壹墨圭鲎或其他教育机构的学位或证书而使用过的材料,与我同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。学位论文作者签名“髫到轫两签字目期:2 帅,年占月;日学位论文版权使用授权书本学位论文作者完全了解壹墨叁鲎有关保留、使用学位论文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和。借阕。本人授权南昌大学可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。( 保密的学位论文在解密后适用本授权书)学位论文作者签名:t 砻剁钢导师签名:凄嘲签字目期:2 ,订f 年6 月弓曰签字日期;1 r 年月l oi - 7学位论文作者毕业后去向工作单位:通讯地址:电话邮编1 1 数据采集系统概述第一章绪论在工业生产和科学研究的各行业中,常常利用p c 或工控机对数据进行采集。数据采集的对象多种多样,如常见的有液位、温度、压力、频率、位移等。其中,模拟量信号占相当大的比例。计算机数据采集系统可分为集中式与分布式二大类1 3 2 3 。集中式数据采集系统适用于信号源相对集中,相互之间数据关联性较强,对数据采集速率要求高、信号处理与控制实时性强的场合下应用,大部分单机控制系统均属此列。集中式数据采集系统一般通过内部总线如i s a 、p c i h 儿副总线数据采集插卡实现对输入信号的采集。分布式数据采集系统适合于信号源比较分散,相互之间数据关联性不强的场合下应用,如水泥生产线过程控制系统等。分布式系统一般通过外部总线如串行总线进行数据通讯,其突出特点是系统点多、数据量大、数据通讯速率低。分布式系统的数据采集是由下位机实现的,通常情况下,每一台下位机本身都是一个集中式数据采集系统。上述计算机数据采集系统的描述均是基于一般工业系统而言的。实际上,由于应用的特殊性,移动或准移动式数据采集系统在地质、建筑、水利及教学、实验等场合下的应用也同样具有广大的市场。移动式数据采集系统强调系统的便携性。专业的移动工业采集系统实际上是以工业计算机为核心的,内置式数据采集卡以插件方式固定在计算机机箱中。这种系统具有一定的可移动性,但体积与重量偏大,便携性能差,价格也比较高。移动式数据采集系统的另一种形式是以笔记本计算机为核心,采用外置式数据采集装置,配合相应的应用软件构成一个完整的数据采集系统f笔记本计算机常用的外置式数据采集装置是基于p c m c i a 总线的。这类装置一般由专业厂家定型生产,功能单一,且价格极高。外置式数据采集装置的另一种形式是基于r s 一2 3 2 c 串行总线的。这种系统采用主从计算机结构,笔记本计算机为主机,外置式数据采集装置内置单片机等c p u 作为从机,负责实现高速数据采集、控制,以及与主机的数据交换。用户比较容易以这种形式开发与构建专用系统,针对性强,成本低,得到广泛的应用。这种外置式数据采集系统。受到r s - 2 3 2 c 总线规范的限制,主从机之间的数据交换速率不高。同时传输的距离也不会超过1 5 米。采样系统与p c 接口速度的瓶颈作用会导致一部分数据的丢失,失去连续采样的意义。因此,提高p c 与外置式采样系统数据通道的流量是实现外置式中高速、高精度连续采样系统的关键。u s b 接口是近年成熟并在p c 、笔记本计算机中得到广泛使用的新的计算机总线接口。1 9 9 4 年,i n t e l 、c o m p a q 、d i g i t a l 、i b m 、m i c r o s o f t 、n e c 、n o r t h e r nt e l e c o m七家世界著名的计算机和通讯公司成立了u s b 论坛,花了近两年的时间形成了统一的意见,于1 9 9 5 年1 1 月正式制定了u s b o 9 通用串行总线( u n i v e r s a ls e r i a lb u s )规范。1 9 9 7 年开始有真正符合u s b 技术标准的外设出现。u s b l 1 是目前推出的在支持u s b 的计算机与外设上普遍采用的标准。1 9 9 9 年初在i n t e l 的开发者论坛大会上,与会者介绍了u s b 2 0 规范,该规范的支持者除了原有的c o m p a q 、i n t e l 、m i c r o s o f t和n e c 四个成员外,还有惠普、朗讯和飞利浦三个新成员。u s b 接口比起以往的接口形式有着明显的优势:1 能够自我检测外设,自动地进行设备驱动、设置;2 适应不同设备,传输速率从几千比特率到几十兆比特率:3 支持对多个设备的同时操作;4 有者出错处理差错恢复机制;5 与p c 机的即插即用的体系结构的一致性;6 价格低廉。u s b 2 0 向下兼容u s b i 1 ,数据的传输率将达到4 8 0 m b p s ,还支持宽带宽数字摄像设备及下一代扫描仪、打印机及存储设备。目前普遍采用的u s b i 1 主要应用在中低速外部设备上,它提供的传输速度有低速1 5 m b p s 和全速1 2 m b p s 两种,低速的u s b 带宽( 1 _ 5 m b p s ) 支持低速设备,例如显示器、调制解调器、键盘、鼠标、扫描仪、打印机、光驱、磁带机、软驱等。全速的u s b 带宽( 1 2 m b p s ) 将支持大范围的多媒体设备。基于u s b 数据采集系统“1 “的研究,在国内正在展开。以笔记本计算机为核心,基于u s b 接口实现高速数据采集是移动数据采集的一种崭新思路,使移动数据采集系统同时兼顾高的可移动性、便携性和高速数据采集与传递速率,以及便于用户自主开发成为可能。1 2 课题的来源与本课题所完成的主要工作本课题来源主要有两个:1 我们实验室所开发的基于u s b 的数据采集器是本课题来源之一。该数据采集器是以a d 公司的a d 此8 1 2 芯片为核心( 该芯片集成了8 0 c 5 1 单片机内核和8 通道1 2位a d ) ,外围有u s b 接口芯片。前期研究已取得阶段性成果,硬件系统初步成型,功能有待完善。软件部分尚停留在设备枚举层次,功能欠缺。2 我们实验室所开发的生物信号分析采集系统是本课题的另一来源。该生物信号分析采集系统主要是对生物信号进行提取、放大,经过a d 转换,在计算机中完成对数据的处理与信息的利用该系统硬件主要由四通道生物放大器,a d 数据采集卡组成,并通过软件实现对数据的采集、处理、波形显示、记录等等。由于原设计采用通用型的内置式a d 数据采集卡,板卡功能有限,移动性差,该生物数据采集系统的功能和应用范围受到定的限制。由于原生物信号分析采集处理系统采用的是内置式结构,在需要准备实验,以及实验结束以后的时候,必须打开机箱,装入或拆出内置式数据采集卡,工作量大,容易损坏板卡或计算机。如果不想频繁装拆内置式插卡的话,这批计算机就变成了专门用于相关实验室教学的专用计算机,设备使用效率低,经济性差。本课题是对上述基于u s b 的数据采集器与生物信号分析采集系统进行了改进与完善,并将二者进行整合,研制开发了一套外置式生物信号分析采集系统。由于以自主开发的数据采集器取代了通用内置式的a d 数据采集卡,利用其丰富的硬件和软件控制能力,实现了对生物信号数据采集过程的各种特殊的控制,丰富了系统的功能,并可在保证数据采集速率的前提下,实现系统的即插即用,提高了资源的利用率。硬件电路设计在吸取前期u s b 数据采集器的开发经验的基础上,对硬件电路进行设计,包括原理图绘制和印刷电路板的设计与制作。软件的设计在前期软件开发的基础上,对软件进行全面设计,主要包括单片机端固件( f i r m w a r e ) 设计,驱动程序设计和应用程序接口设计( 动态链接库) 。系统集成与应用把开发完成的基于u s b 的数据采集器与原生物信号采集器进行整合,构成一个完整的外置式、产品化的生物信号分析处理系统。1 3 课题的目的与意义本课题以一项具体的生物医学工程应用为背景,内容涉及电子技术、计算机技术、通讯技术、测试技术、等多个学科。通过本课题的研究,使我们在u s b 应用于数据采集方面的技术不断成熟,形成一整套从数据采集、数据传输到数据处理与控制的具有自主知识产权的移动数据采集系统开发应用技术。该技术的应用前途是极其广泛,其直接的应用还包括本学科当前正在开展的相关课题如轨道几何状态检查小车系统“等。轨道几何状态检查小车系统是一种在野外工作的移动检测设备,当前采用的方案有二个:第一套方案是在线检测方案,以笔记本计算机为控制、计算核心,使用了一种最新的通用u s b 总线数据采集卡。该卡能实现8 通道1 2 b i t 的实时数据采集,基本满足使用的需要。但主要存在三个问题,一是价格过高;二是该卡没有控制功能,不能实现在线声光报警、现场打标记等功能;三是耗电量偏高。第二套方案是离线检测方案,使用自主开发的单片机数据采集系统,能实现数据的实时显示,采用u s b 闪盘为海量数据存储介质,通过离线方式在p c 机上实现数据分析与报表生成,信息处理的实时性差。如果采用本课题所研制的外置式系统,则可以根据需要迸行功能定制,做到功能全,价格低,同时还可以提高系统的可靠性。4第二章u s b l 1 原理要实现带有u s b 接口设备的通讯,我们就必须要了解u s b 的基本原理,了解u s b 在对u s b 设备方面和对主机方面相关的要求。这是后续软件部分的重要参考。2 。1 。u s b 通信模型u s b 提供了在一台主机和若干台附属的u s b 设备之间的通信功能,从终端用户的角度看到的u s b 系统,可简单地用图2 - 1 表示:图2 一lu s b 主机设备的简单模型但在实际的实现上,具体的系统要比这复杂,不同层次的实现者对u s b 有不同的要求,这使得我们必须从不同的层次观察u s b 系统。u s b 系统提出了一些重要的概念和情况来支持现代个人计算机所提出的可靠性要求,所以u s b 的分层理解是必须的,它能使不同层次的实现者只关心u s b 相关层次的特性功能细节,而不必掌握从硬件结构到软件系统的所有细节。u s b 的层次结构 7 】如图2 - 2 所示。实际透f 青流辱= 二二= 二专逻辑通f 点流需婴震现的m 域图2 2 u s b 通信层次结构2 2 u s b 总线拓扑总线拓扑结构包括四个重要的组成部分。主机和设备:u s b 系统的基础组成部分。物理拓扑结构:描述u s b 系统中的各组成部分是如何连接起来的。逻辑拓扑结构:描述u s b 系统中各种组成部分的地位和作用,以及描述从主机和设备的角度观察到的u s b 系统。客户软件层与应用层的关系:描述从客户软件层看到的应用层的情况,以及从应用层看到的客户软件层的情况。2 2 1 u s b 主机和设备1 u s b 主机:u s b 主机控制器( u s bh o s tc o n t r o l l e r )u s b 系统软件集合:u s b 驱动程序、主机控制器的驱动程序、主机软件客户软件u s b 主机在u s b 系统中是一个起协调作用的实体,它不仅占有特殊的物理位置,而且对于u s b 以及连到u s b 上的设备来说,还负有特殊责任。主机控制所有的对u s b 的访问,一个u s b 设备想要访问总线必须由主机给予它使用权。主机还负责监督u s b 的拓扑结构。2 u s b 设备:一个u s b 设备的逻辑结构包括:u s b 总线接口u s b 逻辑设备应用层u s b 设备用于向主机提供一些额外的功能。u s b 设备提供的功能是多种多样的,但面向主机的接口却是一致的。所以,对于所有这些设备,主机可咀用同样的方式来管理它们与u s b 有关的部分。62 2 2 u s b 物理拓扑结构u s b 系统中的设备与主机的连接方式采用的是星形连接,如图2 - 3 。图2 3 物理总线的拓扑图中的h u b 是一类特殊的u s b 设备,它是一组u s b 的连接点,主机中有一个被嵌入的h u b 叫根h u b ( r o o th u b ) 。主机通过根h u b 提供若干个连接点。为了防止环状连接,采用星形连接来体现层次性。2 2 3 u s b 逻辑拓扑结构u s b 系统的工作是从逻辑上看的,u s b 逻辑拓扑揭示了主机与逻辑设备的通信。图2 4 就是图23 相对应的逻辑拓扑结构。图2 4u s b 逻辑总线的拓扑2 2 4 u s b 客户软件层与应用层的关系u s b 客户软件层与u s b 设备应用层的关系主要体现在两个方面:1 客户软件必须通过u s b 软件编程接口来操纵应用设各,这与另一些总线如p c i 、e l s a 、p c m c i a 等不同,这些总线是直接访问内存或i o 的。2 客户软件必须独立于u s l 3 上的其他设备。这样,设备和客户软件的设计者就可以只关心该设备与主机硬件的相互作用和主机软件的相互作用的细节问题。2 3 。u s b 数据传送类型一个u s b 逻辑设备对u s b 系统来说就是一个端点集合。端点可以根据它们实现的接口来分类。u s b 系统软件通过一个缺省的控制通道来管理设备。而客户软件用通道束管理接口。通道束的一端为端点,一端为缓冲区。客户软件要求通信数据在主机上的一个缓冲和u s b 设备上的一个端点之间进行。一个端点是一个可唯一识别的 j s b 设备的p o r t i o n ,它是主机与设备间通信流的一个结束点。一系列相互独立的端点在一起构成了u s b 逻辑设备。每个逻辑设备有一个唯一的地址,这个地址是在设备连上主机时,由主机分配的,而设备中的每个端点在设备内部有唯一的端点号。这个端点号是在设备设计时被给定的。每个端点都是一个简单的连接点,或者支持数据流进设备,或者支持其流出设备,两者不可得兼。一个u s b 通道是设备上的一个端点和主机上软件之间的联系。体现了主机上缓存和端点问传送数据的能力。有两不同的且互斥的通道通信格式:流( s t r e a m ) ,指不具有u s b 定义的格式的数据流;消息( m e s s a g e ) ,指具有某种u s b 定义的格式的数据流。u s b 通过通道在主机缓冲区与设备端点间传送数据。u s b 支持4 种传送类型 1 4 1 1 控制传送2 同步传送3 中断传送4 ,批传送上述四种传送类型在以下几个传送特征上会有不同:u s b 规定的数据格式信息流的方向数据净荷区的长度限制总线访问的限制延时的限制出错处理2 3 1 控制传送( c o n t r o lt r a n s f e r s )控制传送允许访问一个设备的不同部分。控制传送用于支持在客户软件和它的应用之间的关于设置信息、命令信息、状态信息的传送。控制传送由以下几个事务组成:( 1 ) 建立联系,把请求信息从主机传到它的应用设备:( 2 ) 零个或多个数据传送事务,按照( 1 ) 事务中指明的方向传送数据;( 2 ) 状态信息回传。u s b 设备必须实现缺省控制通道,并将它实现成一个消息通道。控制传送使用的是消息通道上的双向信息流,所以,一旦一个控制通道被确认之后,这个通道就使用了具有某个端点号的两个端点:一个输入,一个输出。控制传送对数据有格式的要求。控制传送的端点决定了它所能接收或发送的最大数据净负荷区长度。无论低速设备还是高速设备都可以使用控制通道。端点没法指明控制通道对总线访问频率的要求。u s b 权衡所有控制通道的总线访问频率和正等待的i r p ,从全局优化,提供一个“最佳”传送方案。u s b 要求数据帧中的一部分被留给控制传送使用。一旦主机遇到一个引起中止的条件或检测到一个错误,端点可以通过接收下一个s e t u p 包的p i d 来恢复,也就是说,不一定必须从别的通道进行恢复。在控制传送中,u s b 提供了强大的错误检测功能和错误恢复和重传功能。传送器和接收器可以保持阶段的同步,既关于他们在控传的哪个阶段这个问题上保持同步。并且以最小的代价恢复。2 3 2 同步传送( i s o c h r o n o u st r a n s f e r s )同步传送是恒定速度、错误容忍( e r r o r - t o r r e n t ) 的传送。具有以下的特点固定的延迟下,确保对u s b 带宽的访问。只要数据能提供得上,就能保证通道上的恒定数据传送速度。如果由于错误而造成传送失败,并不重传数据。同步通道是一种流通道,对数据格式没有要求。同步通道是一种流通道,所以是单方向的。在对端点的描述中指明了与它相连的通道的数据流方向。同步传送中数据包的大小取决于同步通道端点的能力。只有高速设备才能使用同步通道。同步传送不支持因总线错误而进行的重传。接收器可以判断是否发生了一个错误,低级的u s b 协议不允许有握手信号给同步通道的发送者。因为没有用来指示引起中止的条件的握手信号,所以同步传送的端点从不中途停止。虽然,错误信息可作为i r p的状态来报告,但同步通道不会因此停下。错误即使被查到,主机仍继续处理下一帧的数据。2 3 3 中断传送( i n t e r r u p tt r a n s f e r s )中断传送是为这样一类设备设计的,它们只传或收少量数据,而且并不经常进行传送,但它们有一个确定的服务周期,对中断传送有以下要求:通道的最大服务期得到保证。由于错误而引起的重发在下一服务期进行。中断通道是一种流通道,所以是单向的,对数据无格式的要求。中断通道的端点决定了自己能接收和发送的最大数据区长度。高速设备和低速设备均可使用中断传送。中断传送可以利用o i 跳变位( t o g g l e 位) 的机制,当成功地进行了一个传送,该位就跳变一次。一旦在中断通道上检测到一个引起中止的条件,或收到设备发来的s t a l l 握手信号,所有正等待的i r p 都会中止。由软件通过独立的控制通道来消除中止条件。清除后,设备和主机都复位到d a t a0 的状态。如果总线上出现了一个影响传送的错误,则中断处理事务会停止。2 34 批传送( b u l kt r a n s f e r s )为了支持在某些在不确定的时间进行的相当大量的数据通信,于是设计了批传送类型。它可以利用任何可获得的带宽。批传送有以下几点特性:以可获得带宽访问总线。如果总线出现错误,传送失败,可进行重发。可以保证数据必被传送,但不保证传送的带宽和延迟。只当有可获得的带宽时,批传送才会发生。如果u s b 有较多的空闲带宽,则批传送发生得相对频繁;如果空闲带宽较少,可能有很长时间没有批传送发生。u s b对批传送无格式要求。批通道也是种流通道,因此,数据传送也是单向的。批传送的端点决定自己可以接收或传送的最大数据净负荷区长度。只有高速设备可以使用批传送。批传送利用t o g g l e 位机制来保证接收器和发送器同步,即使在有错发生的情况下,也是如此。当端点被适当的控制传送设置过后,批传送被初始定位在d a t a 0 ,主机也将从d a t a 0 开始第一个批传送。如果出现了一个影响事务的总线错误,批传送将被中止。2 4 u s b 数据格式u s b 上的数据是以包为最小单位传输的,不同的数据包又构成了事务。不同的事务格式也不相同。2 4 1 u s b 数据包所有的数据包都有包开始( s t a r t o f p a c k e t ) 分隔符,其后就是包标识符( p i d ) ,p i d 的格式如图2 5 所示:ip i d0p 啦tl a i d 2p i p3丽。i 雨丽:l p i d l图2 5p i d 格式包标识符由4 位的包类型字段和其后的4 位的校验字段构成。包标识符指出了包的类型,并由此隐含地指出了包的格式和包上所用错误检测的类型。表2 1 列出了包标识符的类型、编码及其描述。p i d 类型p i d 名p m 【3 :0 】描述标记输出( o u t )0 0 0 l b在主机到功能部件的事务中有地址+ 端口号。( t o k e n )输入( i n )1 0 0 1 b在功能部件到主机的事务中有地址+ 端r n 号。帧开始( s o f )0 1 0 l b帧开始标记和帧号。建立( s e h j p )1 1 0 1 b在主机到功能部件建立一个控制管道的事务中有地址+ 端口号。数据数据0 ( d a t a 0 )0 0 l l b偶数据包p i d 。( d a t a )数据1 ( d a t a l )1 0 1 l b奇数据包p i d 。握手确认( a c k )0 0 1 0 b接收器收到无措数据包。( h a n d s h a k e )不确认( n a k )1 0 1 0 b接收设备部不能接收数据,或发送设备不能发送数据。停止( s t a l l )1 1 1 0 b端口挂起,或一个控制管道请求不被支持。专用前同步( p r e )l l o o b主机发送的前同步字。打开到低速设备的下行总( s p e c i a l )线通信。表2 1p i d 类型在包标识符后一般有地址字段,地址字段分为设各地址字段和端口字段。设备地址字段由7 位组成,由此指定了总共1 2 8 个设备地址。每个地址都定义了一个功能设备。地址o o h 用作设备的缺省地址,在设备枚举时使用,此地址不能用于其他用途。端口字段由4 位组成。除了端口地址0 之外,端口个数是由功能部件决定的。端口字段只对输入、建立和输出标记p i d 有定义。所有的功能部件都必须在端口0提供一个控制管道( 缺省控制管道) 。对于低速( l o ws p e e d ) i 懿- ,每个功能部件最多提供3 个管道:在端口0 的控制管道加上2 个附加管道( 或是2 个控制管道,或是1 个控制管道和1 个中断端口,或是2 个中断端口) 。全速( f u l ls p e e d ) 功能部件可以支持最多可达1 6 个的任何类型的端口。地址字段后有的跟有数据字段。数据字段可以在0 到1 , 0 2 3 字节之间变动,但必须是整数个字节。一个包最后一般都有循环冗余校验字段。其余还有帧号字段,帧量糕焉兰雩苣五量曲过一帧就将其内容加一。一个l:l := = 二_ j 二二_ 二:= = 二一1 酞e n ( s e t u p ) 数据包如2 6 所示。匕i图2 6 u s b 包格式2 4 2 u s b 事务包事务包括四种类型:批处理( b u l k ) 、控制( c o n t r 0 1 ) 、中断( i n t e r r u p t ) 和同步( i s o c h r o n o u s ) 。批处理事务:批处理事务类型的特点是以错误检测和重试的方式保证主机和功能部件之间的数据的无错发送的能力。批处理事务是由标记、数据和握手包构成的三时相的事务。在某些流控制和挂起条件下,数据时相被握手信号替换,从而产生了没有数据传输的两时相的事务。当主机准备好了接收批处理数据的时候,它发出输入标记。功能部件端口通过返回数据包,或者如果不能返回数据,则返回n a k 或s t a l l 握手作为应答。n a k 表示功能部件暂时不能返回数据,而s t a l l 表示端口永久地被停止,需要u s b 系统软件干涉。如果主机收到合法的的数据包,则它用a c k 握手来应答。如果收到数据时主机检测到错误,它不返回握手包给功能部件。控制事务:控制传送最少有2 个事务阶段:建立和状态。控制传送可以有选择性地包括建立和状态阶段之间的数据阶段。在建立阶段里,建立事务用于向功能部件的控制端口传输信息。建立事务在格式上类似于输出,但是使用的是建立面不是输出的p i d 。图2 7 为控制建立事务。或者输出) 。任何剩下的数据都作为剩余在团主机口功能部件最后的事务中被发送。控制传送的状态阶段n2 7 控制建立事务是序列中的晟后一个操作。状态阶段是以相对前面的阶段的数据流方向的变化来刻划的,并且总是使用d a t a lp i d 。1 3中断事务:中断事务可由输入或输出构成。一收到输入标记,功能部件便可返回数据、n a k 或s t a l l 。如果端口没有新的中断信息( 即没有等待事务的中断) 可供返回,功能部件在数据时相里返回n a k 握手。如果中断端口的停止特征被设置了,功能部件将返回s t a l l 握手。如果中断是等待事务的,功能部件象数据包那样返回中断信息。作为对数据包接收的反应,主机如果数据无错地被接受则发出a c k 握手,或者如果数据包损坏则不返回握手。当端口为实际的中断数据使用中断传送机制的时候,必须遵循数据切换协议。这使功能部件得知主机收到了数据,并且事件条件被清除。这种“确保的”事件传送允许功能部件只发送中断信息直到它被主机接收,而不是在u s b 系统软件清除中断条件之前,每次数据功能部件被选中时就必须要发送中断数据。另外,中断端口可被用来为某些同步功能部件传达速率反馈信息。用于这种模式时,在每个数据包被送到主机之后,都不管握手包是否存在或类型如何,数据切换位都应该改变。只有中断输入端口支持这种能力。同步事务:如图2 9 所示,同步( i s o ) 事务有标记和数据时相,而没有握手时相。主机发出输入或输出标记,后跟着端口( 输入) 或主机( 输出) 传送数据的数据时相。i s o 事务不支持握手时相或重试能力。图2 8 为同步事务格式。空阐口主机口功能郁件图2 8 同步事务格式空闲u s b 提供一种机制以保证多事务中数据发送器和接收器之间的数据序列同步。这种机制提供一种保证发送器和接收器正确地解释事务的握手时相的方法。同步通过d a t a 0 和d a t a lp i d ,以及分别从属于数据发送器和接收器的切换时序位的使用而完成。仅在接收器能接受数据并且收到带有正确的数据p i d 的无错数据包的时候,稀一数一篙孓鬯接收器时序位才切换。而仅在数据发送器收到合法的a c k 握手的时候,发送器时序位才切换。数据发送器和接收器必须在事务开始的时候同步它们的时序位。使用的同步机制随着事务类型而变化。i s o 传送不支持数据切换同步。2 5 u s b 标准设备请求所有的u s b 设备在设备的缺省控制通道e f a u hc o n t r o lp i p e ) 处对主机的请求发出响应。这些请求是通过使用控制传输来达到的,请求及请求的参数通过s e t u p包发向设备,由主机负责设置s e t u p 包内的每个域的值。每个s e t u p 包有8 个字节。见表2 2 。偏移量域大小值描述请求特征:d 7 :传输方向0 = 主机至设备l = 设备至主机d 6 ,5 :种类0b m r e q u e s t t y p e1位圈0 = 标准l ;类2 = 厂商3 = 保留d 4 0 :接受者0 ;设备l = 接口2 ;端点3 = 其他4 ,3 1 = 保留b r e q u e s t1具体请求( 参见衰1值8 3 )2w v a i t l e2字长城,根据不同值韵请求舍义改变。4w i n d e x2字长域,根据不同的请求含义改变。索引或偏移典型用于传送索引或偏移。6w l e l 3 口t h2如有数据传送阶段,此为数据字节数。表2 2s e t u p 数据包的格式u s b 标准设备请求是所有的u s b 设备定义的请求。不管设备是否被分配了非缺省地址或设备当前是被配置了的,它们都应当对标准请求产生响应。特性选择符被用来设置特性或使特性生效。比如说某个设备、接口、或结点的远程唤醒功能。表2 3 列出了对应的标准请求码及描述表类型。b m r e q u e s t t y p eb r e q u e s tw v a l u ew i n d e xw l e n q t hd a t a0 0 0 0 0 0 0 0 bc l e a r f e a t u r e特性选择符霉零无d o d 0 0 0 0 1 b接口号0 0 0 0 0 0 l0 b端点号1 0 d 0 0 0 0 0 bg e t c o n f i g u r a t l霉零配置值0 n1 0 0 0 0 0 0 0 bg e t d e s c r i p t o r描述表种类零或语言描述表长描述表和索引标志10 0 0 0 0 0 1 bg e t i n t e r f a c e霉接口号可选设置1 0 0 d 0 0 0 0 bg e ts t a t o s霉设备,10 0 0 0 0 0 1 b零接口号接口,或1 0 0 0 0 0 1 0 b端点号端点状态0 0 0 0 0 0 0 0 bs e t a d d r e s s设各地址零零无0 0 0 0 0 0 0 0 bs e t c o n f i g u r a t i配置值零零无o n0 0 0 0 0 0 0 0 bs e t d e s c r i p t o r描述表种类零或语言描述表长描述表和索引标志0 0 0 0 0 0 0 0 bs e t f e a t u r e特性选择符霉零无0 0 0 0 0 0 0 1 b接口号0 0 0 d 0 0 1 0 b端点号0 0 0 0 0 0 0 1 bs e t i n t e r f a c e可选设置接口号攀无1 0 0 0 0 0 0 1 0 bs y n c h f r a m e零端点号帻号表2 3 标准设备请求每个u s b 设备都必须有且只有一个设备描述表用于设备枚举,主机根据这些信息来配置设备。一个u s b 设备描述表包括一个或多个配置描述符,一个配置描述符包括一个或多个接口描述符,一个接口描述符又包括一个或多个端点描述符。1 6第三章硬件电路设计3 1 硬件电路设计总体要求开发新的基于u s b 的数据采集器的一个重要原因是,现有类似产品通常只有a d 采集功能。本项目一方面是探索自主开发技术,更重要的是使所研究的数据采集器能实现更多的控制功能,以满足不同的应用需求。因此,提出以下设计总体要求:1 能够处理一5 v + 5 v 的模拟输入信号,并且硬件电路有一定的抗干扰能力,实现模拟信号a d 转换。2 数据采集有一定的速度和精度要求,应满足生物信号数据采集的要求。3 有数字量输入,输出和d a 输出功能模块。4 实现u s b 通讯。3 2 总体方案设计根据硬件电路设计要求,系统硬件即要达到通用数据器的要求,还能够满足生物信号分析处理系统的要求。生物信号分析处理系统是南昌大学机电研究所测试与控制实验室和江西医学院功能中心实验室曾合作开发了一套生物信号采集处理系统,主要用于医学院的生理学试验。关于它的介绍可参看论文的第5 章第一节,下面分析一下生物信号分析处理系统对数据采集的要求。生物信号分析处理系统四通道放大器硬件电路的接口部分如图3 1 所示。图3 一l 生物信号分析处理系统硬件接口其中d b 2 5 接口定义了四路模拟信号、d a 信号和地信号。a d 0 a d 3 为四通道生物放大器输出的模拟信号,需经过a d 处理,因此数据采集器应能接受4 通道的模拟输入;d a 0 和d a l 信号是两路d a 输入信号,作为生物信号刺激器的输入,因此数据采集器应有d a 输出功能。h e a d e r l 0 2 接口定义了1 4 路数字量输入输出和地信号,主要用于控制4 通道放大器的放大倍数。因此数据采集器也应有提供数字量输入输出的功能模块。因为本课题有一定的继承性,所以总体方案的基本框架仍采用普通单片机+u s b 接口芯片形式的。在单片机的选取上,有两种方式可选,一种方式是采用单一功能的单片机,如a t 8 9 c 5 l ,如采用这种类型的单片机,那数据采集器电路必须扩展a d 芯片、数据保持、缓冲电路、d a 芯片等,这会使整个数据采集器电路设计变复杂,不利于调试,并且成本还高;另一种方式是采用集成了a d 等功能的单片机,采用这种类型的单片机不仅使得数据采集器电路设计简洁、调试方便,而且开发周期也大大缩短。本电路采用的a d - t c 8 1 2 芯片正是此类芯片中性能比较突出的。在u s b 接口芯片的选取上,采用了性能卓越、功能比较强大的p d i u s b d l 2 芯片,它是市场上非常流行的基于u s b l ,1 协议的接口芯片。为了满足更一般的要求,数据采集器采用了8 通道的模拟输入,扩展了一个1 6路数字量输入接口和一个1 6 路数字量输出接口。系统总体方案如图3 2 所示:图3 - - 2u s b 数据采集系统框图1 8从图中可以看出,本方案采用的单片机是a d i a c 8 1 2 芯片,u s b 接口芯片采用的是p d i u s b d l 2 ,这两块芯片的详细介绍,将在后面一节给出。电压变换模块主要解决电平转换的问题,因为a d u c 8 1 2 芯片要求的a d 模拟输入电压在0 4 2 5 v 之间。滤波处理模块主要解决抗干扰问题。本方案扩展了1 6 路的数字量输入和输出接口,这基本上能满足一些小型系统的要求。片外ra m 主要是用来暂存a d 转换的数据。系统还提供了当单片机内部r o m 不够用时,扩展一块e e p r o m 的能力。a d 采样的数据通过u s b 接口芯片传到上位主机系统进行处理。此外,为了软件调试方便,电路还扩展了一个r s 2 3 2 串口( 图中未示出) ,可参考附录提供的电路图。3 3 主要芯片介绍3 3 1 n i 堆c s l 2 芯片1 qa d g c 8 1 2 是全集成的高性能的1 2 位数据采集芯片,它在单个芯片内集成了自校准多通道1 2 位a d c ,两个1 2 位d a c 以及可编程的8 位( 与8 0 5 1 兼容) m c u 。片内8 k b 的闪速电擦除( f l a s l l e e ) 程序存储器,6 4 0 字节的闪速电擦除数据存储器以及2 5 6 字节数据s r a m ,均由可编程内核控制。另外m c u 具有包括看门狗定时器、电源监视器和a d cd m a 功能,为多处理器接口和i o 扩展提供了3 2 条可编程的i o 线。1 2 c 兼容的s p i 和标准u a r t 串行口i o 等。m c u 内核和模拟转换器二者均有正常、空闲和掉电工作模式,有适合于低功率应用的灵活电源管理方案。在工业温度范围内,有3 v 和5 v 两种靓格电压工作器件可供选择。它有5 2 条引脚,用扁平塑料四方形封装。a d p c 8 1 2 数据采集芯片的特点如下:模拟l j o :8 通道,高精度1 2 位a d c ;片内4 0 p p r o j c 电压基准;高速2 0 0 k h z ;高速a d c 至r a m 的d m a 控制器:两个1 2 位电压输出d a c ;片内温度传感器功能。存储器:8 k b 片内闪速电擦除程序存储器;1 96 4 0 字节片内闪速电擦除数据存储器:片内电荷泵( 不需要外部v p p ) ;2 5 6 字节片内数据r a m ;1 6 m b 外部数据地址空间:6 4 k b 外部程序地址空间。与8 0 5 1 兼容的内核:额定工作频率1 2 m h z ( 最大1 6 z )3 个1 6 位定时器计数器:3 2 条可编程的i o 线;高电流驱动能力一端口3 ;9 个中断源,两个优先级。电源:用3 v 和5 v 电压工作;正常、空闲和掉电模式;片内外围设备:u a r t 串行i o ;两线( 与1 2 c 兼容) 和s p i 串行i o ;看门狗定时器;电源监视器。3 3 2 p d i - i j s b d l 2 芯片【1 7 1 1 1 8 1p d i u s b d l 2 是一个性能优化的u s b 器件,通常用于基于微控制器的系统,通过高速通用并行接口进行通信,也支持本地d m a 传输。该器件采用模块化的方法实现一个u s b 接口,允许在众多可用的微控制器中选择最合适的作为系统微控制器,允许使用现存的体系结构并使固件投资减到最小。这种灵活性减少了开发时间、风险和成本,是开发低成本且高效的u s b 外围设备解决方案的一种最快途径。p d i u s b d l 2 有如下特性:符合u s b l 1 规范;高性能的u s b 接口器件,集成了s i e 、f i f o 存储器以及电压调整器;符合大多数器件的分类规格;可与任何外部微控制器微处理器实现高速并行接口( 2 m b s ) ;完全自治的直接内存存取( d m a ) 操作;集成了3 2 0 b 多结构f i f o 存储器;主端点的双缓冲配置增加了数据吞吐量并轻松实现实时数据传输;在批量模式和同步模式下均可以实现1 m b s 的数据传输速率;具有良好的e m i 特性的总线供电能力;在挂起时可控制l a z y c l o c k 输出;可通过软件控制与u s b 的连接:采用g o o d l i n k 技术的连接指示器,在通讯时使l e d 闪烁;可编程的时钟频率输出;符合a c p i 、o n n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论