TI论坛
直播中

闫玮婧

8年用户 162经验值
私信 关注
[问答]

simpleProfileChar1的值来自哪里?

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的工程师解读解读。

回帖(4)

华农武

2019-9-27 11:46:58
ming,
在simpleGATTProfile.c 里面。
有个初始化赋值,然后可以通过调用 SimpleProfile_SetParameter() 进行赋值。
举报

汪佳丽

2019-9-27 11:55:05
你好,
你可以查看对应的.h文件
// Profile Parameters
#define SIMPLEPROFILE_CHAR1 0 // RW uint8 - Profile Characteristic 1 value
#define SIMPLEPROFILE_CHAR2 1 // RW uint8 - Profile Characteristic 2 value
#define SIMPLEPROFILE_CHAR3 2 // RW uint8 - Profile Characteristic 3 value
#define SIMPLEPROFILE_CHAR4 3 // RW uint8 - Profile Characteristic 4 value
#define SIMPLEPROFILE_CHAR5 4 // RW uint8 - Profile Characteristic 4 value
其对应的是:
// Simple Profile Service UUID
#define SIMPLEPROFILE_SERV_UUID 0xFFF0

// Key Pressed UUID
#define SIMPLEPROFILE_CHAR1_UUID 0xFFF1
#define SIMPLEPROFILE_CHAR2_UUID 0xFFF2
#define SIMPLEPROFILE_CHAR3_UUID 0xFFF3
#define SIMPLEPROFILE_CHAR4_UUID 0xFFF4
#define SIMPLEPROFILE_CHAR5_UUID 0xFFF5
希望可以帮到你。
                                                                         Michael Qian
举报

闫玮婧

2019-9-27 12:12:53
hi,yan
我说的是SimpleProfile_GetParameter() 里面的  *((uint8*)value) = simpleProfileChar1;  这里的simpleProfileChar1 的值来自哪里。
你的意思是SimpleProfile_GetParameter() 函数又调用了 SimpleProfile_SetParameter() 么?
举报

闫玮婧

2019-9-27 12:24:29
引用: vctwetrwer 发表于 2019-9-27 11:55
你好,
你可以查看对应的.h文件
// Profile Parameters

hi,kqian

我讲的是bStatus_t SimpleProfile_GetParameter( uint8 param, void *value ) 函数里的  *((uint8*)value) = simpleProfileChar1;
 simpleProfileChar1 和  SIMPLEPROFILE_CHAR1 不是一个东西吧。

其实就是 simpleProfileChar1的值赋给 *value ,然后读*value的值,所以我想问通过BLE传来的数据是怎么赋值给 simpleProfileChar1的。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分