当前位置:首页 > 技术心得 > 正文内容

SensorTag编译错误Error[e16]: Segment ISTACK (size: 0xc0 align: 0) is too long for segment definition.

xjtudll9年前 (2017-12-10)技术心得9650

问题

IAR 8051 8.302,编译TI的BLE-CC254x-1.4.0的SensorTag工程,对此工程没有进行任何改动,直接编译,出现如下错误:

分析

参考TI技术论坛【http://www.deyisupport.com/question_answer/wireless_connectivity/bluetooth/f/103/t/51684.aspx

从讨论得知是IAR的配置问题

故需修改IAR工程配置

解决

依次打开Project -> Options -> General Option -> Target,在Target标签中找到“Number of virtual”,原来默认为16,修改为8。如下:

重新make SensorTag工程,编译成功。

类似的,其他BLE工程,如SimpleBLEPeripheral等,编译时出现同样的错误,按照上述解决方法,即可解决。

 

 

 


74f5cc97-c063-4f0f-b613-f78f80a34976

 


 


http://bbs.eeworld.com.cn/thread-420601-1-1.html


IAR 8.3以后的版本编译TI BLE Stack会报类似如下的错误

  1. Error[e16]: Segment ISTACK (size: 0xc0 align: 0) is too long for segment definition. At least 0xe more bytes needed. The problem occurred while processing the segment 
  2. placement command "-Z(IDATA)ISTACK+_IDATA_STACK_SIZE#08-_IDATA_END", where at the moment of placement the available memory ranges were "IDATA:4e-ff"

解决办法是:
找到

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

把里面的

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

这一句  改成

  1. -Z(DATA)VREG=08-7F

 

参考资料:

http://blog.csdn.net/zhangjs0322/article/details/34108663

 

 

 

 

http://www.deyisupport.com/question_answer/wireless_connectivity/bluetooth/f/103/t/51684.aspx

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/483/

标签: BLECC254x
分享给朋友:

“SensorTag编译错误Error[e16]: Segment ISTACK (size: 0xc0 align: 0) is too long for segment definition.” 的相关文章

php Undefined index和Undefined variable的解决方法

参考资料:http://www.jb51.net/article/13974.htm 问题: 上传一个PHP网站到服务器,提示: PHP Notice: Undefined index: user in C:\inetpub\wwwroot\xonixwatch.com\manager\index....

Altium检查遗漏的封装

Altium检查遗漏的封装

画完原理图后,当然就要检查封装是否填写以及填写是否正确。虽然用Compile能够找到封装的问题,但是Compile之后的message不仅仅包含封装的错误,还包括其他,看起来不甚直观,操作也不是很方便。以前在用Protel99SE的时候,可以通过导出电子表格的方式来检查封装是否正确。高版本的Alti...

光耦,大有用处

光耦,百度百科是这样说的:耦合器(optical coupler,英文缩写为OC)亦称光电隔离器,简称光耦,是开关电源电路中常用的器件。耦合器以光为媒介传输电信号。它对输入、输出电信号有良好的隔离作用,所以,它在各种电路中得到广泛的应用。目前它已成为种类最多、用途最广的光电器件之一。光耦合器一般由三...

excel中数据行转列,多行转一列

按ALT+F11调出VBA窗口,插入一个模块,把下面代码复制进去。 Sub abcd() For i = 1 To 5   '修改5,行的个数, 这里表示第0到5行(可以修改成你要的行数)     s = WorksheetFu...

mysql服务无法启动 服务没有报告任何错误

mysql服务无法启动 服务没有报告任何错误

参考资料: http://bbs.csdn.net/topics/391851148 问题描述: 使用net start mysql启动MySQL服务时,提示:MySQL服务无法启动,服务没有报告任何错误。如下图所示: 可能原因: data目录里已经有数据里,所以有冲突。 解决办法: 1、删...

金蝶K/3BOS取得字段值改变之前的原值

通过GetFieldValue函数只能取得字段改变后的值,但是有时候需要在字段值改变后,取得之前的原值。以下为具体代码: Dim dct As KFO.Dictionary = m.GetDataFldbyKey('FDecimal7', Row) Dim sdOld As Doubl...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。