CH57x/CH58x/CH59x iBecaon广播
首先要先了解iBecaon。iBecaon是苹果基于BLE广播的一个技术规范;只要设备生产商符合特定标准,就可以要求苹果授权它们在其设备上使用“iBeacon” 商标。 在设备生产商签署保密协议之后,就能获得iBeacon授权使用规范。
先看一下IBecaon的特点:
1、无需配对,只需在BLE的信道中对外广播即可
2、无需打开APP,只需要设备周期对外广播特定的广播包即可。
接下来对广播的报文格式进行解析:
| AD Field Length | Type | Company ID | iBeacon Type | iBeacon Length | UUID | Major | Minor | TX Power |
AD Field Length代表这个广播包有用信息的长度
Type 代表广播类型
Company ID 代表厂商数据字段的数据域前2字节为公司识别码
iBeacon Type 写为0x02代表为ibeacon的广播类型
iBeacon Length 代表 字节长度
UUID 指明拥有该becaon设备的机构
Major 和 Minor 主次字段用来编码位置信息,通常主字段指明某个建筑,而次字段指明在这栋建筑中的特定位置。例如“伦敦中心商场,运动产品区”
Tx Power 发送功率,帮助应用进行距离估算。

更多ibecaon详情可见:Getting Started with iBeacon (apple.com)
实现代码格式可根据:
26, /* length of manufacture data */
0xff, /* adv type of manufacture data */
0x4c,0x00, /* apple inc 0x004c*/
0x02, /* apple type beacon 0x02*/
0x15, /* length 21*/
此处是16bit的uuid/* uuid */
0x88,0xab, /* major 34987*/
0x04,0x12, /* minor 1042*/
0xcd /* rssi at 1m -51dbm*/
仅是个人学习分享;如有任何错漏敬请留言指正。
CH57x/CH58x/CH59x iBecaon广播的更多相关文章
- CH573 CH579 CH582程序烧录讲解
WCH的蓝牙芯片CH57x/CH58x系类大部分是支持串口烧录.USB烧录和LINK烧录的,除了一些特殊的封装,如571K,它引脚较少,只支持串口免按键烧录. 仿真下载:ARM内核的CH579支持Jl ...
- CH58X/CH57X/V208的Broadcaster(广播者)例程讲解
在对ble进行应用的时候,每个用户的需求可能不尽相同.这里着重介绍从机Broadcaster例程,只广播不连接. 使用该例程时可以在手机使用APP上对Broadcaster进行调试. 安卓端在应用市场 ...
- CH58X/CH57X/V208 Observer(观察者)例程讨论讲解
使用的是沁恒的CH582M的Observer例程与官方的demo板. 本例程的功能是主机扫描到从机的MAC地址并打印出来. 先对宏定义进行理解讨论. 最大响应扫描数为8,在串口调试助手那里可以看到打印 ...
- Android开发学习—— Broadcast广播接收者
现实中:电台要发布消息,通过广播把消息广播出去,使用收音机,就可以收听广播,得知这条消息.Android中:系统在运行过程中,会产生许多事件,那么某些事件产生时,比如:电量改变.收发短信.拨打电话.屏 ...
- Xamarin.Android广播接收器与绑定服务
一.前言 学习了前面的活动与服务后,你会发现服务对于活动而言似乎就是透明的,相反活动对于服务也是透明的,所以我们还需要一中机制能够将服务和活动之间架起一座桥梁,通过本节的学习,你将会学到广播与绑定服务 ...
- 2、利用蓝牙定位及姿态识别实现一个智能篮球场套件(二)——CC2540/CC2541基于广播的RSSI获得
CC2541一拖多例程中RSSI获得是通过一个事件回调函数实现的,前提是需要连接上蓝牙设备. 这个对于多点定位来说是不可行的,由于主机搜索蓝牙设备过程中也能获得当前蓝牙设备的RSSI等信息,因此可基于 ...
- 利用Docker技术实现UDP广播效果(网络编程python版)
docker的安装见官方文档 我使用的系统为Ubuntu16.04 Ubuntu系统安装docker文档地址:https://docs.docker.com/engine/installation/l ...
- 【Win 10 应用开发】UDP广播
我们知道,对于UDP协议的通信,除了可以用来聊天外,可以发送广播数据.只要向广播地址的某个端口发送数据就可以进行广播,子网中只要监听该端口的socket就能收到广播消息. 最简单的方法就是向255.2 ...
- android Broadcast广播消息代码实现
我用的是Fragment , 发送写在一个类中,接收写在另外一个类的内部类中.代码动态实现注册. 代码: myReceiver = new zcd.netanything.MyCar.myReceiv ...
- Android广播接收器BroadcastRceiver
一.使用BroadcastRceiver 1.创建BroadcastRceiver(MyRceiver),重写OnReceiver: public void onReceive(Context con ...
随机推荐
- 使用屏幕捕捉API:一站式解决屏幕录制需求
随着科技的发展,屏幕捕捉API技术逐渐成为一种热门的录屏方法.本文将详细介绍屏幕捕捉API技术的原理.应用场景以及如何利用这一技术为用户提供便捷.高效的录屏体验. 在线录屏 | 一个覆盖广泛主题工具的 ...
- ios ipa包上传需要什么工具
目录 ios ipa包上传需要什么工具 前言 一.IPA包的原理 二.IPA包上传的步骤 1.注册开发者账号 2.apk软件制作工具创建应用程序 3.构建应用程序 4.生成证书和配置文件 5.打包 ...
- 使用 Serverless Devs 插件快速部署前端应用
作者| 邓超 Serverless Devs 开源贡献者 背景 我们在 上文 [Aliyun] [FC] 如何使用 @serverless-devs/s 部署静态网站到函数计算 中,详细的介绍了如何通 ...
- C++大整数类
用法 把头文件和源代码文件放在同一目录下,然后#include"INT"即可使用.你能对int类的变量进行a=2,a+=3,a%8,a--等等操作,那你就也能对INT进行.INT基 ...
- Liunx快捷命令(别名)与快捷方式(软/硬链接)
一.快捷命令(别名)-临时生效1.命令:alias 别名='原命令' 2.举例:给检查防火墙的命令设置别名 [root@localhost ~]# alias fhq='firewall-cmd -- ...
- 用C#实现最小二乘法(用OxyPlot绘图)✨
最小二乘法介绍 最小二乘法(Least Squares Method)是一种常见的数学优化技术,广泛应用于数据拟合.回归分析和参数估计等领域.其目标是通过最小化残差平方和来找到一组参数,使得模型预测值 ...
- 12_前K个高频元素
前K个高频元素 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素.你可以按 任意顺序 返回答案.347.力扣题目链接 示例 1: 输入: nums = [1,1,1, ...
- 类的MRO属性 C3算法
C3算法 class A(object): pass class B(A): pass class C(A): pass class D(B): pass class E(C): pass class ...
- spring--JDK动态代理的实现原理
JDK 动态代理的实现原理涉及到 Java 的反射机制.它允许在运行时动态创建一个代理类,这个代理类实现了一组接口,并将所有方法调用转发到一个 InvocationHandler 实例.下面是 JDK ...
- HashMap集合遍历随机性问题分析
一.原因分析 1.1 HashMap对象的遍历 HashMap的遍历是通过此类中字段table数组进行顺序遍历,原因如下所示: 1 #HashMap 迭代遍历源码 2 public final boo ...