This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

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

Other Parts Discussed in Thread: CC2540

我们在使用基于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,不知道会不会有影响?