当前位置: 首页 > news >正文

CH58x-BLE 程序阅读笔记

CH58x-BLE 程序阅读笔记

  • 1. 广播
    • 1.1 广播类型设置
    • 1.2 广播数据长度
  • 2. MTU设置
    • 2.1 CH58x 蓝牙协议栈支持有效最大MTU为247

1. 广播

1.1 广播类型设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2 广播数据长度

1) GAP-广播数据(最大大小=31字节,但最好保持较短以节省广告时的电量)
      31个字节包含了 length + data type,因此真真能封装的数据个数是 29个

2. MTU设置

2.1 CH58x 蓝牙协议栈支持有效最大MTU为247

1) 超过23字节的接收和发送,从机修改宏定义 BLE_BUFF_MAX_LEN 251 为251;主机(手机端APP)修改 MUT 为 247
2) 经常程序中看到 251 - 247 - 244 三个数字

247是mtu,范围是23到247,最大值是247
244是实际能够notify的一包的长度,根据mtu-3得到
243是实际write和read一包的长度,根据mtu-4得到
251是BLE_BUFF_MAX_LEN(单个连接最大包长度( 默认:27 (ATT_MTU=23),取值范围[27~251] )),由他减去4得到最大的交互mtu的值,如默认27,则交互mtu最大为23,修改为最大值251后mtu可交互最大值为247.

相关文章:

CH58x-BLE 程序阅读笔记

