概述
ancs(apple notification center service)即苹果通知中心服务,此服务为外围蓝牙设备(手表、耳机等)访问ios设备(iphone、ipad等)上生成的多种通知提供了一种简单方便的机制。ancs围绕三个原则设计:简单性、高效性和可扩展性,因此,不论是简单的led设备还是具有大显示屏的功能强大的“配套”设备等配件来说,这项服务都具有很高的可用性。ancs是基于ble协议中的通用属性协议(generic attribute profile,gatt)来实现的,即ancs是gatt协议的一个子集。作为gatt客户端的蓝牙设备可以在使用ancs时自由访问和使用ios设备提供的其他服务。通常ancs传输的所有数值的字节序都应为小端,传输的字符串值都应由utf-8编码的unicode字符组成。
at32wb415 ancs程序设计
ancs服务特征
ancs的服务uuid为7905f431-b5ce-4e99-a40f-4b1e122d00d0。由于ios的特性,ble设备应查找并订阅gatt服务的service changed特征,以便随时监控ancs潜在的发布和发布取消。ancs提供三个服务特征:通知源(notification source):uuid 9fbf120d-6301-42d9-8c58-25e699a21dbd(通知)控制点(control point):uuid 69d1d8f3-45e1-49a8-9821-9bbdfdaad9d9(可写响应)数据源(data source):uuid22eac6e9-24d6-4bb5-be44-b36ace7c7bfb(通知)所有这些特征都需要授权才能访问,即ble设备连接上ios设备并且完成配对和绑定后才能进行访问。这三个特征中对通知源特征的支持是强制性的,而对控制点特征和数据源特征的支持是可选的。关于ancs更多详细内容请参阅:apple通知中心服务(ancs)规范(进入文末阅读原文查看an0147文档)
ble模块软件设计
对于ble模块部分的软件,主要就是依据上述ancs规范来设计的,也就是ancs规范的软件实现。在使用ancs服务前需要进行服务设置,流程如下:1) 等待ios设备连接ble模块,并完成配对和绑定2) ble模块获取ancs服务和特征3) ble模块订阅数据源(可选项)和通知源,等待ancs发送通知图1. 服务设置流程下面以来电通知为例讲解通知接收流程1) ios设备发送来电通知,uid=32) ble模块获取通知属性,uid=3,需要获取内容包含title,message和appid3) ios设备将uid=3的通知数据发送给ble设备4) ble模块发送得到的appid获取app属性,需要获取内容为displayname5) ios设备将该appid的displayname发送给ble设备图2. 通知接收流程对于本案例,ble模块能够处理的ancs通知包括来电通知和应用通知两种,用户可按照这两种通知的处理方式来开发其他ancs通知处理函数。对于不同的通知产生的不同事件ble模块会通过串口发送不同的数据标志给mcu端,如下:
0x5aa501,表示接收到来电通知添加事件(categoryid=1,eventid=0)0x5aa502,表示接收到来电通知移除事件(categoryid=1,eventid=4)0x5aa503,表示接收到应用通知添加事件(categoryid=4,eventid=0)0x5aa504,表示接收到应用通知移除事件(categoryid=4,eventid=4)mcu软件设计
上面提到ble端对接收到的数据进行判断后会通过串口发送不同的数据标志给到mcu端,mcu端对接收到的ble串口数据处理方式如下:1) 通过串口(usart3)接收ble模块发送的通知数据2) 接收到0x5aa501,点亮led2提示来电通知3) 接收到0x5aa502,关闭led2提示来电通知移除4) 接收到0x5aa503,点亮led3提示应用通知5) 接收到0x5aa504,关闭led3提示应用通知移除6) 除ancs通知外,对蓝牙连接状态也会进行显示:接收到0x5aa505,点亮led4提示蓝牙连接配对成功接收到0x5aa506,关闭led4提示蓝牙连接断开7) 除led表示通知类型外,还会将接收到的通知数据发送到串口(usart2)来模拟通知显示
基于微功耗IC实现延长监护仪电池寿命的方案解析
CES 2019:松下将加快开发强化新一代AI住宅
易络盟对EnOcean与IBM技术解读
如何选用合适的晶振
三星GalaxyA9s拆解 近年来内部结构最不像三星的三星手机
如何通过雅特力AT32WB415的蓝牙模块来实现ANCS的功能
从各个维度再次介绍Spring Boot定时任务调度
美的运动控制让机械采摘升级更优化
超声成孔成槽检测仪的说明
贴片电感如果坏掉了会有什么现象
Wakefield激光加速器 - 能量里程碑
MAX6070,MAX6071高精度串联电压基准
整流电路有哪几种
路由器的工作原理是什么?
变频器哪个牌子比较好_变频器厂家排名(国产)
三星S8比iPhone7更好用?那只是因为iphone8还没发布!
Intel第四代扩展处理器重拾双芯设计
干货!智能照明无线传输2种协议深度对比分析
欧盟开启新一轮电池扶持计划 为何来自亚洲的电池企业被排除在外
家用电器常用灭菌标准和测试方法