Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Подгружаемый код в ОЗУ. Keil+LPC2468
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
zovsilab
Доброго времени суток.

С ARM работаю не первый месяц, но вот с такой задачей пока не сталкивался.

Имеется готовое, законченное устройство, построенное на базе МК LPC2468. Сейчас работает в одном режиме, но в связи с расширением фукнционала устройства есть необходимость периодической загрузке дополнительного кода программы. Код загружается по Ethernet и должен быть расположен в ОЗУ. При этом в определенном месте основной программы необходимо указывать о том что код был загружен и указать "куда переходить" .

Как расположить получаемый доп. код в ОЗУ по определенному адресу?


P.S. При поиске по форуму находил только "расположение кода при компиляции проекта". laughing.gif



toweroff
Так если Вы сами принимаете код по Ethernet, то Вы же и располагаете его в ОЗУ. Это уж куда сами положите, там и будет biggrin.gif
А куда переходить - так можно в конце и адрес перехода отправить
zovsilab
Ну ткните носом, можно с ноги rolleyes.gif
Я не могу разобраться как непосредственно осуществить запись участка кода в ОЗУ?Куда копать?
SII
Работа с внешним ОЗУ никаких принципиальных отличий от работы с внутренним не имеет. Надо только сначала правильным образом инициализировать контроллер памяти -- и всё, работайте на здоровье: читайте, записывайте, исполняйте оттуда код...
andrewlekar
Оригинальная у вас задача. Вот вы поработаете с загруженным кодом, перезагрузитесь и... снова будете его по Ethernet загружать?
zovsilab
Данный участок кода реализует доп.режим устройства. Загружается по команде оператора.
Вся система находится у заказчика(кот. далековато от нас). Внесение нового режима может повлечь изменение прошивки, отладки и т.д. Поэтому остается только этот вариант. N- количество плат "они" перепрошивать явно не будут. Если есть какие варианты - поделитесь пожалуйста.
HARMHARM
Цитата(zovsilab @ Jul 11 2011, 14:57) *
Внесение нового режима может повлечь изменение прошивки, отладки и т.д. Поэтому остается только этот вариант. N- количество плат "они" перепрошивать явно не будут. Если есть какие варианты - поделитесь пожалуйста.

Прошивка и отладка - вещи ортогональные. Можете отладить у себя, а перепрошить на объекте, тем более что Ethernet есть...
Про "перепрошивку плат" "они" могут и не думать - достаточно софт запустить, который сам удаленно все устройства перешьёт.
ar__systems
Цитата(zovsilab @ Jul 11 2011, 07:57) *
Данный участок кода реализует доп.режим устройства. Загружается по команде оператора.
Вся система находится у заказчика(кот. далековато от нас). Внесение нового режима может повлечь изменение прошивки, отладки и т.д. Поэтому остается только этот вариант. N- количество плат "они" перепрошивать явно не будут. Если есть какие варианты - поделитесь пожалуйста.

Но без новой прошивки вы все равно не сможете реализовать такой подход.
andrewlekar
Цитата
Если есть какие варианты - поделитесь пожалуйста.

Да, есть. Если сделать механизм удаленной перепрошивки софта, то это вам позволит реализовать удаленно любой механизм работы и добавить любой функционал. Ещё есть экзотические варианты: 1. Поднять на процессоре некоторый скриптовый движок типа LUA и обновления софта тогда могут быть крошечными. 2. Использовать на процессоре тонкого клиента, а весь функционал реализовывать на сервере.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.