单片机 堆栈错误
1、堆栈错误1 new 函数时错误

2、解决方法,用汇编调试
new对象斤婶,相当于C语言就是malloc操作
驼闲惹

3、这篇案就是堆太小了,加大就行
1、堆栈错误2,栈指针不匹配
在sdram中调试,修改了一个存储rw数据的地方,然后就挂了,没任何信息

2、观察到的现象
打开一个keil的led程序,开启sdram调试,然后再开eclipse调试(sdram),这样没问题
重启,keil开启ram调试,再开eclipse调试就不行
3、keil环境中,把ram中的调试初始化文件引用sdram中的调试文件,调试
然后 eclipse调试,这样也可以运行

4、那么应该是初始化文件错了,对应eclipse的 jlinkscript 文件
把 SDRAM_Init 改成一样就行了

5、发现就少了如下几行
// 添加在 0x401F80B0 下面
MEM_WriteU32(0x401F80B4, 0x00000000);
MEM_WriteU32(0x401F80B8, 0x00000000);
// 添加在 0x401F82A0 下面
MEM_WriteU32(0x401F82A4, 0x000110F9);
MEM_WriteU32(0x401F82A8, 0x000110F9);
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:112
阅读量:160
阅读量:70
阅读量:100
阅读量:67