自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (2)
  • 收藏
  • 关注

原创 BLE Mesh-1の基本概念

Mesh基本概念广播和洪泛:蓝牙Mesh技术采用BLE的广播报文来实现,这是一种基于洪泛的信息传递机制。缺点:1. 信息泛滥;解决:1. 消息缓存队列;2. TTL字段。节点和设备:未在网络中的设备加入Mesh网络中后称为节点,这个过程称之为配网过程(Provisioning)。网络和子网:一个蓝牙Mesh网络中有以下四种资源是共享的:节点的网络地址网络密钥应用密钥IV Index在此基础上,蓝牙Mesh网络可以划分为多个子网,便于分类管理和统一控制。元素:每个节点都有至少包含

2020-11-19 21:30:03 37

原创 数据结构与算法@双向链表

双向链表双向链表的数据结构双向链表的建立双向链表的插入节点双向链表的删除节点双向链表的遍历双向链表的长度双向链表查找节点双向链表替换节点主函数http://c.biancheng.net/view/3343.html双向链表的数据结构typedef struct line{ struct line * prior; //指向直接前趋 int data; struct line * next; //指向直接后继}line;双向链表的建立line* initLine(lin

2020-09-19 20:26:55 13

原创 BT-10の蓝牙技术原理のBT协议-应用框架の蓝牙音视频应用框架-AVRCP

BT协议-应用框架の蓝牙音视频应用框架蓝牙音视频遥控应用框架-AVRCP一,设备角色二,应用模型三,AVRCP遥控操作四,AV/C 指令与响应五,AVRCP所支持的设备指令六,AVRCP的设备AV功能分类通用音视频分发应用框架-GAVDPGAVDP通信规范设备状态连接控制传输控制信令控制安全控制高级音频分发应用框架-A2DPA2DP通信流程A2DP音频编码本节介绍三个蓝牙音视频的高级应用框架:蓝牙音视频遥控应用框架-AVRCP:实现蓝牙无线遥控功能的规范。它只描述遥控器的控制功能,不负责处理音频视频数

2020-08-19 20:36:26 104

原创 BT-10の蓝牙技术原理のBT协议-应用框架の蓝牙通用访问协议(GAP)

BT协议-应用框架の蓝牙通用访问协议-GAP一,GAP连接模式二,GAP空闲模式三,GAP连接建立GAP 是其他所有蓝牙应用框架的基础,它描述了两个蓝牙设备监理通信时必要的基本操作,包括设备的发现,链路的建立和配置以及安全性设置。GAP描述了蓝牙底层传输协议的应用,主要包括 链路控制器(LC) 和 链路管理器(LM),同时为了安全起见,特涉及到一些高层协议,如逻辑链路控制协议(L2CAP),串口仿真协议(RFCOMM)和对象交换协议(OBEX)。从三个方面来介绍GAP:GAP连接模式,GAP空闲模式,

2020-08-18 11:08:15 44

原创 BT-9の蓝牙技术原理のBT协议の蓝牙音频视频控制传输协议(AVCTP)

蓝牙技术原理のBT协议の蓝牙音频视频控制传输协议-AVCTP一,概述AVCTP 定义了蓝牙音频视频设备之间传输控制指令和响应消息的标准。AVCTP给出了在点对点链路上传输指令与响应消息进而控制远端的蓝牙音频视频设备的过程。具体的指令与响应消息格式在相应的应用框架当中定义,如AVRCP,GAVDP,A2DP,VDP。AVCTP事务(Transaction)是指AVTCP指令和响应的交互过程。发送指令的控制器(CT)初始化会话过程并发送指令,接受指令的目标设备(TG)根据指令将自身的当前状况以响应消息的形

2020-08-17 22:36:59 57

原创 BT-8の蓝牙技术原理のBT协议の蓝牙音频视频分发传输协议(AVDTP)

蓝牙音频视频分发传输协议-AVDTPAVDTP概述传输服务及传输过程信令过程 及 信令消息蓝牙音频视频分发传输协议(AVDTP): 定义了蓝牙设备间A/V数据流的协商,建立,和传输过程以及相互交换信令消息形式。AVDTP概述音视频的应用协议和应用框架总览为:AVDTP实现实体通过L2CAP分组进行:A/V数据流的传输A/V信令的交换如下图所示:这两者的关系:A/V信令 提供 A/V数据流 的发现,配置,建立和传输控制功能。基本的概念和术语:Stream:两个点对点设备之

