1.1 系统概述
因在本节中,我们将对简易逻辑分析仪的应用进行分析。给出它的特点,能实现的功能以及系统的简单操作
1.1.1 系统的特点
逻辑分析仪也称逻辑示波器,它是用来分析数字系统逻辑关系的一种仪器。逻辑分析仪的主要作用有二个:一是用于观察的形式显示出数字系统的运行情况,相当于扩展了人们的视野,起一个逻辑显示器的作用;二是对系统运行进行分析和故障诊断。
一般的逻辑分析仪是由数据获取和数据显示两大部分组成的。前者捕获并存储所要观察分析的数据,后者用多种形式显示这些数据。在这里,关键是触发.它的作用是在被分析的数据流中按索特定的数据字。一旦发现这个数据字,便产生触发信号去控制和存储有效数据。因此,它决定了观察的数据窗口在数据流中的位置。
本设计具有以下特点:
1、具有足够多的输入通道,一般的示波器只有2路通道,本设计了8路输入通道。
2、多种触发方式:设置了单字触发和三级触发两种触发模式
3、具有记忆能力:采用EEPROM实现数据的掉电存储
本设计的主要特色:
★ 数字信号发生器使用AT89C2051单片机来控制,达到了高精度的信号输出。
★ 数字信号的逻辑状态显示也用AT89C2051单片机辅助主CPU系统实现。
★ 使用D/A电阻网络,结合单片机对信号幅度进行灵活地控制。
★ 采用发光二极管来指示电路测试点,一目了然,便于调试。
★ 在系统的软硬件设计中均加入了运行良好的抗干扰措施。
★ 强大的软件设计功能,大大简化了硬件电路。
1.1.2 系统的功能
逻辑分析仪的逻辑分析仪(简称LA)是新型的数据域分析仪器,它有许多
独特的功能。把这些功能分成取数、触发、存储、显示等几个方面,
本系统实现的功能是:
(1)能产生8路可预置的循环移位逻辑信号序列,输出信号为TTL电平,序列时钟频率为100Hz,并能够重复输出。
(2)单次触发采集存储显示,单次触发方式是指在满足触发条件后,能对被测信号进行一次采集、存储。之后输出通过DAC转化为模拟电压后输出,在示波器上显示出8路信号,并能显示触发位置。
(3)任意两通道三级触发存储显示,由键盘输入8路中任意2通道的通道号及3级触发字,当指定通道的触发字连续依次满足时,能对被测信号进行一次采集,存储,送DAC后输出显示。同时在屏幕上标记出3级触发字的位置。
(4)显示触发字的位置,可以在模拟示波器显示屏上对触发字进行标记。
(5)显示可以移动的光标,可以通过键盘的加、减控制光标在水平方向的坐标。
(6)翻页显示,可以用键盘控制翻页显示,每隔32bit为一页的内容,扩展了存储深度。
第2节 系统主要硬件电路设计
2.1 系统结构框图
本系统采用单片机和可编程器件作为数据处理及控制核心,整个系统由一个信号发生器和一个简易逻辑分析仪构成。将设计任务分解为数字信号发生、信号采集存储、信号融合处理、显示、掉电保护等功能模块。图1即为该系统的总体框图。考虑到硬件电路的紧凑性,故将上述模块合理分配连接成以下三个模块:数字信号发生器、最小系统主控器、键盘/显示。由于数字信号发生器是用于测试的需要而设计的一个模块,那么下面对各模块的设计进行逐一论证比较。
2.2 主体控制模块
系统主控模块包括最小系统和数字信号处理控制模块。该模块是硬件电路的核心,有如下两个方案。
方案一:以8031单片机为核心。但8031无片内ROM,需外扩EPROM(例如27526)作为程序存储器。这样会增加电路的复杂性。
方案二:采用AT89C51单片机为主控制核心的双CPU串行通信方式。AT89C51芯片,其内部含有可重复编程的FLASH ROM,,可进行1000次檫除操作,在设计调试过程中可十分容易进行程序的修改,达到最佳的设计。利用存储器(EEPROM)实现掉电存储功能。从CPU系统即以89C2051为主的显示模块的控制。数字信号处理模块主要是D/A转换器件的选择,我们选用性能优良的DAC0832作为主控器件。该方案的特点是硬件简单,软件实现方便,大大提高了系统的设计性能。
2.3.系统硬件的总体实现
经过仔细地论证与比较,我们确定了系统的各个主要模块的最终的可行方案,系统总体原理框图如图2-5所示。
2.3.1数字信号发生器模块的电路设计与实现
用AT89C51单片机产生可预置的二进制序列。只要在最小系统中添加一个开关组选择高低电平,单片机通过扫描开关组连接的P口的状态,并通过软件来控制单片机8个P口的波形输出,输入到74LS04的反向器输入端,通过TTL电平转换,输出8路数字信号。该电路结构简单可行,通过示波器可以看到它能够产生清晰稳定的矩形波。该设计的优点是信号稳定性好,频率精度高,有利于用单片机对数字信号进行智能化控制。
以AT89C51为核心的数字信号发生电路如图2所示。其工作原理是:AT89C51单片机输出可预置的二进制序列到74LS04的反向输入端,经过TTL电平转换,产生所需的高稳定、高精度的数字信号。注意:在该模块中,要实现电平转换功能必须用采用74LS系列的反向器,不可用CMOS系列的反向器(例如CD4069),因为在引脚的驱动能力上,74系列相对与CMOS系列更强,在本设计中,也就是说能够输出更稳定的信号。
3.1 系统软件流程
(a)、软件主CPU程序流程图如图3-1示。
主CPU通过跟从CPU及AT24C04的串行通信从而来完成数据的传输和通信。主要完成数据的采集,存储,显示,系统变量的设置等功能。
系统初始化是对系统所用到的变量、定时器、中断方式等进行设置。然后判断是否进行联机测试,是的话,系统开始串行通信,进行数据的传输。并进行系统参数设置即:设置门限电压,设置触发方式,设置时间轴位置。设置门限电压:电压从(0.25V—4V)16级变化,可以通过软件设定某个门限电压,就是将某个电压值设为标准,超过这个电压视为高电平,反之则为低电平。设置两种不同的触发方式即:单级触发还是三级触发,先选择是何种触发方式,若是单级触发,设置单级触发字,若符合要求,则触发在LED上显示SUCESS,并送示波器显示8路触发的波形。若是三级触发。即当连续依次捕捉到设定的3个触发字时,开始对被测信号进行一次采集、存储与显示,并显示触发点位置。3级触发字可任意设定(例如:在8路信号中指定连续依次捕捉到两路信号11、01、00作为三级触发状态字)。若符合要求,则触发在LED上显示SUCESS,并送示波器显示8路触发的波形。设置时间轴位置:就是在八路波形的某个垂直位置设置一条时间轴,可以将触发的波形存储在AT24C04中,实现了波形的存储。