有一个项目 需要从app发送大量数据给蓝牙, 数据大小不定 但从几百到几千个字节都有可能
看到别家的模块可以不断的连续把蓝牙数据从串口输出,cc254x方案默认最长20个字节接收
跟踪调试到底层simpleProfile_WriteAttrCB
static bStatus_t simpleProfile_WriteAttrCB( uint16 connHandle, gattAttribute_t *pAttr,
uint8 *pValue, uint8 len, uint16 offset )
{
...............
if ( pAttr->type.len == ATT_BT_UUID_SIZE )
{
// 16-bit UUID
uint16 uuid = BUILD_UINT16( pAttr->type.uuid[0], pAttr->type.uuid[1]);
switch ( uuid )
{
case SIMPLEPROFILE_CHAR1_UUID:
HalUARTWrite(0, pValue, len);
这里直接串口输出 而不管更上层的调用。这里len的定义是uint8,肯定不能超过255, 测试发现几千个字节下来, 串口只输出部分数据。
这里不确定ios在发送蓝牙数据的时候是否有分包发送。如果没有,为什么别人家的方案(非TI方案)可以正常接收串口连续输出?
麻烦指导一下,谢谢。