《简易逻辑分析仪设计报告3》由会员分享,可在线阅读,更多相关《简易逻辑分析仪设计报告3(28页珍藏版)》请在金锄头文库上搜索。
1、D7 简易逻辑分析仪简易逻辑分析仪 摘摘 要要 本系统由本系统由 8 位可预置的循环移位数字信号发生器、简易逻辑分析仪两部分组位可预置的循环移位数字信号发生器、简易逻辑分析仪两部分组 成。成。 循环移位数字信号发生器由循环移位数字信号发生器由 51 单片机控制单片机控制,可以产生可以产生 8位逻辑信号序列和时钟位逻辑信号序列和时钟 信号波形信号波形,并且逻辑信号序列可以预置。其中一路输出电平可在内调节。并且逻辑信号序列可以预置。其中一路输出电平可在内调节。 采用液晶显示各设置参数,显示直观,设置方便。采用液晶显示各设置参数,显示直观,设置方便。 在简易逻辑分析仪的设计中,由于要在示波器上显示在
2、简易逻辑分析仪的设计中,由于要在示波器上显示 8 路波形,此操作占用大路波形,此操作占用大 量运算时间,故而采用双单片机协同工作的方式:其中一片单片机作输入控制、量运算时间,故而采用双单片机协同工作的方式:其中一片单片机作输入控制、 数据存储、数据显示及各控制参数设置;另一片单片机控制转换器输出波数据存储、数据显示及各控制参数设置;另一片单片机控制转换器输出波 形到示波器。两单片机之间采用串行方式进行通信。我们采用形到示波器。两单片机之间采用串行方式进行通信。我们采用 XY 扫描方式的显扫描方式的显 示方法。示方法。X 轴的锯齿波信号由转换器产生,由于要同时显示轴的锯齿波信号由转换器产生,由于
3、要同时显示 8 路信号,所路信号,所 以以 Y 轴的信号由被测信号、时标信号和参考电平相加得到,在软件配合下,可以轴的信号由被测信号、时标信号和参考电平相加得到,在软件配合下,可以 比较方便实现路信号的稳定显示,同时也可显示时间标志线和触发点位置。比较方便实现路信号的稳定显示,同时也可显示时间标志线和触发点位置。 在本设计中,采用插线连接信号发生器和简易逻辑分析仪,连接方式灵活、方在本设计中,采用插线连接信号发生器和简易逻辑分析仪,连接方式灵活、方 便。数据采集有单级、多级(级)触发方式。信号采集电路中采用门限电压调便。数据采集有单级、多级(级)触发方式。信号采集电路中采用门限电压调 节电路,
4、可以采集节电路,可以采集 0.14.5门限的各种逻辑电平,存储深度达到门限的各种逻辑电平,存储深度达到it,示波,示波 器可以实现对路器可以实现对路it 信号同时显示。时间标志线,触发点等功能完善。达信号同时显示。时间标志线,触发点等功能完善。达 到了基本的设计要求,并对其它的功能进行了较好的完善和扩充。到了基本的设计要求,并对其它的功能进行了较好的完善和扩充。 福星电子网 第 1 页 共 28 页 第一部分:方案论证与比较第一部分:方案论证与比较 由于本题目实际由两个相对独立的部分组成,所以我们对两个部分分别进行 分析讨论: 一、数字信号发生器一、数字信号发生器 根据题目要求,我们考虑可以采
5、用以下几种方案可以采用: 1、方案一:采用 555 定时器和可预置移位寄存器。用 74LS194A 接成 8 位可 预置循环移位寄存器,方波发生器提供一时钟信号给移位寄存器,预置数用 8 个 波段开关接入(即循环序列) 。此方案简单可靠,但信号频率不易更改,硬件复杂, 不易扩展。 2、方案二:采用 EPROM 固化波形输出,EPROM 存储容量大,将各种波形的产 生程序固化到 EPROM 中,一振荡器接一 8 位的计数器送 EPROM 8 位数据输出,8 位 计数器需要 3 位地址线再加上 8 位选择开关切换不同波形显示,这样就有 11 位地 址线可寻址 2K 空间。尽管此种方法可产生较好的波
6、形,但使用时不够灵活,只有 固定的几种波形。 3、方案三:用 PC 通过软件编程可以从并行口输出信号波形,不需要硬件电 路,且设计灵活,但是不适合电子设计竞赛,并且 PC 体积大,携带不方便。 4、方案四:采用中规模 FPGA,使用 VHDL 语言设计移位寄存器。此方案可以 实现精确定时产生信号,且信号频率可调,体积小, 但其显示电路占用资源多, 这样设计出来的电路系统将大且复杂。 5、方案五:采用一片 89C51 单片产生波形序列。用单片机产生数字信号,设 计简单,设置灵活,频率调节方便,并且易扩展其他功能,有它独到之处! 综合分析上述各方案,比较其优缺点,包括灵活性、可靠性、可扩展性和易
7、操作性,所以选用方案五。 二、简易逻辑分析仪二、简易逻辑分析仪 我们先对题目要求进行简单分析: 要实现本题目的基本要求,主要实现数据采集存储和控制示波器显示的功能。 其中数据采集功能要求可采集 8 路信号, 采集深度 20 位 (我们的方案选择 24 位) , 数据量为 248=24bytes,对于一般的单片机系统很容易实现。 对于显示功能,要求用示波器显示清晰稳定的 8 路数字波形,再包括额外的 时间标线和触发点的显示,则共需要个通道。对于示波器来说,为了显示的波 形清晰稳定,一般要求扫描的刷新频率25Hz。每显示一路信号,需要沿 X 轴 扫描 24 个位,设定每个位需要显示 10 个点,则
8、显示一个通道需要 2410 个点。 同时显示 9 通道的数字波形,则共显示 249=216 个位,21610 个点。由此 可知,扫描一个点所需的时间为:1 秒/(25 祯*24 位*9 通道*10 点)=18.5 微秒/ 点。对于采用 12MHz 晶振的单片机来说,仅能执行大约 15 条指令。如果数据采集 存储和控制显示功能由同一单片机来实现,处理起来十分困难。即使是 24 兆的单 片,也只能执行 30 条左右而已。因而若用单 MCU 来实现,则须用更高性能的单片 福星电子网 第 2 页 共 28 页 来实现。因此只用一片普通 51 单片来实现是不现实的。 针对以上分析,提出以下方案 1、方案
9、一:采用高性能单 CPU 系统实现,比如 32 位的 ARM 芯片作为控制系统 核心。如果采用此方案,可以很好的解决同时采样和控制显示的功能,但是 ARM 系统设计调试复杂,在短时间内难以很好的完成设计,所以不宜采用此方案。 2、方案二:针对分析中提出的问题,我们也可以采用两片普通 51 单片机来 实现系统设计,一片 51 实现数据采集,存储;另一片 51 实现控制示波器实时显 示功能,两片 51 之间采用串行通信来解决数据通信问题,这样的方案可以满足题 目提出的设计要求。 3、方案三:采用大规模 FPGA 来实现系统, 采用 FPGA 来实现相应功能,一般是使用状态机方式来实现,即所解决的问
10、题 都是规则的有限状态转换问题。分析本题目的要求,可以看出,其中的逻辑控制 灵活多变,适合于采用程序控制的 cpu 执行方式,如使用 FPGA 来实现,大部分的 资源会消耗用来控制键盘和显示等辅助功能,用在主逻辑控制方面的资源相对比 较少。另外,考虑到逻辑复杂程度和实现规模,可采用芯片大概要到 Alter EPF11C50、Alter EP1C6 等级别的芯片来实现,但此种规模 PLD 系统受实验室条 件限制,无法顺利开发,而且其所需元器件和 EPC 配置芯片在本地无法买到,因 而综合比较后我们淘汰掉本方案。 综合分析上述各方案,比较其优缺点,包括灵活性、可靠性、可扩展性和易 操作性,所以选用
11、方案二。 第二部分:信号发生器实现方案第二部分:信号发生器实现方案 一、硬件组成:一、硬件组成: 硬件结构框图如下: 信号发生器由 3 个小模块构成 1、输出滞留稳压电源模块 电路图如下: 福星电子网 第 3 页 共 28 页 本模块主要完成对个电路供电的功能,主要由电源变压器、桥式整流器、电 容滤波器、三端集成稳压器等组成。其作用是将交流电转换为平稳的直流电,核 心部分是整流电路和稳压电路。 电源变压器将交流 220V 电压变为 7.5V 交流电, 经由桥式电路全波整流作用以 后, 得到脉动直流电, 经C5滤波后得到9V的直流电, 电容器C6为三端稳压器W7805 的输入端补偿电容,其作用是
12、消除输入端引线过长引起的自激振荡,抑制电源的 高频干扰,安装时尽量靠近集成稳压器,C7、C8 为输出端补偿电容,以改善输出 瞬态响应。 2、信号发生器模块 连接如原理图 1.1 所示 福星电子网 第 4 页 共 28 页 采用 89C51 产生逻辑循环序列信号,由 P0 口输出,即 Q0-Q7 的八路信号输 出。输出序列信号由 T0 计数器溢出中断产生,采用方式 1。 MAX813L 具有上电复位、Watchdog 输出、掉电电压监视、手动复位四大功能。 WDI(Watchdog Input)主要是作为 Watchdog 计数器重定用的。在 1.6 秒内若 CPU 不触发复位看门狗定时器,则
13、WDO(Watchdog Output)将输出低电平。复位电路 分为手工复位与上电复位。上电复位用比较器产生触发信号触发触发器,以此产 生复位信号。 同时, 对时基产生的脉冲进行定时, 当复位时间达 140 毫秒时, Reset 发生器产生一脉冲使复位信号无效。上电复位时,只要电压低于 4.63V,复位信号 Reset 就有效; 当电源电压超过 4.63V 时, Reset 信号仍将继续保持 140 毫秒左右, 以保证 CPU 复位可靠后无效。手动复位时,MR(Manual Reset)接地时间不小于 150 纳秒,则可产生一个手动复位过程。即在复位端产生 140 毫秒的有效复位信号 (高电平
14、有效) 。若将 WDO 端与 MR 连接,则可组成上电复位及看门狗复位电路。 3、显示部分 液晶显示选用 CA1602A,LCD 显示数据输出接 P1 口, 。液晶显示内容第一行为 标题信息,第二行开始的 8 位 0、1 数字是循环输出的逻辑信号序列,接着输出的 是信号的频率值。 二、软件组成:二、软件组成: 1、流程图: 程序流程图如 1.2 所示。 2、软件说明: 在初始化部分,其频率值 F 的具体计算如下所示: T0 的计数初值:NUM= 65536Fosc/(12F) 对 89C51 Fosc=12MHz 输出时钟频率为:F=100HZ,则一个时钟周期循环输出 8 位序列中的一位。则
15、定时输出时钟脉冲时,NUM=65536-12M/(FF*12) FF=F/2; 要输出较为精确的频率,用计算到的常数进行循环产生脉冲,并按执行实际 情况适当进行调整计数初值,使实际周期准确。 福星电子网 第 5 页 共 28 页 第三部分、简易逻辑分析仪方案实现第三部分、简易逻辑分析仪方案实现 一、结构组成:一、结构组成: 本分析仪由数据采集存储和控制显示两部分构成:数据采集存储模块由信号 输入电路、89C52 单片机、小键盘和液晶显示模块组成;逻辑状态与波形显示模块 由 D/A 变换器(TLC7226)和 89C52 构成。两模块之间采用串行通信方式。 结构框图如下: 二、数据采集和存储部分
16、二、数据采集和存储部分 此部分对应框图中的 MCU1、电压比较器、键盘和 LCD 液晶显示 1、 输入电路: 八路输入信号通过电压比较器 LM339 和 D/A 转换器 TLC7226 提供的基准电压 作比较后,作为存储单片的输入,8 路信号接入 LM339 同相输入端,可以获得较大 阻抗。 2、 触发和存储原理: 本部分功能主要依靠 51 单片机来实现。 根据题目要求,对逻辑信号的采集是要依靠触发字来触发的。触发字又分单 级触发字和三级触发字两种,单级触发字的预置依靠小键盘输入实现。当单片机 采集到的状态字和用户所提供的触发字 8 位逻辑状态完全一致时,开始一次数据 采集,连续采集 24 位,然后存储到显示缓冲区中,这样每个显示通道的存储深度 为 24bit; 对于三级触发字方式,设定从外部采两位的状态,连续取三次,都和我们设 定的两位逻辑状态一样的情况下,将进入 3 级触发采集状态,开始采集。 采集完 24 位数据后,存储起