微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 请教特征值字节数问题

请教特征值字节数问题

时间:10-02 整理:3721RD 点击:

各位TI技术支持及坛友:

我在一个服务中定义一组特征值如下:

static uint8 UartDataValue[19];//当改成长度为20时就发生读写错误

//UART Declaration
{
{ ATT_BT_UUID_SIZE, characterUUID },
GATT_PERMIT_READ,
0,
&UartDataProps
},
//UART Value
{
{ ATT_BT_UUID_SIZE, Uart_Data_UUID },
GATT_PERMIT_READ | GATT_PERMIT_WRITE,
0,
UartDataValue
},
//UART Description
{
{ ATT_BT_UUID_SIZE, charUserDescUUID },
GATT_PERMIT_READ,
0,
UartDataDesp
}

问题1:服务中的特征值是否有字节长度限制?最大多少字节?

问题2:服务中的许多UUID如0x2800、0x2803这些都是系统的UUID,请问我该在哪里可以找到这些知识点(较详细)的说明?毕竟用户要定义的特征值UUID总不能随便来吧。。。

谢谢!

shaokai,

读写操作的话理论上并没有最大限制,超过20的话你还可以用blob读写。

从你这段代码看不出有什么不对,是否其他地方有问题?读写操作的地方?

关于UUID,你可以看一下SIG官网的定义,很详细:https://www.bluetooth.org/en-us/specification/assigned-numbers

打开有下面的你都可以参考:

  • Generic Attribute Profile (GATT)
  • GATT Bluetooth Namespace Descriptors
  • GATT Bluetooth Characteristics?
  • ?GATT Bluetooth Characteristics?? Descriptors
  • GATT Bluetooth Services?

Thanks Yan

我是在USBDongle上读写特征值的,当字节长度低于20时,都是正常的,但是字节长度改为20后再读写就会出现:

ATTR_NOT_FOUND。

blob读写与普通的读写方法有什么不同?也属于协议栈的一种读写方式吗?目前手头看的资料没见过blob读写。。。

shaokai,

blob读写可以读超过20个字节的内容,可以参考GATT_ReadLongCharValue() 

Thanks Yan!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top