2020-08-17 21:38:32 70

原创 程序员面试宝典笔记4-位运算与嵌入式编程

程序员面试宝典笔记4-位运算与嵌入式编程位制转换嵌入式编程static

2020-08-14 22:12:07 32

原创 程序员面试宝典笔记2-指针与引用

程序员面试宝典笔记2-指针与引用指针基本问题传递动态内存函数指针指针数组与数组指针迷途指针指针和句柄this指针 (C++)

2020-08-13 18:03:43 32

原创 BLE-11の蓝牙4.1协议栈详解の通用属性协议(GATT)

BLE-11の蓝牙4.1协议栈详解の通用属性协议(GATT)-待补充

2020-07-28 21:33:05 76

原创 BLE-8の蓝牙4.1协议栈详解の逻辑链路管理和适配层(L2CAP)

1)L2CAP架构L2CAP位于Bluetooth Host中,包括两个子模块:Channel Manager主要负责创建、管理、释放L2CAP channel。L2CAP Resource Manager负责统一管理、调度L2CAP channel上传递的PDU(Packet Data Unit),以确保那些高QoS的packet可以获得对物理信道的控制权。###################################L2CAP Protocol7.1 功能介绍经过Link La

2020-07-28 15:56:29 83

原创 程序员面试宝典笔记1-基本概念&预处理,const与sizeof

程序员面试宝典笔记1-基本概念&预处理,const与sizeof基本概念预处理constsizeof

2020-07-27 16:40:12 24

原创 BLE-8の蓝牙4.1协议栈详解の主机/控制器接口(HCL)

蓝牙4.1协议栈详解の主机/控制器接口-HCI0. Overview1. 物理接口2. 逻辑接口3. 控制器配置4. 广播和观察5. 发起连接6. 连接管理0. OverviewHCI主要完成两个任务:发送命令给控制器 和 接收来自控制器的事件;发送和接收来自对端设备的数据;上面的两个任务可以进一步的解读为:主机通过向控制器发送命令数据包来执行命令;控制器发往主机的事件数据包主要用于发送信息和反馈之前输入的命令。数据包指主机和控制器之间传输的应用数据。控制器接受来自主机的数据包,将其发

2020-07-26 15:10:13 74

原创 BT-9の蓝牙技术原理のBT应用规范の蓝牙通用访问规范の通用访问模式(GAP)和服务发现规范(SDAP)

BT-9の蓝牙技术原理のBT应用规范の通用访问模式(GAP)

2020-07-23 16:46:02 47

原创 BT-5の蓝牙技术原理のBT协议の蓝牙核心协议の服务发现协议(SDP)

BT-5の蓝牙技术原理のBT协议の蓝牙核心协议の服务发现协议(SDP)

2020-07-23 12:44:41 111

原创 BT-4の蓝牙技术原理のBT协议の蓝牙核心协议の逻辑链路控制和适配协议(L2CAP)

BT-4の蓝牙技术原理のBT协议の蓝牙核心协议の逻辑链路控制和适配协议(L2CAP)

2020-07-22 17:27:23 84

原创 BT-3の蓝牙技术原理のBT协议の蓝牙核心协议の链路管理协议(LMP)

BT-3の蓝牙技术原理のBT协议の蓝牙核心协议の链路管理协议(LMP)

2020-07-21 13:51:47 120

原创 BLE-2の蓝牙4.0协议栈の链路层

上篇文章中《BLE-2の蓝牙4.0协议栈概览》,对蓝牙4.0BLE协议栈总体进行了介绍,并且提到了数据链路层(LL)是协议栈的重点和难点,这一张对数据链路层做一个详细的讲解,由于新学,本篇内容不是原创,基本上是各个优质帖子中摘出来的进行融合的,我会在文末逐篇注明出处。1. Link Layer的定义:我找了手头资料和网上博客对链路层的定义:定义1:定义2:定义3:链路层定义了在各种状态下的数据包格式、时序规范和接口协议,在物理层的基础上,提供两个或多个设备之间,和物理层无关的逻辑传输通道,对链

2020-07-20 12:45:10 31

原创 BT-2の蓝牙技术原理のBT协议の蓝牙核心协议の无线射频和基带

