简易数字存储示波器的实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.
简易数字存储示波器实验报告
目录
一.数字存储示波器简介及设计思路 (3)
二.实验设计原理 (5)
三、系统各模块的简单说明 (5)
四.最终实现功能说明 (8)
五.实验设计实现功能模块具体分析 (9)
六、实验硬件分配及总体仿真波形 (15)
一、数字存储示波器简介及设计思路
数字存储示波器是20世纪70年代初发展起来的一种新型示波器。这种类型的示波器可以方便地实现对模拟信号波形进行长期存储并能利用机内微处理器系统对存储的信号做进一步的处理,例如对被测波形的频率、幅值、前后沿时间、平均值等参数的自动测量以及多种复杂的处理。而我们此次要设计的便是一种简易的数字存储示波器。
数字存储示波器可实现以下功能。通过对来自信号源的信号进行采集(可分为实时取样和等效时间取样),将获得的值存储在内置RAM内,后期操作有对波形的显示、波形的测量(如测量频率、幅值、上升下降时延等)和波形处理(如双踪两波形的相加、相减、X-Y显示等等)。其工作示意图如下所示:
而我们设计的简易数字存储示波器实现的功能有对单一信道信号进行采样存储显示(分实时显示和存储后期调用显示)、对信号进行频率测量并显示数值、对波形进行上移、下移、扩展、收缩操作、示例波形演示(包括正弦波、锯齿波、方波)。我们所用的硬件有实验箱上的高速的模数转换器TLC5510、FPGA芯片、单片机、LCD显示屏、FPGA 内置RAM、外围扩展的RAM和键盘。以下框图为实验箱硬件使用说明图:
因此我们所需要设计的部分便是A/D采样控制接口模块、键盘控制接口模块、存储器读写控制模块、LCD控制接口模块和LCD显示模块。
系统工作流程图如下所示:
通过RESET按键初始化,按键选择是否进行采样或是进行其他操作(如示例波形的演示、调用查看以前存储的波形),若进行采样,则将采集的数据存储到FPGA内置的RAM
中,下一步进行是否存储或进行实时数据处理。若进行实时数据处理则可以在LCD显示屏上观察到相应的波形,并且可以对其进行上移、下移、扩展、收缩和测频的处理。
二、实验设计原理
设计总体逻辑思路如下:系统开始工作时,通过按键选择是否开始检测波形,若是,则首先由频率检测器检测频率,然后根据测得的频率选择适当的采样频率。信号源产生的信号通过A/D采样,采样结果保存在FPGA内置的存储器中。待存储完一帧数据时进行输出到LCD上显示。待显示100ms 后暂停100ms以消除视觉暂留效应,然后准备下一帧数据的存储和显示。如若需要存储波形,则在当前显示的同时,将采样得到的数据送往片外的SDRAM存储,直至存储结束或者存储容量达到上限。当需要显示存储波形时,则将外部SDRAM的数据读进来,送往LCD显示,其原理和实时显示大致相同。
在显示暂停期间,要读取按键情况进行整体控制,比如控制波形是否显示在LCD屏幕上、是否存储、是否显示实时波形还是存储波形、是否上下移动、是否进行时域扩展等。
在实验的验收中,因为缺少信号源的调试,因此A/D采样存储模块未得到验证。为了展示对LCD显示控制,我们利用FPGA内部的ROM进行波形数据预存,通过对ROM读取来模仿外部的AD采样存储。同时为了演示各种不同的波形
(正弦、方波、锯齿波),同样可以通过按键进行选择。最后我们可以在LCD上观察到稳定的正弦波、锯齿波,方波较差。
三、系统各模块的简单说明
根据上述硬件使用说明图以及实验原理,我们的设计总体有以下几个模块:
1)分频、测频模块和选择A/D采样速率模块
说明:FREDEVIDER作为分频器得到所需要的各档采样频率。同时部分频率分量也在其他模块的计时处使用。FREQ_COUNT是测频模块,用于测量输入信号的频率。其基本原理是给一个1s宽的高电平脉冲,在此期间对信号时钟的跳变进行计数,一秒结束后所得的数据就是信号的频率。SAMPLERATE模块是为了针对不同频率信号的档位选择不同的采样频率。为了在LCD上显示适当数量周期的波形,我们将频率设置为12个档位。最低档位是1~5Hz,采样频率为100Hz,然后是5~10Hz,采样频率为200Hz,然后是
10~50Hz,采样频率为1000Hz等等。以此类推,直到最高档500K~1MHz,采样频率为20MHz。
2)按键控制模块
说明:KEYBOARD模块是单片机和FPGA的接口和简单的初步处理,用来控制键盘操作;各buffer触发器是对按键的记录。为了防止对按键的重复读入,此处的触发器设置为上升沿触发,这样每次按键只读入一次。模块图如下所示:
3)实时波形处理模块
说明:KEY_DEAL模块主要是处理按键,包括对按键的记录和相应的参数计算;tlc5510模块是对外部超高速A/D
采样芯片tlc5540采样得到的实时数据进行采样存储控制的,作用是将采样得到的数据存储在内置的RAM内,用于实时显示,该RAM容量较小,只用来存储一帧的波形数据。
需要说明的是,tlc5510里面包括一个100ms的计数器,作用是在一帧数据显示完计时100ms等待,用于消除视觉暂留效应。计时过后,开始下一帧数据的存储显示。
4)存储波形控制模块
说明:该模块的主要作用是控制存储波形数据的读写操作和送到LCD显示,同时也包括在显示存储波形时对相应按键的处理。STORE_CTRL模块对存储波形的数据进行采样存
储的初步处理;SDRAM_CTRL模块对外部DRAM进行读写控制。KEY_DEAL2是用来对按键进行处理,功能类似于实时部分中的KEY_DEAL,只是多了左右波形移位的控制。
5)LCD控制显示模块
说明:SWITCH_CTRL是用于选择显示实时波形还是存储波形的数据;LCD_POSITION是用来计算LCD屏幕中即将扫描到的位置;LCD_DISPLAY是用来进行显示控制的,包括计算是否需要显示和相应的RGB的输出。
6)PLL锁相环模块