基于FPGA的示波器设计

这篇具有很好参考价值的文章主要介绍了基于FPGA的示波器设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、设计要求

二、系统架构设计


一、设计要求

        本次基于FPGA的示波器设计主要技术要求包含以下内容:

  1. 系统能够实现模数转换功能,即包含ADC驱动模块;
  2. 系统能够实现ADC采集数据的缓存功能;
  3. 系统包含辅助测试模块,DAC数模转换模块;
  4. 系统能够实现ADC数据和LCD液晶显示数据的转换功能;
  5. 系统具备LCD液晶显示功能;
  6. 附加项:系统具备波形的调频和调幅功能;
  7. 具备波形数据信息的显示功能,幅值、频率等;

二、系统架构设计

        根据项目设计要求,将功能要求进行模块化,系统结构设计如图1所示。主要功能模块包括:

  1. AD_DA模块:主要功能驱动ADC9280模数转换模块,将模拟信号转换为数字信号,完成示波器的模拟信号的采集工作;驱动DAC9708数模转换模块,利用DDS技术实现简易信号发生器功能,此处添加该功能的目的主要是为了在没有模拟数据源的条件下进行示波器功能的辅助测试;
  2. 按键处理模块:该模块主要对物理按键进行边沿检测处理,完成按键消抖处理,正确获取按键信息;同时获取液晶触摸屏的触摸按键信息;
  3. 数据缓存&量化处理模块:该模块功能主要对AD采集的数据进行缓存,然后结合LCD液晶工作原理将AD数据进行转换,将ADC采集的模拟信号量在液晶屏上通过以波形的方式显示。
    同时,模块包含频率计功能,将ADC采集信号的频率、幅值等信息进行计算,输出给LCD液晶驱动模块进行显示;除此之外,还可以根据液晶触摸按键信息将完成液晶波形显示的横纵坐标的缩放功能。
  4. LCD液晶驱动模块 :主要功能驱动液晶显示;

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图1

三、模块设计

3.1 AD_DA模块设计

        模块内部主要包含ADC9280驱动程序,以及DAC9708驱动程序,这两个模块较为常见,驱动程序简单。设计中ADC部分主要正确产生ad_clk,然后通过ad_clk对ad_data进行采样即可。有关DA驱动程序,设计中加入例如DDS内容,在ROM内部存储了正弦、三角、方波三种波形,波形可通过按键进行切换,频率、幅值均可调节。RTL级视图如图2所示。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图2

3.2 按键处理模块

         模块主要功能:主要分为两部分,第一部分将物理按键利用边沿检测技术,完成对按键信息的处理,准确的获取按键的上升沿或者下降沿脉冲。RTL级视图如图3所示。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图3

             第二部分主要对液晶触摸按键信息进行正确的采集,如图4所示。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图4

3.3 数据缓存&数据量化模块

        模块主要将ADC采集的信号进行缓存处理,然后结合LCD液晶显示的工作原理,完成量化处理,模块内部添加频率计,将采集信号的频率信息进行提取。同时还有采集信号的峰峰值、幅度等信息进行提取,输出给LCD液晶驱动模块。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发图5

3.4 LCD液晶驱动模块

        该液晶模块为RGB565格式的显示模块,驱动程序RTL级视图如图6所示。模块主要将ADC采集的数据完成画波形操作,将采集的数据映射到LCD液晶上完成显示,例如采集正弦波信号,在液晶显示屏上要能够直观的看见正弦波波形。

        同时,结合液晶触摸按键,完成频率、幅值的刻度的增、减工作,实现波形的X\Y轴的调节工作。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发图6

四、方案验证

        本次设计使用黑金的开发板AX515,如图7,以及黑金配套的ADC/DAC模块AN108模块如图8,还有LCD液晶模块(液晶要求:RGB888/RGB565,4.3寸,分辨率:480*272,含触摸屏按键功能)。此处开发板和液晶模块不做硬性要求,只要开发板外设能够链接ADC模块和液晶模块即可。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

 图7

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图8

 4.1 DA功能调试验证

        功能测试过程中ADC采集的信号源是由板卡自身的DDS信号发生器提供,即DAC输出信号源直接介入ADC信号输入接口,DAC在线示波器SignalTap波形显示如图9所示,可以看见例化的三种波形工作均正常,输出选择可通过按键来进行选择。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图9

        如下图10,为ADC不接任何信号时的噪声采集展示图,

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图10

        图11为ADC 接入DAC正弦波信号时的系统功能展示图,图中各种信息显示均正常。     fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图11

        通过按键调节DAC输出波形幅值,ADC采集数据均有对应变化,系统功能初步验证完成,如图12所示。

fpga示波器设计,项目经验分享,FPGA课题设计,fpga开发

图12

