微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > cc2540/1的BLE可否作到实时的传输数据

cc2540/1的BLE可否作到实时的传输数据

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

dear all:

我最近在做基于cc2540/1的BLE控制,要作到peripheral 每48ms发一帧20bytes 的控制数据;使用了char7的notify功能,

现在做到了48ms可以发送出数据,center也可以收到,但是center收到数据的周期却不是48ms,有挺严重的延时;

我在peripheral发次发notify时反转一次IO口,发送完再翻转一次,center有收到数据也翻转一次IO口;得到示波器的波形如附件.

有没有 人做过类似的东西,不知道cc2540/1能否做这种实时的不大的数据传输需求?

补充一下,我的时间间隔是:

// Minimum connection interval (units of 1.25ms, 80=100ms) if automatic parameter update request is enabled
#define DEFAULT_DESIRED_MIN_CONN_INTERVAL     6

// Maximum connection interval (units of 1.25ms, 800=1000ms) if automatic parameter update request is enabled
#define DEFAULT_DESIRED_MAX_CONN_INTERVAL     6

我也确认了一下,center接收到的数据没看到有丢帧的现像,只是常常一次接收到了两帧的数据.我在peripheral发送的数据中的一个字节自加1 ,

在center接收到的数据将这个字节用串口回报回来,如下是串口接收到的数据:

[2016:06:27:13:28:52]EB EC
[2016:06:27:13:28:52]ED EE
[2016:06:27:13:28:52]EF F0
[2016:06:27:13:28:52]F1 F2
[2016:06:27:13:28:53]F3 F4
[2016:06:27:13:28:53]F5 F6
[2016:06:27:13:28:53]F7 F8
[2016:06:27:13:28:53]F9 FA
[2016:06:27:13:28:53]FB FC
[2016:06:27:13:28:53]FD FE
[2016:06:27:13:28:53]FF 00
[2016:06:27:13:28:53]01 02
[2016:06:27:13:28:53]03 04
[2016:06:27:13:28:53]05 06
[2016:06:27:13:28:54]07 08
[2016:06:27:13:28:54]09 0A
[2016:06:27:13:28:54]0B 0C
[2016:06:27:13:28:54]0D 0E
[2016:06:27:13:28:54]0F 10 11 12

你48ms才notify一次,为什么要把connection interval设置的那么低呢?建议加大connection interval,比如15ms什么的试一下

谢谢你的回复,connection interval我其它的值也都试过了,没什么效果.

我也试了从center发数据给peripheral,48ms一次的话也大概会丢4帧

也就是说大概200ms发一次数据的话才会正常不丢帧,不知道你有没有遇到类似问题.谢谢!

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

网站地图

Top