CH58x-BLE 程序阅读笔记 1. 广播1.1 广播类型设置1.2 广播数据长度 2. MTU设置2.1 CH58x 蓝牙协议栈支持有效最大MTU为247 1. 广播 1.1 广播类型设置 1.2 广播数据长度 1) GAP-广播数据(最大大小31字节,但最好保持较短以节省广告时的电量&a…...

ST53xx 系列是一种高精度、高输入电压、低静态电流、高速度、低压差线性稳压器

ST53xxS/T 40V,低静态电流,高可靠性 LDO 概述: ST53xx 系列是一种高精度、高输入电压、低静态电流、高速度、低压差线性稳压器,具有高纹波抑制能力。在 Vour 5V VIN 7V 时,输入电压高达40V,负载电流高达300…...

麻雀搜索优化算法MATLAB实现,SSA-BP网络

对于麻雀搜索算法的介绍,网上已经有不少资料了,这边公布SSA的matlab实现 下面展示SSA算法的核心代码以及详细注解 % 麻雀搜索算法函数定义 % 输入:种群大小(pop),最大迭代次数(Max_iter),搜索空间下界(lb)&#xff0c…...

142. 环形链表 II --力扣 --JAVA

题目 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使…...

深入浅出 Vue 中的插槽 slot

深入浅出 Vue 中的插槽 slot start 最近被问到好几次 Vue 中的插槽相关知识,掌握的还是有些不全面。抱着重新学习的心态,写这篇博客。首先对基础知识做一个回顾,然后再对源码实现做一个学习。作者:番茄编写时间:2023…...

postgreSQL 查询所有模式的语句

场景 postgre 数据库下携带模式的分组 sql select schema_name from information_schema.schemata;...

pandas教程:Introduction to scikit-learn scikit-learn简介

文章目录 13.4 Introduction to scikit-learn(scikit-learn简介) 13.4 Introduction to scikit-learn(scikit-learn简介) scikit-learn是一个被广泛使用的python机器学习工具包。里面包含了很多监督式学习和非监督式学习的模型&a…...

Linux配置路由功能及添加静态路由

一、配置路由功能 Linux作为路由器,Linux本身就具备路由功能,开启方式如下: 临时开启: echo "1" > /proc/sys/net/ipv4/ip_forward永久开启: vim /etc/sysctl.confnet.ipv4.ip_forward1 # 配置生效 sys…...

什么是Geo Trust OV证书

一、GeoTrust OV证书的介绍 GeoTrust OV证书是由GeoTrust公司提供的SSL证书,它是一种支持OpenSSL的数字证书,具有更高的安全性和可信度。GeoTrust是全球领先的网络安全解决方案提供商,为各类用户提供SSL证书和信任管理服务。GeoTrust OV证书…...

selenium 工具 的基本使用

公司每天要做工作汇报,汇报使用的网页版, 所以又想起 selenium 这个老朋友了。 再次上手,发现很多接口都变了, 怎么说呢, 应该是易用性更强了, 不过还是得重新看看, 我这里是python3。 pip安装…...

Excel如何比较两列数据的不同

当遇到exel有两个列表的数据,需要比较得到他们的不同的部分,并且得到一个不同的值的列表。示例如下: 目的是:通过比较,知道Column2的哪些值不在在Column1里。 WPS直接提供了这一个功能,如下图:…...

力扣labuladong——一刷day47

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、力扣993. 二叉树的堂兄弟节点二、力扣1315. 祖父节点值为偶数的节点和三、力扣1448. 统计二叉树中好节点的数目四、力扣1469. 寻找所有的独生节点 前言 二叉…...

蓝桥杯-02-python组考点与14届真题

文章目录 蓝桥杯python组考点与14届真题参考资源python组考点1. 组别2. 竞赛赛程3. 竞赛形式4. 参赛选手机器环境5. 试题形式5.1. 结果填空题5.2. 编程大题 6. 试题考查范围7. 答案提交8. 评分9. 样题样题 1:矩形切割(结果填空题)样题 2&…...

【0240】源码分析PG内核中的关键字列表(SQL keywords)

相关文章: 【0236】聊一聊PG内核中的命令标签(Command Tags、CommandTag、tag_behavior) 【0239】从编译原理角度理解 #include “xxx“ 或 #include<xxx> 的实现机制 1. PostgreSQL的SQL关键字列表(SQL Keywords) 1.1 keywords.c源文件内容 keywords.c源文件中的内容…...

【Python深度学习第二版】学习笔记之——什么是深度学习

机器学习是将输入(比如图像)映射到目标(比如标签“猫”)的过程。 这一过程是通过观察许多输入和目标的示例来完成的。 深度神经网络通过一系列简单的数据变换(层)来实现这种输入到目标的映射,这…...

ddns-go部署在linux虚拟机

ddns-go部署ubuntu1804 1.二进制部署 1.虚拟机部署 1.下载linux的x86二进制包 wget https://github.com/jeessy2/ddns-go/releases/download/v5.6.3/ddns-go_5.6.3_linux_x86_64.tar.gz2.解压 tar -xzf ddns-go_5.6.3_linux_x86_64.tar.gz3.拷贝执行文件到PATH下&#xff0c…...

LeetCode Hot100 543.二叉树的直径

题目: 给你一棵二叉树的根节点,返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 root 。 两节点之间路径的 长度 由它们之间边数表示。 方法:灵神 代码: ​…...

Breadcrumb面包屑(antd-design组件库)简单用法和自定义分隔符

1.Breadcrumb面包屑 显示当前页面在系统层级结构中的位置,并能向上返回。 2.何时使用 当系统拥有超过两级以上的层级结构时; 当需要告知用户『你在哪里』时; 当需要向上导航的功能时。 组件代码来自: 面包屑 Breadcrumb - Ant Des…...

Mybatis 源码搭建

文章目录 源码下载测试模块搭建学习博客 源码下载 首先下载mybatis-parent的源码:gitee地址 > https://gitee.com/callback_lab/mybatis-parent.git 然后下载mybatis的源码:gitee地址 > https://gitee.com/callback_lab/mybatis-src.git 带中文…...

shell编程系列(5)-函数的定义

文章目录 前言函数定义处理函数参数通过getopts接收参数 前言 函数是编程语言中最重要的部分之一,虽然在shell脚本中并不是必须的,但是函数可以提高代码的复用性和可读性,当我们编写稍微复杂的脚本时,函数就是一个好帮手&#xf…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码&#xff1a;‘allure’ &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;ڲ&#xfffd;&#xfffd;&#xfffd;&#xfffd;ⲿ&#xfffd;&#xfffd;&#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;ǿ&#xfffd;&am…...

算法笔记2

1.字符串拼接最好用StringBuilder&#xff0c;不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...

10-Oracle 23 ai Vector Search 概述和参数

一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI&#xff0c;使用客户端或是内部自己搭建集成大模型的终端&#xff0c;加速与大型语言模型&#xff08;LLM&#xff09;的结合&#xff0c;同时使用检索增强生成&#xff08;Retrieval Augmented Generation &#…...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

适应性Java用于现代 API:REST、GraphQL 和事件驱动

在快速发展的软件开发领域&#xff0c;REST、GraphQL 和事件驱动架构等新的 API 标准对于构建可扩展、高效的系统至关重要。Java 在现代 API 方面以其在企业应用中的稳定性而闻名&#xff0c;不断适应这些现代范式的需求。随着不断发展的生态系统&#xff0c;Java 在现代 API 方…...