




已阅读5页,还剩47页未读, 继续免费阅读
(电路与系统专业论文)高速虚拟逻辑分析仪系统软件设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
岛速随拟逻辑分析仪系统软件设计 论文题目:高速虚拟逻辑分析仪系统软件设计 硕士生:王涛 摘要 导师:师奕兵副教授 本文从数据域测试对仪器的需要入手,首先论述了逻辑分析仪的发展状况及 体系结构,并从虚拟仪器的角度简要阐述了虚拟逻辑分析仪的原理。然后介绍了 面向对象程序设计方法与w m d o w s 编程方法,并在介绍逻辑分析仪系统软件组 成结构的基础上详细论述了逻辑分析仪软件设计中的波形分析显示和反汇编程序 设计,最后,文章介绍了系统调试。 准第一章,简要论述了数字系统信号特征及其对检测的要求,论述了逻辑分 析仪在数据域测试中的应用、逻辑分析仪发展状况和体系结构,阐述了 4 0 0 m h z 1 0 2 通道虚拟逻辑分析仪的原理以及对系统软件的设计要求。在第二章, 论述了逻辑分析仪系统软件设计中运用的面向对象程序设计方法和w i n d o w s 编程 的知识,同时对编程工具b o r l a n dc + + b u i l d e r 作了介绍。在第三章,全面论述了 逻辑分析仪系统程序设计的几个方面,包括程序总体结构,功能,自定义类,波 形分析显示程序设计和反汇编程序设计,详细介绍了系统软件多线程设计,波形 移动和缩放、毛刺探测、光标测时以及8 0 3 8 6 、8 0 9 6 、8 0 8 0 8 0 8 5 、z s 0 反汇编的 程序设计思想方法及实现。在第四章,介绍了本系统软件设计中应用的c + + b u i l d e r 集成调试环境、调试方法,以及具体的系统调试。少一、_ 关键词:虚拟仪器,逻辑分析仪,反汇编,软件 高速虚拟逻辑分析仪系统软件 5 计 a b s t r a c t i nt h i sd i s s e r t a t i o n f i r s t b a s e do nt h ea s p e c t so f t h er e q u e s tt oi n s t m m e n ti nd a t a d o m a i nt e s t1 0 9 i ca n a l y z e r sd e v e l o p m e n ta n da r c h i t e c t u r ea r ei n t r o d u c e d a n dt h e p r i n c i p l e o fv i r 沁a l1 0 琶i c a n a l y z e r i sd i s c u s s e d s e c o n d l y ,o b l e c t o r i e n t e d p r o g r a m m i n ga n dw i n d o w sp r o g r a m m i n gi s i n t r o d u c e d t h er e a l i z a t i o no fw a v e d r a w i n ga n dt m a s s e m b l i n gp r o g r a m m i n ga r ee l a b o r a t e d a tl a s tt h ed i s s e r t a t i o nd e a l s 、v i t lt h ed e b u g g i n go f t h ep r o g r a l na n dt h es y s t e m c h a p t e r o n ed i s c u s s e st i l e s i g n a l c h a r a c t e r i s t i ca n dd e t e c t i n gr e q u i r e m e n to f d i g i t a ls y s t e m a n di n t r o d u c e st h ea p p l i c a t i o n i nd a t ad o m a i nt e s ta n dt h ed e v e l o p m e n t o f l o g i ca n a l y z e ra sw e l la st h es y s t e ma r c h i t e c t u r e t h ep r i n c i p l eo f t h e4 0 0 m h z 1 0 2 c h a n n e l sv i r t u a l l o g i ca n a l y z e r i sa l s oi n t r o d u c e di n t h i s c h a p t e r c h a p t e rt w o d i s c u s s e st h eo b j e c t o r i e n t e dp r o g r a m m i n gm e t h o da n dt 1 1 ek n o w l e d g ei nw i n d o w s p r o g r a m m i n g w h i c ha r ea p p l i e di ns y s t e ms o f t w a r ed e s i g no fl o g i ca n a l y z e r t h e ni t i n t r o d u c e st h eu s e dp r o g r a m m i n gs o 胁r c b o r l a n dc + + b u i l d e r c h a p t e rt h r e e d i s c c u s e sa s p e c t so fs o f t w a r ed e s i g no fl o g i ca n a l y z e ri n c l u d i n gt h es y s t e ms t r u c t u r e , t h es y s t e mf u n c t i o n ,t h eu s e r - d e f i n e dc l a s s ,t h ep r o g r a m m i n go fw a v e f o r ma n a l y s i s a n dd i s p l a y i n g ,a n dt h ep r o g r a m m i n go fu n a s s e m b l e i te l a b o r a t e st h ea p p l i c a t i o no f m u l t it h r e a d ,t h er e a l i z a t i o no ft h em o v e m e n ta n dt h ez o o mo fw a v e f o f i n ,t h e r e a l i z a t i o no ft h ed e t e c t i n gg l i t c ha n dt h eu n a s s e m b l ef o r8 0 3 8 6 ,8 0 9 6 。8 0 8 0 8 0 8 5 ,z 8 0 c h a p t e rf o u ri n t r d u c e st h ed e b u ge n v i r m e n ta n dd e b u gm e t h o do fc + + b u i l d e r , t h e n i n t r o d u c e ss y s t e md e b u g g l n ga n de r r o rc o r r e c t i n g k e y w o r d s :v i r t u r a li n s t r u m e n t ,l o g i ca n a l y z e r , u n a s s e m b l e ,s o f t w a r e i l 高速虚拟逻辑分析仪系统软件杖计 第l 章绪论 以大规模集成电路和超大规模集成电路为特征的第四次工业革命的产生, 使人类社会进入了一个利用和开发数字信息资源的信息社会。各种计算机、数 字信息处理器和数字系统及其开发工具引起了人们的极大重视。以微型计算机 为基础的各种数字系统已广泛地应用于我国国民经济的各个领域。因此,人们 迫切需要解决各种数字系统的开发和维修的方法和手段。而以数据域测试理论 和技术为基础的逻辑分析仪则为各种数字系统的开发和维护运转提供了强有力 的工具。因此,我们结合我国国情,利用虚拟个人仪器的概念,研制了以微型 计算机为基础的,性价比很高的e s l 2 型逻辑分析仪。 1 1 逻辑分析仪与数据域测试 1 1 1 数字系统信号特征及其对检测的要求 逻辑分析仪是一种主要的通用数据域测试仪器。数据域测试仪器的测试对 象是对数字系统中数字信息的测试,数字信息是由状态空间概念、数据格式和 数据源构成的,它与频域和时域的信息不一样,具有以下主要特征: ( 1 ) 有严格的时空概念,多路数据同时传输; ( 2 ) 数字信号都是非周期性的,甚至出现偶然性和单次发生的信息: ( 3 ) 数字信息常伴有竞争和冒险现象发生: ( 4 ) 数字系统常由硬件和软件构成,其数字信息互相穿插,互相影响,难 以区分; ( 5 ) 数字信息工作速率变化范围大,一般从纳秒级至秒级。 显然,对数字系统的检测不可能象对模拟系统那样。用示波器及一般的电 子测量仪器是难以观察和测量数字信息的。以上特点决定了对数字系统基本的检 测要求: ( 1 ) 跟踪与分析状态数据流,这些对数字系统进行功能分析所必须的基本 测量。跟踪状态流需要利用地址总线,最好同时也能观测数据总线,以便分析 总线的全面工作情况。需监视的位数多达2 0 4 0 位或更多,工作是同步的。由 于有的总线是复用的,因此要求测量时有选择数据的能力; ( 2 ) 为监视总线上的数据流,需要设置一个触发字; ( 3 ) 对于分析异步总线,需要了解各信号状态序列和每个信号在给定状态的 持续时间,以便判断系统是否按正确的时序运行。这要求能分析信号状态之间 的时间关系。 ( 4 ) 需要捕捉干扰或毛刺。 1 1 2 逻辑分析仪在数据域测试中的应用 逻辑分析仪是一种主要的通用数据域测试仪器。逻辑分析仪在计算机、自 动测试系统、智能仪器、数字通讯以及自动控制等数字系统中,用于硬件逻辑 和程序软件的研究、分析、测试和故障诊断,为各种微机系统、数字系统等智 能化设备的新产品开发提供测试手段,是新产品开发和系统维护必不可少的工 具。逻辑分析仪已成为日前国际上最通用的电子测量仪器之一。 高速虚拟逻辑分析仪系统软件设计 为了满足数据域的检测要求,逻辑分析仪一般有以下特点: ( 1 ) 足够多的输入通道:为了适应微机总线结构而需要多通道。通道数越 多,所能检测的数据信息量越大,逻辑分析仪的功能就越强。 ( 2 ) 多种触发方式;逻辑分析仪应该具有灵活准确的触发能力,它可以在 很长的数据流中,对所观察的那部分信息作出准确定位,从而捕获对分析有意义 的信息。在硬件分析中,它可以有效地检测和显示系统的运行状态;在软件分析 中,它可以跟踪系统运行中的任意一段程序。 ( 3 ) 具有足够的存储深度;逻辑分析仪内部具有高速存储器,因此它能快 速地将采集数据进行存储。存储器决定了获取数据的多少,存储深度越深,采集 数据就越多,使逻辑分析仪能够观察单次和随机性故障。 ( 4 ) 具有负的延迟能力:逻辑分析仪的内部存储器可存储触发前的信息,可 显示出相对于触发点为负延迟的数据。 ( 5 ) 灵活而直观的显示方式和可靠的毛刺检测能力。 1 2 逻辑分析仪发展状况及体系结构 1 2 1 逻辑分析仪国内外发展状况 国外逻辑分析仪产品相当多,但最主要的厂家是美国的a g i l e n t 公司和 t e k t r o n j c s 公司,国内主要有电子科大与清华大学研制过。目前主要的逻辑分 析仪产品列于表1 1 。 表1 1 主要的逻辑分析仪产品 型号定时速率状态速率通道数存储深度生产厂家 参考售价 h g i l e n t l 6 7 0 2 5 0 5 0 0 m s1 3 5 删z3 4 1 3 66 4 k 美国h g i l e n t $ 1 2 0 0 0 h g i1 e n t 5 4 6 2 0 l o o m s 无 1 6i m 美国h g i l e n t$ 4 5 0 0 h g i l e n t e 9 3 4 0 2 5 0 m s1 0 0 m h z3 41 2 8 k 美国a g i l e n t $ 5 6 0 0 a g i l e n t l 6 5 5 7 5 0 0 m s1 4 0 m h z1 0 22 m 美国a g i l e n t$ 1 3 0 0 0 h g i l e n t i 6 7 1 05 0 0 m s1 0 0 删z1 0 2 1 6 8 k美国h g i l e n ts 1 0 0 0 0 h g i l e n t l 6 7 1 0 5 0 0 m s1 0 0 删z1 0 26 4 3 2 k 美国h g i l e n t $ 1 2 0 0 0 h g i l e n t l 6 7 1 5 3 3 3 m s1 6 7 姗z6 84 2 m 美国a g i l e n t$ 9 6 0 0 t l a 7 0 0 系列2 g s1 0 0 删z1 3 63 2 k美国t e k$ 2 5 0 0 0 t l a 5 1 0 系列 4 0 0 m s1 0 0 删z1 5 03 2 k 美国t e k$ 1 4 0 0 0 l a 6 4 1 0 0l o o m s3 3 姗z6 44 k电子科大¥1 1 0 0 0 在上表中h g i l e n t 公司的1 6 7 0 ,1 6 7 0 0 ,5 4 6 2 0 系列产品和t e k 公司的t l a 7 0 0 t l a 5 0 0 系列产品都是目前市场上享有盛誉的主流产品,具有最大的市场份额。 高速虚拟逻辑分析仪系统软件设计 随着数字化和计算机技术在军用和民用领域内应用的日益深入和普及,逻辑 分析仪已成为日前国际上最通用的电子测量仪器之一,它是各种微机系统和数字 系统新产品开发和测试的有力工具,能大大加快新产品的开发速度和效率。现在, 微处理器的速度越来越快,数字系统也越来越复杂,出现问题的可能性也越来越 多,设计者需要一个能在最短时间内就能提供所有通道数据的检测工具。新一代 逻辑分析仪能够满足这种要求,其共同特点是: ( 1 ) 高的测试时钟频率。t l a t 0 0 系列定时分析时钟为2 g h z ,分辨率5 0 0 p s , 在全通道上提供2 0 0 m h z 的状态分析能力; ( 2 ) 有相当多的输入通道。为了同时观测数字系统特别是微处理器的多路 信息,逻辑分析仪的通道数多达上百; ( 3 ) 存储深度可以高达1 2 8 k ; ( 4 ) 具有多种触发方式 ( 5 ) 逻辑分析仪中带有高性能的微处理器,通过做成w i n d o w s 的应用程序来 实现数据和波形的显示以及反汇编,具有很友好的人机交互界面。 然而,由于逻辑分析仪功能全,结构复杂,技术要求高。目前国外生产的逻 辑分析仪价格大多十分昂贵。国内虽然也研制了少量逻辑分析仪,但性能指标大 多偏低,功能也不完善,不能满足实际应用的需要。我国军事研究单位、工厂和 高等学校所需的逻辑分析仪基本上由国外进口,每年需要花费不少外汇。 1 2 2逻辑分析仪的体系结构 逻辑分析仪可分为逻辑状态分析仪( l o g i cs t a t ea n a l y z e r ) 和逻辑定时分 析仪( l o g i ct i m i n ga n a l y z e r ) 。 逻辑状态分析仪用来对系统进行实时状态分析,检查在系统时钟作用下总线 的信息状态。因此,它用被测时钟来控制记录,与被测系统同步工作。逻辑状态 分析仪有效地解决了程序的动态调试问题。 逻辑定时分析仪用来考察两个系统时钟之间的数字信号的传输情况和时间关 系,因此,它内部装有时钟。在内时钟的控制下记录数据,与被测系统异步工作, 这是定时分析仪的特点。为了提高测量精度和分辨力,要求内时钟频率远高于被 测系统时钟。逻辑定时分析仪主要用于调试和检测硬件。 逻辑定时分析仪和逻辑状态分析仪是从功能上分的,它们的结构都基本类 似,多数情况下是做到一起的。图1 1 为其基本结构图。由图可见,逻辑分析仪 主要由数据捕获和数据处理两部分组成。数据捕获部分用来捕获并存储要观察的 数据,其中数据输入部分将各通道的输入变换成相应的数据流;而触发产生部分 则根据数据捕获方式,在数据流中搜索特定的数据字,当搜索到特定的数据字时, 就产生触发信号去控制数据存储器开始存储有效数据或停止存储数据,以便将数 据流进行分块( 数据窗口) 。数据显示部分则将存储在存储器里的有效数据以多 种显示方式显示出来,以便对捕获的数据进行分析。整个系统的运行,都是在外 时钟( 同步时钟) 或内时钟( 异步时钟) 的作用下实现的。 从逻辑分析仪的系统结构中,可以清楚看出,整个仪器的控制和管理,数据 处理以及数据显示都可方便地由微机来完成。因此,其系统硬件的设计主要集中 在高速数据捕获及其与微机的接口:而软件设计主要在系统管理、数据的后处理 及数据显示。 商速虚拟逻辑分析仪系统软件吐汁 数据捕获部分 : 数据显示部分 图1 1 逻辑分析仪基本结构图 1 34 0 0 m h z 1 0 2 通道虚拟逻辑分析仪的实现原理 1 3 1虚拟逻辑分析仪 逻辑分析仪与个人计算机相结合,成为基于个人计算机的智能仪器,这便 是虚拟逻辑分析仪逻辑分析仪与个人计算机结合是一个新的发展方向。两者 的结合扩展了逻辑分析仪的分析能力与计算能力,降低了成本,而且使仪器的 通用性增强。在逻辑分析仪中占很大比重的控制电路、显示电路、指示电路等 功能都由计算机完成。逻辑分析仪与微机相结合的优点为: 性能提高 一般情况下,仪器取数后,以适当形式把数据显示出来,供用户分析。当 逻辑分析仪与微机结合之后,利用微机丰富的软件,这些分析工作可由微机完 成,包括通过数据滤波提取对分析有用的数据及软件性能分析等。 成本降低 逻辑分析仪的功能增强,特别是加强分析能力,常常是通过微机软件来实 现的。在这种情况下,功能的提高并没有增加硬件的成本。相反,因部分硬件 功能软化而使硬件本身大为简化。故这种逻辑分析仪的价格较低而功能全。 使用简便 微机灵活的编程能力及键盘与显示终端的交互操作方式,简化了逻辑分析 仪的使用。用户可利用w i n d o w s 的联机帮助,学会逻辑分析仪各种功能的操作。 功能易于扩展 逻辑分析仪通常都有多块功能插板,增加模块插板,对于增加数据通道和 实现多种分析方式很方便。 基于上述优点,特别是高性价比,决定了逻辑分析仪与微机结合的方案 有广阔的前途,4 0 0 m h z 1 0 2 通道逻辑分析仪的研制就采用了此技术方案。 高速虚拟逻辑分析仪系统软件设计 1 3 24 0 0 m h z 1 0 2 通道虚拟逻辑分析仪原理 图1 - 2 示出了p c 环境下的虚拟逻辑分析仪设计与实现原理。 图1 - 2 系统构成原理图 由图1 2 所示的系统总体构成原理框图知,虚拟逻辑分析仪主要包括数据 采集、探头、触发跟踪、时序变换与生成等部分。 该系统输入、存储及控制部分有3 个模块构成,其中卜3 为输入采集模块, 采用完全相同的功能结构,每个模块有3 2 个数据通道,第1 个模块附加了时钟 输入与输出功能。采用该结构的主要原因,一是避免主采集板过大,元件过密造 成散热方面的困难,二是系统结构灵活,可以根据需要选3 2 ,6 4 ,9 6 路组态方 式。 系统数据探头与被测对象测试点连接,引入被测信号,经延迟网络后进入数 据变换与暂存模块,延迟网络的作用是用来满足高速状态分析时,时钟通道的相 对零延迟。 时钟探头则通过外时钟的电平变换引入时钟发生电路,产生逻辑状态用的各 种时钟信号实现逻辑状态分析的各种触发和跟踪方式。触发控制与识别部分则是 完成对外部数据流的实时监测,确定数据跟踪窗口和限定存储条件。 1 3 3 虚拟逻辑分析仪系统软件设计任务 从逻辑分析仪的系统结构中,可以清楚看出,整个仪器的控制和管理、数据 处理以及数据显示都可以方便地由微机来完成。因此,系统硬件的设计主要集中 在高速数据捕获以及微机的接口,而软件设计主要在系统管理、数据的后处理及 数据显示。 由于虚拟逻辑分析仪采用了与个人计算机相结合的方式,这使得逻辑分析仪 控制软件的设计可以充分利用个人计算机丰富的软件资源,在个人计算机上利用 图像界面操作系统w i n d o w s 以及以w i n d o w s 操作系统为基础的可视化程序设计平 台,如c + + b u i l d e r ,可以快速地开发出界面美观,操作方便的用户程序,同时 也便于将面向对象的优秀编程方法应用到程序当中。 高速虚拟逻辑分析仪系统软件设计 第2 章逻辑分析仪系统软件设计的面向对象程序设计方法与 w i n d o w s 编程方法 面向对象程序设计方法是目前最流行的程序设计方法,它是在w i n d o w s 编程 基础上发展起来的。面向对象程序设计方法与传统的结构化程序设计方法相比有 许多特点,由于其采用了数据封装与消息机制,使其具有结构化程序设计不可比 拟的优势。 2 1 面向对象程序设计方法 面向对象思想的来源与解决计算机软件面临的两大课题有关。一个问题是, 怎样克服软件的复杂性;另个问题是,怎样将现实世界模型在计算机中自然地 表示出来。 面向对象语言的所谓”对象”,最广泛的解释是将某一数据和使用该数据的一 组基本操作或过程封装在一起,而将此封装体看作一个实体。 在本软件设计过程中,“逻辑分析仪”即被视为一个对象,它封装了逻辑分 析仪程序运行过程中所用到的数据结构及方法。 2 1 1 面向对象的核心概念 ”面向对象”的基本想法就是把要构造的系统表示为对象的集合。它的核心概 念是数据封装( 对象) 、继承机制和多态性。 2 1 1 1 数据封装 数据封装将一个数据和与这个数据有关的操作集合封装在一起,形成一个能 动的实体,称为对象。用户不必知道对象行为的实现细节,只需根据对象提供的 外部特性接口访问对象。 类的概念将数据和与这个数据有关的操作集合封装在一起,建立了一个良好 的接口,人们只关心其使用不关心其实现细节。这反应了抽象数据类型的思想。 2 1 1 2 继承 继承是面向对象语言的另一个重要的概念。在客观世界中,存在着整体与部 分的关系,一般和特殊的关系,继承将后者模型化。在面向对象的语言中,类功 能支持一种层次机制。除了根结点外每个类都有它的超类( s u p e r c l a s s ) ,又称 为父类和基类。除了叶结点外,每个类都有它的子类( s u b c l a s s ) ,又称派生类。 一个子类可以从它的基类那里继承所有的数据和操作,并扩充自己的数据和操 作。基类抽象出共同特征,子类表达其差别。有了类的层次结构和继承性,不同 对象的共同特性只需定义一次,用户就可以充分利用已有的类,符合软件重用的 目标。 2 1 1 3 多态性 面向对象另一个核心概念是多态性。所谓多态,即一个名字,多种语义;或 相同截面,多种实现。多态性( p o l y m o r p h i s m ) 来源于两个希腊单词,b p p o l y ( 多) , 和m o r p h o s i s ( 形态形成) 。多态性描述了依据程序的运行情况而产生不同动作的 能力。简单而言,程序设计语言中相同的函数调用为不同的对象接收时,产生完 全不同的行为,这种现象称为多态性。多态性又分为编译时多态性和运行时多态 性。编译时多态性通过使用函数重载来获得;运行时多态性通过继承和虚函数束 高速虚拟逻辑分析仪系统软件设计 获得。 2 1 2 面向对象方法与结构程序设计方法比较 结构程序设计强调了功能抽象和模块性,它将解决问题的过程看作是一个处 理过程。面向对象程序设计则综合了功能抽象和数据抽象,它将解决问题的过程 看作是一个分类演义的过程。下面将对两种方法进行简单的比较。 1 模块与对象 结构化程序设计中,模块是对功能的抽象,每个模块都是一个处理单位, 它有输入和输出。而对象是包括数据操作的整体,将数据和功能的抽象和统一。 可以说,对象包含了模块。 2 过程调用与消息传递 在结构化程序设计中,过程为一独立实体,显式地为它的使用者所见,而且, 对于相同的输入参数,每一次过程调用,其输出结果是相同的。 在面向对象的程序设计中,方法( 过程或操作) 是隶属于对象的,它不是独 立存在的实体,而是对象的功能体现。从对象实现机制看,对象是一台自动机, 其中私有状态表示了对象的状态。该状态只能由对象的操作改变它。s m a l l t a l k 把操作叫做方法。c + + 语言用成员函数实现操作,每当需要改变状态时,只能由 其他对象向该对象发送消息( 在c + + 中,借助于成员函数调用来实现消息发送) 。 对象响应消息后,按照消息模式找出匹配的方法,并执行该方法( c + + 语言实质 性函数调用) 。应该注意,发送消息和过程调用的意义是不同的,发送消息知识 触发自动机,同样的输入参数,可能因自动机状态不同其输出结果也不同。因此, 同一消息的多次发送可能产生不同的结果。 3 类型与类 类型与类都是对数据和操作的抽象,即定义了一组具有共同特征的数据和可 操作这些数据的一组操作,但类所定义的数据集( 包括数据和操作) 比常规语言 的类型所定义的数据集要复杂得多。 例如,在生成实例时,类不像常规语言那样做个声明就可以了。在c 语言中, 声明i n ti ;将i 声明为整形实例变量,而类需要事先规定一个生成实例的操作, 例如在c + + 语言中的构造函数,当实例变量在程序中不再使用时,类需要使用析 构函数来回收无用的单元。而且,类引入继承机制,实现了可扩充性。 4 模块的可重用性 结构程序设计方法的核心是逐步细化。这种自顶向下的方法是通过不断在程 序的控制结构中增加细节来开发程序。它生产的模块往往为了满足特定需要,可 重用性较差。 面向对象程序设计以数据结构为中心开发模块,同时一体化的考虑操作的功 能,抓住了程序设计中最不易变的部分一数据,因此对象常具有良好的可重用性。 2 2 1m s - d o s 应用程序编程模式 m s d o s 操作系统是微软公司在7 0 年代推出的面向个人微机的操作系统。它具 有下面几个方面的特点: 高速虚拟逻辑分析仪系统软件设计 单任务操作 面向字符终端 面向个人和家庭使用,操作系统对硬件系统的要求低 操作使用简便 因为m s d o s 操作系统是一个单任务的操作系统,在同一时刻计算机系统中只 有一个应用程序在运行。因此该应用程序可以独占整个计算机系统的硬件和软件 资源,如微处理器、内存、计算机屏幕、鼠标和键盘等。 m s d o s 应用程序中,编程人员需要编写应用程序代码来管理整个计算机系统 的硬件和软件资源,并负责对计算机系统中所发生的事件进行响应和处理,如应 用程序编程人员需要管理计算机的内存分配和使用、需要读取计算机键盘信息、 读取串行口鼠标或调制解调器的输入等,在读取外部事件后,并进行响应。 2 2 2w i n d o w s 应用程序编程特点 w i n d o w s 是微软公司8 0 年代推出的一个操作系统,它是m s d o s 操作系统的进 一步发展,和m s d o s 相比具有以下几个方面的特点: 多任务操作系统 s d d o s 操作系统不同,w i n d o w s 操作系统是一个多任务的操作系统。在同一时 刻,计算机操作系统中可以有多个应用程序在协同地运行。 图形界面 在多任务的w i n d o w s 操作系统中用户通过计算机屏幕使用鼠标和键盘来与应 用程序进行信息交换。为了实现用户和多个应用程序进行信息交换,在计算机的 屏幕上,每一个应用程序均需要一个窗口来标识。窗口是计算机屏幕上的一个矩 形区域,包含有主菜单、控件、滚动条。 事件驱动 在同一时刻,计算机操作系统中可以有多个应用程序在协同运行,因此计算 机系统的硬件和软件资源不可能由某一个应用程序独占,必须是所有应用程序来 共享整个计算机的资源。外部产生的输入事件如键盘事件、鼠标事件和定时器事 件都送到操作系统的消息队列中去,操作系统再把这些消息发送到各个应用程序 的消息队列中去,各个应用程序在自己的消息队列中获得这些消息,并对此产生 响应和处理。 w i n d o w s 应用程序除完成自己特定的功能外,为了能与用户进行交互,还必 须完成下面两方面的工作: w i n d o w s 应用程序需要从操作系统的消息队列中获取消息。 在窗口过程中对获取的消息进行响应和处理。 毋庸置疑,完整的w i n d o w s 编程相l b d o s 编程更复杂,更困难。所幸的是,基 于w i n d o w s 的高级编程工具( 如c + + b u l i d e r ) 为编程者完成了建立消息循环和从 操作系统消息队列中获取消息的编程。这样就大大简化t w i n d o w s 程序设计,使 编程者可以集中精力完成程序的特定功能。 高速虚拟逻辑分析仪系统软件设汁 2 3b o r l a n dc + + b u l i d e r 简介 2 3 1b o r l a n dc + + b u ii d e r 的产生 b o r l a n dc + + b u i i d e r 是b o r l a n d 公司新一代面向对象、可视化的快速应用 程序开发环境( r a d :r a p i da p p l i c a t i o nd e v e l o p m e n t ) ,它运行在w i n d o w s 9 5 或w i n d o w sn t 操作系统上。使用c + + b u i i d e r 可以开发通用的或基于客户n 务 器模式的3 2 位w i n d o w s 应用程序。 b o r l a n d 公司的b o r l a n dc + + b u i l d e r 是传统的c h 开发工具的自然发展,它 是第三代c + + 应用程序集成开发环境。它不仅继承了传统c + + 应用程序开发工具 高效和低层硬件控制能力的特点,同时通过可视化构件类库( v c l ) 所提供的构 件,使得此工具有快速和真正可视化的特点。 在b o r l a n dc + + b u i i d e r 中,应用程序设计和实现的基本单元称为构件,构 件是一个可视化的软件单元,它可以直接放置到开发环境中去,多个这样的构 件协同完成应用程序的各项功能。在b u i l d e rc + + b o r l a n d 集成开发环境中,集 成了1 3 0 个各种功能的构件,这些构件基本上覆盖了应用程序开发的各个方面, 如:基本应用程序主窗口、菜单、菜单项、工具栏、状态栏、通用对话框、数 据库、i n t e r n e t 、定时器等。以此种方式进行应用程序的开发具有快速和可视 化的特点,减少应用程序开发的时间,提高程序开发人员的工作效率,适应了 当前软件市场快速软件系统开发的需求。 b o r l a n dc + + b u i l d e r 同时也是一个完整的软件开发环境,它提供了完整的 用于软件设计、编程、测试、调试跟踪的工具。特别的,为了适应团体协同进 行大型客户服务器模式软件的开发,在b o r l a n dc + + b u i i d e r 集成开发环境中 也附带了应用程序版本控制软件( p v c s ) ,用于在团体应用程序开发过程中,跟 踪和管理软件系统的开发。 总之,采用构件的思想进 亍w i n d o w s 应用程序编程彻底改变了传统w i n d o w s 应用程序编程的方法。应用程序编程人员无需深入了解操作系统的运行机制, 就可以进行编程。在应用程序编程时,编程人员只需要把各种功能的构件放置 在一起,通过非常少的手动编程就可以完成应用程序的整体功能。 2 3 2b o r l a n dc + + b u i i d e r 的特点 b o r l a n dc + + b u i l d e r 集成开发环境和传统的b o r l a n dc + + 和v i s u mc + + 软 件开发工具相比具有下面几个方面的特点: 真正面向程序设计全过程的可视化程序开发环境,改变了程序开发的编程 方式,开发人员通过非常少的手工编程,即可实现和完成复杂的功能; 采用符合a n s i 标准的c + + 编译器; 集成开发环境中,内置了功能强大的软件开发工具软件,如对象浏览器、 表单编辑器、构件调色板、工程项目管理器、对象存储器等: 集成开发环境通过工程项目管理器对应用程序开发过程中的各个方面进行 组织和管理; 通过集成开发环境中的对象存储器,最大限度地实现应用程序开发过程中 不同层次的重用; 集成开发环境内置1 3 0 个各种功能构件,帮助用户进行应用程序的开发; 高速虚拟逻辑分析仪系统软件设计 集成开发环境提供数据库支持,帮助用户开发一般的或多层客户月务器模 式的数据库应用程序; 在集成开发环境中通过w e b b r o k e r 、w e b d i s p a t c h e r 、w e b b r i d g e 等2 5 个 i n t e r n e t 构件来帮助用户开发i n t e r n e t 应用程序。 正是由于b o r l a n dc + + b u i i d e r 具有以上一些特点,才在逻辑分析仪系统软 件的设计中选择它作为开发工具。 2 3 3b o r l a n dc + + b u il d e r 的编程模式 在b o r l a n dc + + b u i i d e r 集成开发环境中,设计和实现应用程序的基本单元 是构件,它是一个具有特定功能的软件模块。和编程人员密切相关的构件有 a p p l i c a t u i n 构件、主窗口表单构件和可以放置在表单构件中的各种构件如按 钮、编辑控件、列表控件、对话框、菜单等。 应用程序开始运行时,首先创建a p p l i c a t i o n 对象。a p p l i c a t i o n 对象负责 创建应用程序窗口表单对象,接收操作系统的消息,并将其消息发送到应用程 序主窗口表单对象中。应用程序主窗口表单构件中,一般包含了多个可视化或 不可视化的构件。从a p p l i c a t i o n 对象接收到消息后,表单对象根据消息类型确 定由表单中的哪一个构件对象处理此消息,并将此消息发送给相应构件对象进 行处理。放置在表单中的构件,是一个相对独立的且具有特定功能的软件模块, 它可以对接收到的消息进行缺省响应和处理。如果编程人员希望对某些事件进 行处理,可以通过集成开发环境的对象浏览器来选择此事件,并在一个单元文 件中编写出对此事件的相应和处理代码。 总之,和传统的w i n d o w s 应用程序开发模式完全不同,开发b o r l a n dc + + b u i i d e r 应用程序需要下面两个阶段的工作: 第一阶段:根据应用程序的要求,以可视化的方式设计b o r l a n dc + 十b u i l d e r 应用程序的窗口界面。此阶段不需要任何编程代码。具体步骤: 创建应用程序主窗口表单构件,设置表单构件的属性参数: 在应用程序表单构件中,放置可视化或非可视化的构件,并设置构件的 属性参数。 第二阶段:根据应用程序功能的要求,对表单构件及其包含的构件的某些 特定事件进行相应和处理。在此部分中,需要一定的手动编程。 2 3 4b o r l a n dc + + b u i l d e r 的构件 构件是b o r l a n dc + + b u i l d e r 进行程序设计和实现的基本建筑单元。利用 b o r l a n dc + + b u i l d e r 的构件进行程序设计,就如同从计算机市场上购买计算 机主板、处理器、内存条、显示器、显示卡、c d r o m 、软驱、声卡来自己组装计 算机一样。构件就如同硬件系统中的处理器、内存条、显示器等一样,它是一 个完成特定功能的软件单元,可以以可视化的形式放置到b o r l a n dc + + b u i l d e r 的表单编辑器中去,通过简单的编程,就可以和此表单中的其他构件协同完成 应用程序的功能。 构件就其本质而言是一个类。和传统c + 十语言中的类相比,它具有如下特点: c + + b u i l d e r 中的构件是可视化构件库( v c l ) 中t c o m p o n e n t 的一个派生类。 高速虚拟逻辑分析仪系统软件设计 在t c o m p o n e n t 类中定义了构件的基本功能,如构件具有放置到构件栏中的能 力,通过对象浏览器可以设置它的属性参数,因此b o r l a n dc + + b ur l d e r 中所 有的构件都继承此种能力。 构件由下面三个部分组成: 属性: 事件; 方法: 构件的属性表明了构件的形状或性质。在应用程序运行时,构件的属性确定 了构件对象的外在形式。如表单构件的c a p t i o n 属性决定了主窗e i 的标题栏中 所显示的标题:构件的属性根据其工作方式的不同分为3 类:设计属性是在应 用程序设计阶段就可以显示和发挥作用的属性:运行时属性是在应用程序运行 时才得以发挥作用的属性;构件的只读属性不能被更改。就其本质而言,构件 是类,而属性是类中的数据成员。构件的事件响应是指构件在接收到激励后所 有执行的动作。激励可以是外部的,如使用鼠标单击按钮构件,亦可以是内部 的,如定时器时间事件。就其本质而言,构件的事件响应是类中的成员函数。 构件的方法就是构件所具有的功能。通过调用构件的方法,可以使构件完成特 定的功能。 构件的事件响应是指构件在接收到激励后所有执行的动作。激励可以是外部 的,如使用鼠标单击按钮构件;也可以是内部的,如定时器时间到事件。就其 本质而言,构件的事件响应是类中的成员函数。 构件的方法就是构件所具有的功能。通过调用构件的方法,可以使构件完成 特定的功能。 高速虚拟逻辑分析仪系统软件搜计 第3 章逻辑分析仪系统软件设计 3 1 概述 3 1 1 系统软件组成结构及功能 逻辑分析仪程序总共由1 4 个窗体加5 个单元文件组成,各主要窗体之间的 关系可由图3 1 所示; 图3 1 各窗体之间的关系 双击或打开逻辑分析仪可执行文件,程序显示初始化界面( 如图3 - 2 ) ,同时 进行逻辑分析仪自检,如果发现错误将显示错误提示信息。 图3 - 2 逻辑分析仪初始化界面 高速虚拟逻辑分析仪系统软件设计 逻辑分析仪自检通过,并成功进行变量仞始化后,便自动进入逻辑分析仪 控制面板,如图3 - 3 所示,逻辑分析仪控制面板是逻辑分析仪的主控中心,通 过控制面板来设置逻辑分析仪的各种参数,并控制逻辑分析仪的运行。退出控 制面板将退出逻辑分析仪程序。 图3 - 3 逻辑分析仪控制面板 控制面板工具栏有八个按钮,将光标停留在按钮的上面将会提示其功能。 从左到右分别是:“状态设置”,“探头格式设置”,“跟踪方式设置”,“波形显 示”,“状态列表”,“反汇编代码”,“探头活性”和“关于逻辑分析仪”。 首先,点击 状态设置 按钮进行逻辑分析仪工作方式和使用探头的设置。 如图3 - 4 所示,若工作方式设置为定时分析仪,还可在组合框下拉列表中选择 需要的采样频率,提供的采样频率有4 0 0 y m l z 、2 0 0 删z 、1 0 0 心z 、5 0 m h z 、1 0 m h z 、 5 e z 、2 e q z 、1 姗z 、5 0 0 k i i z 、2 0 0 i h z 和1 0 0 i h z 等十一种( 默认采样频率值为 4 0 0 m h z ) 。如果要做状态分析,则点选状态分析仪项,程序将自动设置采样时钟 为外时钟( j ) ,也可双击状态分析仪项以设置外时钟。 同时还应选定需要使用的探头号:探头1 探头6 ( 选定探头号后,该探头 的十六通道默认为完全使用,但可在探头格式设置中修改) 。按确认保存选择退 回控制面板,退回控制面板后,将看到刚才所做的选择在控制面板上有标示。 按取消将不作保存而回到控制面板。 另外,点击 设置保存 按钮可以将所做设置保存为设置文件的形式。通过 设 置重载 可以从设置文件中读取以前的设置参数。 然后,点击 探头格式 按钮进行探头格式设置。如图3 - 5 所示,你可以 分别对各探头设置其别名、有效通道、时钟极性、时钟触发沿。别名有助于区 分各通道数据的性质,此处设定的别名会在波形显示窗口中标示各探头;通道 被标记为0 f ,其中有效通道以- k表示,无效通道以“一”表示。被标示 高速虚拟逻辑分析仪系统软件设计 为无效的通道在波形显示时将不被显示。在设置好所有探头后,按 确认 按 钮,保存设置并返回控制面板。 图3 - 5 逻辑分析仪探头格式设置 高速虚拟逻辑分析仪系统软件设计 探头设置完以后,可以点击控制面板的 探头活性 按钮,这可以检测探头 是否连接。如图3 - 6 所示,图中上下箭头表示跳变的信号。 图3 7 逻辑分析仪跟踪方式设置 高速虚拟逻辑分析仪系统软件驶计 其次,单击 跟踪 按钮进行跟踪方式设置。如图3 - 7 所示,可设置跟踪 方式为起始终止随机触发方式之一,随机触发时还可设置为单次或重复采样。 如果需要设定触发限定字,则应先点击 预置字 按钮,可弹出扩展窗口以设置 预置字。最多可以设置二十个预置字。预置字的设定可以选择十六进制、十进 制、八进制、二进制和a s i c 码的形式。这通过“码制”菜单或右键菜单进行选 择。设好预置字后,如果需要设定触发宇,点击 触发字 按钮设定触发方式 和触发字。如图3 - 8 。 图3 - 8 逻辑分析仪触发字设置 根据要求设定触发方式为组合或序列方式,选定触发级数和各级触发字后 按 确定 便保存设置返回上级窗体。 设置好各项逻辑分析仪参数后,点击控制面板工具栏上的 波形 按钮,弹出 波形分析显示窗口,通过波形分析显示窗口进行数据采集,并将所采
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 硬件设施维护与更新工作总结计划
- 2024年西安市团结实验学校招聘笔试真题
- 2024年湖南省交通运输厅下属事业单位真题
- 微生物世界探索活动计划
- 法律与经济政策的协调试题及答案探讨
- 2024年福建艺术职业学院招聘笔试真题
- 建立良好团队文化的路径计划
- 一个学期的教学反思与总结计划
- 如何提高仓库的系统性计划
- 网络管理员考试新版本试题及答案
- 民俗学概论全套精美课件
- 应用文写作概述课件
- 危重症孕产妇交流课件:妊娠遇到主动脉夹层抢救成功病例分享
- 数控加工中心培训课件
- 高中政治《增强“四个意识”做到“两个维护”》教学设计
- 山东省医院护理服务质量评价细则简介
- 自动控制原理全套ppt课件(完整版)
- 关联交易同期资料模板
- 荷叶圆圆说课课件
- 路斯特DriveManager基本操作
- 截止阀合格证模板
评论
0/150
提交评论