基于STM32F103的多种波形示波器制作

 

 

                                                                                                   摘要

   本设计是基于STM32F103RCT6为主控核心的数字示波器的设计。包AD转换,波形处理,LCD液晶显示模块及外围按键,完成了简单的示波器功能,可以实时采样显示波形、振幅大小和频率大小,本设计实现了电压信号包括周期信号和非周期信号波形的显示,实时采样速率最高可达为1M。采用显示器件是LCD(240*320)动态显示。另外,还实现了对模拟信号的调理,让其电压值符合 AD的采样范围,通过数值处理计算出波形的相关参数,并显示在 LCD 中等功能。因此,整个系统更加完整、完善,从而达到预期目的。文中介绍了硬件的工作原理、模块组成、软件程序的设计方法,并给出了相关设计文档与实物结果。且该示波器,体积小,价格低廉,低功耗,方便携带,适用范围广泛,基本上满足了某些场合的需要,同时克服了传统示波器体积庞大的缺点,减小成本。

 

关键词:STM32;AD;数字示波器;实时采样

 

    

1. 选题背景与意义 4

1.1 选题依据 4

1.2 设计目的 4

1.3 设计意义 4

1.4 应用分析 4

1.5 国内外研究现状 5

1.6 设计任务和要求 5

1.7 方案选择 5

1.8 工艺要求 6

2. 系统设计 7

2.2硬件结构 7

2.3芯片模块 9

2.3.1STM32处理器介绍 9

2.4LCD液晶显示模块 11

2.5按键电路模块 12

3. 软件设计与分析   14

3.1系统介绍 15

3.2信号采集和显示部分 16

3.2.1显示部分 16

3.2.2数值计算部分 17

3.3A/D采样设置 17

3.3.1信号采集部分 17

3.3.2设置采样时间 17

4. 软件编程与分析 19

4.1ADC的初始化函数 19

4.2按键控制程序设计 21

4.3峰峰值测量程序设计 22

4.4LCD显示程序设计 23

4.5动态刷新及显示波形 24

5. 性能测试与分析   26

6. 结论 28

致谢 29

参考文献 30

附录 31

  1.  

 

  1. 选题背景与意义 
    1. 选题依据 

本设计是基于 ARM Cortex-M3 的数字示波器设计可以通过 AD 采样和数值处理 显示周期信号和非周期信号并且将信号的峰峰值、频率和动态的实时波形显示在 LCD液晶屏上。系统的设计包括前端信号调理AD采样控制、J-TLink仿真接口、LCD液晶屏显示实时波形,其优点是方便携带,能够实时对数据进行采集。

    1. 设计目的 

本设计的目的是通过接收任意电压信号并且能够将显示所接收到的实时波形, 并且能够测量出波形的峰峰值和频率。并完整的显示动态波形,显示出波形的频率和幅度特性本设计还附加信号发生器功能让系统更加完整。

    1. 设计意义 

本设计实现了对信号包括周期信号和瞬时信号的采集和显示,去除了模拟传统 示波器只能显示周期信号的弊端,并且由于采用嵌入式设计这样使得设计的体积很 小,有利于便携和数据的实时采集。本设计中采用 STM32 系列 ARM 芯片为主控制 器,最大实时采样速率可以达到1MHz,并且采用LCD液晶屏(分辨率为 240*320)液晶显示,出波形的频率和幅度特性,得到波形的峰值和频率。 此外,本设计是基于嵌入式的数字示波器并且控制器内部集成 A/D 和 D/A,具有 小体积、高可靠性能优点,对于信号的便携式采集有着重要意义,能够满足本设计的要求。

    1. 应用分析 

本设计是采用 STM32 芯片完成数据的采样量化、A/D 转换、 波形分析、波形 显示和触摸屏操作等多部分设计,STM32 处理器是 ST 公司面向于低价位市场设计 的一种基于 ARM-M3 内核的微处理器,凭借其性价比高、性能强悍的优势,非常适 合于嵌入式开发的设计需求。本设计所采用是 STM32 芯片,具体是采用嵌入式数字 示波器主要基于最新 Cortex-M3 内核的微控制器是 STM32F103RCT6 芯片 ARM 作为当今嵌入式时代的主流的嵌入式控制器产品, 随着嵌入式技术的发 展, 对于嵌入式示波器功能也越来越强大,显示输出等功能,并且系统能够稳定的运行,采样的数据实时准确。

    1. 国内外研究现状

 

