给我写一段arduino代码,通过蓝牙使手机控制led灯的亮灭,led连接arduino的13号引脚。手机输入1时,led亮,输入2时led灭
时间: 2024-04-11 14:29:14 浏览: 72
Arduino R3 控制系统:通过蓝牙模块实现手机远程监控超声波传感器数据并控制LED灯
当然可以!以下是一个基本的 Arduino 代码示例,可通过蓝牙使手机控制 LED 灯的亮灭:
```cpp
#include <SoftwareSerial.h>
SoftwareSerial bluetooth(10, 11); // 设置蓝牙模块的 RX 和 TX 引脚
const int ledPin = 13; // LED 连接到 Arduino 的 13 号引脚
void setup() {
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
Serial.begin(9600);
bluetooth.begin(9600); // 设置蓝牙通信波特率为 9600
}
void loop() {
if (bluetooth.available()) {
char command = bluetooth.read(); // 读取蓝牙发送的字符
if (command == '1') {
digitalWrite(ledPin, HIGH); // 打开 LED
} else if (command == '2') {
digitalWrite(ledPin, LOW); // 关闭 LED
}
}
if (Serial.available()) {
char command = Serial.read(); // 用于调试,从串口接收命令
if (command == '1') {
digitalWrite(ledPin, HIGH); // 打开 LED
} else if (command == '2') {
digitalWrite(ledPin, LOW); // 关闭 LED
}
}
}
```
在这个例子中,我们使用了 `SoftwareSerial` 库来创建一个虚拟串口,用于与蓝牙模块进行通信。你需要在 Arduino 上连接蓝牙模块的 RX 和 TX 引脚,这里我们假设连接到了 Arduino 的 10 号和 11 号引脚。
代码中的 `setup()` 函数用于初始化引脚和串口通信。`loop()` 函数中通过检测蓝牙模块和串口是否有数据可读,来判断是否接收到了手机发送的指令。如果收到字符 '1',则将 LED 打开;如果收到字符 '2',则将 LED 关闭。
此外,为了方便调试,我们还通过串口接收命令。你可以使用串口调试工具或 Arduino IDE 的串口监视器来发送命令。
请确保你已经正确配置了蓝牙模块,并且已经在手机上安装了能够与蓝牙模块通信的应用程序。
阅读全文