BT-2の蓝牙技术原理のBT协议の蓝牙核心协议の基带协议

2020-07-20 12:44:30 155

原创 BT-1の蓝牙技术原理の协议总览

蓝牙技术原理の协议总览1. 协议脑图2. 协议分析2.1 BT协议2.1.1. 蓝牙核心协议2.1.2. 电缆替代协议(RFCOMM)2.1.3. 电话控制协议2.1.4. 选用协议2.2 BT应用规范1. 协议脑图2. 协议分析蓝牙技术规范(Specification)包括了协议(Protocal)和应用规范(Profile)两部分。其中,协议(Protocal) —定义了各功能元素(如RFCOOM,L2CAP)各自的工作方式;应用规范(Profile) 定义了为了实现一个特定的应用

2020-07-18 16:13:19 193

原创 BLE-7の蓝牙4.1协议栈详解の链路层(LL, Linear layer)

链路层详解OverView1. 链路层状态机2. 报文3. 信道3.1 跳频3.2 自适应跳频4. 设备发现5. 广播6. 建立连接7. 为低功耗优化8. 鲁棒性9. 连接管理10. 发送数据11. 加密参考书籍:《低功耗蓝牙开发权威指南》脑图软件:XMind ZEN 2020OverView1. 链路层状态机共有5中状态:就绪态:中心状态,任何状态都可以转换为它;广播态:使用广播报文扫描态:使用广播报文,不可连接发起态:使用广播报文,随机发起连接连接态:使用数据报文;2.

2020-06-27 17:16:36 66

原创 BLE-6の蓝牙4.1协议栈详解の物理层(PHY, Linear layer)

物理层详解(PHY)频段调制信道频段BLE 使用2.4GHz 工业、科学及医疗(ISM)频段,从2400MHz~2483.5MHz 约 83.5MHz 的频谱资源在任何地方都可以使用。调制BLE 采用的 GFSK 调制方式(髙斯频移键控),物理层的比特率为 1Mbit/s(1Mbps)。信道一共 40 个通道,37 个自适应自动调频数据通道用于两个连接设备的通讯,3 个固定广播通道分别是 37、 38、 39。参考:https://blog.csdn.net/qq_15391889/a

2020-06-25 21:27:20 149

原创 BLE-5の实现BLE的基本功能-基于SDK_16.0

实现BLE的基本功能-基于SDK_16.0

2020-06-19 13:52:05 64

原创 BLE-4の蓝牙4.0协议栈中的角色扮演

蓝牙4.0协议栈中的角色

2020-06-19 13:44:42 44

转载 蓝牙八卦:蓝牙、Wi-Fi、ZigBee几种无线技术的对比

蓝牙、Wi-Fi、ZigBee几种无线技术的对比1. 概述2. ZigBee引领物联网设备大步向前3. WiFi后浪拍前浪4. 蓝牙全新升级,深入日常应用这阶段在学习BLE(低功耗蓝牙),于是乎就想了解蓝牙的一切,在网上看到这几篇文章,感觉还不错,现在整合过来,参考文献在下文给出。1. 概述Zigbee 和蓝牙都是一项无线通信技术。ZigBee的传输距离视发射功率而定,有几百到几千米不等,不过传输率却只有250kps的,但是这个只是理论值。一般也就20-30kps.而蓝牙的传输距离仅仅只有10米左右,

2020-06-18 10:12:57 344

原创 Git:从无到有

平台:WIN101. 安装略2. 创建在项目文件夹内右键,打开Git Bash here初始化$ git init配置参数$ git config --global user.name "History"$ git config --global user.email abcdefg@qq.com生成ssh公钥远程库:公司服务器$ cd ~$ ssh-keygen 运行结束,将生成的~/.ssh/id_rsa.pub文件发给管理者提交到服务器设置中远程

2020-06-11 11:15:14 59

转载 BLE-2の蓝牙4.0协议栈のLL层 Scaning 和 initiating状态的区别

PDU类型3.4 Scanning状态3.4.1 scanWindow和scanIntervalScanning状态扫描、接收广播数据的状态,该状态的扫描行为是由scanWindow和scanInterval两个参数觉得的。scanWindow指示一次扫描的时间(即可以理解为RF RX打开的时间),scanInterval指示两次扫描之间的间隔。如果这两个参数的值相同,表示连续不停地扫描。BLE协议规定,scanWindow和scanInterval最大不能超过10.24s,并且scanWindo

