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

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

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

问题:

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.” 的相关文章

ios设备分辨率、屏幕尺寸、屏幕密度

iPhone Devices iPhone 5S Retina 4" Screen 326ppi 16:9 640 x 1136 px 123.8 x 58.6 x 7.6 mm 112...

用反相器和晶振做晶体振荡电路

用反相器和晶振做晶体振荡电路

采用下图所示电路可以实现方波时钟信号输出的功能: 电路分析: 时钟信号为CMOS电平输出,频率等于晶振的并联谐振频率。 (1) 74HC04在这里相当于一个有很大增益的放大器; (2) R2是反馈电阻,取值一般≥1MΩ,它可以使反相器在振荡初始时处于线性工作区,不可以省略,否则有...

Keil C51中嵌入汇编

Keil C51中嵌入汇编

   我们知道,用C语言实现精确延时是一件比较困难的事情,而用汇编写精确延时程序就简单多了,但是整个程序都用汇编,那就是件头疼的事情。要是能在C里面嵌入汇编,那就爽了,本文介绍的就是如何在Keil C51里嵌入汇编。   1、在 C 文件中以如下方式加入汇编代...

二进制逆序(字节反转)

  1  理论分析   二进制逆序,顾名思义就是将低位和高位交换,例如0x23 = 0010 0011 B,逆序后就是1100 0100 B。字节反转在“小端”格式和“大端”格式之间的数据转换是一个必要的操作。 一种比较...

Altium pcb文件过大

Altium pcb文件过大

问题描述: 一些Altium Designer设计的文件看上去板子小且走线也不多,但是保存后文件却比较大。 原因: 通常是在PCB中放置了非默认字体的字符。 在软件里面有一个默认的选项“Embed  TrueType Fonts inside PCB Doc...

android Service : onStartCommand intent为null

参考资料: http://hold-on.iteye.com/blog/2024926 问题: service中加入onStartCommand之后,不定期crash。 分析: 经查看onStartCommand中代码,只有intent为空才可能报NullPointException 。 inten...

发表评论

访客

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