你好,
我想知道如何阅读poperty添加到一个自定义的特点,我添加了一些自定义服务app_peeripheral项目,我能通知应用程序数据和阅读。现在我想实现这些服务的阅读功能,我reffered ADC val的例子,但当我来自应用程序的请求时,我看不出有什么价值。让我用一个例子向你解释,在app_bass.c文件(电池服务器服务)一旦bass_enable函数被调用,它启动一个计时器,一旦计时器到期,电池值使用set_battery_level函数更新到GATT数据库。我希望通过任何定制服务来实现这一点。我已经在SDK中引用了所有的项目,但还没有发现任何具有read属性的自定义特征。
嗨_asmaitha,
抱歉耽误了时间,新年快乐。请查阅在DA14531和DA14585/DA14586设备上创建自定义GATT配置文件特征从DA14531支持页面。本教程的目的是解释如何创建自定义服务和热添加更好的属性到特征。
谢谢,PM_Dialog
嗨PM_Dialog,
您在上面分享的教程只解释了如何使用notify/指示发送数据。由于所有这些动作在我们的DA14531端都被注册为写事件,我引用了ADC和其他几个示例来通知和指示,并成功实现了相同的操作。我对read事件很感兴趣。据我所知,当从移动应用端发出读请求时,我们的应用程序代码不会得到任何事件/中断。当我从用户端读取数据时,我希望看到特定特征的值。我已经将read属性设置为一个特征,我想知道现在如何将数据发送给它。
感谢和问候,
_asmaitha
嗨_asmaitha,
请查看SDK的BLE_APP_PERITELAL示例。它位于Projects \ target_apps \ ble_examples \ ble_app_peripheral sdk路径。SVC1_IDX_ADC_VAL_1_CHAR已读取和通知属性。一旦0x01写入控制点特性,那么应用程序将向设备发送通知。看看app_adcval1_timer_cb_handle()函数。“值”存储到REQ->值中。
谢谢,PM_Dialog
你好,
请阅读上面的查询,我已经实现了通知财产和成功测试了,它将正常工作。我对……感兴趣读属性,因为这是我们的要求。下面是我提到的一些例子:
1)ble_app_peripheral.:服务3的特征3,该服务启用了read属性,但在读取请求完成时不传递任何数据。
2)app_prox_reporter:使用读取属性的低音服务,但exple不解释它们是如何清楚的。
的申请- >值只用于发送作为通知包的一部分,它不更新gatt数据库。以下是我所做的测试
使用通知发送步数数据每1秒,然后当我禁用通知和做一个读请求的值域apperas空白。
我已将输出连接到下面的读取和通知。
嗨_asmaitha,
我想我已经达到你的要求了。请参考SDK的ble_app_peripheral示例和“ADC值1”特性。在cust1数据库中,请检查ADC值1特征值- SVC1_IDX_ADC_VAL_1_VAL:
根据attm_db_128.h中的属性描述- attm_desc_128 struct,最后两个参数是元素的当前长度及其值。因此,如果您希望通过对等设备读取它,则应该将该值传递给SVC1_IDX_ADC_VAL_1_VAL。例如:
你也可以传递一个类型转换的值(uint8_t *)。特定特征值的长度为2字节(DEF_SVC1_ADC_VAL_1_CHAR_LEN)。希望这可以帮助!
谢谢,PM_Dialog
你好,
非常感谢,这很有帮助。当我做一个读请求时,我可以在应用程序上看到数据。非常感谢。