7763|8

78

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请问:什么情况下会出现Failedtohaltcpu [复制链接]



环境:IAR ewarm 5.2 + J-link + stm32

现象:
      今天刚把ewarm4.4改为5.2,程序在4.4下仿真及实际运行都正常
      5.2下仿真运行,正常运行中,执行NVIC_GenerateSystemReset()后死机
      (死机未必跟软件复位有关,不排除时间上的巧合)
      死机后仿真机无法下载程序,下载时出现Failed to halt cpu提示
      重新上电无效

另外:直接运行j-link,能正常显示目标板电压,CM3内核

这种现象是什么原因?应该怎样解决?
此帖出自stm32/stm8论坛

最新回复

重新插拔Jlink试试,我的有时候就需要重新插一下,可麻烦了  详情 回复 发表于 2013-2-26 20:12
点赞 关注
 

回复
举报

65

帖子

0

TA的资源

一粒金砂(初级)

沙发
 

怀疑是调用的函数有问题

详细原因要看它的反汇编代码,和单步执行情况才能判断。

可以先擦除FLASH解决。
此帖出自stm32/stm8论坛
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

版主答非所问啊


函数是st的库文件,没改过,而且在4.4上一直正常运行的。

另外,包含多个跟定时器有关的嵌套中断的场合,根本是没办法单步执行程序的,当然这是另外的事儿,跟现在的问题无关。

我没想让大家帮我查程序,只是想知道j-link什么情况下会控制不了cpu(重新上电也一样控制不了cup),原因是什么,这种情况下应该怎么处理。(正规的处理方式是什么?有哪些处理方式?)

另外,单独运行j-link能正常读到电压和内核,说明cpu,j-link都是好的。
此帖出自stm32/stm8论坛
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

4
 

这种情况的根本原因是程序中某些自动运行模块干扰了调试

请参考下面这个文档第68页的说明。


楼主位并没有给出3楼给出的那些信息,所以我无法判断你遇到错误的大致原因,我只能怀疑是调用的函数有问题。但不管怎样,按照下面这个文档第68页的说明,我建议先擦除FLASH解决是有针对性的,因此我并没有“答非所问”。
此帖出自stm32/stm8论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

5
 

谢谢版主,我仔细看了

仔细看了第68页,看了好几遍。

好像只有DMA算是合理的解释,定时器、ADC连续转换如果不是通过DMA而是通过中断响应的,似乎应该对调试监控程序没有影响。监控程序显然是应该能够通过控制cpu寄存器来控制中断响应的。

不过,也许IAR或者j-link这里没彻底做成熟,反正就是现象存在、原因不明,不必追究了。

68页提到的那几个办法,应该都是尝试,谈不上一定有效,最正式的办法可能就是版主说的擦除flash,用isp。

======================================
另外,如果没有ISP接口,用j-link怎样直接擦除flash?
当然,这是侯IAR已经不能用了,好像有个j-flash arm,谁知道怎么用?
此帖出自stm32/stm8论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

6
 

一般只需要设置BOOT0/BOOT1为从RAM启动再进行正常下载调试

                                 IAR软件允许在从RAM启动的模式下,在Flash中下载程序和调试;这种方式下载程序和调试可以防止Flash中已有程序的运行;当然在开始之前需要手动复位MCU,因为IAR软件上的复位操作不能传递到芯片上产生硬件复位信号。
此帖出自stm32/stm8论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

7
 

实际的产品,哪有boot0/1是活动的啊

手动复位也很少有必要装啊,有手动复位、boot0/1能活动的,都是开发板了。

此帖出自stm32/stm8论坛
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

8
 

既然要调试就需要有一些基本的调试手段

                                 实际的产品是不适合调试的。
此帖出自stm32/stm8论坛
 
 
 

回复

22

帖子

0

TA的资源

一粒金砂(中级)

9
 
重新插拔Jlink试试,我的有时候就需要重新插一下,可麻烦了
此帖出自stm32/stm8论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表