bStatus_t SimpleProfile_GetParameter( uint8 param, void *value )
{
bStatus_t ret = SUCCESS;
switch ( param )
{
case SIMPLEPROFILE_CHAR1:
*((uint8*)value) = simpleProfileChar1;
break;
case SIMPLEPROFILE_CHAR2:
*((uint8*)value) = simpleProfileChar2;
break;
case SIMPLEPROFILE_CHAR3:
*((uint8*)value) = simpleProfileChar3;
break;
case SIMPLEPROFILE_CHAR4:
*((uint8*)value) = simpleProfileChar4;
break;
case SIMPLEPROFILE_CHAR5:
VOID osal_memcpy( value, simpleProfileChar5, SIMPLEPROFILE_CHAR5_LEN );
break; default:
ret = INVALIDPARAMETER;
break;
}
return ( ret );
}
*((uint8*)value) = simpleProfileChar1;
simpleProfileChar1把值赋给 *value ,我找了好久不知道simpleProfileChar1的值来自哪里,恳请TI的工程师解读解读。
Yan:
ming,
在simpleGATTProfile.c 里面。
有个初始化赋值,然后可以通过调用 SimpleProfile_SetParameter() 进行赋值。
ming li17:
回复 Yan:
hi,yan我说的是SimpleProfile_GetParameter() 里面的 *((uint8*)value) = simpleProfileChar1; 这里的simpleProfileChar1 的值来自哪里。你的意思是SimpleProfile_GetParameter() 函数又调用了 SimpleProfile_SetParameter() 么?
ming li17:
回复 kqian0327:
hi,kqian我讲的是bStatus_t SimpleProfile_GetParameter( uint8 param, void *value ) 函数里的 *((uint8*)value) = simpleProfileChar1; simpleProfileChar1 和 SIMPLEPROFILE_CHAR1 不是一个东西吧。其实就是 simpleProfileChar1的值赋给 *value ,然后读*value的值,所以我想问通过BLE传来的数据是怎么赋值给 simpleProfileChar1的。