微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > cc2541 工作一段时间后 无法搜索到

cc2541 工作一段时间后 无法搜索到

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

 TI工作人员您好,

      我最近在用CC2541做一个蓝牙温湿度计的设计,系统中有温湿度,LCD和flash。现在固件和驱动都写好了,但是遇到一些蓝牙稳定性问题。

      蓝牙模块工作几个小时后,手机就搜索不到蓝牙设备了,但是温湿度的数据还能正常读取,也能在LCD上实时的显示出来。看了flash的读写波形和时间间隔,也是和设计的效果一样。

      请问你们有遇到类似的问题么,有什么解决办法或者需要排查的点么?

《新手问题集》:http://www.amomcu.com/forum.php?mod=viewthread&tid=276&extra=page%3D1

最后一点

但是我用示波器抓了SPI和 I2C的数据来看,连续读写的时间很短,最多的也就6ms

另外系统中还有一个中断 1s 的IO中断

使用sniffer抓下看出现扫描不到时,是否仍在advertising

在sniffer 上看不到蓝牙设备,手机也搜索不到。

然后我看了下代码,我用的1.4.0的协议栈

代码中是

uint16 gapRole_AdvertOffTime = 0;  注释中说这个值设置为0,表示默认30秒广播,但是我这边蓝牙一直都是在广播的,只是在几个小时后,才不广播。

也就是说,没有广播所以连不上,你是希望一直广播?

控制广播的代码是可见的,你完全可以跟踪debug一下,看具体是什么原因30秒不停广播

估计是射频部分的问题!晶振和天线部分。

对的 , 希望一直广播,外边一直能够搜索的到。

是这样的,我又去看了代码,代码中有个宏定义

#define DEFAULT_DISCOVERABLE_MODE GAP_ADTYPE_FLAGS_GENERAL

应该是设置为一直广播了,所以一直广播是正常的,但是广播了几个小时后不广播了。

这部分是用的TI的官方设计

如果是晶振的问题的话,为什么会在几个小时后才会搜索不到呢?

和这个没关系。主要和gapRole_AdvEnabled和gapRole_AdvertOffTime 两个变量有关系。

可以搜索下这两个变量。按照程序的逻辑,应该是不会停止广播的。看是否应用代码里有哪个地方会把gapRole_AdvEnabled设置成false?

你好,

两点建议

1.   升级到最新的协议栈,1.4.2的协议栈上去。

2,设备中有耗费大量时间的事件在处理,导致广播周期被迫停止、导致连接通信超时。如:采集adc耗费了500ms,很容易造成广播停止、蓝牙断开。
解决方法:增大连接间隔(CC2541默认连接间隔为80ms,可增大为100ms+)、缩短事件处理时间(如将adc的500ms压缩至50ms,总之这个时间必须小于连接间隔)。

谢谢啦,最近把晶振换了,现在工作24小时了没有问题。可能是晶振的问题,但是这里面的原因不知道有人可否答疑一下,呵呵

你好,

是32768的晶振问题吗?

32768的晶振会影响到蓝牙连接问题。因为CC2541唤醒同步蓝牙是靠32768晶振来定时计算的。

在CC2541上,我们哟要求晶振必须符合下面的规范。

另外,你可以通过关闭power saving来一致使能CC254x设备来判断问题是否由32768晶振造成。

32 MHz Crystals Suitable for CC253x and CC254x
ManufacturerMPNPackageESR [ohm]CL [pF]Tol [ppm]Temp tol [ppm]Aging [ppm/year]Temp range [deg C]Used in TI reference?Tested by external lab?
NDK NX2016SA 32MHz EXS00A-CS04859 2016 60 10 +/- 15 +/- 25 -40 / +105 Yes -
NDK NX3225SA 32MHz EXS00A-02994 3225 50 16 +/- 10 +/- 15 -30 / +125 Yes -
Epson Toyocom FA-128 2016 60 10 +/- 10 +/- 10 5 -40 / +85 Yes -
Epson Toyocom FA-20H 2520 60 10 +/- 10 +/- 10 3 -40 / +85 Yes -
NDK NX3225GA 32 MHz EXS00A-CG02611 3225 50 10 +/- 20 +/- 20 -40 / +85 Yes -
NDK NX2016SA 32.000MHz EXS00A-CS05931 2016 60 10 +/- 15 +/- 25 -40 / +125 CC2540T BLE Light -

32.768 kHz Crystals Suitable for CC253x and CC254x
ManufacturerMPNPackageESR max [ohm]CL [pF]Tol [ppm]Temp tol [ppm]Aging [ppm/year]Temp range [deg C]Used in TI reference?Tested by external lab?
Epson Toyocom FC-12M 2012 90k 12.5 +/- 20 3 -40 / +85 Yes -
Epson Toyocom MC306 8.0 x 3.8 mm 12.5 20 +/- 50 -40 / +85 Yes -
NDK NX3215SA 32.768KHz EXS00A-MU00109 3215 90k 12.5 +/- 20 +/- 3 -30 / +85 No -
NDK NX3215SA 32.768KHz EXS00A-MU00301 3215 80k 12.5 +/- 20 -40 / +125 CC2540T BLE Light -

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

网站地图

Top