2.通过串口控制单片机,电脑输入1,led闪烁一下,时长一秒,并返回:-1; 输入2,闪烁两下,时长两秒,返回:-2
时间: 2024-06-12 21:03:24 浏览: 131
以下是基于Arduino的代码实现:
```
int led = 13; // 将LED连接到数字引脚13
int duration = 0; // 闪烁时长
void setup() {
Serial.begin(9600); // 初始化串口通信
pinMode(led, OUTPUT); // 将LED引脚设为输出模式
}
void loop() {
if (Serial.available() > 0) { // 如果串口中有输入数据
int input = Serial.read(); // 读取输入数据
if (input == '1') { // 如果输入为1
digitalWrite(led, HIGH); // 点亮LED
delay(1000); // 延时1秒
digitalWrite(led, LOW); // 关闭LED
duration = 1; // 设置闪烁时长为1秒
Serial.println("-1"); // 返回-1
} else if (input == '2') { // 如果输入为2
digitalWrite(led, HIGH); // 点亮LED
delay(2000); // 延时2秒
digitalWrite(led, LOW); // 关闭LED
duration = 2; // 设置闪烁时长为2秒
Serial.println("-2"); // 返回-2
}
}
}
```
当电脑向Arduino发送1或2时,Arduino会读取串口中的数据,并根据输入值控制LED的闪烁时长和次数,并通过串口返回相应的数值。
阅读全文