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

 
 
> Инициализация векторов прерывания, LPC29
toweroff
сообщение Aug 1 2011, 20:26
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Что-то запутался совсем...

Нужно инит IRQ. Итак, по шагам:

0. Адрес IRQ_exeption инитится вот таким:
Код
void __irq IRQ_Exception( void )
{
  U32 regVal, index;
  HandlerAddr irqHandler;

  regVal = INT_VECTOR_1;
  index = regVal >> 3;
  if ( index == 0 )
  {
    /* no-interrupt handler for IRQ */
    return;
  }
  irqHandler = IRQ_VectorTable[index].Isr;
  (*irqHandler)();
  return;
}

1. Заносим в секции Reset таблицу (располагается в RW) в INT_VECTOR_1
2. Инитим таблицу нулями
3. Маска приоритетов = 0
4. инициализация всяких клоков, flash и GPIO (без фанатизьму, частота ядра 120МГц)
5. Устанавливаем прерывание для таймера0 (заносим в таблицу прерываний по смещению 2*2 адрес и приоритет)
6. Включаем прерывание таймера 0 (TIM0_INT_SET_ENABLE = 1;) и стартуем его
7. Прога выполняется

Настройка таймера корректна, проверялось на "родном" стартапе
Но в ту самую IRQ_Exception так и не попадаю

Что я мог упустить ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Aug 1 2011, 20:31
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toweroff @ Aug 2 2011, 00:26) *
Что я мог упустить ?

Глобальное разрешение IRQ, например.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Aug 1 2011, 20:49
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(aaarrr @ Aug 2 2011, 00:31) *
Глобальное разрешение IRQ, например.

включено

Индусы сволочи... как они тестят (и оно вообще есть?) свой софт...

Код
index = regVal >> 3;


а кто оттуда уберет старшую часть, которая содержит адрес таблицы sad.gif
Go to the top of the page
 
+Quote Post



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

 


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


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