开启新的征程,邀请您见证ST的蜕变

【特惠季】小马哥最新小四轴,完整资料限时特价开源!

不用变着法偷懒,智能家政机器人给你理由!

轻松打造STM32虚拟分析仪/示波器,附件包含全部的制作资料

轻松打造STM32虚拟分析仪/示波器,附件包含全部的制作资料

分享基于STM32打造的虚拟示波器,资料齐全,有兴趣可以看看,所有资料都在附件里了。

1. 分析仪功能介绍
以“低成本和高性能”为设计思想,借助虚拟仪器的概念和高速的数字信号处理算法将传统的函数发生器、示波器、数据记录仪、频率计、谱分析仪以及滤波器设计和仿真等功能高度集成、统一平台方便使用。
软件环境支持声卡、USB模块和虚拟仿真,三种模式。声卡模式,可以借助电脑的声卡来完成对音频范围内信号的分析和处理;USB模块,可以完成对带宽允许内的信号的分析和处理;其中演示模式采用软件模拟来实现所有的功能,便于教学和理论的演示。
公开软件通信协议,可以按照协议将自己的硬件加入我们的软件环境,使用所有的分析功能。
函数发生器
支持产生“正弦波”、“三角波”、“矩形波”、“上锯齿波”、“下锯齿波”、“白噪声”和“合成波形”,并提供峰值、频率、输出相位差的调整功能。
波形文件输出,可以支持“正弦波”、“三角波”、“矩形波”、“上锯齿波”、“下锯齿波”、“白噪声”和“合成波形”,提供峰值、频率、输出相位差的调整功能,支持以wav、txt、hex 和mif 文件形式的输出。

示波器/谱分析仪
可以工作在“声卡”、“USB模块”、“仿真”和“串口捕获”四种模式。支持任意多画面的同时显示,便于波形的多样分析;支持输入波形硬件和软件触发;支持输入波形的插值和等效采样;支持输入波形的“相加”、“相减”和“相乘”合成;支持对输入波形加“矩形窗”、“三角窗”、“海明窗”、“汉宁窗”和“布莱克曼窗”;支持对输入波形的滤波处理; 支持对输入波形的“李萨茹图形”、“幅频”、“相频”、“对数幅频”、“自功率谱”、“对数自功率谱”、“自相关”和“互相关”的分析。

说明:本协议中B 代表 bit,即8B=1 字节
1.重启序列
改序列用于整个下位机的重启,收到该序列后,需重新握手,其过程如下:
PC ---------->0xff,0xff,0xff,0xff,0xff,0x11,0x22,0x33,0x44,0x55
0xff,0xff,0xff,0xff,0xff,0x11,0x22,0x33,0x44,0x55<-------------CE
2.握手
握手用于上位机和下位机的相互识别过程。其过程如下:
PC ---------->XX XX XX XX XX (5 个随机数)
XX XX XX XX XX (5 个随机数) <-------------CE
PC---------->XX XX XX XX XX XX XX XX XX XX (上面10 个随机数)
版本信息 <-------------CE
PC----------> AA
(握手成功) 55 <-------------CE
版本信息(32B):
static const unsigned char banben[]=
{ ‘Y’,’i’,’X’,’i’,’n’,’g’,’d’,’i’,’a’,’n’,’z’,‘i’, 0, 0, 0, 0,
‘S’,’t’,’u‘,’-’,’0’ ‘.’, ‘1’, 0, 0, 0, 0, 0, 0, 0, 0, 0,
};
3.控制
控制协议用于PC 控制下位机工作和获得一些必要的信息。包含两种格式,第一种:“PC控制特定通道”用于 PC 控制通道 ID 指定的下位机通道;第二种:“PC 控制所有通道”用于 PC 控制下位机中支持的所有通道。例如发送 0x01,0x01,0x00 表示开启通道 0x01;发送0xff,0x12,0x00 表示要求下位机的所有通道开始采集数据,并上传。
需要说明的是,假如你有两个通道,则这两个通道的ID,默认为0x01 和0x02。PC 就用这两个ID 两控制下位机响应的通道。
3.1 控制信息格式
PC 控制特定通道:
通道ID(8B) 控制码(8B) 控制信息(32B) 附加信息
PC 控制所有通道:
通道ID (0xFF) 控制码(8B) 控制信息(32B) 附加信息
3.2 控制码
开启 控制码 01
关闭 控制码 10
通道数 控制码 02
采样位数 控制码 04
采样符号 控制码 08
采集并上传数据 控制码 12
3.3 CE 应答信息格式:
通道ID(8B) 应答码(8B) 应答信息(32B) 附加信息
成功 应答码 01
失败 应答码 10
例如:
通道数 控制码 02 回复信息: 0xFF(8B) 0x01(8B) 0x00000002(32B)
通道ID:所有通道 应答码:成功 应答信息:2 个通道
采样位数 控制码 04 回复信息: 0xFF(8B) 0x01(8B) 0x00000008(32B)
通道ID:所有通道 应答码:成功 应答信息:8 位
采样符号 控制码 08 回复信息: 0xFF(8B) 0x01(8B) 0x00000001(32B)
通道ID:所有通道 应答码:成功 应答信息:有符号 1,无符号0
4.数据传输
数据传输格式(CE---->PC)
通道数N(8B) 放大倍数 (N *32B) 偏置 (N *32B) 数据长度32B) 数据(n*8B)
下位机传输采集数据的格式,通道数N 表示这次传输中的通道个数,N 个通道ID 的表示后面的数据,各个通道的排列顺序,放大倍数,表示这次数据 N 个通道的每个的放大倍数是多少。数据长度表示后面有多少字节数据。
例如:
0x02 0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x00
两个通道 通道 0x01 放大 1 倍 通道 0x02 放大2 倍 通道 0x01 偏置
0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x00
通道 0x01 偏置 256 字节数据
0x11 0xA3 0x12 0x43………
通道 0x01 数据 通道0x02 数据 通道 0x01 数据 通道0x02 数据

