物联网AI 无线连接学习之蓝牙基础篇 协议概述

学物联网,来万物简单IoT物联网!!在这里插入图片描述

1 蓝牙协议总体架构image.png

1.1 Application层

应用属性层,通过API函数与协议栈交互;

1.2 Host层

Host层,逻辑链路控制及自适应协议层、安全管理层、属性协议层、通用访问配置文件层、通用属性配置文件层

1.3 Controller层

Controller层,负责与硬件层交互,包括物理层、链路层、主机控制接口层。

2 分层介绍

2.1 GATT

定义如何使用ATT的服务框架,Generic Attribute 通用属性。
BLE 连接都是建立在GATT协议之上,GATT 的全名是Generic Attribute Profile,它定义两个 BLE 设备通过Service 和 Characteristic 进行通信。GATT 基于 ATT(Attribute Protocol)协议,把 Service, Characteristic 对应的数据保存在一个查找表中,次查找表使用 16 bit ID 作为每一项的索引。这里需要说明的是,GATT 连接,必需先经过 GAP 协议。

2.2 ATT

允许设备向其他设备公开某些数据或属性。
Client 和 Server 之间是通过 ATT PDU来通信的,ATT PDU主要包括4类:读,写,notify 和 indicate。

2.3 GAP

与应用程序或Profile直接交互,Generic Access Profile 通用访问配置文件。
负责访问模式和进程,包括设备发现、建立连接、终止连接、初始化安全特征和设备配置

2.3 SM

定义了配对和密匙分发的方法

2.4 L2CAP

向上层提供数据封装服务,允许端到端的数据通信。
只支持 ACL 数据传输,不支持 SCO 数据。 SCO 数据直接与 HCI 层进行数据交互。

2.5 HCI

负责主机和控制器之间的通信

2.6 LL

控制设备的RF状态:Standby、Advertising、Scanning、Initiating、Connected(五种状态之一)

2.7 PHY

在免费的2.4GHz ISM频段中运行,具有1Mbps自适应跳频GFSK的无线电系统

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/220881.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot进阶——解释springboot的自动配置原理

相关的博客文章如下: SpringBootApplication注解的理解——如何排除自动装配 & 分布式情况下如何自动加载 & nacos是怎么被发现的 引出 1.spring.factories文件存储能够进行自动配置的Bean信息; 2.EnableAutoConfiguration关闭数据源的自动配置…

Redis核心数据结构

目录 五种基础数据结构 string hash list set zset 用zset实现微博热搜 scan遍历 高频问题 五种基础数据结构 string 单个赋值set 批量赋值/取值 msetmget 设置不存在字符串setnx, 如果不存在, 则设置成功返回1, 如果存在返回0, 可以当做分布式锁 删除值 设置过期时…

makefile 学习(5)完整的makefile模板

参考自: (1)深度学习部署笔记(二): g, makefile语法,makefile自己的CUDA编程模板(2)https://zhuanlan.zhihu.com/p/396448133(3) 一个挺好的工程模板,(https://github.com/shouxieai/cpp-proj-template) 1. c 编译流…

软件介绍01- koodo Reader支持所有电脑平台!

1 软件简介 Koodo Reader软件是一款阅读器,可以阅读各种格式的文档。用来代替kindle。界面简洁,好看,阅读功能强大,而且可以多设备同步。 因为开源,所以免费。而且支持所有电脑平台! 支持格式&#xff1a…

Linux面试题(三)

目录 34、du 和 df 的定义,以及区别? 35、awk 详解。 36、当你需要给命令绑定一个宏或者按键的时候,应该怎么做呢? 37、如果一个 linux 新手想要知道当前系统支持的所有命令的列表,他需要怎么做? 38、…

性能测试必学教程之Jmeter:nmon性能系统监控工具

一、Nmon介绍 Nmon得名于 Nigel 的监控器,是IBM的员工 Nigel Griffiths 为 AIX 和 Linux 系统开发的,使用 Nmon 可以很轻松的监控系统的CPU、内存、网络、硬盘、文件系统、NFS、高耗进程、资源和 IBM Power 系统的微分区的信息 Nmon是一款计算机性能系…

Linux篇:文件系统

一、共识原理: 文件文件内容文件属性 磁盘上存储文件存文件的内容(数据块)存文件的属性(inode) Linux的文件在磁盘中存储是将属性和内容分开存储的。 二、硬件简述: 1. 认识硬件 磁盘:唯一的一…

STM32F103C8T6_PWM引脚

可以看到:一共可以产生4 x 416路PWM信号:每个TIMER4路PWM, PA0,PA1,PA2,PA3,PA8,PA10,PA11; PA共7个 PB0,PB1,PB6,PB7,PB8,PB9,PB14; PB共7个

数据结构之时间复杂度与空间复杂度

1.算法效率 1.1 如何衡量一个算法的好坏&#xff1f; 比方说我们非常熟悉的斐波拉契数列&#xff1a; long long Fib(int N) {if(N < 3)return 1;return Fib(N-1) Fib(N-2); } 递归实现方式非常简洁&#xff0c;但一定好吗&#xff1f;如何衡量其好与坏&#xff1f; 1…

Ansible的重用(include和import)

环境 管理节点&#xff1a;Ubuntu 22.04控制节点&#xff1a;CentOS 8Ansible&#xff1a;2.15.6 重用 Ansible提供四种可重用的工件&#xff1a; variable文件&#xff1a;只包含变量的文件task文件&#xff1a;只包含task的文件playbook&#xff1a;可包含play、变量、ta…

【go入门】表单

4.1 处理表单的输入 先来看一个表单递交的例子&#xff0c;我们有如下的表单内容&#xff0c;命名成文件login.gtpl(放入当前新建项目的目录里面) <html> <head> <title></title> </head> <body> <form action"/login" meth…

上海交通大学生存手册

强烈推荐所有大学生去阅读《上海交通大学生存手册》。虽然它可能有些冗长&#xff0c;但非常重要&#xff0c;因为它道出了大学教育的本质。 如果几年前我能够看到这本书&#xff0c;也许我的大学生活会有所不同。现在我将向正在上大学或者将要上大学的你推荐这本书。 无论你…