isakura 发表于 2015-1-22 10:31:55

MSP430在线调试的时候经常跑飞有没有问题???


现在开个定时器,30us定时,在线调试的时候经常跑飞,看到是程序运行到定时器最后结束的时候停在那里,然后再起来就就跑飞了

我把程序下载进去又看不到

这个有没有问题???

isakura 发表于 2015-1-22 10:44:41

有人知道????

haibaogk 发表于 2015-1-22 10:53:39

看提示,堆栈溢出

isakura 发表于 2015-1-22 10:59:20

我也可以知道是溢出,可是不明白怎么产生的,原来没有遇到过,就算堆栈溢出这个实际运行也可以发现啊,

我现在实际运行看不到,就是调试的时候出来,怕有隐患

bujie8010 发表于 2015-1-22 11:02:26

重点检查数组有无越界!

祥子 发表于 2015-1-22 11:05:34

isakura 发表于 2015-1-22 10:59
我也可以知道是溢出,可是不明白怎么产生的,原来没有遇到过,就算堆栈溢出这个实际运行也可以发现啊,

我 ...

调试方法 影响了实际运行结果?

isakura 发表于 2015-1-22 14:35:10

上面提示的5B60   5C00都是程序空间啊

isakura 发表于 2015-1-22 15:27:58

本帖最后由 isakura 于 2015-1-22 15:28 编辑

5c00是程序启动地址

看过了,5B60是属于 全局变量空间和程序之间的,不知道干什么用的

isakura 发表于 2015-1-22 15:46:56

每次都是指到绿色光标位置才会死掉

可是我在红色位置设置一个断点,根本就跑不到那里啊

isakura 发表于 2015-1-22 16:07:05

本帖最后由 isakura 于 2015-1-22 16:31 编辑

zhoufly 发表于 2015-1-22 12:29
MS仿真也会影响内存的或是占内存,RAM小的MCU调试时很痛苦的,

每次都是指到绿色光标位置才会死掉

可是我在红色位置设置一个断点,根本就跑不到那里啊


yangsen 发表于 2015-1-22 18:08:00

MSP430仿真调试是这个德行,定时器不会停,中断不断的压栈最后就堆栈溢出了。不停在红色光标处是不是你程序了的那个逻辑判断始终是真编译器直接给你优化了?

a136498491 发表于 2015-1-22 18:21:01

不知道能不能用printf打印到串口。虽然增加了工作量。

isakura 发表于 2015-1-22 18:44:45

yangsen 发表于 2015-1-22 18:08
MSP430仿真调试是这个德行,定时器不会停,中断不断的压栈最后就堆栈溢出了。不停在红色光标处是不是你程序 ...

应该不会始终是真,我看过寄存器变量是没问题的,所以想不通

yangxx 发表于 2015-1-22 19:01:33

代码应该没问题 也有可能是局部变量太多 尝试把你的局部变量改成全局变量 我用IAR调试CC2530/CC2541经常出这种问题 动不动就堆栈溢出/下不进程序/识别不到芯片 IAR不稳定

isakura 发表于 2015-1-26 14:45:40

yangxx 发表于 2015-1-22 19:01
代码应该没问题 也有可能是局部变量太多 尝试把你的局部变量改成全局变量 我用IAR调试CC2530/CC2541经常出 ...

那就好,希望是这个原因

lixiao7892998 发表于 2015-1-27 11:49:13

看你的时钟设置是否太高了,有时候DCO太高容易跑飞

isakura 发表于 2015-1-27 18:55:05

lixiao7892998 发表于 2015-1-27 11:49
看你的时钟设置是否太高了,有时候DCO太高容易跑飞

16M的时钟

lixiao7892998 发表于 2015-1-27 19:07:45

你是哪个型号

liao-ljj 发表于 2015-1-27 22:08:50

堆栈调节大些即可!编译选项中有。。。。

34071417 发表于 2015-1-31 14:12:49

我也碰到过这个问题,不调试没问题。最好使用串口打印输出调试信息。这个比直接调试好多了,也方便知道程序在哪出问题
页: [1]
查看完整版本: MSP430在线调试的时候经常跑飞有没有问题???