结构图:

对应代码:

typedef struct

{
    uint16_t handle;
    uint8_t uuid_len;
    uint8_t uuid[16];
}desprip_t;

typedef struct
{
    uint16_t handle;
    uint8_t uuid_len;
    uint8_t uuid[16];
}include_t;

typedef struct
{
    uint16_t dhandle;
    uint16_t vhandle;
    uint8_t property;
    uint8_t uuid_len;
    uint8_t uuid[16];

uint8_t nod;
    desprip_t * d;
}charact_t;

typedef struct
{
    uint16_t start;// 服务定义中第一个Attribute的Handle
    uint16_t end;// 服务定义中最后一个Attribute的Handle
    uint8_t uuid_len;
    uint8_t uuid[16];

uint8_t noi;
    include_t * i;

uint8_t noc;
    charact_t * c;
}service_t;

typedef struct
{
    uint8_t nos;//服务的数量
    service_t * s;
}server_t;

server_t server;

ble之gatt server相关推荐

  1. 蓝牙解析(part10):BLE ATT/GATT

    本部分是从各位前辈的学习经验中,总结过来的,希望对初学者有益. 从蓝牙Spec 4.0开始,推出了低功耗(BLE)规范,BLE的协议可分为Bluetooth Application和Bluetooth ...

  2. CSR8675学习笔记:新建一个GATT server

    为了让CSR867x的开发更容易,现与思度科技联合推出CSR867x学习板[淘宝链接:思度科技CSR开发板]. 技术交流QQ群号:743434463 开发板会员QQ群号:725398389(凭订单号入 ...

  3. ESP32-C3 学习测试 蓝牙 篇(四、GATT Server 示例解析)

    了解了蓝牙 GATT 相关概念,趁热打铁,分析一下官方示例 GATT Server 的应用程序架构. 目录 前言 一.GATT Server 示例分析 1.1 初始化 1.2 回调函数 gatts_e ...

  4. 低功耗蓝牙BLE对应Gatt的UUID

    参考http://blog.csdn.net/zhangjs0322/article/details/39048939  参考http://code.taobao.org/p/watch_demo/d ...

  5. BLE中GATT理解

    这篇总结下BLE中GATT相关内容. 在学习了刘权的<BLE4.0 低功耗蓝牙协议总结>一书后,对GATT有了一定了解,这里也对作者提供这么好的讲解表示感谢,下面截图均从书中摘取,如有侵权 ...

  6. BLE中GATT介绍

    本文转载自博客园 1 简介 GATT(Generic Attribute Profile),描述了一种使用ATT的服务框架 该框架定义了服务(Server)和服务属性(characteristic)的 ...

  7. NRF52832蓝牙ble多个server连接client向上位机发送数据,断开一个从机,主机多发重复数据问题(server并没有多发)

    在调试公司项目中的蓝牙生理传感器(该传感器为Peripheral,连接上Central后等待pc机端指令,指令到达将Peripheral中采集到的生理数据经由Central传输到PC端)过程中,遇到一 ...

  8. android手机上的ancs,Android BLE开发之操作IOS ANCS

    前言 之前写过两篇有关于ANCS的文章,最近一段时间老是有人问关于得到ANCS服务的问题,因为IOS ANCS不同于其他的Peripheral一样对周边所有的蓝牙设备广播自己,而是仅有连接上配对并连接 ...

  9. 如何抓包分析BLE 空口报文(GAP + GATT + LESC procedure)?

    文章目录 一.如何抓取BLE 空口报文? 二.BLE 通信报文是如何交互的? 2.1 GAP Discovery and Connection establishment procedures 2.2 ...

最新文章

  1. IE8不能正常登录网上银行的解决方法
  2. 学习《Building Applications with FME Objects》 之二 使用Sessions(会话)
  3. java类中的代码块,Java开发避坑指南!
  4. developer console 学习
  5. 运用SQLAlchemy
  6. 终端terminal的颜色配置
  7. 为什么同样是读书,有人能让自己的收益提高50倍,而你只能成为文艺的中年大叔?
  8. camera(21)---camera 客观测试 Imatest教程--曝光度测试
  9. 如何在PowerShell中连接字符串和变量?
  10. SQL Server查询优化
  11. 关于springMVC的日志管理
  12. [转]Magento2开发教程 - 如何向数据库添加新表
  13. wpewebkit在ubuntu18.04上编译配置
  14. 定了!阿里日成了“中国品牌日”! 老外说,原因都在这里了
  15. html鼠标悬停模糊,模糊效果鼠标悬停清晰
  16. YOLOV7分割新手WIN10踩坑过程
  17. BEVDet: High-Performance Multi-Camera 3D Object Detection in Bird-Eye-View
  18. 【task02】共享单车数据挖掘赛
  19. 浅谈泡妞   文 / 中国鄂霸
  20. js实现图片上一张下一张点击

热门文章

  1. 什么是 CAS 机制?
  2. 跨域问题的前后端解决方案
  3. 详解Node.js包的工程目录与NPM包管理器的使用_node.js
  4. Java 洛谷 P1149 火柴棒等式
  5. android 组件不可见,Android setVisibility(View.VISIBLE)不显示该组件
  6. java添加时间,如何通过Java中的addHours()方法添加时间
  7. linux内核红宝书,Solaris 10红宝书 9.3
  8. 云计算,大数据,5G和人工智能
  9. 数据中心机房的一些空调制冷办法详解!
  10. 成功解决TypeError int object is not iterable