Quantcast
Channel: 蓝牙论坛 - 最近的话题
Viewing all articles
Browse latest Browse all 7485

关于CC2540 协议栈1.4.2的版本

$
0
0

大家好,问两个问题,希望有时间的朋友们帮忙回答一下

1.调用GATT_WriteCharValue去使能从机的notify滞后于,从机一定有indication的应答吗?

2.这个版本的协议栈发送 Write no response命令应该怎么发?我写的代码如下,但是抓包抓不到任何东西,

好像没发出来,但是返回值是SUCCESS

bStatus_t snm_sampling_enable(void)
{
  attWriteReq_t req;
  bStatus_t res = FAILURE;
  BLE_DEV *p =  &(gDev[0]);
  
  req.pValue = GATT_bm_alloc( p->ble_dev_conn_handle, ATT_WRITE_REQ, 1, NULL );
  if( req.pValue != NULL )
  {
    req.handle = SNM_CUSTOM3_CMD_HANDLE;
    req.len = sizeof(sampling_enable);
    req.pValue = (uint8*)&sampling_enable[0];
    req.cmd = 1;
    req.sig = 0;
    uint8 i;
    printf("sampling on-command");
    for(i=0;i<3;i++)
    {
      printf("%X ",*(req.pValue+i));
    }
    printf("\r\n");
    res = GATT_WriteNoRsp(p->ble_dev_conn_handle,&req);
    if(res != SUCCESS)
    {
       GATT_bm_free( (gattMsg_t *)&req, ATT_WRITE_REQ );
    }
  }else
  {
    res = bleMemAllocError;
  }
  return res;
}

3.上述代码中的

GATT_bm_alloc( p->ble_dev_conn_handle, ATT_WRITE_REQ, 1, NULL );
第三个参数根据什么设置?开启notify之后,再发送上述命令,会有20个字节的传感器数据发送过来,
这个时候这个NULL 是不是要改为20?

Viewing all articles
Browse latest Browse all 7485

Trending Articles