如果未建立连接,则无法更新特征值

6个职位/0个新职位
最后一篇文章
安基特达夫
离线
最后一次见到:2年9个月前
已加入:2015-09-03 20:14
如果未建立连接,则无法更新特征值

您好!

我正在使用ble\u app\u配置文件作为基础,并尝试将一个值写入基于UART的特征。我可以从UART回调发送keu msg来设置这个值,但是只有当有一个连接到580的中央处理器时,这个值才会改变。如果没有中央连接到580,则所有更新都将被丢弃。

如何确保通过UART接收到的值反映在特性中,而不管中央处理器是否连接到580?

谢谢,

关键词:
设备:
LT\U对话框(未验证)
你好,

你好,
如果没有有效的连接,配置文件将被禁用。如果要将值更新为给定配置文件中的特征,则需要启用该配置文件。您可以搜索CUSTS1\u ENABLE\u REQ作为如何启用配置文件的示例,因为您的项目基于ble\u app\u profile。

安基特达夫
离线
最后一次见到:2年9个月前
已加入:2015-09-03 20:14
谢谢你的快速回复,我很高兴

谢谢你的快速回复,我试试看。

1如果我想将值存储在全局变量中,并在启用概要文件时加载该值,这可能吗?什么方法能让我这么做?我应该在哪里调用这样的方法?

2启用配置文件是否会影响功耗?

安基特达夫
离线
最后一次见到:2年9个月前
已加入:2015-09-03 20:14
还有,打电话

还有,打电话
"
app\u custs1\u enable((uint16\u t)app\u env->conhdl);
"
在用户应用程序中,初始化没有任何区别。这个放在什么地方合适?

谢谢

LT\U对话框(未验证)
你好,

你好,
我试着复制你的案子。即使没有连接,特征值仍然是可更新的。以下是我所做的:
在项目ble\u app\u profile中,更新函数custs1\u disable()末尾的CUST1\u IDX\u BUTTON\u STATE\u VAL的值,该函数在配置文件CUST1收到GAPC\u DISCONNECT\u IND消息时调用。

你能不能也检查一下输入参数的正确性,也许还有attmdb\u att\u set\u value()的错误代码?我以为你用的是同一个函数。

无效custs1\u disable(uint16\u t conhdl)
{
...
//进入空闲状态
keu state\u set(TASK\u CUSTS1,CUSTS1\u IDLE);

静态uint8\U t s\U值=0x03;
attmdb\u att\u set\u value(custs1\u env.shdl+CUST1\u IDX\u BUTTON\u STATE\u VAL、1和s\u value);
s_值++;
}

安基特达夫
离线
最后一次见到:2年9个月前
已加入:2015-09-03 20:14
哦,我想让

哦,我正试图启用您之前建议的配置文件,但没有成功。

attmdb\U att\U set\U值有效,谢谢!

主题已锁定