0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何通过雅特力AT32WB415的蓝牙模块来实现ANCS的功能

雅特力 AT32 MCU 2023-12-30 08:14 次阅读

概述

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. 服务设置流程72ade862-a6a8-11ee-9ee2-92fbcf53809c.png下面以来电通知为例讲解通知接收流程1) IOS设备发送来电通知,UID=32) BLE模块获取通知属性,UID=3,需要获取内容包含Title,Message和AppID3) IOS设备将UID=3的通知数据发送给BLE设备4) BLE模块发送得到的AppID获取App属性,需要获取内容为DisplayName5) IOS设备将该AppID的DisplayName发送给BLE设备图2. 通知接收流程72bb5664-a6a8-11ee-9ee2-92fbcf53809c.png对于本案例,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)来模拟通知显示

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • BLE
    BLE
    +关注

    关注

    12

    文章

    608

    浏览量

    58839
  • 蓝牙模块
    +关注

    关注

    30

    文章

    454

    浏览量

    55117
  • 雅特力
    +关注

    关注

    0

    文章

    135

    浏览量

    7772
收藏 人收藏

    评论

    相关推荐

    AT32WB415 OTA Application Note

    AT32WB415 OTA Application Note前言这篇应用笔记描述了如何通过WB415蓝牙模块
    发表于 08-26 19:13

    ANCS应用笔记

    这篇应用笔记描述了如何通过WB415蓝牙模块ANCS
    发表于 09-27 19:30

    AN0152—AT32WB415直接测试模式入门指南

    AT32WB415直接测试模式入门指南前言蓝牙产品要印上 SIG 的 logo, 就必须通过认证,而认证的方式是透过直接测试模式控制 HCI, 使 RF 进行动作。本入门指南将简单介绍如何使用范例
    发表于 11-22 19:03

    AT32WB415 SPP Application Note

    *附件:AN0156_AT32WB415_SPP_Application_Note_V2.0.1.zip前言这篇应用笔记描述了如何通过AT32WB415蓝牙
    发表于 01-05 19:47

    使用AT32WB415的无线蓝牙模块来自定义BLE相关的功能

    这篇应用笔记描述了使用AT32WB415的无线蓝牙模块来自定义BLE相关的功能,如何进行无线蓝牙模块
    发表于 10-25 08:09

    AT32WB415安全库应用说明

    这篇应用笔记主要在阐述AT32WB415系列安全库区的应用原理、软件使用方法及范例程序。
    发表于 10-26 06:54

    AT32WB415时钟配置入门指南

    AT32WB415时钟配置本应用入门指南主要介绍两部分内容:1、基于提供的V2.x.x 的板级支持包进行时钟源码的配置及修改2、如何
    发表于 10-26 06:34

    如何通过AT32WB415蓝牙模块进行OTA升级

    AT32WB415 OTA Application Note描述了如何通过AT32WB415蓝牙模块
    发表于 10-26 06:43

    如何通过AT32WB415蓝牙模块实现ANCS功能

    AT32WB415 ANCS Application Note描述了如何通过AT32WB415蓝牙模块
    发表于 10-26 07:13

    AT32WB415直接测试模式入门指南

    AT32WB415直接测试模式入门指南介绍如何使用范例程序测试RF功能
    发表于 10-26 07:47

    如何通过AT32WB415蓝牙模块实现SPP协议

    AT32WB415 SPP Application Note描述了如何通过AT32WB415蓝牙模块
    发表于 10-26 07:58

    AT32WB415 BLE MIDI入门指南

    AT32WB415 BLE MIDI入门指南介绍如何建立一个MIDI的控制器,发送控制讯号给手机进行播放。
    发表于 10-26 07:24

    雅特力重磅推出AT32WB415系列蓝牙BLE 5.0 MCU,开创“无线”物联网未来

    引言:雅特力AT32WB415系列蓝牙BLE5.0MCU自2022年5月正式发布,产品公告发出后收到众多不错反响,已经成功应用于消费性电子、智能家居、工业物联网等众多领域,以下为(5月17
    的头像 发表于 08-16 09:27 639次阅读
    雅特力重磅推出<b class='flag-5'>AT32WB415</b>系列<b class='flag-5'>蓝牙</b>BLE 5.0 MCU,开创“无线”物联网未来

    AT32WB415安全库应用说明

    电子发烧友网站提供《AT32WB415安全库应用说明.pdf》资料免费下载
    发表于 12-18 11:02 0次下载
    <b class='flag-5'>AT32WB415</b>安全库应用说明

    如何通过雅特力AT32WB415蓝牙模块来进行OTA升级

    概述OTA(Over-The-AirTechnology)即空中下载技术,利用OTA技术可以在不接触(接线)的情况下对芯片程序进行升级。AT32WB415的OTA是通过蓝牙的方式实现
    的头像 发表于 12-20 08:15 288次阅读
    如何<b class='flag-5'>通过</b>雅特力<b class='flag-5'>AT32WB415</b>的<b class='flag-5'>蓝牙</b><b class='flag-5'>模块</b>来进行OTA升级