学习BLE蓝牙一个月总结
之前接到公司的新项目,匆匆忙地开始了蓝牙的学习,刚开始学,买了韦东山老师的蓝牙课程,和一套NRF51822的开发板(主要馋着它上面的教程),从理论+实践赶快上手(一开始也是不清楚,误打误撞有了头绪);
我是打算分享一下,这一个月来,学习成果(很多都是根据韦老师的课程),希望给一些刚接触的人一些参考,不足之处,欢迎指出,共同讨论,共同进步;
蓝牙主要有7个协议层组成,有LL层(链路管理)、HCI(主机控制器接口)、L2CAP(逻辑链路通道适配协议)、ATT(属性)、SM(安全管理)、GATT(通用属性)、GAP(通用可访问规范)
按照韦老师的分析,不同的层次可以用医院内部与其他医院传快递交流的例子理解
大堂(GAP): 按指定流程确定科室、挂号 (发现、连接)
医务室(GATT): 组合检查结果, 给出诊疗意见 (提供服务)
检验室(ATT): 提供检查结果, (提供属性)
收发室(L2CAP): 接收或派发物品, 这些物品可能是工作相关, 也可能是私人物品 (各种通道 channel)
快递公司驻点(LL): 贴快递单 (访问地址)
快递员(PHY): 送货、收货 (传输)
自己的总结:
韦老师介绍协议栈的参考文章:
协议栈介绍:http://www.wowotech.net/bluetooth/ble_stack_overview.html
开源BTStack协议栈:http://bluekitchen-gmbh.com/btstack/ports/existing_ports/#sec:windows-winusbPort
LL(链路控制层):《低功耗蓝牙开发权威指南,Robin Heydon著》第7章 、core_v5.0.pdf 《Vol 4: Host Controller Interface [Transport Layer]》
HCI(主机控制器接口):BTStack源码的三线串口(btstack-master\src\hci_transport_h5c)、五线串口(btstack-master\src\hci_transport_h4.c )和 USB(btstack-master\platform\windows\hci_transport_h2_winusb.c)
L2CAP(逻辑链路通道适配协议):官方参考文档 Vol 3: Core System Package [Host volume] Part A: Logical Link Control and Adaptation Protocol Specification
ATT(属性):规定的UUID参考,https://www.jianshu.com/p/08f76e4fd811
GATT(通用属性):https://www.cnblogs.com/hzl6255/p/4158363.html(基本是对官方文档的翻译)
GAP(通用可访问协议):官方文档 Vol 3: Core System Package [Host volume] Part C: Generic Access Profile
SM(安全管理):http://www.wowotech.net/bluetooth/ble_address_type.html
我认为,学习蓝牙,一开始可以先不用去看枯燥无味的官方文档,了解了大概的框架,对每个协议层的功能可以说个大概,做几个相关的蓝牙实验,如uart透传,心率采集实验;这样的效率更高;
之后的更深入的学习,肯定是对官方文档的细节理解和将理解兑换成代码的过程;
共勉。
学习BLE蓝牙一个月总结相关推荐
- 学习Java第一个月
翻了翻上个月的随笔,学习Java语言已经过去一个月了. 对自己这个月里的学习进程很不满意,可以用糟糕来形容.面向对象课程老师讲了一遍别的同学能懂,而我要用整整一星期才能理解它的皮毛.别人数组很快能够掌 ...
- 学习python不知不觉一个月了
开始好奇python量化投资,从网上找一些资料自学.今天发现pycharm不能用了,原来试用期一个月到了.正好今天记录这一个月的学习.
- 学习python爬虫一个月的小兄弟,是如何日赚800实现经济独立的
现在这个时代,人人开始追求做斜杠青年,多方面开展副业,赚取几份工资.有很多朋友就抓住了Python的风口,靠着Python兼职月入一万.那么学完Python,有哪些可以做的兼职呢? 一.闲暇时间,接自 ...
- 用python设计一个管理系统思路_Python大佬一个月打造的Python系统学习流程图!
对于刚开始接触Python的小伙伴来说,没有思路方法,不知道从何开始学习,把软件环境安装好后就不知所措了!接下来我给大家分享下多位大牛倾力打造的python系统学习流程,一个月才设计完的! Pytho ...
- Android BLE学习(三):编写自己的 BLE蓝牙读写工具(功能仿照nrf master control panel)
http://my.csdn.net/lidec 背景 由于nordic官方的nrf master control panel只提供了apk,很多同学学习起来都得自己摸索蓝牙的读写,项目中整理了BLE ...
- python逻辑运算的一些流程图_Python大牛历时一个月打造的Python系统学习流程图,超详细!...
对于刚开始接触Python的小伙伴来说,没有思路方法,不知道从何开始学习,把软件环境安装好后就不知所措了!接下来我给大家分享下多位大牛倾力打造的python系统学习流程,一个月才设计完的! Pytho ...
- 高博应诺培训班学习一个月总结
来到苏州已经有一个月了,在高博应诺学习也有一个月了,写点东西总结总结.首先说说老师的教学,老师的教学呢,感觉就是按部就班吧,按照安排好的四个月的课表每天都有相应的教学学习内容,一般老师每天都会布置一天 ...
- 13位Python大牛历时一个月打造的Python系统学习流程图,超详细!
对于刚开始接触Python的小伙伴来说,没有思路方法,不知道从何开始学习,把软件环境安装好后就不知所措了!接下来我给大家分享下多位大牛倾力打造的python系统学习流程,一个月才设计完的! #Pyth ...
- python逻辑流程图_Python大牛一个月打造的Python系统学习流程图!
对于刚开始接触Python的小伙伴来说,没有思路方法,不知道从何开始学习,把软件环境安装好后就不知所措了!接下来我给大家分享下多位大牛倾力打造的python系统学习流程,一个月才设计完的! Pytho ...
最新文章
- 如何重装计算机操作系统,自己如何重装笔记本电脑操作系统呢?
- python能做大型网站么_前几天有人讨论Python做的大型网站
- solidity编码规范
- axivion和astree_Axivion架构分析及验证工具
- QT_4_QpushButton的简单使用_对象树
- 怎么让电脑屏幕一直亮着_笔记本开机白屏怎么回事 笔记本开机白屏解决方法【详解】...
- 打印纸张尺寸换算_纸张尺寸与开(K)数换算
- java判断两个日期相差天数
- Java基础学习总结(173)——Java 8到Java 15新功能总结
- php7.0康乐安装_Windows服务器安装配置PHP7.0环境图文教程
- CCF201312-1 出现次数最多的数(100分)
- 如何在ppt中生成柱状图_PPT文件中怎么插入柱形图图表?
- EXCEL 制作多簇并列的堆积柱形图
- 力扣刷题 DAY_89 贪心
- (四)Ps快速选择/魔棒
- java中堆和堆栈的区别
- UVC系列5-编写Android jni代码实现控制PTZ
- 批量转换 gbk 文件到utf8 文件,不引用三方类库【 java 代码】
- springboot接口安全性_权限系统控制到按钮级别开源推荐 Spring Boot-Shiro-Vue
- NAND FLASH MT29F4G08