随着集成电路的发展和数字信号处理技术的采用,数字示波器已成为集显示、测量、运算、分析、记录等各种功能于一体的智能化测量仪器。数字示波器在性能上也逐渐超越模拟示波器,并有取而代之的趋势。与模拟示波器相比,数字示波器不仅具有可存储波形、体积小、功耗低,使用方便等优点,而且还具有强大的信号实时处理分析功能。因此,数字示波器的使用越来越广泛。目前我国国内自主研发的高性能数字示波器还是比较少,广泛使用的仍是国外产品。因此,有必要对高性能数字示波器进行广泛和深入研究。

    1. 设计任务和要求

(1)采用 STM32F103单片机和2.8寸液晶屏显示;

(2)能显示外部输入的波形,频率1KHz,幅度1000mv;

(3)显示的波形在 x、y方向上可以调整。

(4)LCD 显示清晰,波形无明显失真,不能有明显的残影,乱码、抖动。

    1. 方案选择

1.5.1 主控制芯片的选择

本设计是通过将输入的电压信号进行信号调理满足于ADC输入的条件并将信号输入ADC引脚进行采样并量化,在所接触过的微处理器包含有C51、DSP以及ARM处理器,首先由于C51内部资源有限,包括寄存器、Flash都不满足要求,此放弃使用C51单片机,设计中如果选择的是DSP,由于DSP对外部信号要求很高,那么设计中用到芯片就会增多,并且因为DSP造价高于ARM若在信号的采集时如果应用DSP对于信号放大芯片有很多限制,不易选取。最新的STM32是ST意法半导体公司采用的基于ARM-CortexM3内核所设计的处理器,无论是在性价比还是易操作性上都是优先选择使用的对象,由于STM32F103处理器内部集成自带的ADC并且可以直接调用内部硬件DMA能够最大减少对系统资源的占用,所以若采用ARM处理器在AD采样方面可优先考虑使用内部的ADC,减少电路设计的复杂程度。此外STM32系统资源丰富,功能性强,用于嵌入式开发也是不错的选择。因此,本设计采样STM32处理器作为控制器。本设计所使用的是STM32系列中增强型的系列,内部含有ADC、DAC以及硬件DMA那么这样就简化的外围电路的设计时就会变的简单,干扰也会比较小,并且系统时钟频率可达到72MHz,在数据的处理能力上适合于本设计相关计算使用,而且内部的Flash对与数据的存储也能够满足,由于GPIO的配置比较灵活在控制显示器件时候更加灵活方便。综上所述,本设计采用的是STM32中性能比较强的RC系列,在数据的处理能力上符合要求。

    1. 工艺要求

本课程设计使用正点原子mini版套件。

  1. 系统设计

示波器的设计分为硬件设计和软件设计两部分。示波器的控制核心采用ARM9,由于STM32芯片里有自带的AD,采样速率最高为500KSPS,分辨率为10位,供电电压为3.3V,基本上能满足本设计要求,显示部分用2.8寸TFTLCD(分率:320*240)模块。软件部分采用C语言进行设计,设计环境为Keil4。
2.1.示波器的工作原理

数字示波器的工作原理,当输入被测信号从无源探头进入到数字示波器,首先通过的是示波器的信号调理模块,由于后续的A/D转换器对其测量电压有一个规定的量程范围,所以,示波器的信号调理模块就是负责对输入信号的预先处理,通过放大器放大或者通过衰减网络衰减到一定合适的幅度,然后才进入A/D转换器。在这一阶段,微控制器可设置放大和衰减的倍数来让用户选择调整信号的幅度和位置范围。

在A/D采样模块阶段,信号实时在离散点采样,采样位置的信号电压转换为数字值,而这些数字值成为采样点。该处理过程称为信号数字化。A/D采为采样速率,表示为样值每秒(S/s)。A/D转换器最终将输入信号转换为二进制数据,传送给捕获存储区。被测的模拟信号在显示之前要通过微处理器的处理,微处理器处理信号,包括获取信号的电压峰峰值、有效值周期频率上升时间相位延迟、占空比、均方值等信息,然后调整显示运行。最后,信号通过显示器的显存显示在屏幕上

2.2硬件结构

图1:系统框图


该示波器由4部分电路构成,分别是:

  1. 输入程控放大衰减电路;</
  • 180
    点赞
  • 1080
    收藏
    觉得还不错? 一键收藏
  • 251
    评论
