esp32c3 低功耗BLE代码示例
时间: 2024-05-05 22:13:53 浏览: 14
ESP32-C3是一款低功耗的蓝牙模块,适用于物联网和无线通信应用。它基于ESP32系列芯片,具有较低的功耗和较高的性能。下面是一个ESP32-C3低功耗BLE代码示例:
```c
#include <BLEDevice.h>
#include <BLEUtils.h>
#include <BLEServer.h>
#define SERVICE_UUID "4fafc201-1fb5-459e-8fcc-c5c9c331914b"
#define CHARACTERISTIC_UUID "beb5483e-36e1-4688-b7f5-ea07361b26a8"
class MyCallbacks: public BLECharacteristicCallbacks {
void onWrite(BLECharacteristic *pCharacteristic) {
std::string value = pCharacteristic->getValue();
if (value.length() > 0) {
Serial.println("Received Value: ");
for (int i = 0; i < value.length(); i++) {
Serial.print(value[i]);
}
Serial.println();
}
}
};
void setup() {
Serial.begin(115200);
BLEDevice::init("ESP32-C3");
BLEServer *pServer = BLEDevice::createServer();
BLEService *pService = pServer->createService(SERVICE_UUID);
BLECharacteristic *pCharacteristic = pService->createCharacteristic(
CHARACTERISTIC_UUID,
BLECharacteristic::PROPERTY_READ |
BLECharacteristic::PROPERTY_WRITE
);
pCharacteristic->setCallbacks(new MyCallbacks());
pService->start();
BLEAdvertising *pAdvertising = pServer->getAdvertising();
pAdvertising->start();
}
void loop() {
// 主循环中可以添加其他逻辑
}
```
这个示例代码创建了一个名为"ESP32-C3"的BLE设备,并提供了一个可读写的特征。当有数据写入特征时,会触发回调函数`onWrite`,并将接收到的数据打印出来。