Arduino 实例(十五)processing将arduino传感器动作可视化
1 电路连接图
2 实物连接图
3 程序
int potPin = 0; // 电位器第二针脚接在模拟口0上
void setup() {
// 启动串口,波特率为9600
Serial.begin(9600);
}
void loop() {
// 读取电位器电压
int sensorValue = analogRead(potPin);
// 读取的数值以BYTE格式从串口输出
// 因为processing的serial.read()只支持0-255之间的数值,所以需要把0-1023数值除以4,缩放到0-255之间
Serial.print(sensorValue/4);
Serial.println();
delay(200);
}
4 下载processing 编译器,从如下网址中下载
5 编译器中输入程序
import processing.serial.*;
Serial serial;
int sensorValue;
void setup() {
// 设置画布大小为 305 x 200
size(305, 200); //设置305的原因是arduino ADC口输入过来的数值是0-255,加上圆形半径50,刚好305.
// 打开串口,设置波特率为9600
// 我的端口是COM3,此处请根据实际情况调整。
serial = new Serial(this, "COM3", 9600);
}
void draw() {
if ( serial.available() > 0) {
// 读取从串口产过来的Sensor数值。
sensorValue = serial.read()+25; //+25的原因是后面设置圆形半径为50,为了让圆形起点与重点贴边,就需要+25半径。
println(sensorValue);
// 在画布内画一个
background(255); // 背景为白色
fill(255,0,0); // 圆形内填充为红色
ellipse(sensorValue, 100, 50, 50);
}
}
6 Processing 可视化窗口