Форум проекта uCrouter


gcc-user,2003\06\26 09:42:21,780 байт

Ответить

Форум

Ответ:

1) Вектора для ARM7TDMI:

0x00000000 Reset
0x00000004 Undefined instruction
0x00000008 Software Interrupt
0x0000000C Abort (prefetch)
0x00000010 Abort (data)
0x00000014 Reserved
0x00000018 IRQ
0x0000001C FIQ

Т.е. В ядро АRM7TDMI "входит" всего одна линия запроса прерывания - nIRQ (про FIQ пока "забываем").

Далее необходимо читать про контроллер прерываний на Ваш контроллер (AT91R40008). Я, к сожалению, не читал и помочь далее не могу. Обычно, есть регистры из которых можно прочитать причину прерывания и вызвать соответствующий обработчик.

2) Не понятна Ваша логика: если вектор находится во флеш, то почему не может быть вызван обработчик прерывания? Что перезаписать его (не стирая сектора) нельзя - это понятно. Но почему обработчик не может быть вызван?

Зарегистрироваться Забыли пароль ? Наверх

Ответить

Имя:
Пароль:
Тема:
Собщение:
Введите число : 1451


ARM®и Thumb® зарегистрированные торговые марки ARM Limited.
Linux® зарегистрированная торговая марка Linus Torvalds.
µClinux и uClinux торговые марки Arcturus Networks Inc.