程序会跑死,不知道问题出在哪,很奇怪。。

2019-07-20 22:01发布

做的项目,自己画的板子,代码基本都是从原子例程中移植过来的(之前在探索者板子上已经实现了大部分功能),现在跑个把小时左右就会跑死,但又不完全死,能进中断,
webserver还能访问,就是程序主循环里的代码不跑了,看门狗我是在定时器中断里喂狗的,没起作用,,debug没跑死,停止debug指针停在串口代码里,还是看不出问题在哪。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
26条回答
czdspeed
1楼-- · 2019-07-22 20:15
JAMES 发表于 2016-5-20 14:10
已发,怎么看的?能看出什么问题?

楼主,一般碰到这样的问题会看一下LR寄存器。这里是程序最后一次调用停的地方。你的截图上的数值是0x08000EC9.我就查了下map文件。正好这个地方是time.c。“ 0x08000eec   0x0000021c   Code   RO          506    .text               timer.o”这个段的函数是“TIM3_Int_Init”和“TIM3_IRQHandler”。结合你开头说的,我觉得一个是定时器的标志位。要不是是中断函数里面有什么操作导致计数器不累加了?这些都是我的思路希望能帮到楼主。但我不确定具体的问题在什么地方。
czdspeed
2楼-- · 2019-07-22 20:20
我截张图给你看
JAMES
3楼-- · 2019-07-23 00:40
 精彩回答 2  元偷偷看……
czdspeed
4楼-- · 2019-07-23 06:16
JAMES 发表于 2016-5-20 15:18
大赞啊,,谢谢了,get新技能了,我去调调看

客气,我是想不一定是你的timer设置有问题,可能也有其他情况影响你的计数器了。这个我都说不清楚。你最好先不加那么多东西。
JAMES
5楼-- · 2019-07-23 09:45
czdspeed 发表于 2016-5-20 15:36
客气,我是想不一定是你的timer设置有问题,可能也有其他情况影响你的计数器了。这个我都说不清楚。你最 ...

嗯,删了很功能代码,基本确定是串口导致的问题,但还没确定是哪个串口
czdspeed
6楼-- · 2019-07-23 11:03
 精彩回答 2  元偷偷看……

一周热门 更多>