添加更多服务/特性到BLE_APP_PERIPHERAL

大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
9个员额/ 0个新员额
最后发表
rajucoolsuraj
离线
最后看到:4个月2个星期前
加入:2018-12-12 16:09
添加更多服务/特性到BLE_APP_PERIPHERAL

你好,对话框,
我正在试验BLE_APP_PERIPHERAL,并包含了SVC4服务(总共4个服务)和一个特性(CHAR1);
在编译应用程序和调试时,

1.可以包含特征声明“DECL”

2.在添加特征“值”时——设备不发布(基于功率分析器),但程序在调试模式下运行。

我是否可以知道在SDK6.0.10中对BLE_APP_PERIPHERAL或任何其他变量进行更改以将SVC4中的特性增加到至少10的步骤。

谢谢,期待你的尽快回复。

设备:
PM_Dialog
离线
最后看到:7小时51分钟前
工作人员
加入:2018-02-08 11:03
嗨rajucoolsuraj,

嗨rajucoolsuraj,

该设备停止广告最有可能的原因是代码可能卡在某个地方。你能在调试模式下运行它并热连接调试器吗?代码是否会在某个地方卡住,例如在NMI或WDOG处理程序或任何断言中?

谢谢,PM_DIalog

rajucoolsuraj
离线
最后看到:4个月2个星期前
加入:2018-12-12 16:09
你好,对话框,

你好,对话框,

我可以知道如何热附加调试器的过程吗?

谢谢

rajucoolsuraj
离线
最后看到:4个月2个星期前
加入:2018-12-12 16:09
(SVC4_IDX_SVC)
[SVC4_IDX_SVC] = {(uint8_t*)&att_decl_svc, ATT_UUID_128_LEN, PERM(RD, ENABLE), sizeof(custs1_svc4), sizeof(custs1_svc4), (uint8_t*)&custs1_svc4}, //数据特征声明[SVC4_IDX_DATA_CHAR] = {(uint8_t*)&att_decl_char, ATT_UUID_16_LEN, PERM(RD, ENABLE), 0,0, NULL},/ /数据特征值[SVC4_IDX_DATA_VAL] = {SVC4_DATA_UUID_128 ATT_UUID_128_LEN,烫(RD,使)sizeof (struct data_t), 0,零},/ /数据特征配置描述符[SVC4_IDX_DATA_NTF_CFG] = {(uint8_t *) &att_desc_cfg ATT_UUID_16_LEN,烫(RD,使)|烫(WR,启用),sizeof (uint16_t), 0,零},/ /数据特点用户描述[SVC4_IDX_DATA_USER_DESC] = {(uint8_t *) &att_desc_user_desc ATT_UUID_16_LEN,烫(RD,启用),sizeof (DEF_SVC4_DATA_USER_DESC) - 1, sizeof (DEF_SVC4_DATA_USER_DESC) - 1, DEF_SVC4_DATA_USER_DESC}, / /特点宣言[SVC4_IDX_CHAR] = {(uint8_t *) &att_decl_char ATT_UUID_16_LEN,烫(RD,启用),0,0,零},/ /特征值[SVC4_IDX_VAL] = {SVC4_UUID_128 ATT_UUID_128_LEN,烫(RD,启用),DEF_SVC4_CHAR_LEN, 0,零},/ /用户特征描述[SVC4_IDX_USER_DESC] = {(uint8_t *) &att_desc_user_desc ATT_UUID_16_LEN,烫(RD,启用),sizeof (DEF_SVC4_USER_DESC) - 1, sizeof (DEF_SVC4_USER_DESC) - 1, DEF_SVC4_USER_DESC},

你好,对话框,
这似乎是一种带有特征的特殊行为。

我一直试图调试上面的代码示例-

在数据特性数据库中加入CCCD;该设备不做广告。

关于注释掉Data Char的CCCD属性这个设备开始做广告。

为什么这种行为很奇怪?

问候

rajucoolsuraj
离线
最后看到:4个月2个星期前
加入:2018-12-12 16:09
你好,对话框,

你好,对话框,
CCCD声明需要正确的许可,
因此,行为。

谢谢

PM_Dialog
离线
最后看到:7小时51分钟前
工作人员
加入:2018-02-08 11:03
嗨rajucoolsuraj,

嗨rajucoolsuraj,

设备停止发布,因为代码卡在某个地方,归因于WDOG或NMI或任何断言,由于内存分配失败。正如我在之前的文章中提到的,使用热调试器运行固件将非常有帮助。按照这种方式,您可以确定代码堆栈的原因。例如,如果原因是WDOG过期,则会触发WDOG处理程序。为了学习如何附加调试器,请阅读教程8:调试方法教程。

谢谢,PM_Dialog

rajucoolsuraj
离线
最后看到:4个月2个星期前
加入:2018-12-12 16:09
代码被配置

代码配置错误。
现在它的工作。
感谢您提供的调试链接。

问候

PM_Dialog
离线
最后看到:7小时51分钟前
工作人员
加入:2018-02-08 11:03
嗨rajucoolsuraj,

嗨rajucoolsuraj,

很高兴你解决了你的问题,谢谢你接受我的回答。

谢谢,PM_Dialog

PM_Dialog
离线
最后看到:7小时51分钟前
工作人员
加入:2018-02-08 11:03
嗨abc1724,

嗨abc1724,

在SDK5.0.4中有2个自定义服务可用,你可以在sdk\ble_stack\profiles\custom\custs sdk路径下找到它们。例如,在ble_app_peripheral示例中,只实现了自定义服务1。为了添加第二个服务,您应该执行以下步骤:

  • 将sdk_profiles文件夹下的custs2 / custs2_task导入到项目中
  • #include "custs2.h" into user_profiles_config.h '
  • #define EXCLUDE_DLG_CUSTS2 (0) into user_modules_config.h
  • 然后,遵循自定义服务1的实现。请检查教程3:构建自定义概要文件教程来自我们的支持端口。这可能对你有帮助!

如果你想创建第三个自定义服务,SDK没有提供,你应该自己做。这不是一个简单的实现,因为需要修改一些SDK部件。请查阅有关定制服务的教程。

//www.wsdof.com/sites/default/files/training_02_custom_profile_example_v1.2_0_0.pdf

但是,如果您正在开始一个新的设计或项目,我们建议您从我们最新的名为DA14531的Smartbond设备开始。SDK得到了很大的改进,我们有很多代码示例和改进的文档,还有软件路线图支持。DA14580产品族和SDK5没有任何软件路线图支持。

如果您有任何后续问题,我建议您创建一个新的论坛帖子。

谢谢,PM_Dialog