前言: 是德科技(NYSE:KEYS)-原安捷伦电子测量事业部,是全球电子测量技术和市场的领导者,致力于推动无线通信、模块化和软件解决方案的持续创新,专注于为客户提供卓越的测量体验。是德科技提供的电子测量仪器、系统、软件及服务广泛应用于电子设备的设计、研发、制造、安装、部署和运营。 此次,是德科技为工程师分享了包括示波器、物联网、5G通信、汽车电子等热门领域的技术知识,手把手教会工程师如何通过示波器行之有效的实现相关领域的专业测试测量。 从朋友得知ST公司在搞活动,可以申请STM32F429的探索套件,作为穷学生一枚的我不免动了心。大二上学期参加完全国大学生电子设计竞赛之后闲来无事,就自己了一个数字示波器来作为学习STM32的实战检验,前后花费了大概1个月的时间完成了初稿,之后又断断续续的完善我的示波器,并且为它编写了上位机程序和制定了通信协议。使用了前端程控模拟电路和上层电路板,uCOS-II,uCGUI,FFT,SD,上位机等等,现在因为参加老师的项目研发也就暂时闲置了下来,之前就打算在各大论坛开源,但是一直没有时间整理设计文档,恰巧现在ST公司这个活动,所以就全部开源分享给大家吧,一起学习。下一步计划重新设计模拟电路部分使用CPLD和高速AD实现更高的采样率。 硬件平台: 主控器:STM32F103ZET664K RAM 512K ROM 屏幕器:SSD1963 分辨率:480*272 16位色 触摸屏:TSC2046 模拟电路:OP-TL084 OP-U741 SW-CD4051 CMP-LM311 PWR-LM7805 -LM7905 -MC34063 -AMS1117-3.3 DRT-ULN2003 6.继电器:信号继电器 7.电源:DC +12V 注:芯片的数据手册等信息可以在集成电路查询网站搜索https://www.datasheet5.com/ 芯片询价和在线购买链接https://www.bom2buy.com/ 软件平台: 开发环境:RealView MDK-ARM uVision4.10 C编译器:ARMCC ASM编译器:ARMASM 连机器:ARMLINK 实时内核:UC/OS-II 2.9实时操作系统 GUI内核:uC/GUI 3.9图形用户接口 底层驱动:各个外设驱动程序 数字示波器功能: 波形发生器:使用STM32一路DA实现正弦,三角波,方波,白噪声输出。 任意一种波形幅值在0-3.3V任意可调、频率在一定范围任意可调、方波占空比可调。调节选项可以通过触摸屏完成设置。 SD卡存储: SD卡波形存储输出,能够对当前屏幕截屏,以JPG格式存储在SD卡上。能够存储1S内的波形数据,可以随时调用查看。 数据传输:用C#编写上位机,通过串口完成对下位机的控制。(1)实现STOP/RUN功能(2)输出波形电压、时间参数(3)控制截屏(4)控制波形发生器(5)控制完成FFT(6)波形的存储和显示 图形接口: UCGUI 水平扫速: 250 ns*、500ns、1μs、5 μs、10μs、50μs、500 μs、5ms 、50ms 垂直电压灵敏度:10mV/div, 20mV/div, 50mV/div, 0.1V/div, 0,2V/div, 0.5V/div, 1V/div,2V/div, 5V/div 被测信号的各种参数屏幕显示,包括频率、电压峰峰值等。 数字示波器性能参数: 主控: STM32F103ZET6 液晶屏: 4.3寸TFT480×272 65K彩色LCD显示屏 FSMC AD: 12位1MHz采样率 最高实时取样率: 1MSa/s 12Bits 取样缓冲器深度: 5K 垂直灵敏度: 5V,1V,500mV,200mV,100mV,50mV,20mV,10mV; 水平时基范围:2S,1S,500mS,200mS,100mS,50mS,20mS,10mS,5mS,2mS,1mS,500uS,200uS,100uS,50uS,20uS,10uS,5uS,2uS,1uS 输入阻抗: ≥1MΩ 最高输入电压: 30Vpp 耦合方式: AC/DC 触发功能: 实现自动、常规、单次触发方式 ,上升或下降边沿触发 参数计算: 频率、周期、占空比、交流峰-峰值、平均值、光标追踪显示 RUN/STOP 数字示波器实物视频演示: 实物展示: 上位机截图: 设计心得分享: 由于程序量比较大,所以在程序中我完成了大量的注释,详细的说明了具体的实现方法,其中的示波器原理和FFT原理请自己查阅相关教材。我个人认为最值得参考的就是如何制定一个效率较高的通信协议。我查阅了很多资料最后结合实际设计了一套通信协议,这套通信协议效传输速率理论最大可达16000bps,实际采用10666bps速率传输。协议的编码、解码算法的
### 回答1: STM32F103双通道示波器是一种使用STM32F103微控制器构建的示波器设备。STM32F103是意法半导体(STMicroelectronics)推出的一款高性能ARM Cortex-M3内核的微控制器。 示波器是一种用于显示电压波形的仪器,能够对电路中的信号进行捕获、处理和显示。STM32F103双通道示波器具有两个独立的通道,可以同时显示并测量两个信号。通过连接外部电路,可以将待测信号输入到示波器的通道中。 STM32F103微控制器具有较高的计算能力和处理速度,能够快速准确地采集和处理信号。它具有丰富的外设接口,可与外部传感器和设备进行通信和控制。示波器使用这些接口与外部电路连接,以读取待测信号,并将其转换为数字信号进行处理和显示。 双通道示波器具有多种功能,如时间域和频谱分析、自动测量、幅度调节等。用户可以通过图形化界面进行操作和设置,方便快捷地获取所需的信号信息。 STM32F103双通道示波器具有较小的体积和低功耗特性,适用于各种领域的电路调试和测量应用。它可以广泛应用于电子设计、教育实验、自动化控制等领域。 总之,STM32F103双通道示波器是一种基于STM32F103微控制器的示波器设备,具有功能强大、易于操作和适用范围广的特点。 ### 回答2: STM32F103双通道示波器是一种使用STM32F103微控制器制作示波器,它具有双通道输入功能。 首先,STM32F103是一款由意法半导体开发的高性能32位微控制器,它采用了ARM Cortex-M3内核,具有丰富的外设和强大的处理能力。由于其可靠性和广泛的应用领域,STM32F103成为了许多电子爱好者和工程师的首选微控制器之一。 对于双通道示波器,它通常用于测量和显示电子信号的波形。使用STM32F103微控制器,我们可以实现一个双通道示波器的功能。 该示波器的两个通道可以分别连接到待测信号的两个测量点,以获取两个信号的波形。通过使用STM32F103的ADC(模数转换器)外设,我们可以将模拟信号转换为数字信号,然后通过LCD屏幕或其他输出设备显示出来。 此外,在STM32F103微控制器上,我们可以通过使用GPIO(通用输入/输出)引脚来控制示波器的各种功能,如触发源、测量范围和采样率等。 另外,双通道示波器还可以具备其他功能,如自动测量、光标测量和存储功能。通过使用STM32F103微控制器的存储器和编程功能,我们可以实现这些功能,并将测量结果保存在存储器中以供后续分析。 综上所述,STM32F103双通道示波器是一种基于STM32F103微控制器制作的具有双通道输入功能的示波器。通过充分利用STM32F103微控制器丰富的外设和强大的处理能力,我们可以实现测量、显示和存储电子信号波形的功能。这使得它成为电子爱好者和工程师进行电路调试和信号分析的重要工具。 ### 回答3: STM32F103双通道示波器是一种基于STM32F103微控制器的示波器设计,它具有双通道输入,可以用于观测和分析电子信号波形STM32F103微控制器是意法半导体(STMicroelectronics)推出的一款低功耗、高性能的32位单片机。它具有丰富的外设资源,可以满足复杂的控制和通信需求。它由ARM Cortex-M3内核驱动,具有高速指令执行和强大的计算能力。 在双通道示波器设计中,STM32F103微控制器的两个通道被分别用于输入待测信号。这两个通道可以同时采集和显示不同的波形,从而可以方便地对信号进行比较和分析。示波器通常具有高速采样率和宽带宽,可以准确地捕捉和显示信号的细微变化。 通过使用STM32F103双通道示波器,我们可以实时显示,观察和分析电子信号的波形。它可以帮助我们识别电路故障,测试信号品质,以及进行各种电子设备的调试和验证。另外,双通道示波器还可以用于模拟信号的捕捉和分析,对于电子工程师和电子爱好者来说都是非常重要的工具。 需要注意的是,STM32F103双通道示波器设计并不单纯依赖于硬件,软件的编写和算法的设计同样重要。为了实现高质量的波形显示和分析,需要编写相应的软件程序和算法,从而充分利用STM32F103微控制器的性能和特点。 总而言之,STM32F103双通道示波器是一种基于STM32F103微控制器的设计,具有双通道输入和高性能的特点。它是电子领域中常用的工具,可以实时显示和分析电子信号的波形,对于电子工程师和电子爱好者来说非常有用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 251
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值