微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2541蓝牙上传数据无法读全

CC2541蓝牙上传数据无法读全

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

您好,我有个问题,我这里需要上传720个Byte的数据,但是通过手机蓝牙读取这些数据的时候只能够读到640个,不知道是不是蓝牙上传的buffer有限,数据丢了呢?

//上传数据
 datalen = (g_PM25PeriodCnt*2);   //datalen = 720
 i = 0;
 while(datalen>=SIMPLEPROFILE_CHAR4_LEN)  // SIMPLEPROFILE_CHAR4_LEN = 20
 {

    simpleProfile_NofifyChar4Data(PM25PeriodBuffer+i*SIMPLEPROFILE_CHAR4_LEN,SIMPLEPROFILE_CHAR4_LEN);  // 上传数据
    i++;
    datalen = datalen - SIMPLEPROFILE_CHAR4_LEN;  
 }
 if(datalen>0)
 {
    simpleProfile_NofifyChar4Data(PM25PeriodBuffer+i*SIMPLEPROFILE_CHAR4_LEN,datalen);
 }

//上传数据的函数

bStatus_t simpleProfile_NofifyChar4Data(uint8 *data,uint32 len)
{
   
    bStatus_t status = SUCCESS;
    attHandleValueNoti_t nData;
    nData.len =  len;
    nData.handle = simpleProfileAttrTbl[11].handle;
    
    osal_memcpy( &nData.value, data, len );
    // Send the Notification
    status=GATT_Notification( 0, &nData, FALSE );
    if(SUCCESS!=status)
    {
        status = status;
    }
    return status;
}

建议首先可以抓包看一下是notification设备这一侧没有发出来还是手机那一侧没有收到

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

网站地图

Top