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

 
 
> Прерывания от PIO
alexPec
сообщение Sep 7 2011, 18:38
Сообщение #1


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

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Уважаемые, а как в ниосе зарегистрировать процедуру прерывания, которое возникает по фронту PIO? Смотрел в хэндбуке, раздел 5 - периферия, там ничего не нашел, а вот на sgdma регистрацию прерываний (пример) брал оттуда, там есть. Гдеб его найти?
И попутно - время реакции без VIC какое примерно? Проц средний (не помню букву).


Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
barabek
сообщение Sep 7 2011, 22:34
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(alexPec @ Sep 8 2011, 04:38) *
Уважаемые, а как в ниосе зарегистрировать процедуру прерывания, которое возникает по фронту PIO? Смотрел в хэндбуке, раздел 5 - периферия, там ничего не нашел, а вот на sgdma регистрацию прерываний (пример) брал оттуда, там есть. Гдеб его найти?
И попутно - время реакции без VIC какое примерно? Проц средний (не помню букву).


Спасибо.

Код
    void init_ISR()
    {
//init keyboard
  IOWR_ALTERA_AVALON_PIO_IRQ_MASK(KEY_ROW_IN_BASE,0x03);
    IOWR_ALTERA_AVALON_PIO_EDGE_CAP(KEY_ROW_IN_BASE, 0x0);
    alt_irq_register(KEY_ROW_IN_IRQ,0,KeyBoardISR);

}

void KeyBoardISR(void* context, alt_u32 id) __attribute__((section (".exceptions")));
void KeyBoardISR(void* context, alt_u32 id)
    {
    //reset irq,

keys=IORD_ALTERA_AVALON_PIO_EDGE_CAP( KEY_ROW_IN_BASE);
    IOWR_ALTERA_AVALON_PIO_EDGE_CAP(KEY_ROW_IN_BASE, 0x0);
    IOWR_ALTERA_AVALON_PIO_IRQ_MASK(KEY_ROW_IN_BASE,0);
    keyboard_state=1;
    }



По второму вопросу в том же "Nios II Software Developer’s Handbook" в главе "Exveption Handling" в табличке 8-1

для среднего, как Вы говорите( с буквой s) latency=10, Response Time=128, Recovery Time=130 Это все в клоках. Не быстро, прямо скажем. Это при условиях, описаных там:

All code and data is stored in on-chip memory.

The ISR code does not reside in the instruction cache.

The software under test is based on the Altera-provided HAL
exception handler system.

The code is compiled using compiler optimization level "–O3", or
high optimization.

Go to the top of the page
 
+Quote Post

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


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

 


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


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