打印

程序老死机

[复制链接]
1463|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huangbaohong|  楼主 | 2014-1-20 15:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我最近写了个STM32L151C8的程序,但是程序运行的时候老死在startup_stm32l1xx_md.s中
TIM4_IRQHandler
I2C1_EV_IRQHandler
I2C1_ER_IRQHandler
I2C2_EV_IRQHandler
I2C2_ER_IRQHandler
SPI1_IRQHandler
SPI2_IRQHandler
USART1_IRQHandler
USART2_IRQHandler
USART3_IRQHandler
EXTI15_10_IRQHandler
RTC_Alarm_IRQHandler
USB_FS_WKUP_IRQHandler
TIM6_IRQHandler
TIM7_IRQHandler
                B       .          //程序就死在这里,有时候会卡死在这里,有时候又不会
                ENDP
                ALIGN
,不知什么原因,希望各位帮忙解答一下
沙发
helldata| | 2014-1-20 15:05 | 只看该作者
是在线调试,reset之后吧?
有没有进__system_init()和__main()?
可能是你时钟没有配置好。

使用特权

评论回复
板凳
huangbaohong|  楼主 | 2014-1-20 15:30 | 只看该作者
helldata 发表于 2014-1-20 15:05
是在线调试,reset之后吧?
有没有进__system_init()和__main()?
可能是你时钟没有配置好。 ...

嗯,在线调试,已经进入main(),时钟这些都应该没问题,现在没有问题了,应该是ADC有问题,不过现在还有另一个问题就是在线调试的时候程序运行时正常的,但是断开调试之后程序就不能正常运行了是什么原因呢,又看不出是哪儿出了问题

使用特权

评论回复
地板
helldata| | 2014-1-20 15:33 | 只看该作者
在线调试跟正常运行有一点不同:在线调试时时钟慢,正常运行时,时钟是正常时钟,可能跟延时有关。

使用特权

评论回复
5
huangbaohong|  楼主 | 2014-1-20 17:57 | 只看该作者
helldata 发表于 2014-1-20 15:33
在线调试跟正常运行有一点不同:在线调试时时钟慢,正常运行时,时钟是正常时钟,可能跟延时有关。 ...

:L,程序有出现上面的问题了,还是要卡死在B那里

使用特权

评论回复
6
mmuuss586| | 2014-1-20 18:27 | 只看该作者

使用特权

评论回复
7
helldata| | 2014-1-21 09:00 | 只看该作者
huangbaohong 发表于 2014-1-20 17:57
,程序有出现上面的问题了,还是要卡死在B那里

以前也碰到过类似的问题,忘记怎么解块的了,大概跟时钟或MDK配置有关。

使用特权

评论回复
8
yanwenbin33| | 2014-1-21 17:26 | 只看该作者
其实不死在那里我倒是没法理解。死的那条语句:(B .)的意思是跳转到当前指令,就是一直在哪里循环。也就是说,如果进入了上面的那些中断就会死机。

使用特权

评论回复
9
yanwenbin33| | 2014-1-21 17:28 | 只看该作者
其实不死在那里我倒是没法理解。死的那条语句:(B .)的意思是跳转到当前指令,就是一直在那里循环。也就是说,如果进入了上面的那些中断就会死机;相当于进入中断后,中断服务程序里只有一条指令:while(1);。

使用特权

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

本版积分规则

3

主题

7

帖子

1

粉丝