把CC2540作为51单片机使用时出现的问题?
在CC2540上写的程序,没有加入蓝牙协议栈,程序很短,调试程序时,暂停或到断点的时候,就会出现这样的问题:
Sat Sep 20, 2014 09:32:11: The stack pointer for stack 'XdataStack' (currently XData:0xC90F) is outside the stack range (XData:0x0001 to XData:0x0F00)
Sat Sep 20, 2014 09:32:14: The stack pointer for stack 'IdataStack' (currently IData:0x8A) is outside the stack range (IData:0xC0 to IData:0x100)
请问该如何解决呀?我估计是IAR的配置有问题,怎么解决呢?无论是程序和数据,都非常的小。
参考图片配置!
这个不是真正堆栈溢出导致的问题,不是optional里设置的问题,网上找资料说开了中断没有中断服务程序所致,我现在也遇到了这类问题但是,还在找解决办法。
我的提示信息是:
Mon Feb 02 14:20:56 2015: The stack pointer for stack 'PdataStack' (currently XData:0xD0FF) is outside the stack range (XData:0x1E00 to XData:0x1E80)
这些类型的错误通常是由设备和调试器之间的通信问题引起的。一些可能的原因:
- 外部复位(复位键,电源周期或看门狗)的设备,而无需重新启动调试会话
- 供电不足到芯片
- 试图在不支持调试模式调试
- 与编程器的连接问题
TI提供了直接使用CC2540当做8051编程不使用协议栈的例程 是可以单步联调的 建议您参考使用
http://www.ti.com/lit/zip/swrc257