HCI 缓冲空间问题
时间:10-02
整理:3721RD
点击:
我用notification发送数据包,每个20个字节,只能成功发送4个,后面的notification返回值是MSG_BUFFER_NOT_AVAIL( No HCI buffer is available),我想问下这个HCI缓冲区在哪里设置?我要发送大量数据包的话设定这个可行么?我想做一个cc2540的传输速度测试,有做过相关测试的同学请给些建议。
jason jason4,
notification会调用ATT_HandleValueNoti,这个函数,而这个函数参数中,填入的数据是4个字节,所以你成功发送了四个字节是正确的。
关于HCI缓存区,应该是在底层代码那边的,这个需要TI工程师来解答下。
不是发送了四个字节,
我定义了一个20字节的buffer,成功发送了4个这样的buffer,但是如果我要测传输速度的话4个包肯定不够的,我试试设定下这个ATT_HandleValueNoti,不过我看ti官方测试速度也是这么做的,20字节的buffer,发送了1000个,我代码也是照着改了下,不知道为什么穿不出去那么多。
不好意思我看错了,发送的大小为0-ATT_MTU大小
http://processors.wiki.ti.com/index.php/CC2540_Data_Throughput 这个传输速度测试的官方帖子,我试过的,没有问题,你只需要将原来的simpleperipheral.c文件换掉,然后在对应的H文件中加入时间的define,先试试,成功之后再根据自己的要求改。
这个我也试了的,不过你的notiification返回值是SUCCESS么?这个程序好像没有建立连接就直接发送了