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

 
 
> NVIC stm32, TIM2 <-> USART1
Stepan_L
сообщение Aug 19 2012, 17:25
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 59
Регистрация: 26-08-08
Из: Ереван
Пользователь №: 39 828



Привет Всем. Дело вот в чем. не могу получить прерывание от Timer2.Таймер запускается, даже считает. NVIC_EnableIRQ(TIM2_IRQn) виснет в BusFault Handler.. и так далее ,а вот попробовал NVIC_EnableIRQ(USART1_IRQn) все нормально проходит.
TIM2_IRQn = 28 , USART1_IRQn = 37;
IAR 5.41.1


--------------------
ARM_enia
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
adnega
сообщение Aug 20 2012, 04:29
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Может виснет не NVIC_EnableIRQ(TIM2_IRQn), а код из обработчика прерывания?
Go to the top of the page
 
+Quote Post
Stepan_L
сообщение Aug 20 2012, 08:11
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 59
Регистрация: 26-08-08
Из: Ереван
Пользователь №: 39 828



В обработчик прерывания вообще не заходит,даже точку останова нельзя установить в обработчике.


--------------------
ARM_enia
Go to the top of the page
 
+Quote Post
KnightIgor
сообщение Aug 21 2012, 18:31
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 643
Регистрация: 29-05-09
Из: Германия
Пользователь №: 49 725



Цитата(Stepan_L @ Aug 20 2012, 10:11) *
В обработчик прерывания вообще не заходит,даже точку останова нельзя установить в обработчике.

Явно "глухая" функция, без вызовов извне, а это означает лишь одно: имя вашего обработчика прерывания написано с ошибкой!
Открываете ассемблерный startup файл (как он там в IAR точно зовется, не знаю), ищите имя обработчика для TIM2, АККУРАТНЕНЬКО copy-paste в заголовок вашего обработчика - готово.
Go to the top of the page
 
+Quote Post
Stepan_L
сообщение Aug 22 2012, 08:41
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 59
Регистрация: 26-08-08
Из: Ереван
Пользователь №: 39 828



TIM2_IRQHandler все точно написано


Не могу найти место для extern "C"


--------------------
ARM_enia
Go to the top of the page
 
+Quote Post
SSerge
сообщение Aug 22 2012, 13:34
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



Цитата(Stepan_L @ Aug 22 2012, 15:41) *
TIM2_IRQHandler все точно написано
Не могу найти место для extern "C"

Если функций несколько в одном месте, то можно их все разом окучить:
Код
#ifdef __cplusplus
  extern "C" {
#endif
void TIM2_IRQHandler(void)
{
  // код обработчика прерывания
}
void ещё_один_IRQHandler(void)
{
..........
}
#ifdef __cplusplus
}
#endif


--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post
Stepan_L
сообщение Aug 22 2012, 17:48
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 59
Регистрация: 26-08-08
Из: Ереван
Пользователь №: 39 828



После F11 на /* Enable the Selected IRQ Channels */ NVIC->ISER[NVIC_InitStruct->NVIC_IRQChannel >> 0x05] =(uint32_t)0x01 << (NVIC_InitStruct->NVIC_IRQChannel & (uint8_t)0x1F); зависает. extern тоже не помогло.


--------------------
ARM_enia
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Stepan_L   NVIC stm32   Aug 19 2012, 17:25
|- - _Артём_   Цитата(Stepan_L @ Aug 20 2012, 11:11) даж...   Aug 20 2012, 08:23
||- - Stepan_L   extern "C" не забыто? ????? сейчас как ...   Aug 20 2012, 08:28
||- - _Артём_   Цитата(Stepan_L @ Aug 20 2012, 11:28) сей...   Aug 20 2012, 08:40
|- - KnightIgor   Цитата(Stepan_L @ Aug 22 2012, 10:41) TIM...   Aug 22 2012, 12:11
||- - Stepan_L   STM32VLDiscovery board processor STM32F100xB   Aug 22 2012, 13:02
|- - _Артём_   Цитата(Stepan_L @ Aug 22 2012, 11:41) Не ...   Aug 22 2012, 13:31
|- - _Артём_   Цитата(Stepan_L @ Aug 22 2012, 20:48) Пос...   Aug 22 2012, 18:02
- - sla000   Попробуйте скачать свежую либу на свой проц. Там е...   Aug 20 2012, 04:39
- - PoReX   Может проще проект выложить, чем гадать на кофейно...   Aug 23 2012, 05:44
- - Stepan_L   main #include "stm32f10x.h" #include ...   Aug 24 2012, 07:16
- - KnightIgor   Может это и паранойа, но напиши-ка void TIM2_IRQ...   Aug 24 2012, 08:31
|- - Stepan_L   пробовал, 0   Aug 24 2012, 08:45
- - _Артём_   Цитата(Stepan_L @ Aug 24 2012, 10:16) //N...   Aug 24 2012, 09:00
- - Stepan_L   Это комментарий.   Aug 24 2012, 09:52
- - Stepan_L   По stm32f10x_it.c видно что зависает в void HardFa...   Aug 24 2012, 10:59
- - _Артём_   Цитата(Stepan_L @ Aug 24 2012, 13:59) По ...   Aug 24 2012, 11:41
- - Stepan_L   А да, stm32f10x_it.c только что подключил,увидел. ...   Aug 24 2012, 13:41
- - Stepan_L   Вопрос снят. Все получилось.Я не подключил (не зна...   Aug 25 2012, 18:33


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

 


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


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