刘东+曾仕鹏+刘雪敬
摘 要:本设计是一种简易数字示波器,以STM32单片机作为控制核心,经过按键设置相应档位后,被测信号经过与处理电路、A/D转换电路、采样电路后再经过数据处理最后显示实时波形。测试结果表明本课题设计的便携式示波器系统稳定、波形清晰、可靠性高,而且本课题设计的便携式示波器成本低,具有很高的实用价值。
关键词:便携式示波器;STM32;预处理电路;A/D转换;实时采样
引言
示波器的应用与日俱增。对硬件开发来说,测量信号的幅度、频率等信息都离不开示波器,但是对于非盈利的教学组织和广大电子爱好者来说高精度的示波器非常昂贵[1]。为满足众多电子设计爱好者由于高精度示波器昂贵的价格所带来的困扰,设计了一种基于STM32的便携式示波器。
1 便携式数字示波器的工作原理
本设计硬件电路部分由信号调理电路、主控芯片、按键选择电路组成,显示部分为LCD液晶显示电路。本设计以STM32为控制核心,首先将被测信号离散化,之后将离散数据暂存于FIFO中,单片机从FIFO中读取数据,然后经过一系列数据处理将数据输出在LCD显示器上,实现被测信号的波形显示。
2 硬件设计
2.1 前端信号的处理
本模块具有两大功能,一是通过拨码开关切换测试档位;二是信号波形的处理。
被测信号分为两种:一种是直流信号,另一种是交流信号。对于选择直流信号还是交流信号是通过拨码开关进行选择的。首先,判定信号是直流还是交流;然后通过调整拨码开关将示波器测试模式调整至合适测试档位。测量交流信号时,信号经过电容进入模拟通道;测量直流信号时,信号直接进入模拟通道。
信号波形处理电路主要由信号抬升电路和阻抗变换电路两部分组成。信号抬升电路作用是使信号在垂直方向上处于A/D转换器的输入范围[3]。但STM32属于数字器件,不能直接对模拟信号进行处理,所以需要对信号进行离散化处理[4]。
2.2 信号的采集
信号的采集部分采用BB公司的8位AD,是本设计的核心部分,经过AD采集的数据不是直接发送至MCU,而是首先发送到AD与MCU之间的FIFO,以便起到数据缓冲的作用。而在FIFO寻址时,由于FIFO没有地址线,所以使用地址指针增减的方式来进行寻址操作。AD和FIFO的同步时钟均来源于单片机的ALE引脚,这样保障了FIFO和AD的时钟同步。
2.3 液晶显示
本设计的波形显示模块采用8位并行数據处理的2.4寸LCD显示屏,时域分量体现在横轴上,幅值体现在纵轴上[7]。液晶屏有4个编程端口:RS、RW、EN和PSB。
2.4 按键电路
设置了1个按键控制波形的run和stop,2个独立按键设置幅值和时间轴的大小,当MCU检测到按键被按下时,软件中相应的参数值会发生相应地变化,从而改变了波形的大小。
本设计横轴方向能够设置三档扫描速度:10us/div,20us/div,40us/div,纵轴方向能够设置三档垂直灵敏度:10mV/div、0.1mV、1V/div,此外还可以设置1倍、2倍、5倍的不同档位。
3 软件部分
3.1 流程图的设计
总体设计流程图如图1所示。
3.2 测量频率流程图
本设计采用计数法测量频率。基本思想就是利用计数器累加的方法,测量单位时间内被测信号的上升沿数量,将1s等分成20个50ms,防止计数器产生溢出,测出信号频率[8]。
3.3 测试结果
测试方式如下:
(1)测试频率为3KHZ,幅值为3.3V的方波信号。示波器输出波形与实际波形基本相符。显示幅值为3.4V,频率大致为3KHZ。(2)测试频率为10KHZ,幅值为5V的正弦信号。输出波形也与实际波形相符。显示幅值为5.1V,频率大致为10KHZ。两次测试结果均与被测信号基本相符,误差较小。
4 结束语
本文设计的基于STM32的便携式数字示波器,通过对软件和硬件的优化,经测试可以达到所要求的性能指标,所设计的便携式数字示波器运行稳定、可靠。此外,该数字示波器还具有体积小、易携带、成本低、易操作等优点。是广大电子爱好者的福音。
参考文献
[1]王栋,张俊涛.基于SOPC的数字示波器的设计与买现[J].电子器件,2009,32(3):632-636.
[2]陈鑫,秦宏伟,陈春雨,等.基于Cortex-M3内核的STM32微控制器研究与电路设计[J].2013,33(14606):44-47.
[3]刘杨斌,刘其峰,华慧.基于AT89S52单片机的简易数字示波器设计[J].,2011,34(34914):138-140.
[4]余海斌,陈志英.基于AVR单片机的简易示波器设计[J].电子设计工程,2009(5):1-2.
[5]李建波.Proteus中基于AT24C512的汉字库加载技术及显示仿真
[J].液晶与显示,2010,25(3):391-395.
[6]晃阳.单片机原理及应用开发教程[M].北京:清华大学出版社,2007.
[7]李萍.AT89S51单片机原理开发与应用实例[M].北京:中国电力出版社,2008.
[8]王文理,武晋,刘志强.基于AT89S52单片机与AD0804的数字示波器设计[J].微计算机信息,2009,25(2):114-115.