打印
[应用相关]

做的一个流量计

[复制链接]
1030|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
feiqi1|  楼主 | 2018-2-6 22:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
做的一个流量计。DEBUG的时候提示

Sun Mar 17, 2013 11:13:14: The stack 'Stack' is filled to 95% (76 bytes used out of 80). The warning threshold is set to 90.%
Sun Mar 17, 2013 11:13:37: Breakpoint hit: Code @ TEMP_PRESS.c:191.5
Sun Mar 17, 2013 11:13:37: The stack 'Stack' is filled to 100% (80 bytes used out of 80). The warning threshold is set to 90.%
Sun Mar 17, 2013 11:13:41: Breakpoint hit: Code @ TEMP_PRESS.c:191.5
Sun Mar 17, 2013 11:13:41: The stack 'Stack' is filled to 100% (80 bytes used out of 80). The warning threshold is set to 90.%
Sun Mar 17, 2013 11:14:28: Breakpoint hit: Code @ TEMP_PRESS.c:191.5

一开始使用95%  后来一直就是100% 这是什么原因呢? 有什么危害?
沙发
androidbus| | 2018-2-6 22:26 | 只看该作者

很可能运行到后面堆栈会越界,造成程序跑飞、死机等..

使用特权

评论回复
板凳
litengg| | 2018-2-6 22:28 | 只看该作者
溢出会出现莫名其妙的错误   在写程序时   最好估算一下代码量   这样选片子比较容易一点

使用特权

评论回复
地板
qiangweii| | 2018-2-6 22:30 | 只看该作者
把堆栈空间设置大一些就可以,很容易的

使用特权

评论回复
5
shashaa| | 2018-2-6 22:32 | 只看该作者
是 的  保险起见还是先调大一些吧。

使用特权

评论回复
6
sourceInsight| | 2018-2-6 22:34 | 只看该作者
一般的调试器会预先用某个特定值比如0xFF来初始化所有的堆栈

使用特权

评论回复
7
boy1990| | 2018-2-6 22:36 | 只看该作者
进入调试状态的时候去检查一下堆栈,看看堆栈内的数据有多少已经不是0xFF

使用特权

评论回复
8
CallReceiver| | 2018-2-6 22:39 | 只看该作者
一般出现顶楼这样的错误可能就是确实堆栈越界了,代码使用到了100%的堆栈。

使用特权

评论回复
9
hfdy01| | 2018-2-6 22:41 | 只看该作者
代码本身有些问题,有些数据误写入堆栈区域了。

使用特权

评论回复
10
xia00| | 2018-2-6 22:42 | 只看该作者
大部分都是因开启了中断。。。

使用特权

评论回复
11
bbapple| | 2018-2-6 22:46 | 只看该作者
这个用的是哪个版本的IAR和哪个版本的SDK?

使用特权

评论回复
12
handleMessage| | 2018-2-6 22:48 | 只看该作者
option->debugger里有个download,里面有个use flash loader选项

使用特权

评论回复
13
wanglaojii| | 2018-2-6 22:50 | 只看该作者
估计是没有对应的中断处理函数导致。。

使用特权

评论回复
14
laozhongyi| | 2018-2-6 22:51 | 只看该作者
勾选上问题就解决了。。。

使用特权

评论回复
15
Edisons| | 2018-2-6 22:52 | 只看该作者
建议楼主堆栈设大些试试。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

424

主题

1616

帖子

1

粉丝