微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 添加库文件后编译异常——跪求解答

添加库文件后编译异常——跪求解答

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

Hi All:

        我在simpleBLECentral工程中添加Lib文件《CC2540_BLE_peri.lib》编译后出现以下异常:

Error[e6]: Program module ll_halt redeclared in file F:\CC2540资料\工程文件\1.4\Projects\ble\Libraries\CC2540DB\bin\CC2540_BLE_peri.lib

       我这么做的目的是,通过在初始化时判断IO口来识别主从模式,从而达到在一套工程里即可跑central也可跑peripheral的程序(且不论这么做合不合适)。上面编译的那个问题有办法解决吗?

       Very Thanks。

shaokai,

include “CC2541_BLE.lib” 和 “CC254x_BLE_HCI_TL_None.lib” 就行。

2540 的话,就是 “CC2540_BLE.lib” 和 “CC254x_BLE_HCI_TL_None.lib” 

Yan

    Very very thanks,But...

    我使用simpleBLECentral工程,尝试替换Lib文件是成功的:将原本的《cc2540_BLE_cent.lib》替换为《CC2540_BLE_.lib》之后编译正常;

    而使用simpleBLEPeripheral工程,也如此做时却失败了:将原本的《cc2540_BLE_peri.lib》替换为《CC2540_BLE_.lib》则编译会出现另一个错误:

Error[e104]: Failed to fit all segments into specified ranges. Problem discovered in segment XDATA_N. Unable to place 2 block(s) (0xc02 byte(s) total) in 0xbb8 byte(s) of memory. The problem occurred while processing the segment placement command "-P(XDATA)XDATA_N=_XDATA_START-_XDATA_END", where at the moment of placement the available memory ranges were  "XDATA:1348-1eff"

   How can I solve the problem?这是哪里设置的出问题吗?

哦耶!内存不够。。。

原来是这样的:cc2540内部RAM只有8kB,而我的堆空间大小分配本身占用了3kB。

修改预处理器中堆得大小分配:INT_HEAP_LEN=1024之后编译通过。

但是我这样减小堆空间大小会不会有其他隐患呢?不过我自己的代码目前很少用到堆空间。。。

shaokai,

没有问题的,1024 应该够用:)

你好,最近在开发微信蓝牙功能,我用的是CC2541,用的协议栈是BLE-CC254x-1.4.1.43908a,工程里面已经加入了上述两个文件,但是问题还是没有解决。


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

网站地图

Top