TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2640的蓝牙一次收发数据大小在哪里修改啊?

是这样:我手机 发送给模块 还是模块发送给手机的 字符串数据,分别最多是23字节\20字节,请问这个参数是在哪里修改的????

澐碁:

回复 Yan:

这个咋办??除了分包发送。

澐碁:

回复 user2000895:

谢谢你啊。 我再问下,困扰我3天了。 

Util_constructClock(&periodicClock, xxfun,50, 150, false, SBP_PERIODIC_EVT);

这个函数 在 某个任务的初始化中 调用。然后

Util_startClock(&periodicClock); 执行此句后 定时器开始执行。50个周期后

进入
xxfun
函数,该函数执行完成后下次是不是150个周期后才会进来??
=======================


澐碁:

回复 Yan:

再麻烦你下,你的回答解决了我好多问题

1:串口接收发送最大 一次性一包  就只能32字节??? 若 不是,怎么修改啊。

2:系统的时间片在哪里修改啊?  而且,有没有 延时函数 啊,类似于_delay_ms()

3:ADC采集的时候,我用 芯片7*7的,DIO23 对应的AUXIO7.      

     第一个问题来了:MUX0~4  用哪个配置啊。 若是用MUX3,是不是  

HWREGB(AUX_ADI4_BASE + ADI_4_AUX_O_MUX3) = 0x80;

第二个问题:若是 0x80,则为何我采集的电压不对啊。    我用的无论3.3的还是内部的4.3V的,AD7 接的3.3测下来始终是2.75V左右(2722*4.3/4096 = 2.85V)

JianHua Zhou2:

回复 澐碁:

看到你问的这些问题,也是花了我很长时间才搞定。

1.串口接收是buffer模式的话,参考SPP例程,一次发1KBytes是毫无压力的,更高的我没有尝试过。

2.蓝牙转发速率与串口的接收发送速率是两个东西,并无影响。一般是串口速率更快,115200的波特率,都10KBytes/S了。蓝牙转发速率受蓝牙协议限制,就是所说的20字节有效数据长度。但是稳定数据传输也可以到3Kbytes/s左右。在20ms的链接间隔下,我测试得到的稳定传输速率可以到3.3Kbytes/s。

3.系统的tick默认是10um,就是任务的节拍,可以在cfg文件中修改。但是你要是只需要ms级延迟的话,Task_Sleep()就可以了,us级的就要用定时器了。

4.ADC按照Yan大神的例程,有点问题,你可以再e2e上找一下,有个buff模式的例程,可以正确使用,只是精度有点问题。

澐碁:

回复 JianHua Zhou2:

谢谢你的热心回答。

1:串口速率我再看看。

2:蓝牙的接收发送速率 我也对 链接间隔 怀疑过,但手机端的一个临时APP最多发送接收20字节,故暂定20字节/次。

3:AD采集的时候 上次有个干扰源,导致测试不准。最后实测下来是3.2V。用SCS测下也是3.2V。 但读取芯片的电池监测寄存器是3.3V,电表量取也是3.3V文斯不动。   对此,我暂时没解了,为何差0.1V这么大

d df:

回复 JianHua Zhou2:

能不能给一份程序参考一下

Dendi:

回复 JianHua Zhou2:

Hi JianHua Zhou2 ,

   我用的是SPP工程做串口透传,我测过,从PC端到手机端一次可发最大16字节的数据,超过16字节,自动分包发送,比如一次发32字节,手机端能收到32字节。

   现在我遇到的问题是:手机端往PC端发数据,一次最大能发20字节,不过超过20字节就不会自动分包发送了,比如我发21个字节,PC端串口只输出前20个字节,后面的数据就没了。一个时间间隔内接收几个包可以在SPP工程中修改的么?还是说手机端的APP限制了只能发20个字节,且多余字节不会自动分包?PS:我用同一个手机APP测试另一歀BLE蓝牙(DA14580)是可以从手机端一次发送超过20字节(自动分包)的。

   因为项目要求,手机端往蓝牙模块发送数据的速度要比较快,一次接收20字节,就算最短的时间6.5ms也不能满足要求,所以我想让它每个时间间隔内接收多个包来提高一下速率。

赞(0)
未经允许不得转载:TI中文支持网 » CC2640的蓝牙一次收发数据大小在哪里修改啊?
分享到: 更多 (0)