GATT_Indication及gattAttribute_t pValue长度问题
BLE 1.4.0协议栈,
问题1:调用GATT_Indication(gapConnHandle,attValue,FALSE,TaskID)时返回0x75 是什么意思,错误代码好像没有0x75的含义解释?有时候还会返回0x69
问题2:static gattAttribute_t simpleProfileAttrTbl[SERVAPP_NUM_ATTR_SUPPORTED]中关于gattAttribute_t 结构体注释中说gattAttribute_t 结构中pValue最长度最大512字节(如下所示)。PC端用BTOOL读取BLE模块的属性时,当下位机simpleProfile_ReadAttrCB()回调函数中对应属性*pLen长度超过0x13以后(不包括0x13),PC端BTOOL接收就返回ATTR_NOT_FOUND,*pLen长度<=0x13时可以正常收到数据,为什么?
typedef struct attAttribute_t
{
gattAttrType_t type; //!< Attribute type (2 or 16 octet UUIDs)
uint8 permissions; //!< Attribute permissions
uint16 handle; //!< Attribute handle - assigned internally by attribute server
uint8* const pValue; //!< Attribute value - encoding of the octet array is defined in
//!< the applicable profile. The maximum length of an attribute
//!< value shall be 512 octets.
} gattAttribute_t;
你好,我想增加一个功能,多加一个发送的服务。
能不能教我呢
1)错误编码的含义,参见gatt.h文件
2)返回什么错误码,由BLE Periphal自行决定的,请研究那个profile的源代码