添加库文件后编译异常——跪求解答
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,工程里面已经加入了上述两个文件,但是问题还是没有解决。