1、项目名称:手持式数字示波表比赛编号: 11424单位名称:电子科技大学通信与信息工程学院作者:李广军(Guangjun Li),林水生(Shuisheng Lin),阎波(Bo Yan),王一(Yi Wang),杨新川(Xinchuan Yang),荆研(Yan Jing)联络人:李广军(Guangjun Li)职业:教师通讯地址:四川省成都市电子科技大学通信与信息工程学院邮编:610054电子邮箱:电话:85-28-83202527传真:86-28-832076692002 年 10 月 7 日第 页1目 录摘要 . 2关键词 . 21、引言 . 21.1 示波器工作原理 21.1.1 模拟
2、示波器工作原理 . 21.1.2 数字示波器工作原理 . 21.2 万用表工作原理 31.3 频率计工作原理 31.4 数字示波表工作原理 32、设计概述 . 32.1 示波表的系统结构 . 32.2 示波表性能指标 . 43、硬件描述 . 53.1 DSP 控制核心电路 . 53.2 FPGA 芯片及外围电路 . 63.3 模拟通道 . 63.4 信号调理及模/数转换电路 . 73.5 FPGA 内部功能 . 83.5.1 A/D 采样控制器 . 83.5.2 数据 FIFO 83.5.3 FIFO 采样控制器 83.5.4 频率计单元 . 93.5.5 显示缓存区 . 93.5.6 显存地
3、址发生器 . 93.5.7 LCD 驱动器 . 93.5.8 通道控制端口 . 93.5.9 总线仲裁器 . 94、软件描述 . 104.1 存储器地址空间映射 . 104.2 示波表程序设计说明 104.3 处理算法及实现 114.3.1 波形参数的测量 . 114.3.2 自适应幅度调整 . 124.3.3 内插算法对波形的重建 . 124.4 底层驱动程序 145、结论 . 15附录 1:示波表实验电路板附录 2:示波表开机界面附录 3:示波表开机菜单附录 4:示波表显示波形第 页2手持式数字示波表李广军,林水生,阎波,王一,杨新川,荆研电子科技大学通信与信息工程学院(610054)摘要
4、:利用嵌入式技术设计的手持式数字示波表,是集数字存储示波器、数字万用表和数字频率计等功能于一体的手持式电子测量仪表。本文介绍的手持式数字示波表以 Motorola 的 DSP56805 为核心控制和数据处理芯片,以 Xilinx 的 XC2S50 实现图形液晶控制器、高速数据缓存和系统逻辑控制等控制功能。该示波表具有体积小、功耗低、携带使用方便等特点。关键词:数字示波表、数字示波器、数字万用表、数字信号处理器(DSP)、液晶控制器、FPGA1、引言手持式数字示波表集数字存储示波器、数字万用表、数字频率计三者功能于一体,采用电池供电,图形液晶显示,是电子测量领域里一类新型的实用仪器。 本设计采用
5、嵌入式设计技术,把微控制器、A/D转换器、LCD 控制器等核心部件嵌入该系统,并利用嵌入式操作系统、ASIC 设计技术、LCD 图形显示技术及数字信号处理技术等综合设计的嵌入式仪器系统。该仪器功能齐全,并且体积小、重量轻,携带和操作都十分方便,具有极高的技术含量、很强的实用性和巨大的市场潜力,代表了当代电子测量仪器的一种发展趋势。1.1 示波器工作原理1.1.1 模拟示波器工作原理传统的模拟示波器把需观测的两个电信号加至示波管的 X、Y 通道以控制电子束的偏移,从而获得荧光屏上关于这两个电信号关系的显示波形。显然,这种模拟示波器体积大、重量重、成本高、价格贵,并且不太适合用于对非周期的、单次信
6、号的测量。1.1.2 数字示波器工作原理现代数字存储示波器首先对模拟信号进行高速采样获得相应的数字数据并存储。用数字信号处理技术对采样得到的数字信号进行相关处理与运算,从而获得所需的各种信号参数(包括可能需要使用万用表测试的一些元器件电气参数) 。根据得到的信号参数绘制信号波形,并可对被测信号进行实时的、瞬态的分析,以方便用户了解信号质量,快速准确地进行故障的诊断。测量开始时,操作者可通过中文界面选定测量类型(波形测量、元件测量) 、测量参数(频率/周期、有效值、电阻阻值、二极管通断等)及测量范围(可选自动设置,由仪器自动设置最佳范围) ;微处理器自动将测量设置解释到采样电路,并启动数据采集;
7、采集完成后,由微处理器对采样数据按测量设置进行处理,提取所需要的测量参数,并将结果送显示部件。如果需要,用户可选择自动测试方式:微处理器在分析首次采样得到的数据后会根据具体情况调整、修改测量设置,并重新采样。在经过几次这样的“采样-分析 -调整-重采样”循环后,示波表即可完成即触即测功能,而无须人工调换量程,便于手持操作。显然,数字存储示波器与传统的模拟示波器相比具有很多突出的优点:第 页3 可以根据被测信号的特点自动确定和调整测试条件,真正实现自动、离手测试。 能够较容易地实现对高速、瞬态信号的实时捕获。 在波形存储与运算方面有着明显的长处。1.2 万用表工作原理模拟万用表通过电阻分压网络实
8、现电参数的测量。目前有许多数字万用表的专用芯片,这些芯片内部一般集成有 A/D 转换器、LCD 液晶显示驱动器和测量模式选择开关等模块。其外围电路较简单,常常由测量输入电路、AC/DC 变换电路、电压基准电路和蜂鸣器等组成。电压、电容、电阻测量分别有一个外部基准电压,这个电压经过一个齐纳二极管稳压后再经微调电阻调节到各自所需的电压值。芯片的电压/电阻/ 电容/频率端口可分别测量交流/直流电压、电阻、电容、频率。1.3 频率计工作原理被测信号经过整形电路,产生同频率的矩形波规则的脉冲信号。计数器根据所提供的矩形波上升沿进行计数,计数时间由选通时间控制部分决定,根据频率所处的范围来决定档位。为提高
9、测量精度,通常分级进行,即对频率较低的信号采用测周的方法进行,而对频率较高的信号则采用测频的方法。频率计常用计数器及单片机实现,也可通过可编程逻辑器件实现。1.4 数字示波表工作原理数字示波表由高性能微处理器、高速 A/D 及数据处理电路组成。被测信号经信号输入通道进行调理,以满足最佳 A/D 转换要求。高速 A/D 转换后的数据存储在 FIFO 中,供微处理器进行处理。微处理器根据菜单的选择输入,执行相应的算法处理软件,得到相应的测量结果。2、设计概述2.1 示波表的系统结构图 1 示波表系统结构框图第 页4基于 MOTOROLA 的 DSP56805 芯片的手持式数字示波表,利用 MOTO
10、ROLA DSP 芯片与现场可编程逻辑器件 FPGA 相结合,大大简化系统,使系统更精简,体积更小,并且充分利用 DSP 与 FPGA 可使数字示波表的功能得到充分的体现。而且在高速并行流水信号处理中,ASIC(FPGA)+ DSP + RAM 是目前的一种流行方式,具有许多优点。现场可编程门阵列逻辑器件 FPGA 具有现成的母片,可实现现场编程。使用 FPGA 可使设计方便,利用它灵活、校验快以及设计可随意改变的特点,可大大缩短研制时间。MOTOROLA DSP56805 芯片具有很强的微控制功能,拥有丰富的片内资源、输入输出端口,并有很强的数字信号处理能力。利用它作为中央处理单元,控制整个
11、系统的运作,它同时完成一些数据处理的功能。数字存储示波表是一个完整的智能化测量系统,其中包括信号输入通道、数据采样、数据处理及存储、显示控制、电源供给等各部分。如图 1 所示。图 1 的模拟通道主要完成被测信号的程控放大和衰减、交/直流耦合、信号平移等预处理。使输入信号适合 A/D 转换的电气性能。被测信号的放大 /衰减倍数、交/直流耦合方式由 FPGA 根据 DSP 的处理结果发出数字控制信号。而被测信号平移和触发电平则由 DSP 控制 D/A 转换器完成。被测元件(电阻、二极管等元件)经过信号调理电路处理后,其信号送 DSP 内部的 A/D 转换器。根据 A/D 转换的结果,分析被测元件的
12、参数值。被测信号经预处理后分两路,一路送高速 A/D 转换器,转换后的数字量暂存在 FPGA 内部块 RAM 设计的 FIFO 中,供 DSP 读取并处理。另一路经过整形电路处理后,得到标准的矩形脉冲信号,并送 FPGA中的测频/测周电路构成的频率计,从而测量出输入信号的频率。利用 DSP56805 内部的 A/D 转换器实现键盘接口,充分利用了 DSP 内部系统资源,减少 I/O 脚的占用。微处理器 DSP56805 从 FPGA 的数据 FIFO 中取得数据并进行处理,获得用户需要的显示信息;微处理器还能够接收和正确分析用户从键盘输入的信息,并由此控制其它部分协调工作。可编程逻辑芯片 XC
13、2S50 内部有 4KB 的块 RAM,其中 2KB 的内部块 RAM 设计成双口 RAM,用作显示缓冲器,另外 2KB 的内部块 RAM 设计为 FIFO,作为 A/D 的高速缓冲器。由 FPGA 设计实现的图形液晶控制器能够直接驱动 320X240 点阵的单色图形液晶显示屏。频率计和系统的逻辑控制也由 XC2S50 实现。DSP 的显示控制软件负责将微处理器处理后的显示数据映射到显示缓冲区中,并由 LCD 显示出来,从而完成一次测量。2.2 示波表性能指标 集数字存储示波器、万用表和频率计的功能于一体;手持;交/直流供电。 模拟带宽 10MHz;单次带宽 5MHz;取样率 50MS/s。
14、记录长度 2KB;单通道。 水平扫描 50ns/div 10s/div;垂直扫描 5mV/div5V/div。 测量信号参数:周期、频率、占空比、平均、有效、峰峰值。 测量电阻:100、1K、10K、100K、1M 。第 页5 测量电压:10 mV、30mV、1V 、3V 、10V、30V。 二极管测量、通断测量。 频率计:10MHz 5%。 测量精度:示波器精度5%,万用表精度3% 。 校准信号:1KHz/0.3V 。 LCD:320240 点 92mm72mm,对比度可调,有背景光。 其它:电池供电2 小时,RS232 接口。3、硬件描述本系统为典型的嵌入式系统,硬件电路主要由 MOTOR
15、OLA 的数字信号处理芯片DSP56805、XILINX 的现场可编程门阵列 XC2S50、GSI 的静态存储器 GS71116、TI 的高速模/数转换芯片TLC5580、Microtips 的 MTG-F32240 液晶显示器和其它辅助器件组成。硬件电路比较简单。下面分模块介绍硬件电路。3.1 DSP 控制核心电路图 2 DSP56805 电路该电路主要由 MOTOROLA 的 DSP56805 构成,如图 2 所示。系统外扩展 64KB 的静态 RAM 作数据存储器,其中 2KB 的存储空间映射为 LCD 的显示缓冲区。另有 2KB 的存储空间作为 I/O 端口扩展,由FPGA 译码后控制
16、通道等操作。DSP56805 的地址总线将分别连接到静态存储器 SRAM 和 FPGA 芯片,数据总线分别连接到SRAM、 FPGA 和 D/A 转换芯片。DSP 的部分多功能 I/O 口用于控制示波表的通道电路。第 页6DSP56805 内部有 8 通道的双 A/D 转换器,其中 4 个通道用于键盘接口,另一个 A/D 作万用表的测量输入。为了提高测量的精度和稳定度,DSP 的 RHY 输入端连接精密电压基准源。为了不占用 DSP 的通用 I/O 引脚作键盘扩展,示波表使用 DSP56805 的内部 A/D 转换器扩展键盘。从一定程度上缓解了 I/O 引脚紧张的问题,同时也充分利用了 DSP
17、56805 的片上已有资源。键盘采用 45键盘矩阵,每五个键占用一个 A/D 通道,总共使用 DSP56805 的四路 A/D 通道,占用同一个 A/D 通道的五个按键采用电阻五级分压。通过 DSP56805 四路 A/D 的结果值来判断哪个键被按下。3.2 FPGA 芯片及外围电路图 3 FPGA 及外围电路示波表使用的 FPGA 芯片为 XILINX 的 Spartan XC2S50,该芯片内部有 4KB 的块 RAM、384 个CLB,共 5 万门的可编程逻辑器件。该芯片与 DSP56805 的地址总线、数据总线和部分控制信号线相连接,如图 3 所示。示波表的高速 A/D 数据输入、被测
18、信号的整形电路与 FPGA 相连。FPGA 还为 320240 点的单色液晶显示屏提供图形显示控制功能。并控制模拟输入通道和 D/A 转换器。3.3 模拟通道模拟输入通道接收外部待检测信号,进行调理,输出-0.5V +0.5V 的电压信号。模拟输入通道由信号通道与测量通道两部分组成。信号通道由输入耦合电路、衰减器、输入保护、跟随器、及控制电路组成,第 页7完成对输入信号的输入耦合方式、信号衰减、保护控制及阻抗变换等功能。测量通道由测量驱动电路和标准参考电路及测量保护电路构成,完成对电阻、二极管等元件参数的测量。模拟输入通道电路原理图如图 4 所示,被测信号经继电器和多路模拟开关进行多级衰减,后
19、经放大,并与信号平移值叠加,送高速 A/D 进行转换。DSP 根据采样结果的大小确定衰减倍数。量程与量程开关的对应关系如表 1 所示。图 4 通道电路框图表 1 程控开关与量程对应关系表格量程程控开关5mV 10mV 20mV 50mV 0.1V 0.2V 0.5V 1V 2V 5V 10V 20VA 0 0 0 1 1 1 0 0 0 1 1 1B 0 0 0 0 0 0 1 1 1 1 1 1C 0 0 1 0 0 1 0 0 1 0 0 1D 0 1 0 0 1 0 0 1 0 0 1 03.4 信号调理及模/数转换电路第 页8图 5 信号调理与模/数转换电路经模拟通道后的被测信号首先进
20、行调理,再分别送高速 A/D 转换电路和信号整形电路进行处理,如图 5 所示。高速 A/D 转换器为 TI 的 TLC5580。其分辨率为 8 位,转换速率可根据需要调整,最高为80MHz。A/D 转换的数据结果送 FPGA 内的 FIFO 缓存。整形电路用高速比较器 TLC3016,将任意形状的模拟信号转换为标准的矩形脉冲信号,送 FPGA 的频率电路进行频率/周期的测量。3.5 FPGA 内部功能示波表中的 FPGA 主要是为 DSP 提供数据的输入输出接口。首先,其为 DSP 提供数据处理的基准数据;其次根据 DSP 需要对输入数据进行一定的预处理,减少数据的冗余量,提高 DSP 的工作
21、效率;再次为 DSP 提供显示单元的接口,将最终数据在 LCD 上进行显示;最后 FPGA 也为 DSP 对前级通道的控制提供接口。通过片内总线仲裁,FPGA 以完全将自身映射成为 DSP 的外部存储器,有此使 DSP 系统的控制简化为仅仅是对外部存储器的读写,提高了 DSP 及整个系统的工作效率。功能模块如图 6 所示。图 6 FPGA 内部功能框图3.5.1 A/D 采样控制器为了使 A/D 工作在最佳的工作状态以得到最佳信噪比,系统设置四级 A/D 采样时钟,分别为40MHz、20MHz、10MHz、5MHz。A/D 采样控制器根据 DSP 所发的 A/D 采样控制字选择输出 A/D 所
22、需采样时钟信号。3.5.2 数据 FIFO系统为 DSP 处理采样数据提供 2KB 的 FIFO 作为高速数据缓存区。FIFO 通过满/空标志与 DSP 进行通信。3.5.3 FIFO 采样控制器考虑到本示波表测量信号的频率范围很宽,从 0.1 Hz 到 10MHz,所以巧妙的设计 FIFO 的读写时钟。FIFO 的写时钟频率交给 DSP 控制。DSP 根据测频/ 测周所得数据来调整 FIFO 的写时钟频率,其调整的思第 页9路是让写入 FIFO 的数据尽量有用,即 DSP 读出 FIFO 的数据后尽量不用丢数,这些数据经过处理后能在LCD 屏上显示出 2 4 个周期的信号波形。这样做的好处是
23、相当明显的,能够减少 DSP 的很多工作,软件丢数的事情交给了硬件来做,处理数据的速度大大提高,整个系统的性能得以改善。FIFO 采样控制器为 DSP 提供写 FIFO 的端口操作。同时,为了避免大量冗余数据对 DSP 处理带来的额外负担,系统共设置 40MHz2Hz,共 22 级 FIFO 采样频率以屏蔽冗余数据。FIFO 采样时钟的选择由采样控制器根据 DSP 所送控制字决定,伴随着每次状态字的写入,控制器自动使 FIFO 读写指针复位。3.5.4 频率计单元系统采用精密频率计算法测量被测信号的频率及周期值,主要由分频模块,频率选择模块,测频模块,测周模块,数据选择模块和地址译码模块等 6
24、 个模块组成,如图 7 所示。测量的结果数值送往 DSP 处理。图 7 频率计功能框图3.5.5 显示缓存区利用 FPGA 内部的块 RAM 设计 2KB 的双口 RAM 作为 LCD 显示缓存区。以此,将 DSP 的数据处理同波形显示脱离直接相关性,提高 DSP 工作效率。3.5.6 显存地址发生器显存地址发生器根据 DSP 的地址总线产生显存的写指针,根据 LCD 驱动信号产生显存读指针。由于FPGA 片内的存储单元不足以满足缓存整屏显示数据,整屏显示数据共分 5 帧送往 FPGA。该单元需通过显存读指针来向 DSP 发出显存刷新中断申请,同时将显存状态字送往 DSP 以通知 DSP 所需的帧。3.5.7 LCD 驱动器LCD 驱动器为 LCD 显示提供各种所需的控制信号。3.5.8 通道控制端口端口为前级通道提供所需的控制信号。