Dialog14585BLE主从通信中主机服务修改

本文详细介绍了如何使用Dialog DA14585进行BLE主从机通信的代码调试,特别是针对官方串口透传DSPS demo的修改。主要内容包括从机服务中的数据接收和发送特征配置,主机如何添加从机服务到数据库,以及数据收发的函数接口。通过这些步骤,实现了主从机间的数据通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

勤基科技 王泽行
本文主要讲解如何对特定BLE从机来开发主机BLE的代码调试,以实现主从机的数据通信,主从机芯片是Dialog的DA14585,并且基于官方串口透传(DSPS)的demo:
DA14585_DSPS\projects\target_apps\dsps\dsps_host\Keil_5。

该demo在官网https://support.dialog-semiconductor.com下DA14585的Reference designs板块能够下载。

一、在从机工程中,通信只有一个服务,但是这一个服务包括两个特征,一个用于接收数据,一个用于发送数据如下:

#define DEF_SVC1_UUID_128              {0xfb,0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0xf0, 0xff, 0x00, 0x00}
#define DEF_SVC1_ADC_VAL_1_UUID_128     {0xfb,0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0xf2, 0xff, 0x00, 0x00}//R
#define DEF_SVC1_ADC_VAL_2_UUID_128      {0xfb,0x34, 0x9b, 0x5f, 0x80, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x00, 0xf1, 0xff, 0x00, 0x00}//T

const struct prf_char_def spsc_sps_char_16[SVC1_CHAR_MAX] =
{
    [SVC1_ADC_VAL_1_CHAR]    = {DEF_SVC1_ADC_VAL_1_UUID_16, ATT_MANDATORY, ATT_CHAR_PROP_NTF|ATT_CHAR_PROP_RD},
    [SVC1_ADC_VAL_2_CHAR]    = {DEF_SVC1_ADC_VAL_2_UUID_16, ATT_MANDATORY, ATT_CHAR_PROP_WR|ATT_CHAR_PROP_RD},
};

SVC1_ADC_VAL_1_UUID_128用于从机发送数据给主机,且以notify方式发送
SVC1_ADC_VAL_2_UUID_128用于主机发送数据给从机,且以GATTC_WRITE方式发送

二、在通过上面第一步添加好特征UUID及句柄后,我们需要在spsc_sps_char_desc中定义针对特征的描述符,如下:

     /// State machine used to retrieve SPS service characteristic description informationconst struct prf_char_desc_def spsc_sps_char_desc[SVC1_DESC_MAX] =
     {    
     ///SPS Client Config  
       [SVC1_ADC_VAL_1_CLI_CFG]  = {ATT_DESC_CLIENT_CHAR_CFG, ATT_MANDATORY, SVC1_ADC_VAL_1_CHAR},		
       [SVC1_ADC_VAL_1_USER_CFG]  = {ATT_DESC_CHAR_USER_DESCRIPTION, ATT_MANDATORY, SVC1_ADC_VAL_1_CHAR},   
       [SVC1_ADC_VAL_2_USER_CFG]  = {ATT_DESC_CHAR_USER_DESCRIPTION, ATT_MANDATORY, SVC1_AD
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值