硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4089|回复: 4
收起左侧

[有问必答] 硬件失效

[复制链接]

7

主题

61

回帖

82

积分

初级会员

积分
82
发表于 2016-4-20 09:46:06 | 显示全部楼层 |阅读模式
我想请问一下,什么情况下,程序会进入硬件失效中断~
程序经过更改后要进入死循环。能否把死循环注释掉?有哪些情况会触发这个中断呢?
  1. void HardFault_Handler(void)
  2. {
  3. #if 0
  4.   const char *pError = ERR_INFO;
  5.   uint8_t i;
  6.   for (i = 0; i < sizeof(ERR_INFO); i++)
  7.   {
  8.      USART1->DR = pError[i];
  9.      /* μè′y·¢Ëí½áêø */
  10.      while ((USART1->SR & USART_FLAG_TC) == (uint16_t)RESET);
  11.   }
  12. #endif        
  13.   
  14. #if 0        /* 3öÏÖòì3£ê±£¬Çy¶ˉ·äÃùÆ÷·¢éù */        
  15.         while(1)
  16.         {
  17.                 uint16_t m;
  18.                
  19.                 GPIOA->ODR ^= GPIO_Pin_8;
  20.                
  21.                 for (m = 0; m < 10000; m++);
  22.         }        
  23. #else
  24.         
  25.   /* μ±ó2¼tê§D§òì3£·¢éúê±½øèëËàÑ-»· */
  26.   while (1)
  27.   {
  28.   }
  29. #endif  
  30. }
复制代码
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106997
QQ
发表于 2016-4-20 12:57:15 | 显示全部楼层
注释掉会循环的进入硬件异常。
内存访问溢出等很容易进入到硬件异常。
回复

使用道具 举报

7

主题

61

回帖

82

积分

初级会员

积分
82
 楼主| 发表于 2016-4-20 15:18:01 | 显示全部楼层

回 eric2013 的帖子

eric2013:注释掉会循环的进入硬件异常。
内存访问溢出等很容易进入到硬件异常。 (2016-04-20 12:57) 
好的谢谢
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-14 02:17 , Processed in 0.146984 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表