Миркоконтроллер STM32H743, среда разработки Ac6 на базе eclipse и gcc
Никак не получается разместить константу по конкретному адресу флэшки
В IAR это делалось простейшей инструкцией с собачкой
int c @ 0x12345678 = 42;
Для gcc никак не сделать, а нужно именно для него.
В инете пишут про некие манипуляции с ld-скриптом и секциями. Делаю все по инструкциям — смотрю результирующую прошивку — на нужных адресах того что мне нужно нет.
Здравствуйте, reversecode, Вы писали:
R>вообще не понятно о чем речь
R>если о размещении самого бинарника по адресам
R>то через опции линкера или ld
R>если запись по физ адресу то volatile
R>volatile int addr=0x123456789;
R>addr=2;
R>https://stackoverflow.com/questions/4067811/how-to-place-a-variable-at-a-given-absolute-address-in-memory-with-gcc
R>https://www.eevblog.com/forum/microcontrollers/how-to-port-iar-compiler-code-_pragma-location_-and-___no_init_-to-gcc/
Нет. После компиляции и прошивки по конкретному адресу во флэшке должно быть конкретное значение.
https://mcuoneclipse.com/2012/11/01/defining-variables-at-absolute-addresses-with-gcc/
и отредактируйте свое предыдущее сообщение
и впредь не надо меня цитировать
я загуглил за 5 секунд
сначала вышел на ссылку
https://www.iar.com/support/tech-notes/compiler/placing-a-pointer-table-at-a-specific-address/
потом по ключевому словам The absolute placement
добавив gcc
вышел на правильную ссылку
почему вам это было сложно сделать мне вот интересно
Здравствуйте, reversecode, Вы писали:
R>https://mcuoneclipse.com/2012/11/01/defining-variables-at-absolute-addresses-with-gcc/
Именно по этой инструкции я и делал (еще до того как спросить здесь). Не работает.