Bluetooth低功耗(BLE)多个特征值
创始人
2024-12-23 03:00:24
0次

在BLE设备和BLE中心设备之间建立连接后,可以使用BLE协议中的多特征值来进行数据交换。多特征值允许在同一连接中发送和接收多个数据。以下是使用多特征值的示例代码:

  1. 创建一个可以存储多个特征值的服务
static BLEService* pService = new BLEService(UUID_SERVICE);
static BLECharacteristic* pChar1 = new BLECharacteristic(UUID_CHAR1, BLECharacteristic::PROPERTY_READ | BLECharacteristic::PROPERTY_WRITE);
static BLECharacteristic* pChar2 = new BLECharacteristic(UUID_CHAR2, BLECharacteristic::PROPERTY_READ | BLECharacteristic::PROPERTY_NOTIFY);
static BLECharacteristic* pChar3 = new BLECharacteristic(UUID_CHAR3, BLECharacteristic::PROPERTY_WRITE);

pService->addCharacteristic(pChar1);
pService->addCharacteristic(pChar2);
pService->addCharacteristic(pChar3);
  1. 在连接成功后,向特征值中添加数据或从特征值中读取数据
void onConnect(BLEServer *pServer) {
  BLECharacteristic* pCharacteristic = pService->getCharacteristic(UUID_CHAR1);
  pCharacteristic->setValue("Hello");
  
  pCharacteristic = pService->getCharacteristic(UUID_CHAR3);
  uint8_t data[2] = {0x01, 0x02};
  pCharacteristic->setValue(data, sizeof(data));
}

void onRead(BLECharacteristic *pCharacteristic) {
  std::string value = pCharacteristic->getValue();
  Serial.println(value.c_str());
}

void onWrite(BLECharacteristic *pCharacteristic) {
  uint8_t data[10];
  int len = pCharacteristic->getValue(data, sizeof(data));
  Serial.print("Received data:");
  for (int i = 0; i < len; i++) {
    Serial.print(data[i]);
  }
}
  1. 启用通知以接收其他设备发送到特征值的数据
void startNotify(BLEServer* pServer) {
  BLECharacteristic* pCharacteristic = pService->getCharacteristic(UUID_CHAR2);
  pCharacteristic->registerForNotify(onNotify);

相关内容

热门资讯

黑科技外挂!樱花之盛(外挂),... 黑科技外挂!樱花之盛(外挂),宁波游戏大厅原来是有透视挂脚本(有辅助挂教学)1)宁波游戏大厅免费钻石...
黑科技辅助!巴西(辅助),宝剑... 黑科技辅助!巴西(辅助),宝剑联盟原来存在有透视挂插件(竟然有辅助挂)1、黑科技辅助!巴西(辅助),...
黑科技开挂!翻三皮(开挂),星... 黑科技开挂!翻三皮(开挂),星星娱乐原来是有透视挂app(真的有辅助挂)1、游戏颠覆性的策略玩法,独...
黑科技透视器!天使大厅(透视器... 黑科技透视器!天使大厅(透视器),休闲娱乐果然真的是有透视挂方法(有辅助挂方针)1、打开软件启动之后...
黑科技辅助!人海大厅(辅助),... 黑科技辅助!人海大厅(辅助),一起斗地主竟然存在有透视挂教程(有辅助挂教学)1、玩家可以在一起斗地主...
黑科技透视器!科乐填大坑(透视... 黑科技透视器!科乐填大坑(透视器),金杯竞技切实是有透视挂软件(有辅助挂头条)1、进入到科乐填大坑是...
黑科技外挂!愉悦(外挂),新二... 黑科技外挂!愉悦(外挂),新二号原来真的有透视挂app(竟然有辅助挂)1、许多玩家不知道新二号辅助怎...
黑科技透视器!达人圈(透视器)... 黑科技透视器!达人圈(透视器),亿彩好像存在有透视挂方法(有辅助挂方式)1、该软件可以轻松地帮助玩家...
黑科技外挂!多乐跑胡子(外挂)... 黑科技外挂!多乐跑胡子(外挂),阿拉斗牌果然存在有透视挂攻略(有辅助挂细节)进入游戏-大厅左侧-新手...
黑科技辅助!玉海楼茶苑(辅助)... 黑科技辅助!玉海楼茶苑(辅助),浙江游戏大厅本来是真的有透视挂攻略(有辅助挂总结)1.浙江游戏大厅 ...