реклама на сайте
подробности

 
 
> Переход с вектора прерывания в обработчик при REMAP в uCOS., "ldr pc,[pc,#24]"
JeDay
сообщение Jun 2 2009, 14:49
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 276
Регистрация: 22-09-05
Из: Kiev
Пользователь №: 8 818



Добрый день.
Имеется плата с МК LPC23 серии. Во флеше живет 2 проекта: вторичный загрузчик и основное приложение (ОП), которое начинается с адреса 0х4000. Бутер использует основные адреса прерываний, а приложение - отремапленные.
В ОП используется RTOS, обработчики прерывания представляют собой "relative branch" - "ldr pc,[pc,#24]".
Собственно вопрос: как заставить работать обработчик прерывания? (с приложениями, в которых ISR адрес берется с VIC напрямую "ldr pc,[pc, #-0x0120]", проблем нет)

Вот похожая тема, но там не решена моя задача:
http://electronix.ru/forum/index.php?showt...branch&st=0

Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Сергей Борщ
сообщение Jun 2 2009, 14:55
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(JeDay @ Jun 2 2009, 17:49) *
В ОП используется RTOS, обработчики прерывания представляют собой "relative branch" - "ldr pc,[pc,#24]".
Собственно вопрос: как заставить работать обработчик прерывания?
Должен работать совершенно без доработки. В LPC ремапятся 64 байта, в их число попадает и константа, которая грузится по ldr pc,[pc,#24]. А эта константа представляет собой абсолютный адрес.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 20:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01366 секунд с 7
ELECTRONIX ©2004-2016