没有合适的资源?快使用搜索试试~ 我知道了~
BLE协议
资源推荐
资源详情
资源评论
第 01 节_生活中的实例_医院的结构
参考文章:
蓝牙协议分析(3)_蓝牙低功耗(BLE)协议栈介绍
http://www.wowotech.net/bluetooth/ble_stack_overview.html
大堂: 按指定流程确定科室、挂号 (发现、连接)
医务室: 组合检查结果, 给出诊疗意见 (提供服务)
检验室: 提供检查结果, (提供属性)
收发室: 接收或派发物品, 这些物品可能是工作相关, 也可能是私人物品 (各种通道
channel)
快递公司驻点: 贴快递单 (访问地址)
快递员: 送货、收货 (传输)
小城缺乏医生,那里的人生病全靠硬扛。
张三年少时立志学医,为全城百姓看病。
张三天生聪明,他想学会所有医术:眼科、牙科、外科、内科、...,
眼科又分为近视与矫正科、小儿科、白内障科、……
牙科又分为种植科、正畸科、……
每一个医科里,都可以细分出更多的专业。
这是个疯狂的计划,医学院的所有教授们都知道他终将失败。
张三每天、每时、每分都在学习,终于精疲力尽。
他失去了希望:我真的不能为所有人、看所有病吗?
教授们决定帮这个有着赤子之心的年轻人,
告诉他:你只需要掌握基本的医学常识,我们远程帮你!
忘了告诉你们,张三家财万贯。
他很快回乡建了一个医院,名为“张三远程诊疗医院”:
1. 在大堂里, (按程序确定科室、挂号)
贴着各个科室介绍,好像这小医院有很多科室似的。
人们来挂号时,可以选择某某科(它就对应医学院的某某楼)。
2. 在医务室里,
(医生知道怎么跟教授们联系、知道教授们提供什么帮助、综合查看各项检查单)
只有张三一人。
病人进来一看,顿觉上当,大声嚷嚷:
全医院只有你一个医生,你骗鬼呢?
张三也不生气,微微一笑:
哦,你要看眼科,我稍懂。
你这是白内障,
我知道医学院眼科中心的白内障科王教授是专家,
请他远程指导,你就放心吧。
来,睁开眼让我看看。
嗯,挺严重,
抽血验一下吧,
哦,还要滴泪验一下。
3. 检验室:(执行检验操作,得到各项结果)
也只有一人,设备也有限。
她唠叨道:
张医生送来一瓶血和一瓶泪,
我们这只有验血的机器啊,
眼泪得送到医学院眼科中心的检验科去,
我再问他们,把结果告诉张医生,
收发室的师傅,来一下。
一般来说,
对方也就是告诉我什么血红蛋白、抗体、抗原的,
每一项分开我都知道,
合起来是什么意思,我就不明白了,
得像张医生那样能综合起来、才能看病。
得了,
我得把每一项上报给张医生。
4. 收发室:(收发室的人是医院员工,可以在医院内部运送;让快递员在医院内部走动就不
合适)
上头经常让我收东西、寄东西,
有时时候是血、有时候是泪,
我哪懂这些,
只管放入冷藏盒,交给快递部就可以了。
别以为我只是收发这些要化验的样品,
上面的领导们,要跟别的医院联络感情时,
比如寄寄明信片、土特产时,
也都要靠我先跟对方收发室沟通,
可别把这些明信片、土特产拿去化验了。
(医院内部)
--------------------------------------------------
(医院外部)
5. 快递公司在医院的驻点:(贴快递单然后交给快递员,或 收快递后交给收发室)
我们送的东西啊,
可能是给医学院的眼科楼,也可能是给牙科楼,
我们得在东西上贴地址,到时对方快递部到车上自取。
比如说收发室说这瓶眼泪是给王教授的,
那我知道他在眼科楼,就贴"眼科楼"。
有时候我们得知道对方上不上班啊,
所以还得放个询问的牌子在车子上,
如果上班的话他们看到牌子就会告诉我。
太多数时候他们会主动告诉我,
他们上班时也会放个牌子在车上,
我看到后就知道了。
6. 快递员:(发货、收货)
我只是开车的,
天天在兜圈子,每出一次车就是兜一次圈子。
兜圈子的意思,就是这些医院、医学楼,
每出一次车都要路过。
他们的快递员,
就在门口等着我的车,
从车上拿他们的货就可以了。
货是什么?我不知道,也不在乎。
货给谁?我不知道,也不在乎,他们自取。
送达最重要!
道路千万条,
这条不通换一条。
第 02 节_BLE 协议各层的形象化理解
参考文章:
nordicN51822 ble_app_hrs 属性服务器 示例 句柄分布
https://blog.csdn.net/caodaxia/article/details/78567996
Host(纯软件的概念) (跟医院的功能简单类比)
GAP: Generic Access Profile, 通用访问规范 (大堂: 按指定流程确定科室、挂号 <==> 发现设备、连接设备)
GATT: Generic Attribute Profile, 通用属性规范 (医务室: 为病人提供服务 <==> 也是提供服务, 有哪些服务, 服务由哪些属性组成)
ATT: Attribute Protocol, 属性协议 (检验室: 提供检查结果, 给医生综合后由医生判断 <==> 提供属性及访问方法, GATT 把这些属性组合起来构成服务)
L2CAP: Logical Link Control And Adaptation Protocol, (收发室: 收发包裹(包裹来自各科室) <==> 标记/识别数据来自哪个 channel, 转发)
--------------------------------------------HCI(Host Controller Interface, 主机/控制器接口)------------------------------------------------------------
Controller(一般来说是一个芯片):
LL: Link Layer, 链路层 (快递驻点: 贴快递单 <==> 确定是广播包还是数据包(发给谁),加上 Access Address)
PHY: Physical Layer, 物理层 (快递员: 运输, 此路不通就另换一条 <==> 无线收发器,传输, 跳频)
第 03 节_BLE 协议各层数据格式概述
公司内部怎么派件?
1. 同部门的,需要知道具体派送给谁:具体到人
2. 上级部门的,只需要知道给哪一个部门即可,他们部门内部再分发:具体到部门
所以,需要:
1. 分辨一个快件,是本部门的、还是其他部门的
2. 如果是本部门的,需要分辨这个快件是谁的
3. 如果是其他部门的,直接扔给该部门,不需要再分辨这个快件是谁的
怎么送快件?
BLE 各层协议格式概述:
A
B
A/B
data for A
B1/B2
data for B1 or B2
type B1
type B2
type A1
type A2
A1/A2
data for A1 or A2
C
type C1
type C2
B/C
data for B
C1/C2
data for C1 or C2
A
B
type B1
type B2
type A1
type A2
C
type C1
type C2
C1/C2
data for C1 or C2
C
B
B
B1/B2
data for B1 or B2
B
A
A1/A2
data for A1 or A2
传输线路上的
C
层数据格式
传输线路上的
B
层数据格式
传输线路上的
A
层数据格式
第 04 节_BLE 协议抓包演示
实际开发中,抓包涉及的硬件框图如下:
学习时,抓包涉及的硬件框图如下:
a. 使用手机来模拟蓝牙外设(Peripheral),可以很方便地新建外设的服务。
b. 使用 USB 蓝牙模块(CSR8510A10)作用蓝牙中央设备(Central),在 PC 上运行 Bluetooth LE
LL
adv_ind
Random
type
Advertising channel PDU
adv_direct_ind
adv_nononn_ind
scan_req
adv_rsp
connect_req
adv_scan_ind
Advertising channel PDU
LL_???_REQ
LL_???_RSP
LL_???_IND
Data channel PDU
0x8E89BED6
LLID(11b)
LL Control PDU
LLID(10b,01b)
LL DATA PDU for L2CAP
opcode
L2CAP
Channel ID
Code
Data
Signaling Packet(Code+Identifier+Length+Data)
data for uper layer (ATT and so on)
Identifier
Length
ATT
att opcode
auth sig
att params
att opcode
auth sig
att params
LL
adv_ind
adv_direct_ind
adv_nononn_ind
scan_req
adv_rsp
connect_req
adv_scan_ind
Advertising channel PDU
LL_???_REQ
LL_???_RSP
LL_???_IND
Data channel PDU
L2CAP
Code
Data
Identifier
Length
ATT
att opcode
auth sig
att params
空中的
LL
层数据格式
空中的
L2CAP
层数据格式
空中的
ATT
层数据格式
type
Advertising channel PDU
0x8E89BED6
LLID(11b)
Random
LL Control PDU
opcode
LLID(10b,01b)
Random
Channel ID(05/06)
Signaling Packet(Code+Identifier+Length+Data)
LLID(10b,01b)
Random
Channel ID(04)
att opcode
auth sig
att params
剩余26页未读,继续阅读
资源评论
盼望孤独的二进制
- 粉丝: 515
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 3122080306 邹子轩 实验报告二.docx
- 基于STM32 NUCLEO板设计彩色LED照明灯(纯cubeMX开发)(大赛作品,文档完整,可直接运行)
- 发那科工业机器人保养大全
- Sphere.h
- REMD固有时间尺度分解信号分量可视化(Matlab完整源码和数据)
- 嵌入式系统双单片机STC89C52+STC15W104多功能学习板电路图可扩展 适用于单片机初学者和教学
- 基于STM32蓝牙控制小车系统设计(硬件+源代码+论文)大赛作品
- XILINXFPGA源码基于Spartan3火龙刀系列FPGA开发板VGA测试例程
- Java聊天室的设计与实现【尚学堂·百战程序员】
- python中matplotlib教程
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功