1、下载processing和安装java,自行百度方法,字体选择MONO_SPACE可以设置中文注释
2、串口发源捍悉刈送数据的格式是以空格隔开arduino示例如下://这里是我自己的mpu6050库,你们参考数赍铈于脏据格式就好。#include "Mpu6050_Kalman.h"void setup() { // put your setup code here, to run once:init_mpu6050();Serial.begin(9600);}void loop() { // put your main code here, to run repeatedly: getXYZ_mpu6050(1.05,1,1.0); //好 Serial.print(agx); Serial.print(" "); Serial.print(agy); Serial.print(" "); Serial.println(agz); delay(50); }
3、processing代码如下:import processing.serial.*;Serial myPort;int xPos 租涫疼迟= 1;char classflag='A'; //做什么样的图形int linenum; //判断有几条线段float[] SerialData= new float[20],SerialData_last= new float[20];void setup () { size(1200, 600); //在这里定义了height和width println(Serial.list()); myPort = new Serial(this, Serial.list()[3], 9600);//选择串口 myPort.bufferUntil('\n'); background(0); textSize(20); textAlign(CENTER);}void draw () { text("classflag:",48,20); text(" ",100,20); text(classflag,100,20); text("linenum:",48,40); text(linenum,100,40); text("color:yellow blue white",110,80); switch(classflag) { case 'A': for(int i=0;i<linenum;i++) { choose(i); line(xPos,height,xPos,height-SerialData[i]); } break; case 'B': for(int i=0;i<linenum;i++) { strokeWeight(1); choose(i); line(xPos,height-SerialData[i],xPos,height-SerialData_last[i]); } break; case 'C': for(int i=0;i<linenum;i++) { strokeWeight(8); choose(i); point(xPos,height-SerialData[i]); } break; } if (xPos >= width) { xPos = 0; background(0); } else { xPos++; }}void choose(int Color)//选择线或者点的颜色{ switch(Color) { case 1: stroke(226, 190, 137);//黄 break; case 2: stroke(7, 16, 240);//蓝色 break; case 3: stroke(255, 255, 255);//白色 break; default: stroke(255, 255, 255);//白色 break; }}//串口事件void serialEvent (Serial myPort) { String inString = myPort.readStringUntil('\n'); if (inString != null) { SerialData_last=SerialData; inString = trim(inString); SerialData=float(split(inString,' ')); linenum=SerialData.length; println(" "); for(int i=0;i<SerialData.length;i++) { println(SerialData[i]); SerialData[i]= map(SerialData[i], -180, 180, 0, height); } println(" "); } }//按键事件,选择显示的类型void keyPressed() { switch(key) { case 'A': classflag='A'; break; case 'B': classflag='B'; break; case 'C': classflag='C'; break; } background(0); xPos=0;}
4、放一张图