附件内容截图:

电路相关文件

电路图文件
原理图.rar
描述:原理图
源代码
其他文件
相关资料.rar
描述:其余相关资料
分享到:
收藏 (38)
电子硬件助手小程序 电子硬件助手小程序

电路城电路折扣劵获取途径:

电路城7~10折折扣劵(全场通用):对本电路进行评分获取;

电路城6折折扣劵(限购≤100元电路):申请成为卖家,上传电路,审核成功后获取。

(版权归网络所有)

版权声明:电路城所有电路均源于网友上传或网上搜集,供学习和研究使用,其版权归原作者所有,对可以提供充分证据的侵权信息,本站将在确认后24小时内删除。对本电路进行投诉建议,点击投诉本电路反馈给电路城。

使用说明:直接使用附件资料或需要对资料PCB板进行打样的买家,请先核对资料的完整性,如果出现问题,电路城不承担任何经济损失!

换一批 more>>

大家都在看:

继续阅读

  • 基于PIC32MZ的1x1 20msps示波器

    我们正在设计一个基于PIC32MZ的示波器,它只有1英寸×1英寸,包括一个OLED屏幕。该项目是围绕PIC32MZ EF处理器设计的。我们以交错模式使用其内部ADC,以获得完整的20Msps。我们发现在实践中我们能够实现大约1MHz的带宽。组件:1 × 微晶片科技PIC32MZ1024EFH064(Microchip的PIC32MZ EF 32位MIPSμC)1 × Electronic Assembly GmbH EA W096064-XALG(0.96“黄色OLED显示屏)1 × Analog Devices Inc. ADG633YRUZ(三路模拟SPDT开关)2 × Texas Instruments TLV3541(100MHz轨到轨运算放大器)完成的实物图片: 系统总览: 以下是完成的PCB布局的图片:
  • 易于制作的Arduino PC示波器

    这是一种可视化模拟信号的数字设备。一个非常基本且易于制作的Arduino PC示波器。硬件组件:Arduino UNO和Genuino UNO× 1 电阻10k欧姆× 1 软件应用程序和在线服务Arduino IDE加工基础处理特征:50K样本/秒(实际上它可以达到110K,但信号会变得嘈杂)自动触发频率计数器合理准确的电压读数(取决于用于分压器的电阻的精度)可选:可选电压范围:5V,6.6V,10V,20V
  • MATLAB 数据显示/分析示波器设计

    近几个礼拜接触了 MATLAB 上的 classdef 后,就把之前写的 serialOscilloscope 改版了,并请重新改写 serial 的接收封包格式,目前没有没有丢包的问题,更新频率测试过鲍率 256000 下 400Hz 都没有问题,主要受限于 MATLAB 的鲍率与微控制器的传输速度。在波型显示的部分则改用 object 与 delete 的方法,目前不会依运行时间长而导致延迟的情况,之后会尝试加入 GUI 功能,这样对于切换不同的资料显示上也会方便许多。该MATLAB 数据显示/分析示波器设计最主要就是在 MATLAB 与微控制器之间建立一个传输的连结,让微控制器可以透过 kSerial 将资料传到 MATLAB 上做显示与分析,并且在此基础上可以扩充不同的应用象是波形显示、分析等等。使用自己写的 kSerial 也有好几个月的时间了,中间有过不少大大小小的修改,这几天对 kSerial 做了一些整理,之后打算再实现双向通讯的部分以及 GUI 的界面。更多详细介绍详见附件原文出处
    来自:测试与测量时间:2018-08-10 示波器 matlab
  • 便携式多功能数位电表硬件/软件资料开源

    本设计MicroMultimeter是一个多功能的数位电表,着重于简单、携带以及扩充性,以应付日常电路、微控制器开发除错及测量为主要目的。基本功能有电压测量、二极管测量、短路断路测量、PWM 输入输出、波形显示,同时也可以透过 USB VCP 功能,将讯号传送至 PC 端处理与储存,另外搭配其包含 UART、SPI、I2C、PWM 的扩充埠,让配件模块化,藉此可再增加更多样化的应用及延伸,象是温溼度计、转速计、无线示波器甚至是逻辑分析功能。硬件:控制器  : STM32F303C 48Pin 72MHz DSP FPU显示器  : OLED_9.6-inch ( 9.6" 96*64 RGB565 ),使用 SPI 操作外接界面 : 1 x EXPANSION ( ADC、DAC、OP、SPI、I2C、UART...)、1 x USB ( Micro )PCB 尺寸 : 32 * 32 mm设计软件 Altium Designer 16 ( PcbLib use AD PcbLib v2.1 )MicroMultimeter 的设计理念是「把实验室带回家」,不过当然不是把高频、高能等的实验带回家,而是把基本的功能与需求实现出来,着重于为控制器的开发除错,透过 MicroMultimeter 来替代电源供应器、示波器、讯号产生器、三用电表...等仪器,降低家中实验的仪器成本与门槛。 MicroMultimeter v2.0使用了几个月自制的电表后,了解了之前设计的问题与瑕疵,所以这次新版本的 MicroMultimeter v2.0为了更好的改善使用体验,只保留了一开始大致的功能构想与规划,完全重新设计电表本体、OLED 荧幕以及扩充模块,整体面积约 32x32 mm,透过 Micro USB 来供电,本体的材料成本大约台币 350 左右。这次的更新除了不同的布线与布局外,主要还更改了以下几项: 微控制器从 F103CB 更换成 F303CB,升级成 CortexM4,同时也增加了不少的功能,象是 DAC、OP、比较器...等将扩充埠缩至荧幕下方,让整体体积缩小,从原本长方形变成正方形调整扩充埠的脚位,增加了更多的 I/O,但同时也少了定流电路的数量修正了按键的设计错误的问题新增了一个面包板扩充模块的原型实物截图:实验结果图:附件资料截图:
    来自:飞行器时间:2018-07-31 示波器 便携式 电表
  • 51简单示波器源码电路图资料开源分享

    系统构成: STC12C5A60S2单片机内部AD采样;LCD12864显示波形;LM393组成迟滞比较器测量小信号频率,不需要频率显示时该部分可以省略。 为最大程度简化设计,信号通过电容直接进入单片机AD输入端,无输入时,通过调整R10使波形处于中心线位置即可。基本功能: 1、时间每格:10ms/5ms/2ma/1ms/500us/200us/100us/50us/20us。基本能显示20~20Kh信号。 2、电压每格:1V/0.5V/0.2V。 3、HOLD功能:冻结波形后,左右平移能显示共4屏(含当前屏)波形。 4、自带一路5Khz方波输出。 5、用户设置参数断电保持。该功能对电源电压稳定性要求较高,欠压或过压参数会被冲掉或不能正常开机。使用说明: 1、K6按键,坐标线样式转换:(1)散点加坐标线,该样式参考了上一届DIY大赛吴老师的示波器显示样式;(2)仅有坐标线;(3)空白。三种样式轮流切换。 2、K1按键,波形冻结与正常显示切换。波形冻结状态下,左下角显示频率的地方会显示HOLD MODE。 3、K2/K3,每格电压值调整,1V/0.5V/0.2V轮流切换。 4、K4/K5,正常显示时,调整每格时间;波形冻结后,实现波形平移。所以在波形冻结状态下是不能调节时间的!实物图:电路原理图如下:
    来自:基础电路时间:2018-05-22 51单片机 示波器 迟滞比较器
  • 示波器太昂贵,国外开源教你拥有自己的示波器!

    本资料来源于国外网站,感谢原作者的无私奉献,本人不敢藏私,用了一点时间翻译整理,与广大网友共享。在其网上看到已经有国内的发烧友制作成功,可以说明其元器件在国内都可以找到,按图施工一般错不了。另:这个制作本人还没有做过,不过在网上看到过百分之百按此电路制作的成品出售。1.序言部分示波器是任何业余电子爱好者都要使用的最重要的工具之一,但不是每个人都能买得起的。因为商业成品示波器往往过于昂贵,几乎每一个电子爱好者都想着,找到一个能自己亲手从头开始来diy的示波器。 传统的示波器(阴极射线管)是很难在家里制作的,因为它的尺寸大,手工不容易操作,又有高电压存在,等等难以处理的问题;另一种解决方案是:现代的虚拟的“PC示波器”, 有后处理和录音功能,以及降低复杂性等各种优势。然而,此解决方案通常是不可移植,昂贵的 (需要 PC) ,和危险的 (如果处理不好绝缘措施会危及计算机);第三个解决方案:通常的,现在几乎所有的商业示波器制造商都是用LCD屏幕来做数字示波器的。 因此,笔者决定使用此解决方案,并试图尽量使用商家现有的常用原器件,减少制作难度。2.功能 最大采样频率:40MSPS 最大输入频率:5MHz 最大不失真显示频率:10MHz的 输入电路带宽:20MHz 显示分辨率:240X128(总),跟踪分辨率200x125 灵敏度:40mV/div 耦合:DC 输入阻抗:10K 供电电源:单直流电源8V .. 10V,1A 增量模式 :无时间基数:1s/div,500ms/div,200ms/div 100ms/div,50ms/div / 20ms/div,10ms/div,5ms/div,2ms/div,1ms/div,500us/div,200us / DIV,100us/div,50us/div,20us/div,10us/div,5us/div,2us/div,1us/div,500ns/div 触发:数字可调 跟踪偏移:数字可调 3.电气图简短说明: 输入电路是用德州仪器(TI)的OPA2652运算放大器,和一个RC组成的低通滤波器,设置的带宽到20MHz。 此外,输入电路使用由微控制器产生的PWM信号(引脚15)的输入处理的垂直扫描移位(偏移)。 ADC转换器是一个8位的ADS830,来自德州仪器,能工作到 60MSPS, 在本设计中,ADC工作在最大为40MHz。而这个时钟是由QOS40(塑封)或QOM40(金封)振荡器生成,可通过CPLD电路编程(分频)(Xilinx公司的XC9572)。 在处理ADC高速率采集的大码流的时候,ADC的数字输出连接到一个来自IDT的高速FIFO存储器IDT7201(长达512字节),当存储器的缓冲区写满后,整个内存的内容被放到微控制器的内存,在那里对其中的样品进行进一步处理,然后显示在液晶显示屏上。 微控制器是一个Atmel的ATmega162,广为流行的AVR家族的成员。 显示屏是日立的LMG6402PFLR,但任何其他HD61830B兼容的液晶显示器都可以使用(当然应该检查引脚排列的兼容性)。 电源电路是由两个7805系列稳压块组成的,还有负电压(液晶显示器和输入电路所需的),是从三个英特锡尔的ICL7660A集成电路整合后得到的。 4 .PCB PCB是由两块独立的电路板组成:主板和键盘。 两者都是单面电路板,便于用业余方法制做。 作者认为它们可以使用转印法制作,但如果有足够的精度,任何其他方法都可以(要保证SMD零件在板上的精度)。 因为是单面板,pcb的高复杂性的设计和布线限制,少数的焊点必须要用飞线连接。飞线可以从图片上面看得明白。5.软件 微控制器的软件用成熟的C语言,使用GCC为AVR编译。 此外,在开发阶段,也使用Avrstudio 4.XX调试工具,(与JTAG ICE仿真器连接)。 微控制器可以使用任何AVR编程器编程,如STK200,PonyProg,AVR910,等。 6.固件 CPLD电路是设计用于为ADC生成时钟的,(时基由XTAL电路进行分频),也用于键盘接口 。CPLD电路必须用Xilinx ISE WebPack软件(免费)的IMPACT模块和一个简单的电路XilinxCable(很容易构建)进行编程。7.实物图
    来自:测试与测量时间:2017-07-26 示波器 便携式
  • 【国外开源】示波器之玩遍2.8“TFT液晶显示器控制板

    在电路城上一个项目设计中提及到的巴掌大小便携全屏触摸DDS 波形发生器,今天来讲讲该示波器用到的TFT液晶显示屏设计原理图和PCB以及开发应用程序源码等资料。该2.8寸TFT液晶显示器控制板基于PIC32和2.8“TFT触摸屏(ILI9320控制器,使用16位PMP)设计,PCB为4.9×4.9厘米,见“相关文件”下载其PCB工程文件,用eagle软件打开。示波器之玩遍2.8寸TFT液晶显示器控制板实物展示:示波器之玩遍2.8寸TFT液晶显示器控制板电路设计PCB板截图:示波器之玩遍2.8寸TFT液晶显示器控制板电路设计原理图、PCB
  • 参考国外AVR DDS示波器信号发生器制作成功,附全部资料

    该AVR DDS示波器信号发生器基于Atmega16 MCU设计,信号发生器有两个输出,一个是DDS信号,另一个用于高速方波信号(1 . .8MHz)。电路图及PCB我用AD6重新画了,但直到调试的时候才发现运放的正负电压接反了,也懒得改图再重新做板了,直接飞线了,很业余,大家见谅。还有一点要注意,就是要把芯片的JTAG功能禁止掉,否则LCD工作不正常。AVR DDS示波器信号发生器系统框图:这个是第一版,用洞洞版搭的,自己又做了一个木头盒子。下面的图是第二版的板子:这个是腐蚀后的板子焊好元件后的样子组装好后的样子
    来自:测试与测量时间:2017-07-11 示波器 信号发生器 dds avr
  • 变废为宝,LPC2138 电视显示屏数字示波器设计

    在大多数人眼里,现在家里的老电视都是废品了吧。今天给大家介绍的是老外利用电视液晶屏做的数字示波器。电视显示屏示数字波器基于LPC2138芯片开发,运用标准的电视机做为终端显示设备,分辨率为512 × 240 pixels。本示波器为16KHZ/秒,五个模拟输入可以被监视,同时进行。更多详细介绍详见附件内容。LPC2138 电视显示屏示数字波器实物展示:LPC2138 电视显示屏示数字波器内部结构图:附件内容截图:
    来自:测试与测量时间:2017-07-07 示波器 显示屏 lpc2138
  • 口袋式示波器BNC 适配器板(原理图、操作手册、视频课程讲解)

    口袋式示波器 BNC 适配器板概述: 该设计分享的是Digilent同轴适配器板(BNC Adapter Board),该BNC 适配器是一个简单的插件板,主要与Digilent Analog Discovery 2配合使用,您可以使用标准BNC测试终端接口与袖珍示波器探头联合使用。该BNC适配器板分别提供两个示波器通道,交流耦合和直流耦合。口袋式示波器 BNC 适配器板实物展示:同时附件内容“相关文件”分享了口袋式示波器 BNC 适配器板课程,课程大概内容如下:课程主要介绍如何快速起步上手使用Analog Discovery这款可支持LabVIEW的口袋式虚拟仪器产品。包括如何借助WaveForm软件来配置AD,以及如何利用AD各类强大的口袋仪器功能来构建和测试模拟数字电路。口袋式示波器 BNC 适配器板更多介绍如下: Each channel of the oscilloscope can be selected as AC or DC, coupled by adjusting the jumper that is located behind that channel’s BNC input connector. In addition, the two AWG channels are equipped with BNC terminations, and each channel can have either the 50-ohm or the 0-ohm termination selected. This enables the user to match the Analog Discovery’s output impedance with standard 50-ohm test leads or to be directly tied to the lead. Additionally, the adapter board takes the oscilloscope bandwidth from 9 MHz (wire harness) to 30 MHz on the Digilent Analog Discovery 2.Features: Allows the use of standard BNC-terminated test leads and probes on your Analog DiscoverySelectable AC and DC coupling to oscilloscope probesSelectable 50-ohm or 0-ohm output impedance on arbitrary waveform generator (AWG) channelsWith the Discovery BNC, the differential scope inputs of the Analog Discovery become single-ended with the negative input connected to the ground
    来自:测试与测量时间:2017-06-30 示波器 适配器 口袋式 bnc
销量
343
查看
6978
参数名 参数值
发布于 2018 年 02 月 08日
Moore8直播课堂