微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > cc2540作为透传使用,数据接收的疑问

cc2540作为透传使用,数据接收的疑问

时间:10-02 整理:3721RD 点击:

用cc2540做透传使用,#define SIMPLEPROFILE_CHAR1_LEN   20 ,然后使用

在 simpleProfileChangeCB( uint8 paramID )中处理接收数据

uint8 newValueBuf[20]={0};

SimpleProfile_GetParameter( SIMPLEPROFILE_CHAR1, newValueBuf );

SerialWrite (newValueBuf, 20);

目前这样做会出现接收1个字节数据后,串口助手实际是接收20个,那是因为SerialWrite (newValueBuf, 20)

中写了20个,而实际上我要如何去获取正真接收到,也就是说20这个值怎么替换成实际接收长度?

另外再进入SimpleProfile_GetParameter函数

case SIMPLEPROFILE_CHAR1:

VOID osal_memcpy( value, simpleProfileChar1, strlen(simpleProfileChar1) );

下面是simpleProfileChar1的申明

static uint8 simpleProfileChar1[20] = {0};

而这样处理就不能接收0x00了

yun,

你可以用动态分配空间,或者也可以自己指定实际有效数据长度,不一定非要20。

关于这点,你得需要动动脑经了,其实你也可以避开TI提供的接口。

加个串口通信协议吧

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top