0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何通过Arduino制作数字示波器

454398 来源:wv 2019-09-24 16:45 次阅读

在线制作数字示波器的经常见到的人,DSO必须具有数模转换单元,根据d/a转换电路可分为两种模式:1.特殊ADC芯片+单片机,2.在转换器内部使用单片机ADC计数。对于第一个模型,我尝试了两个,该电路稍微复杂一点,组件更难以完成,对于初学者来说很难。第二种结构相对简单,易于制造,但是具有很大的缺点,即带宽较窄, 示波器的带宽仅为7.7KHz。国内用户和STC单芯片AVR生产,但实际带宽小于10KHz。您也可以选择使用Fusion PCB制作PCB板,而无需自己焊接。

如何通过Arduino制作数字示波器

步骤1:代码

最近用Arduino示波器看到了一个网友,它可能比上面的第二种方法更容易使用,但结果并不理想,带宽很窄。因此,我想尝试一下,没有解决此问题的好方法。通过实验制作,不断修改代码,提高了d/a转换采样率,取得了很好的效果。

最终产品的主要参数:频率响应:10Hz-50KHz电源: 5V LCD LCD屏幕:128x64(ST7920)测量显示区域:96x64信息显示:32x64,显示测试信号的频率,Vpp等;同步:上升沿触发扫描速度:0.02ms/div〜10ms/div,载有9个1-2-5保持功能:冻结显示的波形和参数二,基本测试使用Arduino项目的最大优势是其丰富的资源,并且不需要太多的SCM知识。我使用的是u8glib LCD储存库,从而使编程更容易,否则LCD驱动器将花费您很多时间。 U8glib下载:u8glib_arduino_v1.13.zip(989.55 KB,下载:2577)这是我使用Arduino UNO构建的第一个测试电路,使用ST7920控制的12864 LCD LCD。只要将以下代码中的输入法下载后编译,就可以实现数字示波器的基本功能,会不会更简单? #包括//声明U8GLIB_ST7920_128X64_4X u8g(13,12,11);语句LCD SPI Com:SCK = 13,MOSI = 12,CS = 11 int x,y;绘制点坐标int Buffer [128];缓存存储阵列void setup(){}样本void sample(){for(x = 0; x 《128; x ++)Buffer [x] = AnalogRead(A0); (x = 0; x 《128; x ++)Buffer [x] = 63-(Buffer [x] 》》 4)的信号采样;计算y值}显示void draw(){for(x = 0; x 《127; x ++)u8g.drawLine(x,Buffer [x],x,Buffer [x + 1]);画两条线u8g.drawLine(64,0,64,63);绘制轴u8g.drawLine(0,32,128,32);对于(x = 0; x 《128; x + = 8)//绘制轴刻度u8g.drawLine(x,31,x,33); for(x = 0; x 《64; x + = 8)u8g.drawLine(63,x,65,x); u8g.drawFrame(0,0,128,64);绘制边框} void loop(){sample();示例u8g.firstPage();清除屏幕做draw();显示while(u8g.nextPage());

}

步骤2:电路

使用测试电路,直接使用AnalogRead()函数测量Arduino,以完成ad/a转换,转换速度约为111μs速度很慢,因此其带宽大部分为1KHz,下一个优先事项是在增加其他功能的同时提高数模转换的速度。

第三,最新的程序这是使用最新的源代码,请保留我的开机LOGO,哈哈。 Arduino_oscilloscope.zip(2.72 KB,下载:2710)

程序芯片1.1V ADC使用上述电压基准,如果要使用外部5V基准电压,则应程序ADMUX = 0xe0;至:ADMUX = 0x60; Vpp =(V_max-V_min)* 1.1/255;读取:Vpp =(V_max-V_min)* 5/255;

使用Fusion PCB可以制造出更好的电路板。

使用上面的Arduino UNO进行四次机器制造的实验,

电路图:

主要组件列表:编号名称Arduino PRO mini 1 LCD12864 LCD(ST7920)1电解电容器(100μ25V)1电位器(50k)1孔板3电源开关1电池盒2按钮开关(带可充电电池,第7个)1盒1

1,焊接Arduino PRO mini PIN。/p》

2,焊接电路板组件

3,制作LCD孔板

4,组装电路板

5,制作外壳I

6,组装

将带有塑料外壳的宝盒的充电结构调整到孔中的适当位置。

6,组装

将电路板装入带有厚白色面板的外壳中

第3步:上传并测试

都e到Arduino PRO mini不会打开USB串行端口电路,因此在下载程序之前要通过USB串行端口下载进行传输。

示波器的调试非常简单,只需将电位器调至50k中心即可。水平扫描线。我使用信号发生器的信号源。

启动LOGO

测试:

一些解释

1,这是最常见的一种。简单的数字示波器,您可以在此基础上进一步改进;

