Полная версия этой страницы:
прерывания MicroBlaze
lelik_nara
Nov 11 2008, 08:17
Работаю с EDK 9.1
Написал три модуля, отладил, с каждого из которых идут прерывания
подключил контроллер прерываний, приконектил оба прерыванмя, включил их.
срабатывает только прерывание с наивысшим приоритетом, а остальные нет
подскажите в чем может быть проблема
???
Дварфик
Jun 16 2009, 11:56
Ха, самому интересно как эти прерывания реализовать. У меня было событие когда на процессор приходили новые данные и он должен был их сохранить в памяти. Я реализовал это через арбитр, т.е. программа ничего не обрабатывала, всё было аппаратным
Все должно работать. Проблема либо аппаратная либо программная. В первом случае у вас должны все входы идти на КП, а затем выход КП на вход прерываний процессора. Если здесь прядок проверяете прогу. Сначала регистрируем обработчик исключений, потом регистрируем каждый обработчик прерываний, здесь используется маска. Затем разрешаем прерывания для каждой линии прерываний(воторой параметр функции тоже маска).
Дмитрий Мазунин
Jun 18 2009, 09:17
Согласен с предыдущим постом, еще не забыть разрешить генерить прерывания самим ядрам (если в них этот механизм предусмотрен).
а там есть еще программная хитрость в настройке контроллера прерываний, надо идентификаторы всех используемых прерываний собрать по маске и подсунуть функции инициализации контроллера прерываний. в моем случае помоголо.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.