Вопрос немного в сторону, про М4 и настройки Кейла.
Вот окно настроек:
У меня как-то раньше на LPC17xx небыло нужды туда лазить, оставлял все по дефолту.
Но тут во первых наконец хочеться разобраться что к чему, во вторых есть вопрос по F4.
Слепа ПЗУ, справа ОЗУ. И там есть ROM*/IROM* и RAM*/IRAM*.
Насколько я понял. ROM* и RAM* это если цепляются внешние на FSCM, а пурвая буква "i" означает "internal", т.е то что внутри проца.
Разбивать IROM на 2 части может понадобится для собственного бутлоадера а таже для использования части флеша как ЕЕПРОМ.
Радиобаттоны возле ROM* определяют откуда стартовать.
А вот что делает чексбокс default?
Далее - с RAM. Тут тоже можно разбить на 2 области, но для к примеру LPC17хх или для F1 не обчень понятнодля чего это надо.
И для чего нужны чекбоксы "No Init" рядом с ними?
В Кейле нет возможности сказать про какую-то переменную, что ее не надо инициализировать при старте (аналог persistant в Hi-Tech)?
А главное - у F4 две области памяти, общая 128к плюс 64к только для CPU.
Keil по умолчанию ставить первую, а вторую не использует.
По идее, правильнее всего было бы размещать в первой только е переменные, которым нужно DMA, а те, к которым обращается только процессор - во второй.
Но как распределять иак переменые и как обьяснить это линкеру?