你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

[复制链接]
JerryMouse 提问时间:2014-7-4 19:36 /
    如题:
    STM32芯片,如果堆溢出、栈溢出,都会进入硬件错误中断中吗? 
     
  如上图,STACK是向下伸展,如果STACK向下越界了,那么这时候,sp的指针会指向哪里? 指向用户ram区,还是HEAP区,或者哪里?
  HEAP向上伸展,越界后,越界部分的内存是会操作哪里?会对stack区产生影响吗?
    RAM去越界到FLASH区的话,是不是会进入硬件错误中断?
    本人菜鸟,求人指教!!
收藏 评论11 发布时间:2014-7-4 19:36

举报

11个回答
feel-376797 回答时间:2014-7-4 20:23:55

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

堆栈溢出都会产生陷阱中断。
JerryMouse 回答时间:2014-7-9 21:30:27

回复:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

回复第 2 楼 于2014-07-04 20:23:55发表:
堆栈溢出都会产生陷阱中断。
 
 
那么请教下,可以不同过仿真,直接知道stack已用空间、heap的已用空间吗?
stack可以看指针,但不知道软件如何可以将指针赋值到变量。keil仿真时,如何查看stack、heap的使用空间情况?
如通过串口将监控指针位置上传,进行监控。项目使用,机器一跑,仿真就断线了,无法通过仿真看。
  求指导,谢谢!!
 
有缘于你 回答时间:2014-7-14 07:03:50

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

溢出就直接进入中断了
zb56525812 回答时间:2014-7-14 15:48:49

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

栈区的使用在编译时就确定了,除非你使用汇编强制操作栈寄存器,否则只要编译通过就没有问题。堆区需要你自己维护,申请失败时不使用就行,如果使用了,使用的就是一个错误地址,可能就会产生hard fault中断。
深秋独影 回答时间:2014-7-16 21:32:50

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

堆栈溢出时程序会跳到hard fault异常中断里,程序运行时出现堆栈溢出,仿真时可以明显看出子程序返回时跳到毫不相干的子程序中去了
Eagleson 回答时间:2014-7-17 09:05:06

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

我记得权威指南里面有一章指专门讲异常问题的。楼主可以自己去看一下
dzc2001 回答时间:2014-7-17 09:29:55

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

hard fault之后就进中断了啊。
巅峰残狼 回答时间:2014-7-17 13:17:10

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

找了半天资料也没找到解决的办法,坐等大家献言献策
aaa999kk 回答时间:2014-7-17 17:02:22

RE:STM32堆溢出、栈溢出,导致出现异常的情况相同吗?

循环不出来的话, 输出的参数就有问题
12下一页
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版