请教高手如何从函数HardFault_Handler中跳出来?

[复制链接]
4728|3
 楼主| cxy0629 发表于 2011-4-14 15:03 | 显示全部楼层 |阅读模式
用STM32F107VCT6的芯片调试SD卡的SPI模式操作,程序才刚开始运行就跳入HardFault_Handler函数出不来了:主程序:
int main(void)
{
/*#ifdef DEBUG
debug(); */
SPI_InitTypeDef   SPI_InitStructure;
u8 sd_recv_buf[512];
u8 sd_send_buf[512];
u32 i = 0,j = 0;
u8 ret = 1;
RCC_Configuration();主程序运行到RCC的初始化还可以进入;但是进去之后void RCC_Configuration(void)
{
    RCC_DeInit();

/* Enable HSE */
    RCC_HSEConfig(RCC_HSE_ON);

/* Wait till HSE is ready */
    HSEStartUpStatus=RCC_WaitForHSEStartUp();
到这一语句就进入死循环了,好像是RCC_WaitForHSEStartUp()函数进入不了
也查过一些相关资料看,还是不明白应该怎么解决才能让程序跳出这样的硬件异常,还请各位高手帮忙解决,困扰我很久了呢,先谢过大家了!
  
 楼主| cxy0629 发表于 2011-4-14 15:46 | 显示全部楼层
还请高手帮忙指点一二哦:handshake
 楼主| cxy0629 发表于 2011-4-14 16:25 | 显示全部楼层
RCC_WaitForHSEStartUp 这个函数是等待HSE准备好,若超时时间到来则退出。
ErrorStatus RCC_WaitForHSEStartUp(void)
{
  u32 StartUpCounter = 0;
  ErrorStatus status = ERROR;
  FlagStatus HSEStatus = RESET;
我的程序运行到第一句就进不去了,直接跳到函数HardFault_Handler 不出来
 楼主| cxy0629 发表于 2011-4-24 10:30 | 显示全部楼层
解决了哦,把局部变量改成全局变量就能通过了!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

35

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部