添加个人资料数据库

9个帖子/ 0新
最后一篇
滑轨
离线
最后一次露面:5年10个​​月前
专家
加入:2014-08-12 08:01
添加个人资料数据库

嗨对话框

我对特征和价值属性有点混淆。
我读过um_b_003.pdf的第10.4章,它告诉我如何在数据库中添加服务和属性。
但我不明白这个名字是“attmdb_add_attribute()”的函数......

为什么演示代码使用函数添加“服务属性”,第二个参数是ATT_UUID_128_LEN
添加“char属性”第二个参数是ATT_UUID_128_LEN + 3?

为什么第三个参数位是ATT_UUID_16_LEN,而添加“CHAR属性”?
我对配置文件数据库的结构感到困惑......

是否有关于配置文件数据库结构的文档?
谢谢。

mhv_dialog
离线
最后一次露面:2个月1周前
职员
加入:2013-12-06 15:10
嗨Sklin,

嗨Sklin,

服务属性有一个价值字段,UUID,它是16位或128bits宽。一种特征属性具有UUID(16或128位宽)和16位手柄价值领域以及一个选项字段为8位宽。因此,128bit特征属性的总内存大小是16字节uuid + 2bytes句柄+ 1字节选项。

我希望能帮助你。GATT数据库将在BT规范中描述,我发现下面的书真的有用,可用于了解属性。

这本书可以在亚马逊找到:

http://www.amazon.com/bluetooth-low-energy-developers-hablebook/dp/013288836x#

滑轨
离线
最后一次露面:5年10个​​月前
专家
加入:2014-08-12 08:01
嗨mhv_dialog.

嗨mhv_dialog.

在演示代码中的“Sample128_Task.c”中的文件名中,我看到它会添加一个stort_size的服务是58。
我可以认为它是
58 =
服务UUID(16字节)+
特征1描述符(属性(1byte)+句柄(2byte)+ UUID(16byte))+
特征1价值(1byte)+的lenth
特征2描述符的LENTH(属性(1byte)+句柄(2byte)+ UUID(16byte))+
特征2值(1byte)+的lenth
特征2 Config2 Config(2字节)

但是attr_type的使用是什么struct att_char128_desc.
谢谢你。

mhv_dialog
离线
最后一次露面:2个月1周前
职员
加入:2013-12-06 15:10
ATT_CHAR128_DESC STRUCT.

ATT_CHAR128_DESC.struct是一个特征的占位符。第一个特征描述符实际上被定义为:

struct att_char128_desc sample128_1_char = {att_char_prop_rd |ATT_CHAR_PROP_WR,
{0,0},

{0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1a,0x1b,0x1c,0x1d,0x1e,0x1f}};

如您所见,此描述符由1byte属性+ 2字节句柄{0,0,0}和16字节UUID组成。堆栈填写句柄,因此您不必定义该句柄。

mhv_dialog
离线
最后一次露面:2个月1周前
职员
加入:2013-12-06 15:10
哦,你的计算

哦,你以上的计算是现场!

滑轨
离线
最后一次露面:5年10个​​月前
专家
加入:2014-08-12 08:01
嗨mhv_dialog.

嗨mhv_dialog.
谢谢你的答案,现在我可以添加顾问配置文件,它很好地工作......

mhv_dialog
离线
最后一次露面:2个月1周前
职员
加入:2013-12-06 15:10
很高兴听见。

很高兴听见。

Sunnysingh.
离线
最后一次露面:3年3天前
加入:2016-10-21 15:43
如何获得属性

如何从数据库中获取属性值?

mt_dialog.
离线
最后一次露面:2个月2周前
职员
加入:2015-06-08 11:34
嗨sunnysingh,

嗨sunnysingh,

如果您的意思是如何从应用程序本身读取数据库属性,则可以使用attmdb_att_get_value()函数。另外请不要在带有无关主题的线程上发布一个问题,您可以始终创建一个新的线程。

谢谢mt_dialog.