Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: проблема с прерываниями
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
zpv
Помогите пожалуйста. Есть проект, который писался для AT91SAM7X256 в Keil uVision3 V3.51. В данном проекте для начальной конфигурации ядра использовались файлы Cstartup.s Cstartup_SAM7.c взятые из многочисленных примеров. Проект компилился с помощью Keil CARM. Попытка перевести проект под Keil uVision 4.0 увенчалась кучей ошибок синтаксиса и не только файла Cstartup.s, т.к. он не поддерживает Keil CARM, а использует RealView Compiler. Нашел пример, который компилится и использует для начальной конфигурации файл SAM7.s, но в нем нет прерываний. Попытался прикрутить к проекту ранее рабочее прерывание от TC0 и получил следующее: после первого вхождения в прерывания процессор остаётся в режиме IRQ, хотя программа возвращается в главный цикл и больше в обработчик не заходит. Подставил в обработчик таймера префикс __irq - процессор возвращается в режим User/System, но повторного входа в прерывание по прежнему нет. Начал изучать файл SAM7.s и увидел, что в нем описан только вектор Reset_Handler а про прерывания присутствует только - IRQ_Handler B IRQ_Handler и всё. Подскажите, мне что необходимо вручную менять SAM7.s . Если да, то что там необходимо указывать. Или скиньте пример проекта с прерываниями под RealView Compiler. Заранее благодарен за помощь.
kosyak©
В регистр AIC_EOICR в конце обработчика прерывания команда записи есть?
zpv
Цитата(kosyak© @ Sep 6 2010, 16:20) *
В регистр AIC_EOICR в конце обработчика прерывания команда записи есть?

Нет, я в начале обработчика читаю регистр статуса. Завтра на работе обязательно попробую. Удивительно, но раньше работало и так и в примерах такого не видел, хотя в доке читал. Получается, что CARM сам добавляет команду записи в AIC_EOICR? Спасибо.
kosyak©
Цитата(zpv @ Sep 6 2010, 18:49) *
Получается, что CARM сам добавляет команду записи в AIC_EOICR?.

Вот это мне кажется врядли...Вы бы прикрепили стартапы, в качестве пищи для размышлений... в слепую можно только гадать.
zpv
Цитата(kosyak© @ Sep 6 2010, 18:29) *
Вот это мне кажется врядли...Вы бы прикрепили стартапы, в качестве пищи для размышлений... в слепую можно только гадать.

Спасибо, запись в AIC_EOICR помогла. По поводу стартапов попробую сам разобраться, дабы не занимать вашего времени.
Очередной раз понял: надо читать документацию, а не верить различным примерам. Удачи.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.