AltDv (17.06.2004 15:03, просмотров: 1) ответил ivp на Вопрос по прерываниям для ARM в среде IAR
Ответ: похожая история :-((( Приветствую!
Откуда ведется отладка? Из RAM или из Flash?
Все дело в том, что при отладке из RAM необходимо выполнить remapping, при котором осуществляется перетрансляция адресов, т.е. вектор сброса должен располагаться по адресу 0x0, вектор для irq прерываний по адресу 0x18 (причем по этому адресу производитель Philips рекомендует поместить следующую команду
ldr pc,[pc,#-0xff0] ;Load contents of the "VICVectAddr" register into PC
в то время как RAM начинается с адреса 0x40000000. Для осуществления remapping'а необходимо записать в регистр MEMMAP значение 2 и кроме того правильно сформировать карту памяти для ARM, с чем у меня лично возникли проблеммы. Кроме того неплохо было бы посмотреть startup code.
Ну а так ситуация у меня похожая, контроллер не входит в обработчик прерываний от таймера.
Было бы замечательно, если бы кто-нибудь из мэтров этого форума поделился опытом, а то такое впечатление, что мы заблудились в трех соснах.
С уважением, Дмитрий.