TI中文支持网
TI专业的中文技术问题搜集分享网站

调用GATT_WriteNoRsp函数返回0x02无效句柄或字段

调用GATT_WriteNoRsp函数返回0x02无效句柄或字段,使用的是CC2540和1.3.2协议栈版本

Viki Shi:

建议使用最新协议栈测试

user4886163:

回复 Viki Shi:

好的我试一下 最新的是BLE-CC254x-1.4.2.2这个协议栈吗

Viki Shi:

回复 user4886163:

是的,官网直接下。1.3.2版本已经蛮旧了

Susan Yang:

请问您是如何调用的?
GATT_WriteNoRsp requires that req.sig = FALSE and req.cmd = TRUE. This is why you are receiving invalid parameter.

user4886163:

回复 Susan Yang:

您好,我给您看一下我这里的调用
void CentralToPeripheral(uint8 *pBuffer,uint8 length)
{bStatus_t sendstate;uint8 buf_num_now;attWriteReq_t req;

req.handle = BLECharHdl;req.len = 20;req.sig = 0;req.cmd = 0;for(buf_num_now = 0;buf_num_now<2;buf_num_now++){req.value[0] = buf_num_now+1;req.value[1] = 2;//分为两包osal_memcpy(&req.value[2],&pBuffer[buf_num_now*18],18);uart1_printf("发送次数[%d]\r\n",req.value[0]);uart1_print_buffer(req.value,20);sendstate = GATT_WriteNoRsp(GAP_CONNHANDLE_INIT, &req);//GATT_WriteCharValue( 0, &req, BLETaskId );delay_ms(200);uart1_printf("返回发送状态[%d]\r\n",sendstate);
}

}

user4886163:

回复 Viki Shi:

您好 我将蓝牙主机的更改成1-4-2协议栈,从机的还是1-3-2的协议栈,我主机调用GATT_WriteNoRsp这个函数返回值还是为0x02,

bo wu:

回复 user4886163:

我也碰到这个问题,用GATT_WriteCharValue没有问题,用GATT_WriteNoRsp就返回0x02,请问您解决了吗 这个问题?

赞(0)
未经允许不得转载:TI中文支持网 » 调用GATT_WriteNoRsp函数返回0x02无效句柄或字段
分享到: 更多 (0)