首页 > 其他分享 >CH592 CH582 CH573 Central 例子应用说明三 (发现服务与特征值)

CH592 CH582 CH573 Central 例子应用说明三 (发现服务与特征值)

时间:2024-03-12 16:12:49浏览次数:27  
标签:特征值 Central CH592 char1 CH573 char3 value 句柄 Characteristic

本文以 BLE Central 工程为例,解析 CH592 作为主机时是如何发现从机的服务和特征值。

一个Gatt包含多个服务(Service);一个服务包含多个特征(Characteristic);一个特征包含多个描述符;

Service、Characteristic、Descriptor,这三部分都由UUID作为唯一标示符。

Service中的Characteristic是手机与BLE终端交换数据的关键。

蓝牙连接成功之后,数据的传输是对特征值(Characteristic)这个参数进行读,写,通知等操作;

为了方便管理,我们可能有不止一个特征值,我们可以根据需要创建多个特征值,比如一个特征值是记录环境温度的值,一个特征值是记录设备的温度值,等等。为了说明方便,每个特征值都有他的属性,所以我们还会见到其他一些描述,例如权限(permission),值(value),描述(descriptor)。

1、多个特征值句柄如何发现

主机通过“从机服务的 UUID”发现从机相对应的服务,再通过分别发送“特征值的 UUID”
依次获取到特征值句柄。
由于有些特征值句柄是获取不到的(只写属性的无法读取到句柄 handle值)。

 2、如何获取 无法通过主动获取的方式获得特征值句柄

例如 char3 的特征值句柄获取不到,我们可以通过获取到 char1 的特征值句柄,再进行偏移
计算获得 char3 的特征值句柄。
假设 char1 的特征值句柄是 0x23,通过查询属性表可知 char1 的 value 位置与 char3 的 value
位置相差 6,则 char3 的特征值句柄=0x23+6=0x29。

 

 通过查询属性表可知 char4 的 configuration位置与 char1 的 value
位置相差 10,则 char4 的特征值句柄=0x23+6=0x2d,也可以与上图对应。

 

标签:特征值,Central,CH592,char1,CH573,char3,value,句柄,Characteristic
From: https://www.cnblogs.com/debugdabiaoge/p/18068276

相关文章

  • Bad magic number for central directory
    Badmagicnumberforcentraldirectory运行代码输出如下bug:File"/home/a/Prediction/Predict_Models.py",line153,insave_resultsexisting_df=pd.read_excel(output_file_path)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File"/home/a......
  • 基于CH592x的硬件I2C驱动(AHT20)调试记录
    前言:AHT20是一个I2C器件,恰好CH592芯片资源有硬件I2C我们可以尝试使用592的硬件I2C去驱动AHT20。资料:I2C接口使用指南(可见EVT中I2C例程文件下),AHT20数据手册(可以在立创商城直接下载)数据手册中对这个器件的驱动流程也有说明,分别对几个步骤进行解读: 1、根据手册提示开机后,要等待......
  • 2020-2021 ICPC East Central North America Regional Contest (ECNA 2020)
    Preface队友C麻了我直接3h下班雀魂启动,如果时间多点感觉还有AK希望不过不得不说北美场难度都集中在模拟题上了,一般压轴都是数学或者几何,而这类题目遇到徐神祁神就是洒洒水了A.AllintheFamily出题人真是丧心病狂,不过这题只是看起来恶心实际写起来感觉还好做法本身由于树......
  • CH573 CH582 CH579 TMR例程
    CH573CH582CH579外设TMR例程讲解1.定时器0中断IO翻转#if1/*定时器0,设定100ms定时器进行IO口闪灯,PB15-LED*/GPIOB_SetBits(GPIO_Pin_15);GPIOB_ModeCfg(GPIO_Pin_15,GPIO_ModeOut_PP_5mA);TMR0_TimerInit(FREQ_SYS/10);//设置定时时间10......
  • 2022-2023 ICPC East Central North America Regional Contest (ECNA 2022)
    Preface闲了两天没训练,今天又开始上班,结果唐得发昏后期也没题可写直接光速下班只能说感觉老外的题目难度跨度都好大,easy确实简单,hard确实难,medium确实少A.A-MazingPuzzle题目看起来很复杂,但仔细一想会发现有用的状态总数只有\(4n^2\)种即我们可以暴力记录下两个机器人的坐......
  • Central Collector Installation · glowroot/glowroot Wiki
    *[glowrootjava简单的轻量的apm工具-荣锋亮-博客园](https://www.cnblogs.com/rongfengliang/p/16230407.html)*[CentralCollectorInstallation·glowroot/glowrootWiki·GitHub](https://github.com/glowroot/glowroot/wiki/Central-Collector-Installation#opt......
  • CH582 CH592 CH573 IO功能映射
    CHBLE系列芯片IO功能脚都是固定的,不可以随意指定。但是部分功能脚有映射功能,可以固定映射到某个对应IO(寄存器设置的固定映射)功能脚有默认的IO,通过映射可以映射到对应固定的IO上,如下所示:在引脚图上标记显示(以TXD0和RXD0为例,默认在PB4PB7,可以映射到PA14PA15,这两个脚名称是TX......
  • CH573 CH582 CH592 CH579 看门狗WDOG例程
    看门狗功能是基于一个8位的递增计数器,计数时钟周期为131072/Fsys。当开启了看门狗超时复位功能后,一旦此计数器溢出会复位整个系统。CH579例程中主频都是32M,看门狗超时复位最长时间为131072/32000000*255=1.04448s。CH573CH582CH592例程中主频都是60M,看门狗超时复位最长时间为......
  • CH573 CH582 CH592 CH579常用库函数记录
    一:系统篇:软件复位SYS_ResetExecute();延时函数mDelaymS(1);//延时1msmDelayuS(1);//延时1us设置晶体匹配电容 voidHSECFG_Capacitance(HSECapTypeDefc);//外部高频32MHZvoidLSECFG_Capacitance(LSECapTypeDefc);//外部低频32.768KHZ 开启DCD......
  • (CH592-CH305)2K鼠标上报率
    前言:使用CH592与CH305可实现2K鼠标上报率功能,具体功能和实现做以下讲解。描述:需要使用2块CH592的开发板和1块CH305开发板。2块CH592分别作为2.4GMouse(TX)和Dongle(RX)端的无线设备;CH305作为Dongle端连接上位机。连接示意图参考:代码烧录与接线:①烧录:由沁恒官方提供的3份......