当前位置: 首页 > news >正文

基于 Arduino 编写 ESP32 BLE Server 例程

测试代码如下:

  • 支持 BLE 连接
  • 支持 BLE 数据传输
#include <BLEDevice.h>
#include <BLEServer.h>
#include <BLEUtils.h>namespace BLEServerDemo {BLEServer *pServer = nullptr;
BLEService *pService = nullptr;
BLECharacteristic *pCharacteristic = nullptr;bool deviceConnected = false;class ServerCallbacks : public BLEServerCallbacks {void onConnect(BLEServer *pServer) {deviceConnected = true;Serial.println("BLE connected");}void onDisconnect(BLEServer *pServer) {deviceConnected = false;Serial.println("BLE disconnected");pServer->startAdvertising();  // Restart advertising after disconnection}
};class CharacteristicCallbacks : public BLECharacteristicCallbacks {void onWrite(BLECharacteristic *pCharacteristic) {std::string value = pCharacteristic->getValue();Serial.print("Received Value: ");for (int i = 0; i < value.length(); i++) {// Serial.print(value[i]);Serial.print(value[i],HEX);Serial.print(" ");}Serial.println();}
};void initBLE() {BLEDevice::init("MyESP32BLEServer");pServer = BLEDevice::createServer();pServer->setCallbacks(new ServerCallbacks());pService = pServer->createService(BLEUUID("0000fff0-0000-1000-8000-00805f9b34fb"));pCharacteristic = pService->createCharacteristic(BLEUUID("0000fff1-0000-1000-8000-00805f9b34fb"),BLECharacteristic::PROPERTY_READ | BLECharacteristic::PROPERTY_WRITE);pCharacteristic->setCallbacks(new CharacteristicCallbacks());pService->start();pServer->getAdvertising()->start();Serial.println("Waiting for client connection...");
}void handleBLE() {if (deviceConnected) {// Handle other tasks as needed}
}}  // namespace BLEServerDemovoid setup() {Serial.begin(115200);BLEServerDemo::initBLE();
}void loop() {BLEServerDemo::handleBLE();
}
http://www.lryc.cn/news/123967.html

相关文章:

  • Mac环境变量配置
  • 使用FTP文件传输协议的潜在风险
  • Jtti:windows虚拟内存最小值太低如何解决
  • 基于微服务+Java+Spring Cloud +Vue+UniApp +MySql实现的智慧工地云平台源码
  • Unity框架学习--4 Mono管理器
  • Unity zSpace 开发
  • SQL注入是什么?如何防范?
  • Spring kafka源码分析——消息是如何消费的
  • 汽车电子的发展对国产32位MCU的影响
  • Vue 目录结构 vite 项目
  • TB/TM-商品详情原数据(APP)
  • 小米发布会:雷军成长故事与创新壮举,AI大模型技术引领未来,雷军探索之路之从创业波折到小米AI领航,成就高端化传奇!
  • 春秋云镜 CVE-2021-41947
  • 面试题-React(一):React是什么?它的主要特点是什么?
  • 算法笔试 java 输入输出练习
  • 5.内置构造函数
  • DG故障切换及DG Broker失效配置清理
  • 地毯(暴力+差分两种方法)
  • 最新智能AI系统+ChatGPT源码搭建部署详细教程+知识库+附程序源码
  • 记一次Kafka重复消费解决过程
  • 人工智能在公检系统中的应用:校对软件助推刑事侦查工作
  • OSI七层模型和TCP/IP四层模型
  • vant金额输入框
  • uni-app base64转图片
  • 【webpack】自定义loader
  • 【kubernetes】在k8s集群环境上,部署kubesphere
  • STM32 F103C8T6学习笔记4:时钟树、滴答计时器、定时器定时中断
  • 代理模式【Proxy Pattern】
  • Oracle切割字符串的方法,SQL语句完成。
  • Https、CA证书、数字签名