【ESP32】经典蓝牙搜索连接
在这个示例代码中,ESP32首先开始搜索可用的经典蓝牙设备,然后尝试连接指定的设备。一旦连接成功,您可以在透传通信的代码段中实现数据传输。最后,断开蓝牙连接。请注意,这只是一个简单的示例,实际应用中可能需要添加错误处理、连接状态监控等更复杂的逻辑。
#include <BluetoothSerial.h>
BluetoothSerial SerialBT;
void setup() {
Serial.begin(115200);
SerialBT.begin("ESP32_BT"); // 设置蓝牙名称
Serial.println("Bluetooth Device is Ready to Pair");
}
void loop() {
if (!SerialBT.connected(1000)) {
Serial.println("Scanning for devices...");
delay(1000);
int numDevices = SerialBT.getNumberOfDevices();
if (numDevices > 0) {
for (int i = 0; i < numDevices; i++) {
Serial.println(SerialBT.getDeviceName(i));
if (SerialBT.getDeviceName(i) == "YourDeviceName") {
SerialBT.connect(SerialBT.getDeviceAddress(i));
delay(1000);
if (SerialBT.connected()) {
Serial.println("Connected to device");
// 在此处添加进入透传的代码
// 例如,可以使用 SerialBT.write() 和 SerialBT.read() 进行数据传输
delay(5000); // 持续一段时间进行数据传输
SerialBT.disconnect();
Serial.println("Disconnected from device");
} else {
Serial.println("Failed to connect to device");
}
}
}
} else {
Serial.println("No devices found");
}
}
}