Arduino 串口绘图仪(Serial Plotter)的使用 您所在的位置:网站首页 绘图仪的用途 Arduino 串口绘图仪(Serial Plotter)的使用

Arduino 串口绘图仪(Serial Plotter)的使用

2023-10-08 06:06| 来源: 网络整理| 查看: 265

Arduino IDE 2 串口绘图仪(Serial Plotter)

串口绘图仪的规则

串口绘图仪实际上是从预设的串口获取值并将其绘制在xy轴图。X轴可以说是一个时间实例,被等分成500份,每获取到一组数据向左滑动一个单位,读取数据的速度起快,滑动就越快。 Y轴代表来自串口的值,可以是单个也可以是一组 。在读取串口数据时遇到"\n"(换行或通过Serial.println(“”))则表示切换到下一行数据,同行数据的不同组的数据通过(,)间隔,像下面的形式。

100, 200, 300 100, 200, 300 100, 200, 300 100,200, 300

可以考虑成一个二维数组。这个输出在绘图仪中可以绘制出三条线。

image-20220106113028925

image-20220106112737536

## 显示多条曲线

在代码中实现一行数据的拼结

方法一

先拼结数据,一次打印。

String temp = ""; temp.concat(a); temp.concat(","); temp.concat(b); Serial.println(temp); 方法二

直接打印,数据间隔使用逗号(,),最后使用println打印数据。

Serial.print(a); Serial.print(","); Serial.println(b); 方法三

封装函数,假设现在只打印整型(int)。

void plotterPrint(int val, boolen isEnd = false) { Serial.print(val); if (isEnd) }{ Serial.println(""); } else { Serial.print(",") } } ## 调试 打印直线

打印三条直线

void setup() { // put your setup code here, to run once: Serial.begin(115200); } void print_1() { Serial.print(100); } void print_2() { Serial.print(200); } void print_3() { Serial.print(300); } void loop() { // put your main code here, to run repeatedly: print_1(); Serial.print(","); print_2(); Serial.print(","); print_3(); Serial.print("\n"); // Serial.println(""); delay(100); } 画线的速度能过delay()来控制;Serial.println()最好放在loop的最后;如果两个Serial.print()之间不添加逗号(,),绘图仪上会出现一个两个数直接拼结起来的数据。 打印三角函数 double divVal = 0.0; void setup() { // put your setup code here, to run once: Serial.begin(115200); } void print_1() { Serial.print(10 + cos(divVal)); } void print_2() { Serial.print(20 + sin(divVal)); } void print_3() { Serial.print(30 + cos(divVal + PI)); } void loop() { // put your main code here, to run repeatedly: print_1(); Serial.print(","); print_2(); Serial.print(","); print_3(); Serial.print("\n"); divVal += 2 * PI / 16.0; delay(100); }

image-20220106114226430



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有