首页 > 其他 > 详细

内存不足、栈溢出

时间:2016-09-19 06:37:14      阅读:147      评论:0      收藏:0      [点我收藏+]

使用51单片机开发会容易出现DATA区内存不足的情况,有时体现为某SEGMENT OVERFLOW。这个时候可以充分利用128字节的片外RAM,在定义较大的数据类型时在最前面加上idata,在后面的程序中直接调用就可以了。

另外经常会出现栈溢出的问题。如果在主函数中单独调用子函数不会出错,而在另一个函数,例如中断中调用就会出问题的话,这个时候编译会通过,但是仿真的时候就会看到出错了。这种情况多半是由于函数多重调用导致的栈溢出,解决方法是简化子函数的调用方式,或者直接地,把几个子函数写成一个子函数,然后在这个函数中使用goto语句,这样的话工作量会很大,但是成效应该是最好的。

内存不足、栈溢出

原文:http://www.cnblogs.com/viaduct/p/5883685.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!