Использую связку STM32F217IG + SRAM CY7C1061AV33 (1 M × 16bit). IAR 6.30
Инициализацию FSMC взял из демо-проекта к плате STM322xG EVAL.
Память прекрасно читается и пишется (если писать 16-битными словами) по указателю. Скорость порадовала.
Пробовал размещать в этой памяти heap FreeRTOS, подменив указатель - некоторые задачи работают, некоторые нет (видимо из-за выравнивания).
Хотелось бы, конечно, чтобы линкер знал про эту область памяти и мог размещать в ней глобальные структуры, которых планируется много. Ну, конечно, с поправкой на выравнивание по 16 бит. Возможно такое? Попытался поправить скрипт линкера, но при попытке разместить в секции любые данные, процессор не стартует. Если такое возможно сделать, поделитесь, плис, примером скрипта линкера. И откуда в данном случае инициализировать FSMC?
Если нет, то какой способ размещения данных можно применить? Данные - массивы, структуры.