реклама на сайте
подробности

 
 
> Stm32 HardFault_Handler
tag
сообщение Dec 15 2011, 14:03
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 151
Регистрация: 21-02-06
Пользователь №: 14 561



Осваиваю STM32VLDISCOVERY. Запустил RTC и пытаюсь разрешить прерывания:




Код
    NVIC_InitTypeDef NVIC_InitStructure;
    
    // Enable the RTC Interrupt.
    NVIC_InitStructure.NVIC_IRQChannel = RTC_IRQn;
    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 10;
    NVIC_InitStructure.NVIC_IRQChannelSubPriority = 10;
    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
    NVIC_Init(&NVIC_InitStructure);






При вызове NVIC_Init() процессор вываливается в HardFault_Handler. Посмотрел пошагово эту функцию, при выполнении строки:

Код
tmppriority = (0x700 - ((SCB->AIRCR) & (uint32_t)0x700))>> 0x08;


я сразу же попадаю в HardFault_Handler. В чём может быть причина?

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
chan
сообщение Dec 16 2011, 15:59
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 68
Регистрация: 8-05-05
Пользователь №: 4 846



Проверьте константу RTC_IRQn на всякий случай

/* Enable the RTC Interrupt */
NVIC_InitStructure.NVIC_IRQChannel = RTC_IRQChannel;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 09:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01371 секунд с 7
ELECTRONIX ©2004-2016