Serialization P5.js和Tone.js可以';t连接到Arduino
当我的arduino红色led熄灭时,我无法使用p5显示图像和播放音频。我的arduino工作正常,我只是不知道如何在红色led熄灭时弹出图像并播放音频。我的项目基本上是一个使用超声波传感器的运动传感器,如果这有帮助的话 谢谢你抽出时间 下面是我的sketch.js代码:Serialization P5.js和Tone.js可以';t连接到Arduino,serialization,arduino,p5.js,Serialization,Arduino,P5.js,当我的arduino红色led熄灭时,我无法使用p5显示图像和播放音频。我的arduino工作正常,我只是不知道如何在红色led熄灭时弹出图像并播放音频。我的项目基本上是一个使用超声波传感器的运动传感器,如果这有帮助的话 谢谢你抽出时间 下面是我的sketch.js代码: var serial; // variable to hold an instance of the serialport library var portName = '/dev/cu.usbmodem14
var serial; // variable to hold an instance of the serialport library
var portName = '/dev/cu.usbmodem1421'; // fill in your serial port name here
var synth;
function preload() {
alert = loadImage('alert.jpeg');
}
function setup() {
createCanvas(1920,1080);
serial = new p5.SerialPort(); // make a new instance of the serialport
library
serial.on('list', printList); // set a callback function for the serialport
list event
serial.on('connected', serverConnected); // callback for connecting to the
server
serial.on('open', portOpen); // callback for the port opening
serial.on('data', serialEvent); // callback for when new data arrives
serial.on('error', serialError); // callback for errors
serial.on('close', portClose); // callback for the port closing
serial.list(); // list the serial ports
serial.open(portName); // open a serial port
var synth = new Tone.Synth().toMaster();
synth.triggerAttackRelease(440, 2);
var player = new Tone.Player("IntruderAlert.mp4").toMaster();
//play as soon as the buffer is loaded
player.autostart = true;
player.playbackRate = 0.8;
}
function serverConnected() {
println('connected to server.');
}
function portOpen() {
println('the serial port opened.')
}
function serialEvent() {
}
function serialError(err) {
println('Something went wrong with the serial port. ' + err);
}
function portClose() {
println('The serial port closed.');
}
这是我的.ino代码:
#define trigPin 6<br>#define echoPin 7
#define GreenLED 11
#define YellowLED 10
#define RedLED 9
#define buzzer 3
int sound = 500;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(GreenLED, OUTPUT);
pinMode(YellowLED, OUTPUT);
pinMode(RedLED, OUTPUT);
pinMode(buzzer, OUTPUT);
}
void loop() {
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = (duration/5) / 29.1;
if (distance < 50) {
digitalWrite(GreenLED, HIGH);
}
else {
digitalWrite(GreenLED, LOW);
}
if (distance < 20) {
digitalWrite(YellowLED, HIGH);
}
else {
digitalWrite(YellowLED,LOW);
}
if (distance < 5) {
digitalWrite(RedLED, HIGH);
sound = 1000;
}
else {
digitalWrite(RedLED,LOW);
}
if (distance > 5 || distance <= 0){
Serial.println("Out of range");
noTone(buzzer);
}
else {
Serial.print(distance);
Serial.println(" cm");
tone(buzzer, sound);
}
delay(300);
}
#定义trigPin 6
#定义echoPin 7
#定义绿色11
#定义黄色10
#定义红色9
#定义蜂鸣器3
int sound=500;
无效设置(){
Serial.begin(9600);
引脚模式(trigPin,输出);
pinMode(echoPin,输入);
引脚模式(绿色LED,输出);
引脚模式(黄色LED,输出);
引脚模式(红色LED,输出);
pinMode(蜂鸣器,输出);
}
void循环(){
长时间、远距离;
数字写入(trigPin,低电平);
延迟微秒(2);
数字写入(trigPin,高);
延迟微秒(10);
数字写入(trigPin,低电平);
持续时间=脉冲强度(echoPin,高);
距离=(持续时间/5)/29.1;
如果(距离<50){
数码写入(绿色,高);
}
否则{
数码写入(绿色,低电平);
}
如果(距离<20){
数码写入(黄色,高);
}
否则{
数码写入(黄色,低电平);
}
如果(距离<5){
数字写入(红色,高);
声音=1000;
}
否则{
数字写入(红色,低电平);
}
如果(距离>5 | |距离你必须这样做,然后一步一步地接近这些步骤
你能创建一个只显示图像的草图吗?先别管Arduino,只显示一个图像。现在当用户点击屏幕时,你能显示一个图像吗
除此之外,您是否可以编写Arduino代码,在红灯熄灭时向草图发送消息
当你让它们独立工作时,你就会更容易考虑将它们组合成一个结合了这两种思想的应用程序
如果你被卡住了,请发布你被卡住的具体步骤,我们将从那里开始。祝你好运