Вы могли бы лучше позволить компилятору / компоновщику решить, куда поместить изображение во Flash:
static const unsigned short Image[320*240] = { <image data> } ;
поместит Image
как массив в память ROM1.
Выне может записывать напрямую во флэш-память, обычно она доступна только для чтения, и хотя операции записи ориентированы на слова, слово не может быть записано, если оно не было стерто ранее, а стирание не ориентировано на страницы или секторы - поэтому управлять им несколько сложнеепример кода.
В моём предложении выше я включил инициализатор.Теперь, очевидно, нецелесообразно вручную инициализировать 320 * 240 элементов, но достаточно просто написать инструмент на базе ПК, который будет генерировать необходимый код инициализатора непосредственно из файла изображения.
В качестве альтернативы, если изображение не может бытьСтатический, вы можете зарезервировать часть вашего Flash для изображения, а затем написать код для записи на флэш-память и, при необходимости, стереть страницы из данных, загруженных, например, из последовательного порта или USB.В этом случае флэш-память должна быть выровнена по страницам и содержать целое число, кратное числу страниц Flash.
Для большей гибкости не следует полагаться на настройки целевого диалогового окна и вместо этого создавать собственный файл разброса, в котором можно затем создатьпользовательский раздел и выделите ему память изображений, используя расширение __attribute__
для переменных переменных armcc.