文章目录

  • 前言
  • 一、虚拟示波器是什么?
  • 二、去哪里下载
    • 1、下载源码
    • 2、解压
  • 三、如何移植到单片机
    • 1.添加.c,.h文件
    • 2、替换串口字节发送函数,如send_char(databuf[i]);
    • 3、调用波形显示函数
    • 4、波形测试
  • 总结

前言

“本虚拟示波器是作者花少利用近两个月开发的一款高速、精致的虚拟示波器”,具有实时显示波形,还有CRC校验,延时非常低,主要是高速!重点。用过都说好。
希望大家多多支持花少。

一、虚拟示波器是什么?

顾名思义,虚拟示波器是虚拟的,通过以数据以波形化,有时候数据并不是很直观,特别是需要通过波形来调参数的时候,虚拟示波器尤为重要。

二、去哪里下载

这个虚拟示波器在花少的Github是开源的,在Github右上角搜索虚拟示波器,有很多,我们找到基于MFC多线程示波器。点击下载到zip,解压。
Github的镜像地址https://hub.fastgit.org/

1、下载源码

点击进去我们可以下载源码,点击右上角code

2、解压

解压后我们可以看到那个绿色的花少出品的可执行文件,就可以直接打开

三、如何移植到单片机

我们可以看一下花少的提示,把.c和.h添加到工程文件,这里我用的是标准库。即添加到HARDWARE
环境:keil5 uvsion
单片机:STM32F103ZET6,标准库

1.添加.c,.h文件


2、替换串口字节发送函数,如send_char(databuf[i]);

#include “outputdata.h”
#include <stdlib.h>
/使用说明***************
本协议与“Visual Scope”软件协议兼容,用过的可以直接用原来的下位机协议即可
首次使用时:
1.将“outputdata.c”和“outputdata.h”添加到你的工程中
2.在“outputdata.c”中包含你原程序的串口发送函数头文件
3.将uart_putchar(databuf[i]);语句替换为你的串口字节发送函数,如send_char(databuf[i]);
4.在你的程序需要发送波形数据的.c文件中添加包含:#include “outputdata.h”,并在本文件中调用函数OutPut_Data(x,y,z,w);
其中形参x,y,z,w就是传入四个short int 16位数据,分别对应通道1,2,3,4
************************************************************************/
#include “usart.h”
//此处添加你的串口头文件包含!!!!!!!!!!!!

STM32F103的发送字节函数是putchar,直接替换就可以了。

3、调用波形显示函数

修改完后,在main.c文件中 #include “outputdata.h”
OutPut_Data(int x,int y,int z,int w)//主程序调用函数
调用函数即可。

