Резервирование флэш-памяти для эмуляции EEPROM STM32F4

Я хочу эмулировать EEPROM в секторах 2 и 3, чтобы сократить время стирания (небольшие сектора по 16 КБ). Мой вопрос заключается в том, как зарезервировать это флэш-память, чтобы компилятор не размещал программный код в этих секторах?

Может ли кто-нибудь указать мне информацию об этом, я пока не нашел ничего, что имело бы смысл?

Спасибо


person Bruce Duncan    schedule 02.02.2013    source источник
comment
спасибо за указатель, но я просто недостаточно умен, чтобы прочитать этот документ.   -  person Bruce Duncan    schedule 03.02.2013
comment
Какой набор инструментов вы используете?   -  person starblue    schedule 03.02.2013
comment
Я экспериментирую с Keil MDK и CooCox.   -  person Bruce Duncan    schedule 04.02.2013


Ответы (1)


Из примечаний по применению AN3969, лучшим подходом, как вы сказали, было бы использование секторов 0-3, поскольку они всего 16кБ.

Мой вопрос заключается в том, как зарезервировать это флэш-память, чтобы компилятор не размещал программный код в этих секторах?

В вашем файле компоновщика (*.ld) объявите, что начало вашего Flash находится в начале сектора 4, чтобы компоновщик поместил ваш код, начиная с этого адреса, например.

person Galaxy    schedule 10.08.2015
comment
Проблема с окончанием флэш-памяти на F4 заключается в том, что размеры секторов очень велики, поэтому вы должны выделить значительный кусок памяти для эмуляции. Кто знает, по какой причине ST решила сгруппировать маленькие сектора в начале и постепенно увеличивать их к концу. - person Andy Brown; 10.08.2015