本帖最后由 OneRain 于 2018-6-18 13:18 编辑
很久没有搞51内核的MCU了,发现程序的局域变量数据经常被改的莫名奇妙。。。函数级数在4-5级,不是太深,但是好像经常表现出溢出导致局域变量数据被改。。。
见图:
QQ截图20180617152836.png (27.22 KB, 下载次数: 0)
下载附件
2018-6-17 15:29 上传
,函数1退出后,函数2的局域变量数据全部被修改的不成样子。。。
Program Size: data=74.1 xdata=207 const=1351 code=13749,我程序占有量发现data变量留的足够有啊。。。。求那个大神告知原因啊!!!
修改原因:添加具体错误原因,好让以后有人遇到这种错误的人,搜索到关键字的搜索到这个解决贴!!!
现在问题的关键就是,退出函数调用的时候,局部变量会被修改。。。导致值出现错误!!!有点操蛋。。。。
开了一个心跳中断,我把总中断关了一个鸟样!!!
我都在想要不要用IAR的51了,感觉有点慌!!!!
一周热门 更多>