2,您可能已经注意到我没有使用I/O端口0-7,而I/O端口恰好是8位AVR芯片的微型计算机,这是我为后续升级准备的,使用特殊的ADC芯片,可以用作数据输入,如果您对示波器感兴趣,那么我会考虑升级;

3 ,工作很匆忙,存在任何缺陷和不足,请提出建议,您还有任何问题可以在这里进行。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数字示波器
    +关注

    关注

    6

    文章

    523

    浏览量

    33571
  • Arduino
    +关注

    关注

    188

    文章

    6469

    浏览量

    187038
收藏 人收藏

    评论

    相关推荐

    与模拟示波器相比数字示波器的优点有哪些

    因其独特的优势,在现代电子测试和测量中得到了广泛的应用。 更高的测量精度 : 数字示波器通过数字化信号,可以提供更高的测量精度。模拟示波器的精度受限于
    的头像 发表于 09-20 09:57 1580次阅读

    数字示波器的使用方法及注意事项

    数字示波器是一种广泛应用于电子测量领域的仪器,它能够将模拟信号转换为数字信号,并在屏幕上显示波形图。数字示波器具有测量精度高、使用方便、功能
    的头像 发表于 07-17 18:16 1596次阅读

    如何使用数字示波器的自动测量功能

    示波器的基本原理 在详细介绍自动测量功能之前,我们首先需要了解数字示波器的基本原理。数字示波器通过
    的头像 发表于 07-17 17:39 1609次阅读

    虚拟示波器还是数字示波器好用

    虚拟示波器数字示波器各有优缺点,具体选择哪一种取决于您的具体需求和预算。 虚拟示波器 定义 虚拟示波器是一种基于计算机软件的
    的头像 发表于 07-17 17:16 718次阅读

    电子示波器数字示波器的比较

    引言 示波器是一种广泛应用于电子测量领域的仪器,它能够将电信号的波形以图形的方式显示出来,便于工程师对信号进行分析和测量。示波器主要分为两大类:电子示波器数字
    的头像 发表于 07-17 17:10 584次阅读

    模拟示波器数字示波器的区别

    示波器作为电子测量领域的重要工具,经历了从模拟到数字的技术变革。模拟示波器数字示波器各有其特点和应用场景,两者在工作原理、性能参数、功能特
    的头像 发表于 05-11 16:13 2799次阅读

    混合示波器数字示波器的区别

    在电子测试与测量领域,示波器作为一种重要的工具,其性能和应用对于工程师和技术人员来说至关重要。随着科技的发展,示波器的种类和功能也在不断演进,其中混合示波器数字
    的头像 发表于 05-10 15:50 936次阅读

    数字示波器和模拟示波器的区别

    数字示波器和模拟示波器在电子测量领域都有各自的应用,它们之间存在一些显著的区别。
    的头像 发表于 05-09 18:25 2132次阅读

    数字示波器是什么东西

    数字示波器是一种高性能示波器,它采用数据采集、A/D转换、软件编程等一系列技术制造而成。
    的头像 发表于 05-09 17:23 639次阅读

    数字示波器探头过度补偿对幅频特性的影响

    数字示波器探头的过度补偿对幅频特性的影响是一个重要的话题,它涉及到在测量过程中如何正确地补偿示波器探头,以确保测量结果的准确性和可靠性。在本文中,我们将探讨数字
    的头像 发表于 04-29 10:02 336次阅读
    <b class='flag-5'>数字</b><b class='flag-5'>示波器</b>探头过度补偿对幅频特性的影响

    数字示波器和模拟示波器区别

    数字示波器:将模拟电信号经过模数转换技术转化成数字信号,再通过数字信号处理技术进行分析和显示。
    的头像 发表于 04-07 18:15 2990次阅读

    数字示波器的DSO体系结构及功能

    数据以数字形式表示,可使示波器执行各种波形测量。信号可以无限期地存放在存储器中,也可打印或通过闪存、LAN、 USB 或 DVD-RW 传输到计算机中。事实上,您还能通过软件提供的虚拟
    的头像 发表于 03-20 17:31 1360次阅读
    <b class='flag-5'>数字</b><b class='flag-5'>示波器</b>的DSO体系结构及功能

    如何使用Arduino制作智能垃圾箱

    在这个项目中,我将向您展示如何使用Arduino制作智能垃圾箱,当您带着垃圾接近时,垃圾箱的盖子会自动打开。
    的头像 发表于 02-11 12:22 3026次阅读
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>制作</b>智能垃圾箱

    虚拟示波器如何使用 虚拟示波器数字示波器的区别

    虚拟示波器是一种基于计算机软件的虚拟仪器,用于显示和分析电子信号的形状、频率、幅度等特征。它的工作原理是将模拟信号通过采样和数模转换等处理,转化为数字信号,然后通过计算机处理并显示出来
    的头像 发表于 01-23 14:14 1101次阅读

    Arduino制作循迹小车教程

    Arduino制作循迹小车完全教程
    发表于 01-05 11:09 7次下载