微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > TI CC2540程序跑坏需要重新烧写程序的问题

TI CC2540程序跑坏需要重新烧写程序的问题

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

我们在使用基于CC2540开发的车载GPS产品时,发现有几台设备出现了程序跑坏的现象,终端重新启动不能恢复,必须重新烧写程序才能够恢复。不知道这个问题是怎么引起的?

程序里有对flash的操作吗?有可能是代码被改。用cc debugger读出代码对比下

不能工作 的情况非常复杂,出了问题后先不要急着重新烧录程序,查找问题优先,思路如下:

1. 把出了问题的芯片,用烧写器读FLASH内容出来,和正确的进行比较,看FLASH程序是否被改写或擦除。

如果是被改写,多半是配置参数,常量等被改了。

如果整块被擦除,则先屏蔽下你程序中的FLASH擦写函数。

工程如果不包含FLASH .C 文件,编译不过,所以建议进入到FLASH.C文件,屏蔽掉eras 函数中的内容

2. 如果改后的代码不出现被擦除的情况,则需要你检查自己的代码中是否有跑飞的情况。

3. 如果任然出问题。则建议

  1) CC2540烧写时可以对FLASH进行写保护。防止恶意擦除。建议烧写程序时把改选项加上。

  2) 电路设计时,最好把CC2540和前端处理器(如果有的话)设计成缓启动,不要让CC2540和其他处理器一起启动。等前端处理器的管脚稳定后,在用它来启动CC2540

如果按照以上处理,还会发生,请继续讨论。

用的啥电源?建议用质量好的!

我们之前烧写程序的时候设置成不能读写的模式了,暂时读取不出来。后面我们会取消这个设置,等发现有问题的终端后再读出来看看。

好的,我们先读出来比对一下。

我们用的是锂聚合物电池,深圳市中顺新能电池有限公司产的,型号LP554858,2500mAh,不知道会不会有影响?

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

网站地图

Top