esp8266串口控制arduinoLED灯亮灭代码
时间: 2023-10-24 21:07:03 浏览: 150
下面是一个基本的esp8266串口控制arduino LED灯亮灭的代码示例:
```
// Arduino代码
int ledPin = 13; // LED连接到13号引脚
void setup() {
Serial.begin(9600); // 初始化串口通信
pinMode(ledPin, OUTPUT); // 将LED引脚设为输出
}
void loop() {
if (Serial.available() > 0) { // 如果有数据可用
char command = Serial.read(); // 读取数据
if (command == 'H') { // 如果收到'H'
digitalWrite(ledPin, HIGH); // 点亮LED
Serial.println("LED已点亮");
} else if (command == 'L') { // 如果收到'L'
digitalWrite(ledPin, LOW); // 关闭LED
Serial.println("LED已关闭");
}
}
}
// ESP8266代码
// 需要使用SoftwareSerial库进行串口通信
#include <SoftwareSerial.h>
SoftwareSerial espSerial(2, 3); // RX, TX
void setup() {
Serial.begin(9600); // 初始化本地串口通信
espSerial.begin(9600); // 初始化ESP8266串口通信
}
void loop() {
if (Serial.available() > 0) { // 如果有数据可用
char command = Serial.read(); // 读取数据
espSerial.write(command); // 将数据发送到ESP8266
}
if (espSerial.available() > 0) { // 如果有数据可用
char response = espSerial.read(); // 读取数据
Serial.write(response); // 将数据发送到本地串口
}
}
```
在这个例子中,当Arduino接收到'H'时,它将点亮LED并向本地串口发送一条消息。当Arduino接收到'L'时,它将关闭LED并向本地串口发送一条消息。
ESP8266将收到的数据发送到连接的Arduino板子,它从本地串口读取数据并将其发送到ESP8266。ESP8266将接收到的数据发送回连接的Arduino板子,并从ESP8266读取数据并将其发送回本地串口。
通过这种方式,您可以使用ESP8266通过串口控制连接的Arduino板子上的LED灯。
阅读全文