#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "beep.h"
#include "key.h"
#include "math.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
#include "outputdata.h"//串口通信实验 -库函数版本#define PI 3.1415926
#define Point_Num 64
int sinnum,trianglenum,squarenum;
uint16_t SineWave_Point[Point_Num];
uint16_t Triangle_Point[Point_Num];//16位的无符号存放三角波数据
uint16_t Square_Point[Point_Num];//16位的无符号存放方波数据
void SineWave_Data( uint16_t cycle ,uint16_t D[])
{u16 i;for( i=0;i<cycle;i++){D[i]=2048*(sin((2.0*PI*i)/(Point_Num-1))+1);}
}void Triangle_Data(uint16_t cycle ,uint16_t *D)
{u16 i;for( i=0;i<cycle;i++){if(i<=cycle/2){D[i]=i*(4096.0/(cycle/2));}elseD[i]=i*(-4096.0/(cycle/2))+2*4096;  }
}
void Square_Data(uint16_t cycle ,uint16_t *D)
{u16 i;for( i=0;i<cycle;i++){if(i<=cycle/2){D[i]=0;}elseD[i]=4095;  }
}
int main(void)
{ u8 j=255;u8 i=0;NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2delay_init(168);       //延时初始化 uart_init(115200);  //串口初始化波特率为115200LED_Init();                //初始化与LED连接的硬件接口  SineWave_Data(Point_Num ,SineWave_Point); //Triangle_Data(Point_Num ,Triangle_Point); //Square_Data(Point_Num ,Square_Point); //while(1){//printf( "T%dP\r\n", SineWave_Point[i]);sinnum=SineWave_Point[i];trianglenum=Triangle_Point[i];squarenum=Square_Point[i];OutPut_Data(sinnum,trianglenum,squarenum,0);delay_ms(10);i++;if(i==Point_Num-1){i=0;}}}

4、波形测试

这里产生正弦波,方波,三角波, delay_ms(10);每10ms画一次,因为程序设置64个点,我数了的额,64个点,自动连线

总结

再次感谢大佬

推荐一款好用的串口波形显示助手----虚拟示波器相关推荐

  1. windows串口调试linux工具,推荐一款好用的串口调试软件PuTTY

    原标题:推荐一款好用的串口调试软件PuTTY PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连接软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平 ...

  2. 测试基于STM32的ADIS16405评估板,并在匿名四轴上实时显示3轴陀螺仪+3轴加速度计+3轴磁力计 波形。本文最后还公开一个基于C# 的串口波形显示客户端源码。

    标题:测试基于STM32的ADIS16405评估板,并在匿名四轴上实时显示3轴陀螺仪+3轴加速度计+3轴磁力计 波形.本文最好还公开一个基于C# 的串口波形显示客户端源码. 这里附上该评估板的原理图和 ...

  3. 山外调试助手虚拟示波器串口通信协议

    通信协议格式为[0x03] [0xfc][数据......][0xfc][0x03],完成一次波形发送. 部分代码: void usart1_send_char(u8 c) {     while(( ...

  4. 【QT上位机设计——串口收发和波形显示】

    一.简介 最近粗略地学习了一下上位机的编程,大致了解了底层硬件与上位机之间的串口通信逻辑,TCP通信和UDP通信暂时还未学习. 本次把学习思路分享一下,主要学习视频是b站上北京迅为的QT教学视频,我的 ...

  5. linux串口文件传输助手怎么用,SerialTool: SerialTool是一个实用的串口调试工具,这款工具支持串口调试助手、波形显示和文件传输等功能...

    SerialTool A practical Serial-Port/TCP/UDP debugging tool. 简介 SerialTool是一个跨平台的串口/网络调试工具.此工具支持串口调试助手 ...

  6. 向 Web 开发人员推荐35款 JavaScript 图形图表库

    图表是数据图形化的表示,通过形象的图表来展示数据,比如条形图,折线图,饼图等等.可视化图表可以帮助开发者更容易理解复杂的数据,提高生产的效率和 Web 应用和项目的可靠性. 在这篇文章中,我们收集了3 ...

  7. 电脑软件:推荐八款提高工作效率的软件,值得收藏!

    今天小编给大家推荐八款提高工作效率的软件,欢迎下载试一试! 1.火绒杀毒软件 从360到腾讯管家,从瑞星到金山毒霸,走过了xp与WIN7到现在的win10,见过了无数的杀毒软件,此时我不得不推荐一下火 ...

  8. 前端工具:推荐几款UI设计师好用的设计软件

    今天小编给大家推荐几款UI设计师好用的设计软件,感兴趣的朋友可以下载试试! 1. Pixso Pixso是一款综合设计能力超强的一个设计平台,它包含了原型.设计.交付.协作.资源管理一体化等众多的功能 ...

  9. 软件:推荐五款超级好用的电脑小众软件,值得收藏!

    今天给大家推荐五款超级好用的电脑小众软件,希望对大家能够有所帮助! 1.HoneyView 看图神器 HoneyView 看图软件,打开速度非常快,一般电脑保存的图片都能用它打开.目前只有Window ...

最新文章

  1. android逆向分析概述_Android存储概述
  2. C语言必知必会-strtok赞歌
  3. 世界上最稳定的系统——维稳就靠它了!
  4. [BZOJ 2734] 集合选数
  5. 数据库主从和主备部署介绍
  6. Error - Found cycle in the ListNode
  7. alloca函数的风险_alloca的函数范围中的goto是否有效?
  8. 孙宇晨终于和巴菲特共进晚餐 还赠送数字币作为见面礼
  9. 开源 Asp.net mvc 用户中心(nUserCenter) 产品机会评估
  10. 学习笔记_vnpy实战培训day03
  11. bundler for jekyll
  12. ai怎么画路线_AI换脸的本质是把颜值和表情分开
  13. 有效管理云计算成本的多个措施
  14. 反向传播算法(backpropagation)
  15. 笔记本打印时出现打印机出现异常配置问题_win10系统打印机出现administrator无法打印如何解决...
  16. 快车解密php,PHP迅雷、快车、旋风下载专用链转换代码
  17. MYSQL、JDBC
  18. C语言第六章函数实验报告,第六章实验报告
  19. 刚开始学Python
  20. win7系统备份还原软件_非常好用的系统备份和还原的软件,OneKey一键还原工具

热门文章

  1. 微信网页分享时不显示描述只显示地址的解决方法
  2. UML(二)component 组件图
  3. DM7达梦数据库备份与还原说明
  4. ss5 mysql radius_SS5+MYSQL
  5. OpenGL着色器中的坐标系
  6. STM32 0.96寸OLED IIC通信
  7. 【学习日志】2022.08.18 int.TryParse C# 动态数组 泛型 静态动态方法
  8. Lucene sort 排序
  9. 普罗米修斯Prometheus监控神器
  10. 证照竟然可以这样管理!后悔没有早知道