单片机RAM快用完了就出现死机的现象

[复制链接]
雪山飞狐D 发表于 2021-2-1 22:39 | 显示全部楼层
  会不会你有些动态数据,运算的时候会多占用一些ram, 编译的时候按照静态数据去估算的
liudewei 发表于 2021-2-2 09:21 | 显示全部楼层
出现死机时要分析 是死循环、还是某些软件中断、NMI中断进去了没提供中断服务程序,总之没有头绪你要学会增加断点去跟踪调试,任何错误都是可以在仿真状态找到原因的。
 楼主| gnail092 发表于 2021-2-2 22:17 | 显示全部楼层
雪山飞狐D 发表于 2021-2-1 22:39
  会不会你有些动态数据,运算的时候会多占用一些ram, 编译的时候按照静态数据去估算的 ...

RW Data + ZI Data这个大小就已经包括设置的堆栈空间了呀,只要确保堆栈不会溢出,应该就不会有问题阿
雪山飞狐D 发表于 2021-2-2 22:29 | 显示全部楼层
gnail092 发表于 2021-2-2 22:17
RW Data + ZI Data这个大小就已经包括设置的堆栈空间了呀,只要确保堆栈不会溢出,应该就不会有问题阿 ...

我感觉这个不准,我试过做FFT的时候编译能过,实际死机的情况
雪山飞狐D 发表于 2021-2-2 22:30 | 显示全部楼层
gnail092 发表于 2021-2-2 22:17
RW Data + ZI Data这个大小就已经包括设置的堆栈空间了呀,只要确保堆栈不会溢出,应该就不会有问题阿 ...

或者你试试完全不优化编译
 楼主| gnail092 发表于 2021-2-3 12:33 | 显示全部楼层
雪山飞狐D 发表于 2021-2-2 22:30
或者你试试完全不优化编译

我就是优化等级为0的
linguanghua 发表于 2021-2-3 16:37 | 显示全部楼层
64K  RAM,大概是M3 M4之类吧。
按照你的说的情况,确实诡异。
建议加大栈空间,再试试。
我猜测:本来60K的时候已经堆栈溢出,只是没有破坏关键数据,所以看不出来?
xyz549040622 发表于 2021-2-3 17:59 | 显示全部楼层
我也认为大概就是空间的问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部