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

 
 
> Размещения одной и тойже прошивки по разным адресам флеш, как разместить код в произвольной области флеш?
TanT
сообщение Feb 19 2009, 03:40
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 22-11-05
Из: Россия->Омск
Пользователь №: 11 210



Доброго времени суток, столкнулся с необходимостью размещения одной и тойже прошивки по разным адресам флешки, да ещё чтобы работало. Есть код скомпилённый начиная с адресса, пусть 0х00001000 его требуется разместить по адресамм начиная с 0х00048000. Можно это организовать? Если можно, что для этого и где требуется поправить? Что-то я совсем в этом вопросе плаваю.


--------------------
Если вы не можете объяснить что-то шестилетнему ребенку, значит, вы сами этого не понимаете.
Альберт Эйнштейн
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
A. Fig Lee
сообщение Feb 19 2009, 03:53
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467



Цитата(TanT @ Feb 18 2009, 22:40) *
Доброго времени суток, столкнулся с необходимостью размещения одной и тойже прошивки по разным адресам флешки, да ещё чтобы работало. Есть код скомпилённый начиная с адресса, пусть 0х00001000 его требуется разместить по адресамм начиная с 0х00048000. Можно это организовать? Если можно, что для этого и где требуется поправить? Что-то я совсем в этом вопросе плаваю.


лихко! (теоретицки) на практике у меня так и не получилось.
то есть в линкер скрипте там опция есть "AT":

например:
Код
SECTIONS
{
     . = 0;                              /* set location counter to address zero  */

    startup : { *(.startup)} >flash     /* the startup code goes into FLASH */


     .text :                             /* collect all sections that should go into FLASH after startup  */
     {
        *(.text)                        /* all .text sections (code)  */
        *(.rodata)                      /* all .rodata sections (constants, strings, etc.)  */
         *(.rodata*)                     /* all .rodata* sections (constants, strings, etc.)  */
        *(.glue_7)                      /* all .glue_7 sections  (no idea what these are) */
        *(.glue_7t)                     /* all .glue_7t sections (no idea what these are) */
        _etext = .;                     /* define a global symbol _etext just after the last code byte */
    } >ram AT>flash                            /* put all the above into RAM and copy in FLASH */


код должен скомпилится для локейшен RAM, но записатся во FLASH.

онако - фигушки, VMA и LMA один и тот же - RAM.


--------------------
Верить нельзя никому, даже себе. Мне - можно.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- TanT   Размещения одной и тойже прошивки по разным адресам флеш   Feb 19 2009, 03:40
- - TanT   Хм... засада ещё в том, что кроме кода у меня ниче...   Feb 19 2009, 05:44
|- - amw   Цитата(TanT @ Feb 19 2009, 07:44) Хм... з...   Feb 19 2009, 07:31
|- - meister   Цитата(TanT @ Feb 19 2009, 09:44) Флешка ...   Feb 19 2009, 07:55
- - TanT   ЦитатаВам нужно просто разместить или исполнять с ...   Feb 19 2009, 08:26
|- - MrYuran   Цитата(TanT @ Feb 19 2009, 11:26) В IAR е...   Feb 19 2009, 08:55
- - scifi   А как такой вариант: посылать 2 версии прошивки, а...   Feb 19 2009, 08:41
- - TanT   ЦитатаЕсли не нужно, чтобы работали обе версии - м...   Feb 19 2009, 08:45
|- - meister   Цитата(TanT @ Feb 19 2009, 12:45) В устро...   Feb 19 2009, 08:52
|- - AlexandrY   Вам нужен просто elfloader. Все компилеры под ARM ...   Feb 19 2009, 08:56
- - TanT   ЦитатаА как такой вариант: посылать 2 версии проши...   Feb 19 2009, 08:54
- - TanT   ЦитатаКак вариант переключения с одной прошивки на...   Feb 19 2009, 09:06
|- - meister   Цитата(TanT @ Feb 19 2009, 13:06) А потом...   Feb 19 2009, 09:12
|- - TanT   Цитата(meister @ Feb 19 2009, 13:12) Флэш...   Feb 19 2009, 10:20
- - TanT   Ууу, сколько уже времени прошло. Загрузчик я сдела...   Mar 31 2009, 05:19


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

 


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


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