2020-05-25 21:16:10 47

转载 BLE-3の蓝牙4.0协议栈の空口包格式

上面两篇文章,总结了BLE的协议栈概览(包括各层的功能)以及BLE的LL链路层基本,这一章总结BLE空中包格式,以便更好的理解BLE是如何通信的。本文内容仍然是来源于网络上比较优质的博文整合。下文列出了所有的出处。在说空包格式之前,需要先把物理层简单的串一下。1.前戏:物理层(PHY)频段BLE 使用2.4GHz 工业、科学及医疗(ISM)频段,从2400MHz~2483.5MHz 约 83.5MHz 的频谱资源在任何地方都可以使用。调制BLE 采用的 GFSK 调制方式(髙斯频移键控),物

2020-05-22 21:26:16 117

原创 BLE-1の蓝牙4.0协议栈概览

1. 协议栈结构图:2. 协议栈解析:2.1 控制器2.2 主机

2020-05-21 15:33:48 97

原创 填坑记1-nrf52840出现error flash download failed -cortex-M4错误的解决办法-清风电子开发板

填坑类型:nrf52840出现error flash download failed -cortex-M4错误使用板子:清风电子开发板问题描述: keil4出错,keil5不出错(意思是其他keil5工程文件不出错,证明我的J-Link是OK的);我的安装步骤是:安装keil4,安装keil 5,安装keil5和keil4兼容的软件MDKCM512a.EXE(如图1)安装NorDicSemicon… 的软件包(如图1)设置了注册表有些keil5工程编译后直接可以使用J-Link下载到板

2020-05-19 19:59:41 621

原创 练习编程6:数据结构与算法の排序の冒泡+选择排序+希尔排序+堆排序

#include <stdio.h>#include <malloc.h>#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0struct Array{ int *arr; int length;}arrNode;int init_array(struct Array *array, int *init_arr){ int i=0, cnt=0; //跳过哨兵 while(init_ar

2020-05-16 16:49:20 33

原创 练习编程5:数据结构与算法の查找の哈希表/哈希查找

查找の哈希表/哈希查找散列函数采用的是 除留取余法;冲突解决采用的是 开放定址法线性探测;#include <stdio.h>#include <malloc.h>#include <stdlib.h>#define SUCCESS 1#define OK 1#define UNSUCCESS 0#define HASHSIZE 10 //表长#define NULLKEY -32768typedef struct HashTable{

2020-05-15 20:02:58 38

原创 数据结构与算法10の查找のB树(2-3树,2-3-4树)

查找のB树1. 2-3树1.1 概念1.2 插入(创建)1.3 删除2. 2-3-4树2.1 概念2.2 插入(创建)2.3删除3. B树1. 2-3树1.1 概念2-3树中每一个结点都具有两个孩子(2结点)或者三个孩子(三结点)一个二结点有以下特性:包含一个元素同时有两个孩子或者没有孩子一个三节点有以下特性:包含两个元素同时有三个孩子或者没有孩子1.2 插入(创建)这里举一个实例,从头来创建2-3:7,1,2,5,6,9,8,4,37, 1,2, 5, 6, 9,

2020-05-14 23:07:50 48

原创 数据结构与算法9-2の查找の平衡二叉树(AVL)-仍有不理解的地方

查找の平衡二叉树(AVL)代码实现1.RR1. 示意图2.代码实现2.LL1. 示意图2.代码实现3.LR1. 示意图2.代码实现4.RL1. 示意图2.代码实现《大话数据结构》中的代码实现,调整讲法和 9-1 的浙江大学数据结构与算法有所不同。主要是RL,LR这两种的讲法,下面再列出‘大话’的讲法。- RL- LR1.RR1. 示意图2.代码实现2.LL1. 示意图2.代码实现3.LR1. 示意图2.代码实现4.RL1. 示意图2.代码实现...

2020-05-12 12:02:16 46

原创 数据结构与算法9-1の查找の平衡二叉树(AVL)

