LED闪烁,带串口

时间:2016-07-21 10:24:31

标签: c++ arduino serial-port arduino-uno arduino-ide

这是我的计划。这是一张Arduino草图。

int bite = 0;

void setup() {
  Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
  pinMode(3, OUTPUT);
}

void loop() {
  if (Serial.available() > 0) {
  bite = Serial.read();
  if(bite != NULL){
    for (int i=0; i < bite; i++){
      digitalWrite(3, HIGH);
      delay(1000);
      digitalWrite(3, LOW);
      delay(1000);
      }
    }
  }
}

我希望代码检查是否有串行输入值以及它是否为空或字符串,并且在接收到串行值时闪烁我的LED的次数。我的代码只是闪烁着灯光,灯光也很暗淡。它只是继续运行。它甚至发生在我向串口发送null时。

1 个答案:

答案 0 :(得分:0)

请看这个示例代码:

char incomingByte;
int led=3;

void setup() {
   Serial.begin(9600);
   pinMode(led,OUTPUT);
   Serial.println("LED control");
   Serial.println("0 = LED off)");
   Serial.println("1 = LED on");
}

void loop(){
  if(Serial.available()>0){
    incomingByte = Serial.read();
    if(incomingByte == '0'){
       digitalWrite(led,LOW);
    }
    if(incomingByte == '1'){
       digitalWrite(led,HIGH);
    }
  }
}

因此,您可能需要做的唯一事情是将int bite更改为char bite,因为Serial.read()!