If statement arduino如何停止返回';其他';价值
我在arduino中使用“if else”与串行通信。我使用串行通信在“if”和“else”部分发送数据。但是我不能停止在串行通信部分发送数据。我如何提供它 比如说If statement arduino如何停止返回';其他';价值,if-statement,arduino,serial-port,communication,If Statement,Arduino,Serial Port,Communication,我在arduino中使用“if else”与串行通信。我使用串行通信在“if”和“else”部分发送数据。但是我不能停止在串行通信部分发送数据。我如何提供它 比如说 void setup() { Serial.begin(9600); pinMode(2, INPUT); } void loop() { if (Serial.avaliable() > 0) { if (digitalRead(2) == HIGH) {
void setup() {
Serial.begin(9600);
pinMode(2, INPUT);
}
void loop() {
if (Serial.avaliable() > 0) {
if (digitalRead(2) == HIGH)
{
Serial.print("Yes");
}
else {
Serial.print("No");
}
}
}
当我将数字5指定给数字引脚2时,“是”会连续通过串行端口。我知道它在“循环”部分。但是我该怎么阻止它呢?因此,当我给出相关引脚5v时,我能得到一个响应吗?(很抱歉英语不好)仅当状态正在更新时才将状态保存到并打印。这是因为循环函数被称为无限时间。 您有两个选择: 1.将代码从循环移动到设置,并让循环函数为空
void setup() {
Serial.begin(9600);
pinMode(2, INPUT);
if (Serial.avaliable() > 0) {
if (digitalRead(2) == HIGH)
{
Serial.print("Yes");
}
else {
Serial.print("No");
}
}
}
void loop() {
}
2.添加一些如下的控制逻辑
boolean alreadySent = false;
void setup() {
Serial.begin(9600);
pinMode(2, INPUT);
}
void loop() {
if (Serial.avaliable() > 0) {
if(alreadySent == false) {
if (digitalRead(2) == HIGH)
{
Serial.print("Yes");
}
else {
Serial.print("No");
}
alreadySent = true;
}
}
}