1、 科技学院毕业论文(设计) 第 页基于 LABVIEW 的虚拟万用表设计与实现目录摘要 .III关键词 .IIIAbstract.IVKey WordsIV第一章 绪论.11.1 引言11.2 虚拟仪器.11.2.1 虚拟仪器的概念.11.2.2 虚拟仪器的构成.21.3 课题现状31.4 目的与意义 3第二章 主要应用软件.52.1 LabVIEW 开发平台简介 .52.2 LabVIEW 的优势 .72.3 LABVIEW 应用概述 .82.4 LabVIEW 应用解决方案.92.5 protues 简介.92.5.1 protues 功能特点 92.5.2 protues 所提供的资源
2、10科技学院毕业论文(设计) 第 I 页2.5.3 protues 在“单片机原理与应用技术 ”中的作用102.6 Keil uV3 简介11第三章 系统主要硬件.12 3.1 系统的硬件因素123.2 AD0809133.2.1 AD0809 的逻辑结构133.2.2 AD0809 的工作原理.133.2.3 AD0809 的实际应用 153.3 SST89E516RD 单片机 .163.3.1 单片机 SST89E516RD 单片机简介163.3.2 仿真器电路和工作原理16第四章 详细设计与系统实现.184.1 硬件电路的具体设计 4.1.1 硬件的设计步骤 .4.1.2 硬件电路的连接
3、 .4.2 Keil 与 Proteus 联机调试 .4.3 虚拟万用表程序设计 4.4 虚拟万用表实现 4.4.1 创建虚拟万用表的前面板 VI 4.4.2 虚拟万用表的实现 .第五章 总结.参考文献 .39致谢 .40科技学院毕业论文(设计) 第 II 页基于 LABVIEW 的虚拟万用表设计与实现摘要虚拟技术的发展使模拟电子技术实验的分析设计过程得以在计算机上轻松、准确、快捷地完成。这样,一方面克服了实验室在元器件和规格上的限制,避免了损坏仪器等不利因素,另一方面使得实验不受时间及空间的限制,从而促进模拟电子技术实验教学的现代化。本文介绍了基于 LabVIEW 的模拟电子技术实验系统虚拟
4、万用表的设计与实现。此系统具有参数调节方便、易实现、可靠度高等优点。在高等工程教育中采用虚拟实验室,可以从根本上解决实验与实习经费严重短缺问题。作为传统电子技术实验的补充,使学生初步掌握仿真软件技术,可使实验内容紧密联系课本内容,比较全面地概括和反映部分所学的知识点,将课堂内容具体化。关键词万用表,虚拟仪器, LabVIEW,Proteus,Keil 科技学院毕业论文(设计) 第 III 页LABVIEW-based design and implementation of virtual multimeterAbstractThe development of virtual technol
5、ogy, the analysis of analog electronic technology experiment design process to the computer easily, accurately and quickly completed。On the one hand to overcome the lab components and specifications constraints, to avoid damage to equipment and other unfavorable factors, on the other hand the experi
6、ment is independent of time and space constraints, so as to promote experimental teaching analog electronics technology modernization。This article describes the simulation of electronic technology based on LabVIEW experimental system - the design and implementation of virtual multimeter。This system
7、has the parameter adjustment is convenient, easy to realize the advantages of higher reliability. Higher engineering education in the use of virtual laboratories that can fundamentally solve the severe shortage of funding for experimental and practical problems. As a complement traditional electroni
8、c technology experiment, so that students master the initial simulation 科技学院毕业论文(设计) 第 IV 页software technology, content can experiment closely contents and relatively comprehensive overview and reflect the knowledge learned some point, the class content specific。Key WordsMultimeter,Virtual Instrumen
9、ts ,LabVIEW,Proteus,Keil科技学院毕业论文(设计) 第 0 页第一章 绪论1.1 引言LabVIEW 是美国国家仪器公司(NI)专门为开发虚拟仪器应用软件而设计的图形化编程环境, 它的最大优点是直观易学,编程效率高,用它来开发各种仪器及虚拟电路具有独到之处。LabVIEW 的核心是 Virtual Instrument 简称 VI, VI 由一个人机对话的用户界面前面板和类似于源代码功能的方框图(程序框图)组成。前面板接受来自方框图的指令。在前面板中,控件模拟了仪器的输入装置并把数据提供给 VI; 而指示器则模拟了仪器的输出装置并显示由程序框图获得或产生的数据。LabVI
10、EW 不仅广泛应用于科学研究及工业自动化中, 在学校的实验室及电子课程辅助教学中也有着较好的应用。由于 LabVIEW 的控件模板中不仅提供了仿真度较高的各种仪器面板、按钮、开关、指示灯、波形显示器等电路器件, 还提供了易使用的绘图工具, 教学辅助模板中又提供了各种波形信号发生器的仿真程序 , 在 Lab VIEW 功能模板的布尔运算子模板中, 包含着功能齐全的逻辑运算功能, 因此可很容易地利用其制作数字电路示教板及仿真演示实验。在制作中, 为了提高制作效率,先将实验中用到的各集成电路(包括集成电路芯片)分别编制成子程序, 然后制作仿真实验的通用平台, 在不同实验中只要调用不同集成电路的子程序
11、并对连线作相应的修改即可。1.2 虚拟仪器1.2.1 虚拟仪器的概念虚拟仪器(virtual Instrument)是日益发展的计算机硬件、软件和计算机技术在向其他技术领域密集渗透的过程中,与测试技术、仪器技术密切结合,共同孕育的一项新成果。虚拟仪器的出现和兴起改变了传统仪器的概念、模式和结构,改变了人们的仪器观。到 21 世纪初,虚拟仪器的生产厂家超过千家,品种达到数千种,市场占有率占到电测、电控仪器的 50%!这一项预测使从事电测、电控仪器研究开发的科学家和工程师们看清了虚拟仪器对传统仪器的巨大挑战,认识到在 21 世纪虚拟仪器将成为仪器的发展方向,并将在相应的仪器领域内逐一取代传统硬件化
12、仪器,将成千上万种硬件化电测与电控仪器演变成计算机软件,成为一系列文件融入到计算机中。虚拟仪器是以计算机为仪器统一的硬件平台,对测试仪器的功能和控件进行建模,并根据模型将这些功能和形象逼真的仪器面板控件形成相应的软件,以文件形成存放科技学院毕业论文(设计) 第 1 页于机内的软件库中,同时在计算机的总线槽内插入对应的、可实现数据交换的模块化硬件接口卡,若使库内仪器的测试功能和控件的软件以及由接口卡输入至机内的数据在计算机系统管理器的统一指挥和协调下运行,便构成了一类全新概念的仪器虚拟仪器。由于虚拟仪器的测试功能、面板控件都实现了软件化,故虚拟仪器被认为是“软件即仪器” 。这是对虚拟仪器概念的延
13、伸,是仪器技术一次突破性的发展。由于虚拟仪器充分利用了软件技术,又享用计算机的运算、存储、显示、打印、管理等功能,因此,它是智能化的仪器。虚拟仪器彻底打破了传统仪器只能由生产厂家定义,用户无法改变的局面,从而使得任何一个用户都可以方便灵活地用鼠标或按键在计算机显示屏幕上操作虚拟仪器软面板的各种“旋钮”进行测试工作,并可以根据不同的测试要求通过窗口切换不同的虚拟仪器,或通过修改软件来改变、增减虚拟仪器系统的功能与规模。虚拟仪器具有的这种“可开发性”和“可扩展性”等优越特点使虚拟仪器具有强大的生命力和竞争力。1.2.2 虚拟仪器的构成虚拟仪器由通用仪器硬件平台(简称硬件平台)和应用软件两大部分构成
14、。1、虚拟仪器的硬件平台由两部分组成:(a)计算机:一般为一台 PC 机或者工作站,其为硬件平台的核心。(b)I/0 接口设备: I/0 接口设备主要完成被测输入信号的采集、放大、A/D 转换。不同的总线有其相应的 I/0 接口硬件设备,如利用 PC 机总线的数据采集板卡、GPIB 总线、VXI 总线仪器模块、PXI 总线仪器模块、串行总线仪器等。虚拟仪器总线形式有 GP-IB、串口、并口、USB、IEEE-1394、DAQ、VXI 和 PXI 等多种,其中 VXI 和 PXI 是两种常用的总线形式。2、虚拟仪器的应用软件目前虚拟仪器软件开发工具有如下两类:文本式开发平台如VisualC+、V
15、isualBasic、LabWindows/CVI 等;图形化开发平台如 LabVIEW、HPV E 等。.虚拟仪器软件由两部分组成,即应用程序和 I/0 接口仪器驱动程序.应用程序又包含实现虚拟面板功能的软件程序和定义测试功能的流程图软件程序.I/0 接口仪器驱动程序完成对特定外部硬件设备的扩展、驱动与通信。科技学院毕业论文(设计) 第 2 页虚拟仪器硬件平台需要在软件的支持下才能发挥潜能。因此虚拟仪器的关键技术之一就是应用软件,应用软件应完成三个主要功能:提供一个集成的开发环境、一个与仪器硬件的高级接口和一个图形用户接口。虚拟仪器系统应用软件开发环境主要包括两种:一种是基于传统的文字语言的
16、软件开发环境,主要是 NI 公司的Lab/windows/CVI、Microsoft 公司的 VisualC+、Visual Basic、Basic Borland 公司的 Delphi 等;另一种是基于图形化编程的环境平台,如 HPVEE、LabVIEW,其中LabVIEW 最流行、是目的应用最广、发展最快、功能最强的图形化软件,图形化软件开发系统是用工程人员最熟悉的术语和图形化符号代替常规的文本语言编程,界面友好、操作简便,可大大缩短系统开发周期,可以大大减轻系统开发人员的负担,使其将主要精力集中投入到系统设计中,而不再是具体软件细节的推敲上。1.3 课题现状现代计算机技术和信息技术的迅猛
17、发展,冲击着国民经济的各个领域,也引起了测量仪器和测试技术的巨大变革。人们曾为测量仪器从模拟化、数字化到智能化的进步而欣喜,也为自动测试技术的日新月异的发展所鼓舞,当今虚拟仪器的出现又使得测量仪器进步入了高科技的殿堂。随着微电子技术、计算机技术、网络技术和现代测量技术的迅速发展,一种新型的先进仪器虚拟仪器称为当前研究的热点。虚拟仪器作为新兴的仪器仪表,其优势在于用户可自行定义仪器的功能和结构等,且构建容易、转换灵活。因此它在各个领域都得到广泛的应用。国内单位和院校都在积极地开展这些方面的研究和开发。虚拟仪器应用程序的开发主要有两种:一种是基于传统的文本语言的软件开发环境,常用的有 lab wi
18、ndows/cvi、visual basidc 等;一种是基于图形化语言的软件开发环境,常用的有 lab view 和 hpvee 。其中图形化软件开发系统是用工程人员所熟悉的术语和图形化符号代替常规的文本语言编程,界面友好,操作简便,可大大缩短系统开发周期,深受专业人士的青睐。1.4 目的与意义用 LABVIEW 构建一个模拟电子技术虚拟实验系统万用表。从现实的意义上来说,在高等工程教育中采用虚拟实验室,可以从根本上解决实验与实习经费严重短缺问题。作为传统电子技术实验的补充,使学生初步掌握仿真软件技术,可使实验内容科技学院毕业论文(设计) 第 3 页紧密联系课本内容,比较全面地概括和反映部分
19、所学的知识点,将课堂内容具体化。同时,利用虚拟仪器技术实现对仪器设备的远程、分布式控制。一方面,继承实物实验可操作性、参与性强的优点;另一方面,又可利用计算机优势,发挥其直观、动态模拟、迅速准确、资源共享、资金投入量少等特点,从而建立一种新型的实验教学方式,进一步提高教学效率。科技学院毕业论文(设计) 第 4 页第二章 主要应用软件2.1 LabVIEW 开发平台简介LabVIEW 是一个完全的、开放式的虚拟仪器开发系统应用软件,利用它组建仪器测试系统和数据采集系统可以大大简化程序的设计。LabVIEW 与VisualC+、VisualBasic、LabWindows/CVI 等编程语言不同,
20、后者采用的是基于文本语言的程序代码(Code) ,而 LabVIEW 则是使用图形化程序设计语言 G(Graphic) ,用框图代替了传统的程序代码。LabVIEW 所运用的设备图标与科学家、工程师们习惯的大部分图标基本一致,这使得编程过程和思维过程非常的相似。 LabVIEW 包含有专门用于设计数据采集程序和仪器控制程序的函数库和开发工具库。LabVIEW 的程序设计实质上就是设计一个个的“虚拟仪器” ,即“VIs” 。在计算机显示屏幕上利用函数库和开发工具库产生一个前面版(FrontPanel) ;在后台则是利用图形化的编程语言编制用于控制前面板的框图程序。程序的前面板具有与传统仪器相类似
21、的界面,可接受用户的鼠标和键盘指令。一般来说,每一个 VI 都可以被其他 VI 调用,其功能类似于文本语言的子程序嵌套;而这种嵌套的层次,从理论上讲,是不受任何限制的。 LabVIEW 是带有可扩展函数库和子程序库的通用程序设计系统。它提供了用于GPIB 设备控制、VXI 总线控制、串行口设备控制、以及数据分析、显示和存储的应用程序模块。 LabVIEW 可方便的调用 Windows 动态链接库和用户自定义的动态链接库中的函数;LabVIEW 还提供了 CIN(CInterfaceNode)节点使得用户可以使用由 C 或 C+语言,如ANSIC,编译的程序模块,使得 LabVIEW 成为一个开
22、放的开发平台。LabVIEW 还直接支持动态数据交换(DDE) 、结构化查询语言(SQL) 、TCP 和 UDP 网络协议等。此外,LabVIEW 还提供了专门用于程序开发的工具箱,使得用户能够很方便的设置断点,动态的执行程序来非常直观形象的观察数据的传输过程,以及进行方便的调试。LabVIEW 的运行机制就宏观上讲已经不再是传统上的冯诺伊曼计算机体系结构的执行方式了。传统的计算机语言(如 C)中的顺序执行结构在 LabVIEW 中被并行机制所科技学院毕业论文(设计) 第 5 页代替;从本质上讲,它是一种带有图形控制流结构的数据流模式(DataFlowMode) ,这种方式确保了程序中的函数节
23、点(FunctionNode)只有在获得它的全部数据后才能够被执行。也就是说,在这种数据流程序的概念中,程序的执行是数据驱动的,它不受操作系统、计算机等因素的影响。既然 LabVIEW 程序是数据流驱动的,数据流程序设计规定,一个目标只有当它的所有输入有效时才能够被执行;而目标的输出只有当它的功能完全时才是有效的。这样,LabVIEW 中被连接的函数节点之间的数据流控制着程序的执行次序,而不像文本程序受到行顺序执行的约束。从而,我们可以通过相互连接函数节点快速简洁的开发应用程序,甚至还可以有多个数据通道同步运行,即所谓的多线程(Multithreading) 。LabVIEW 的核心是 VI。
24、VI 有一个人机对话的用户界面前面板(FrontPanel)和相当于源代码功能的框图程序(Diagram) 。前面板接受来自框图程序的指令。在 VI 的前面板中,控件(Controls)模拟了仪器的输入装置并把数据提供给 VI 的框图程序;而指示器(Indicators)则是模拟了仪器的输出装置并显示由框图程序获得或产生的数据。当把一个控件或指示器放置到前面板上时,LabVIEW便在框图程序中相应的产生了一个终端(Terminals) ,这个从属于控件或指示器的终端不能随意的被删除,只有删除它对应的控件或指示器时它才会随之一起被删除。用 LabVIEW 编制框图程序时,不必受常规程序设计语法细
25、节的限制。首先,从函数面板(FunctionPalette)中选择需要的函数节点(FunctionNode) ,将之置于框图上适当的位置;然后用连线(Wires)连接各函数节点在框图程序中的端口(Port) ,用来在函数节点之间传输数据。这些函数节点包括了简单的计算函数、高级的采集和分析 VI以及用来存储和检索数据的文件输入输出函数和网络函数。用 LabVIEW 编制出的图形化 VI 是分层次和模块化的。我们可以将之用于顶层(TopLevel)程序,也可用作其他程序或子程序的子程序。一个 VI 用在其它 VI 中,称之为subVI,subVI 在调用它的程序中同样是以一个图标的形式出现的;为了
26、区分各个 subVI,它们的图标是可编辑的。LabVIEW 依附并发展了模块化程序设计的概念。用户可以把一个应用任务分解成为一系列的子任务,每个子任务还可以分解成许多更低一级的子任务,科技学院毕业论文(设计) 第 6 页直到把一个复杂的问题分解成为许多子任务的组合。首先设计 subVI 完成每个子任务,然后将之逐步组合成为能够解决最终问题的 VI。图形化的程序设计编程简单、直观、开发效率高。随着虚拟仪器技术的不断发展,图形化的编程语言必将成为测试和控制领域内最有前途的发展方向。2.2 LabVIEW 的优势虚拟仪器具有传统独立仪器无法比拟的优势,但它并不否定传统仪器的作用,它们相互交叉又相互补
27、充,相得益彰。在高速度、高带宽和专业测试领域,独立仪器具有无可替代的优势。在中低档测试领域,虚拟仪器可取代一部分独立仪器的工作,但完成复杂环境下的自动化测试是虚拟仪器的拿手好戏,是传统的独立仪器难以胜任的,甚至不可思议的工作。专家们指出,在这个计算机和网络时代,利用计算机和网络技术对传统的产业进行改造,已是大势所趋,而虚拟仪器系统正是计算机和网络技术与传统的仪器技术进行融合的产物,因此,在 21 世纪,虚拟仪器将大行其道,日渐受宠,将会引发传统的仪器产业一场新的革命。LabVIEW 是 NI 推出的虚拟仪器开发平台软件,它们能够以其直观简便的编程方式、众多的源码级的设备驱动程序、多种多样的分析
28、和表达功能支持,为用户快捷地构筑自己在实际生产中所需要的仪器系统创造了基础条件。LabVIEW 采用图形化编程语言-G 语言,产生的程序是框图的形式,易学易用,特别适合硬件工程师、实验室技术人员、生产线工艺技术人员的学习和使用,可在很短的时间内掌握并应用到实践中去。特别是对于熟悉仪器结构和硬件电路的硬件工程师、现场工程技术人员及测试技术人员来说,编程就像设计电路图一样;因此,硬件工程师、现场工程技术人员及测试技术人员们学习 LabVIEW 驾轻就熟,在很短的时间内就能够学会并应用 LabVIEW。也不必去记忆那眼花缭乱的文本式程序代码。LabVIEW 这么容易学习和使用,是不是 LabVIEW
29、 的功能十分有限呢?不。像 C 或C+等其它计算机高级语言一样,LabVIEW 也是一种通用编程系统,具有各种各样、功能强大的函数库,包括数据采集、GPIB、串行仪器控制、数据分析、数据显示及数据存储,甚至还有目前十分热门的网络功能。LabVIEW 也有完善的仿真、调试工具,如设置断点、单步等。LabVIEW 的动态连续跟踪方式,可以连续、动态地观察程序中的数据及其变化情况,比其它语言的开发环境更方便、更有效。而且 LabVIEW 与其它计算机科技学院毕业论文(设计) 第 7 页语言相比,有一个特别重要的不同点:其它计算机语言都是采用基于文本的语言产生代码行,而 LabVIEW 采用图形化编程
30、语言-G 语言。LabVIEW 程序又称为虚拟仪器,它的表现形式和功能类似于实际的仪器;但LabVIEW 程序很容易改变设置和功能。因此,LabVIEW 特别适用于实验室、多品种小批量的生产线等需要经常改变仪器和设备的参数和功能的场合,及对信号进行分析研究、传输等场合。总之,由于 LabVIEW 能够为用户提供简明、直观、易用的图形编程方式,能够将繁琐复杂的语言编程简化成为以菜单提示方式选择功能,并且用线条将各种功能连接起来,十分省时简便,深受用户青睐。与传统的编程语言比较,LabVIEW 图形编程方式能够节省 85以上的程序开发时间,其运行速度却几乎不受影响,体现出了极高的效率。使用虚拟仪器
31、产品,用户可以根据实际生产需要重新构筑新的仪器系统。例如,用户可以将原有的带有 RS232 接口的仪器、VXI 总线仪器以及 GPIB 仪器通过计算机,联接在一起,组成各种各样新的仪器系统,由计算机进行统一管理和操作。可以预见,由于 LabVIEW 这些其他语言无法比拟的优势,已经成为该领域的一朵奇葩!最终将引发传统的仪器产业一场新的革命。2.3 LABVIEW 应用概述1、建立虚拟仪器前面板。根据所设置的虚拟仪器的要求从控制模板上选择所需要的对象。如:数字式表头、指针式表头、按钮、开关、键盘等等。有时为了在感官上更逼真的模拟真实的测量仪器,还要选择一些用于美化界面的对象。如表外壳等对象。2、
32、图形化的流程图。从功能模板上选择用图标表示的对象。3、流程序设计(框图程序设计) 。LABVIEW 采用独特的数据流程序设计模式取代传统的文本式语言的程序设计方法用户可以根据自己定义的各对象的数据流来决定程序运行的顺序。4、程序的优化。由于 LABVIEW 软件是带有编辑器的图形化编程环境,用户可以对实时性要求很高的部分程序代码进行优化。同时,用户还可以调用 LABVIEW 软件内置的功能强大的数据库,在测量过程中可以完成所需的信号调理、信号转换和消除噪声等工作。例如可以调用相关的数据处理函数来完成频谱分析、数字滤波这些工作。科技学院毕业论文(设计) 第 8 页2.4 LabVIEW 应用解决
33、方案LabVIEW 自 1986 年正式推出,至今已发展到以最新版本 LabVIEW7.0Express 为核心,包括控制与仿真、高级数字信号处理、统计过程控制、模糊控制和 PID 控制等众多软件包,可运行于现今所有 Windows 系统、Linux,Macintosh,Sun 和 HP-UX 等多种平台的工业标准软件开发环境。其已被广泛应用于包括航空航天、工业自动化、通信、汽车、半导体和生物医学等世界范围内的众多领域,其概括如下:1、LabVIEW 应用于测试与测量LabVIEW 已成为测试与测量领域的工业标准,通过 GPIB,VXI,PLC、串行设备和插卡式数据采集板卡可以构成实际的数据采
34、集系统。它提供了工业界最大的仪器驱动程序库,同时还支持通过 Internet,ActiveX,DE 、和 SQL 等交互式通信方式实现数据共享,它提供的众多开发工具使复杂的测试测量任务变得简单易行.2、LabVIEW 应用于过程控制和工业自动化LabVIEW 强大的硬件驱动、图形显示能力和便捷的快速程序设计为过程控制和工业自动化提供了优秀的解决方案.同时由于 NI 公司提供有全系列的基于 PC 的多功能板卡,其与 LabVIEW 在底层即实现了软、硬件的无逢连接,节约了系统的构建时间并增强了系统可靠性。3、LabVIEW 应用于实验室研究与自动化LabVIEW 为科学家和工程师提供了功能强大的
35、高技数学分析库,包括统计、估计、回归分析、线性代数、信号生成算法、时域和频域分析等众多科学领域。在联合时域分析、小波和数字滤波器等高级或特殊分析场合,LabVIEW 提供有专门的附加软件包。2.5 proteus 简介2.5.1 proteus 功能特点Proteus 软件具有其它 EDA 工具软件(例:multisim)的功能。这些功能是:1、原理布图;2、PCB 自动或人工布线;3、SPICE 电路仿真。革命性的特点:用户甚至可以实时采用诸如 LED/LCD、键盘、RS232 终端等动态外设模型来对设计进行交互仿真。可以仿真 51 系列、AVR、PIC 等常用主流单片机。还可科技学院毕业论
36、文(设计) 第 9 页以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、万用表等,Proteus 建立了完备的电子设计开发环境。2.5.2 PROTEUS 所提供的资源1、Proteus 可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有 30 多个元件库。2、Proteus 可提供的仿真仪表资源 :万用表、逻辑分析仪、虚拟终端、SPI 调试器、I2C 调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。3、除了现实存在的仪器外,Proteus 还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式
37、实时地显示出来,其作用与万用表相似,但功能更多。4、Proteus 可提供的调试手段 :Proteus 提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。2.5.3 PROTEUS 在“单片机原理与应用技术”中的作用1、PROTEUS 是单片机课堂教学的先进助手。PROTEUS 不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。2、PROTEUS 是单片机实验教学的虚拟平台。它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的
38、功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。3、PROTEUS 是单片机课程设计、毕业设计的创作园地。课程设计、毕业设计是学生走向就业的重要实践环节。由于 PROTEUS 提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台。4、PROTEUS 是单片机开发应用的工程开发环境。随着科技的发展, “计算机仿真技术”已成为许多设计部门重要的前期设计手段。它具有设计灵活,结果、过程的统一的特点。可使设计时间大为缩短、耗资大为减少,科技学院毕业论文(设计) 第 1
39、0 页也可降低工程制造的风险。相信在单片机开发应用中 PROTEUS 也能茯得愈来愈广泛的应用。2.6 Keil uV3 简介Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用 C 来开发,体会更加深刻。Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容
40、易理解。在开发大型软件时更能体现高级语言的优势。Keil C51 可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用 IDE 本身或其它编辑器编辑 C 或汇编源文件。然后分别由 C51 及 A51 编译器编译生成目标文件(.OBJ)。目标文件可由 LIB51 创建生成库文件,也可以与库文件一起经 L51连接定位生成绝对目标文件 (.ABS)。ABS 文件由 OH51 转换成标准的 Hex 文件,以供调试器 dScope51 或 tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM 中。科技学院毕业论文(设计) 第 1
41、1 页第三章 系统主要硬件3.1 系统的硬件因素虽然软件是虚拟仪器系统的主体,但硬件仍然是整个系统最基础的部分。硬件主要负责将被测量物理信号转换为二进制的数字信号数据,而软件系统一方面负责控制硬件的工作,一方面又负责对采集到的数据进行分析处理、显示和存储。设计虚拟仪器的硬件部分时需要考虑多种因素,以下列举其中最主要的几个:1、被测量物理信号的特性。不同的物理信号需要使用不同类型的传感器将其转换为可供电脑分析的数字电信号,而不同的传感器又需要配备不同的信号调理模块。某些早期虚拟仪器系统直接通过 GPIB 等总线与传统仪器相连,利用传统仪器的硬件部分转换和采集被测信号。2、硬件技术指标。不同档次的
42、数据采集设备可以支持的采样率、分辨率以及精度等都有差别。通常,一套系统会选取能够满足测量需要的最低级别硬件或是不超出资金预算的最高级别硬件。3、满足应用需求。根据虚拟仪器系统工作环境的不同,需要为系统选择不同种类的运算、控制单元。比如,工作在恶劣环境下的虚拟仪器系统需要采用工业级别计算机作为载体;被放置在工业现场狭小空间内的虚拟仪器需要采用嵌入式系统;需要满足多种测量功能的虚拟仪器系统可以选用 PXI 机箱作为载体。设计虚拟仪器系统的软件部分首先需要考虑的是使用何种开发平台。开发平台的选择,一要考虑系统硬件的限制,二要考虑软件开发的周期和成本。科技学院毕业论文(设计) 第 12 页某些硬件只支
43、持特定的开发软件,比如某些嵌入式系统必须使用 Linux 操作系统和 C 编程语言。一般来说基于台式机的虚拟仪器系统对开发软件的支持更全面,可以选择 Windows 或其它操作系统,可以选择 LabVIEW、VB 、VC 等各种常用编程语言。这其实也是在硬件设计时应当考虑的因素,选择虚拟仪器硬件系统的结构时,应当尽量选择有完善软件支持的硬件设备。各种开发软件的适用场合、难易程度都不尽相同。选择一种最为广泛应用的开发语言,可以提高软件开发效率,节省开发成本,保证系统质量。3.2 AD08093.2.1 AD0809 的逻辑结构AD0809 是 8 位逐次逼近型 A/D 转换器。它由一个 8 路模
44、拟开关、一个地址锁存译码器、一个 A/D 转换器和一个三态输出锁存器组成(见图 3-1) 。多路开关可选通 8 个模拟通道,允许 8 路模拟量分时输入,共用 A/D 转换器进行转换。三态输出锁器用于锁存 A/D 转换完的数字量,当 OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。图 3-1 AD0809 内部结构图3.2.2 AD0809 的工作原理IN0IN7:8 条模拟量输入通道AD0809 对输入模拟量要求:信号单极性,电压范围是 05V,若信号太小,必须科技学院毕业论文(设计) 第 13 页进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加
45、采样保持电路。地址输入和控制线:4 条ALE 为地址锁存允许输入线,高电平有效。当 ALE 线为高电平时,地址锁存与译码器将 A,B,C 三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B 和 C 为地址输入线,用于选通 IN0IN7 上的一路模拟量输入。通道选择表如下表所示:C B A 选择的通道0 0 0 IN00 0 1 IN10 1 0 IN20 1 1 IN31 0 0 IN41 0 1 IN51 1 0 IN61 1 1 IN7数字量输出及控制线:11 条ST 为转换启动信号。当 ST 上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D 转换;在
46、转换期间,ST 应保持低电平。EOC 为转换结束信号。当 EOC 为高电平时,表明转换结束;否则,表明正在进行 A/D 转换。OE 为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE1,输出转换得到的数据;OE0,输出数据线呈高阻状态。D7D0 为数字量输出线。CLK 为时钟输入信号线。因 ADC0809 的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为 500KHZ,VREF() ,VREF()为参考电压输入。科技学院毕业论文(设计) 第 14 页图 3-23.2.3 AD0809 的实际应用电路说明:电路见图 3-3,主要由 AD 转换器 AD0809,频
47、率发生器 SUN7474,单片机 AT89S51 及显示用数码管组成。AD0809 的启动方式为脉冲启动方式,启动信号 START 启动后开始转换,EOC 信号在 START 的下降沿 10us 后才变为无效的低电平。这要求查询程序待 EOC 无效后再开始查询,转换完成后,EOC 输出高电平,再由 OE 变为高电平来输出转换数据。我们在设计程序时可以利用 EOC 信号来通知单片机(查询法或中断法)读入已转换的数据,也可以在启动 AD0809 后经适当的延时再读入已转换的数据。AT89S51 的输出频为晶振频的 1/6(2MHZ) ,AT89S1 与 SUN7474 连接经与 7474 的ST
48、脚提供 AD0809 的工作时钟。AD0809 的工作频范围为 10KHZ-1280KHZ,当频率范围为500KHZ 时,其转换速度为 128us。AD0809 的数据输出公式为:Dout=Vin*255/5=Vin*51,其中 Vin 为输入模拟电压,Vout科技学院毕业论文(设计) 第 15 页图 3-3 电路图3.3 SST89E516RD 单片机3.3.1 单片机 SST89E516RD 简介SST89E516RD 是 8 位集成存储器的 51 系列兼容单片机,和 51 系列单片机软件兼容、开发工具兼容、管脚也兼容。SST89E516RD 片内有两块 SuperFlash EEPROM,分为 64K 主块(Block0)和 8K 次块(Block1)。Block0 的地址范围是 0000hffffh;Blo