你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 6053|回复: 1

换了种方法也会停在 HardFault_Handle ?

[复制链接]

4

主题

17

回帖

0

蝴蝶豆

初级会员

最后登录
1970-1-1
发表于 2009-10-30 12:40:44 | 显示全部楼层 |阅读模式
 
MDK3.8a + EK-STM3210E开发板  + ST_LINKII
最初用库文件中的USART的interrupt文件作为原型,串口收发正常,把定时器2
加上,也可以。把IO也加上,但一运行根本不会进入MAIN,一直都在HardFault_Handler处。不
明为何,慢慢删除,成了现在模样。我发现如果编译通过出现如下的提示,就会正常:
Program Size: Code=2580 RO-data=336 RW-data=152 ZI-data=648 
此时增加代码,
  while (1)
  {
     if(vT2_5ms_cnt >= 200)
     {
        vT2_5ms_cnt = 0x00;
        //if(P_OrangeLED_TST() ) P_OrangeLED_CLR();
        //else   P_OrangeLED_SET();
        P_OrangeLED_SET();
        P_OrangeLED_CLR();
        P_OrangeLED_SET();
       // P_OrangeLED_CLR(); //把这句打开,编译后Code加大到2588
       // P_OrangeLED_SET();
       // P_OrangeLED_CLR();
     }
   } //while (1) 主循环
编译通过出现如下的提示,就会不正常:( Code>2580 就会出现问题 )
Program Size: Code=2588 RO-data=336 RW-data=152 ZI-data=648 
是否编译器有问题,还是配置有问题?为什么我做的老跑到HardFault_Handler?还请高人指点指点!
文件路径:stm32f10x_stdperiph_lib_v3.0.0/Project/Template/RVMDK/
 

stm32f10x_stdperiph_lib_v3.0.0.rar

下载

1.17 MB, 下载次数: 3, 下载积分: ST金币 -1

回复

使用道具 举报

134

主题

4489

回帖

239

蝴蝶豆

版主

最后登录
2020-12-9
发表于 2009-10-30 15:46:40 | 显示全部楼层

RE:换了种方法也会停在 HardFault_Handle ?

1、首先确定你的mhx文件的大小;
2、确定你的stm32芯片ram和flash的大小;
3、你进去的是硬件错误中断,说明你的某个操作引起硬件错误;
4、你说大于2580就会出这样的错误,我怀疑是你的代码超出STM32范围。
回复 支持 反对

使用道具 举报

关于 意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
13245底部标题123相同标题
12底部标题123相同标题
33333底部标题123相同序号
3435底部标题-无链接
关注我们
st-img 微信公众号
st-img 手机版