微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 用IAR 8051 8.30.2 编译 BLE- CC254X_1.4.0里的例程,怎么什么也没有动,就编译出错

用IAR 8051 8.30.2 编译 BLE- CC254X_1.4.0里的例程,怎么什么也没有动,就编译出错

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

Error[e16]: Segment ISTACK (size: 0xc0 align: 0) is too long for segment definition. At least 0x7 more bytes needed. The problem occurred while processing the segment
placement command "-Z(IDATA)ISTACK+_IDATA_STACK_SIZE#08-_IDATA_END", where at the moment of placement the available memory ranges were "IDATA:47-ff"
Reserved ranges relevant to this placement:
IDATA:8-1f VREG
IDATA:21-3f VREG
IDATA:40-41 XSP
IDATA:42-42 DATA_I
IDATA:43-44 DATA_Z
IDATA:45-46 IDATA_Z
IDATA:47-ff ISTACK
BIT:0-7 BREG
BIT:80-97 SFR_AN
BIT:a0-af SFR_AN
BIT:b8-c7 SFR_AN
BIT:e8-ef SFR_AN
BIT:f8-ff SFR_AN
Error while running Linker

哈哈,都有8.30.2啦?我用8.20.2编译没有问题。

谢谢回答。去下个去

现在有8.30.2了?哪里下载呀

用8.2编译完全OK呀

Error訊息已告知,只要將IAR中之Stack/Heap之目前設定值(0xC0),改為0xB9 = 0xC0 -7,即可。

如何改,請參閱附件,謝謝。

找到

C:\Texas Instruments\BLE-CC254x-1.4.0\Projects\ble\common\cc2540\ti_51ew_cc2540b.xcl

將下面

-Z(DATA)VREG+_NR_OF_VIRTUAL_REGISTERS=08-7F

改成

-Z(DATA)VREG=08-7F

即可修正 TI BLE Stack Too Long 問題

I can work with this way, try it~

Project -> Option -> General Option -> Target Tab

Modify : Number of virtual registers, from 16 --> 8.

Works! thank you ! Could you tell me a little why?

youwei,

sabi‘s way should work.

the problem is caused by IAR, please update to latest version of IAR.

这个是IAR引起的问题,建议更新到最新的IAR版本。

嗯,好的谢谢

按你的要求改了8,好家伙,原来只报一个错,现在报33个错了。

1、TI 的1.4的协议栈用的IAR是8.2的版本开发的,所以用高版本开发会有问题,需要改动一些东西,如下所示:

      

      

2. 可以在下面的链接参考一下,有详细的描述

    http://processors.wiki.ti.com/index.php/LPRF_BLE_Porting_Projects

3、希望可以帮到你,祝你好运!

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

网站地图

Top