Группа: Участник
Сообщений: 40
Регистрация: 22-12-08
Пользователь №: 42 664
Здравствуйте всем кто работал с камнем AT91SAM7S256 на симуляторе Keil uVision3. У меня следующая проблема: инициализирую прерывание интервального таймера PIT, вектора записал куда нужно, всё нормально. Прерывание вызывается, симулятор заходит в программу обработки, сбраcывается флаг вызова прерывания после того как я одноимённый регистр прочитал. Симулятор выходит из подпрограммы прерывания на то же место откуда на подпрограмму обработки прерывания вышел всё нормально, всё как надо, но интересное потом: через несколько тактов программа становится опять на то же место, куда попала из обработки прерывания и так до бесконечности... проходит несколько тактов и опять обратно "прыгает"... В чём дело? Подскажите или лучше пример скинте формирования прерываний на адрес: shuriklo@rambler.ru
Стартап у вас кейловский, остальная требуха атмеловская. Вместе они работать не будут. Или же к "static void InterruptHandler(void)" надо добавить модификатор __irq. Но лучше всю эту маразматическую атмеловскую "библиотечную" писанину выкинуть.
Группа: Участник
Сообщений: 40
Регистрация: 22-12-08
Пользователь №: 42 664
Цитата(aaarrr @ Apr 13 2011, 21:43)
Стартап у вас кейловский, остальная требуха атмеловская. Вместе они работать не будут. Или же к "static void InterruptHandler(void)" надо добавить модификатор __irq. Но лучше всю эту маразматическую атмеловскую "библиотечную" писанину выкинуть.