本文章只对设计架构和功能做简单的说明,程序具体实现内容较多,可自行下载对应程序进行深入学习理解,另外7寸液晶、VGA接口的配套例程均已调试通过,可私信进行具体问题具体交流。文章来源地址https://www.toymoban.com/news/detail-625550.html

到了这里,关于基于FPGA的示波器设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32示波器设计

    目录 前言 1、硬件模块 2、示波器基础知识 2.1 当头一棒就是,波形的概念 2 .2 第二就是需要观察的波形参数 2.3 第三就是示波器参数 2.3.1 采样率 2.3.2 带宽 2.3.4 刷新率 3、ADC采集和DAC输出 3.1 ADC 采集实现 3.1.1 配置ADC采集为定时触发DMA采集模式 3.1.2 配置ADC关联的定时器 3.1.3 转

    2023年04月14日
    浏览(90)
  • stm32毕设 示波器设计与实现(源码+硬件+论文)

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月06日
    浏览(44)
  • 基于stm32f407的示波器+FFT频谱分析

    1 设计思路 2 DMA传输ADC采样值 使用DMA直接将ADC-DR中的数据传输到ADC数据缓存区,节省cpu资源,高速AD采集,代码如下: 3 ADC定时器触发(可修改ADC采样率) 为了实现ADC采样率可调,我将AD的出发方式设置为定时器触发,使用TIM3来触发adc采集,首先初始化定时器,先预设几种初

    2024年02月05日
    浏览(45)
  • 基于小梅哥Zynq开发板的简易自制示波器(代码已开源)

    本程序基于Xilinx zynq 7000系列芯片,结合12位8通道ADC采样芯片ADC128S102,实现了8选1通道的简易示波器功能。代码已开源,下载链接在文章顶部。 一、硬件组成 (1)小梅哥ACZ702-7020开发板 (2)小梅哥FPGA EDA扩展卡 (3)小梅哥5寸电容触摸显示屏 二、系统结构 1.PL部分: (1)将

    2024年02月08日
    浏览(36)
  • 基于STM32F4的FFT+测频率幅值相位差,波形显示,示波器,时域频域分析相关工程

    一入电赛深似海,此话不假,个人感觉很累,但是收获确实多。本人去年参加了国赛,电赛提前半个月就开始着手准备了,只记得那时候不是调试就是在调试的路上,也因此留下了宝贵的我姑且称之为“经验”,作为一名小白,借此机会跟各位老白和小白分享一下。我训练较

    2024年02月03日
    浏览(41)
  • 示波器带宽

    示波器有很多不同规格,确定了可捕获和测量信号的准确度。但是示波器的主要规格是其带宽。 所有示波器都具有以较高频率展示的低通频率响应,如下图所示。大多数带宽规格为 1 GHz 以及更低的示波器通常具有高斯频率响应。示波器高斯频率响应近似于单极点低通滤波器

    2024年02月13日
    浏览(39)
  • ThunderScope开源示波器

    4CH,1GSa/S 开源示波器。前端很简洁,BUF802+LMH6518,ADC是HMCAD1511,用Xilinx A7 FPGA进行控制,数据通过PCIE总线传输到上位机处理。目前这个项目已经被挂到了Xilinx官网,强。 设计日志:https://hackaday.io/project/180090-thunderscope 开源地址:https://github.com/EEVengers/ThunderScope discord讨论组:

    2024年02月16日
    浏览(46)
  • 电脑连接示波器读取数据

    示波器型号:北京普源的RIGOL MSO4034 首先连接示波器: 连接线与示波器相连的端口如上图USB DEVICE所示,是一个比较奇怪的方形接口。连接线的另一端是标准的USB typeA接口,可以直接插在电脑上,当示波器和电脑连接时,电脑会提示安装驱动。 该型号示波器端口是业界通用的

    2023年04月08日
    浏览(41)
  • LabVIEW虚拟数字示波器

    1、简易版 1.1、生成虚拟数据 1.2、 数据参数信息 1.3、 调节时间和幅度 1.4、 调节直流偏置和增益 1.5、 数据信号频域分析 1.6、数据信号滤波 1.7、 保存波形数据 1.8、加载波形数据 1.9、停止运行 2、复杂版 2.1、调节数据信号频率、幅度、相位、偏移量和占空比 2.2、调节时

    2024年02月03日
    浏览(45)
  • 嵌入式开发----示波器入门

    对于嵌入式工程师来说,示波器的使用极为重要,他就像是“电子工程师的眼睛”,把被测信号的实际波形显示在屏幕上,以供工程师查找定位问题或评估系统性能等,利用示波器能观察各种不同信号幅度随时间变化的波形曲线,还可以用来测试电量,如电压、电流、频率、

    2024年01月18日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包