9个帖子/ 0新
最后一篇文章
氰基
离线
最后一次见到:6年3个月前
加入:2014-11-13 20:59
样本128问题

我正在尝试修改sample128设计,以便它一次可以处理超过1个字节的数据,我运气不太好。是否有一个版本可以一次写入超过1个字节?谢谢

维桑
离线
最后一次见到:5年9个月前
格鲁鲁 主人
加入:2014-06-26 08:49
嗨,蓝精灵,

嗨,蓝精灵,
您可以通过为Sample128_Task.c行中的Value属性进行更多空间来开始。使用示例128中描述的方法创建新服务比其他服务使用更棘手。您可以将DISS Service Files Cons.c和dist_task.c身份视为基础

氰基
离线
最后一次见到:6年3个月前
加入:2014-11-13 20:59
谢谢你的回复

感谢您的回复Vesa,为value属性分配更多空间是我已经尝试过的。当我这样做时,我到达NMI处理程序中的断点,该断点表示看门狗已过期。

也许有一个更好的例子比sample128更好?

我的需求很简单,我希望我的移动应用程序向DA14580发送数据请求,DA14580将以约30字节的信息进行响应。

维桑
离线
最后一次见到:5年9个月前
格鲁鲁 主人
加入:2014-06-26 08:49
嗨,蓝精灵,

嗨,蓝精灵,

这个错误可能意味着程序被卡住了。关于这个错误,很难说别的。我记得128位UUID服务示例中显示的方法很难使用,因为有很多幻数. 我建议去看dis服务。如果在profiles文件夹中打开文件diss.c和diss_task.c,您会发现使用此方法很容易理解概要文件结构:

const struct attm_desc diss_att_db[DIS_IDX_NB]=
{
//设备信息服务声明
[DIS_IDX_SVC]={ATT_DECL_PRIMARY_服务,PERM(RD,ENABLE),sizeof(diss_DIS_SVC),
大小(diss_disu svc),(uint8_t*)和diss_disu svc},
//制造商名称特性声明
[DIS_IDX_MANUFACTURER_NAME_CHAR]={ATT_DECL_CHARACTERISTIC,PERM(RD,ENABLE),sizeof(diss_MANUFACTURER_NAME_CHAR),
sizeof(diss_制造商名称字符),(uint8_t*)和diss_制造商名称字符},
//制造商名称特征值
[DIS_IDX_MANUF_NAME_VAL]={ATT_CHAR_MANUF_NAME,PERM(RD,ENABLE),DIS_VAL_MAX_LEN,0,NULL},
...
};

在diss_task.c中,您有一个函数diss\u创建\u数据库\u请求\u处理程序,它将创建数据库的服务。看看函数调用attm_svc_create_db()在创建数据库请求处理程序中。没有必要用手做神奇的计算。

不幸的是,此方法只能使用较短的UUID定义。

我发现用当前的SDK创建新的配置文件非常麻烦。希望在SDK的未来版本中会有一些缓和。

如果您正在创建一个全新的概要文件,请记住修改da14580_config.h、prf_utils.c、rwble_hl_config.h、app_api.h、app_task_handlers.h和rwip_config.h。希望我没有遗漏任何文件

如果你只需要回复30字节的数据,你能考虑只在广告包中不断发送吗?那么手机就不需要请求数据了。或者,在发送数据之前,您是否还需要向设备发送某些特定数据?

氰基
离线
最后一次见到:6年3个月前
加入:2014-11-13 20:59
再次感谢你的vesa

再次感谢你这么好的回复。我会仔细检查你说的话,并继续努力。

我确实需要先向设备发送一些特定的数据,然后返回正确的响应,所有有效响应都少于30字节。因此,这似乎是一个简单的任务,但我显然有一些麻烦的SDK。

氰基
离线
最后一次见到:6年3个月前
加入:2014-11-13 20:59
我有运气了

我很幸运地使用了一个自定义配置文件来发送我的30个字节,但现在我想知道是否可以通过uart添加一个类似于“外围示例”的文本菜单。

更详细地说,我想做的是通过UART打印菜单,选择一个选项(1,2,3,4。。。等)并让DA14580保存一个20字节的值,然后我的移动应用程序可以读取该值。

关于最简单的实现方法有什么想法吗?我曾尝试将它添加到“arch_main()”中,就像在“外围示例”中一样,但这似乎一点也不起作用,因为它在将菜单打印到UART时不断崩溃。

谢谢

维桑
离线
最后一次见到:5年9个月前
格鲁鲁 主人
加入:2014-06-26 08:49
嗨,蓝精灵,

嗨,蓝精灵,

请在项目中包括应用程序控制台(dk_apps/src/modules/app/src/app_utils)。应用程序控制台提供拱门印刷厂用于打印格式化文本的函数。语法类似于printfC标准lib提供的功能。不幸的是,App_Console似乎没有提供目前收集输入的手段。请参阅UART.h在peripheral_examples源文件夹中。在那里,你可以找到uart字节功能。确保在da14580_config.h中启用printf函数:#定义CFG_PRINTF. 否则这些函数将不存在

谢谢

氰基
离线
最后一次见到:6年3个月前
加入:2014-11-13 20:59
再次感谢你,维萨。确切地

再次感谢你,维萨。正是我需要的。

对话
离线
最后一次见到:1个月2周前
工作人员
加入:2013-12-05 14:02
谢谢你,维萨!我们真的

谢谢你,维萨!我们非常感谢您帮助DA14580用户。如果你很快就要去度假了,祝你圣诞快乐,

BR JE_对话