查找の平衡二叉树(AVL)1. 定义2. AVL的调整2.1 AVL调整分类与策略2.2 代码实现浙江大学数据结构与算法1. 定义平衡二叉树是一种搜索二叉树(或查找二叉树),其中每一个结点的左子树和右子树的高度差的绝对值都不大于1。高度差定义为平衡因子(BF):BF(T)=hL−hRBF(T)=h_{L}-h_{R}BF(T)=hL​−hR​2. AVL的调整当插入元素后破坏了二叉平衡树的平衡时,需要对其进行调整。视频中,对不平衡的元素起了特称:引起不平衡的元素是麻烦结点,被破坏不平衡的元

2020-05-11 21:10:21 46

原创 数据结构与算法8の查找の搜索二叉树

查找の搜索二叉树1. 查找算法1. 通用查找算法2. 最大/最小元素查找算法2. 插入3. 删除浙江大学数据结构与算法1. 查找算法1. 通用查找算法/* 二叉搜索树数据结构 */typedef struct BiNode{ ElemType data; struct BiNode *lchild,*rchild;}BiNode,*BiTree;/* 尾递归的实现方式 */Position Find(ElemType key, BiTree BST){ if(BST==NU

2020-05-11 16:50:57 48

原创 数据结构与算法笔记8-查找

数据结构与算法8-查找1. 顺序表查找2.有序表查找2.1 折半查找算法2.2 插值查找算法2.3 斐波那契查找算法3.线性索引查找3.1 稠密索引3.2 分块索引3.3 倒排索引4.二叉排序树静态查找1. 顺序表查找从头到尾逐个遍历int Sequential(int *a, int n, int key){ a[0] = key; //设置哨兵 int i=n; while(a[i] != key) { i--; } return i; //若返回 0,则说明查找失败}2

2020-05-11 14:17:30 30

原创 LeetCode刷题☞Tag☞链表

链表1. 找出两个链表的交点(#160)2. 链表反转(#206)1.1 迭代循环实现1.2 递归实现3. 归并两个有序的链表4. 从有序链表中删除重复节点5. 删除链表的倒数第 n 个节点6. 交换链表中的相邻结点7. 链表求和8. 回文链表9. 分隔链表10. 链表元素按奇偶聚集1. 找出两个链表的交点(#160)题目描述:例如以下示例中 A 和 B 两个链表相交于 c1:这里注意,...

2020-04-29 11:55:33 44

原创 数据结构与算法笔记7の堆

堆--heap 1.堆的基本知识1.1堆的两个特性:2.堆的存储结构3.最大空堆的建立4.堆的插入5.堆的删除6.最大堆的建立全部程序1.堆的基本知识堆(heap)是用优先队列(priovity Queue)实现的,优先队列是一种特殊的“队列”,取出元素顺序为优先权(关键字)的大小,而不是元素进入队列的先后顺序。1.1堆的两个特性:结构性:用数组表示的完全二叉树;有序性:任一结点的关...

2020-04-28 14:49:51 72

原创 数据结构与算法笔记-6の链表の把单链表的前K个结点反转

把单链表的前K个结点反转1. 分解演示2. 代码3. 延伸这是一道微软的面试题改编而来,在浙大陈越姥姥的数据结构与算法课上看到,在这里整合一下。1. 分解演示2. 代码Ptr Reverse( Ptr head, int K ){ cnt = 1; new = head->next; old = new->next; while( cnt &lt...

2020-04-28 10:39:56 55

原创 数据结构与算法笔记5の各类数据的存储结构总结

各类数据的存储结构总结1. 线性表1.1 线性表顺序存储1.2 线性表链式存储1.3 线性表静态存储2. 栈与队列2.1 顺序栈2.2 链栈2.3 顺序队列2.4 链队列3. 树3.1 二叉树顺序存储3.2 二叉树链式存储3.3 线索二叉树4. 图4.1 邻接矩阵4.2 邻接表5. 散列表6. 排序声明:本帖由《大话数据结构》源代码整理而成1. 线性表宏定义:#define MAXSIZE...

2020-04-26 15:06:15 74

中缀->后缀.pptx

本资源是数据结构与算法中栈的应用:中缀表达式转为后缀表达式的PPT分解。便于自己理解,也上传到网络上供参考!

2020-04-17

头插法创建线性链表算法分解演示.pptx

头插法(反向)创建线性链表算法分解演示;头插法也就是创建线性链表时,每次新建的结点插入到头结点之后,这样最后一个插入的结点就成为了创建后链表的第一个结点(注意和头结点的区别)。

2020-01-04

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除