Микропроцессорные средства и системы управления: учебное пособие / А. В. Мануковский, А. Ж. Саринова.

В первом окне рисунка 13.7 указывается адрес таблицы векторов прерывания. В нашем случае адрес равен 0x08000000, это начало внутренней flash-памяти. Во втором окне необходимо указать адреса flash- и SRAM-памяти. Начальные адреса начинаются с 0x08000000 и 0x02000000, это заложено при проектировании. А вот конечные адреса разные, т.к. микроконтроллеры имеют разные объемы памяти. В окнах необходимо указать правильные параметры, т.к. в случае выхода размера ПО за эти границы линкер должен выдать сообщение об ошибке во избежание непредсказуемых последствий. Для нашего микроконтроллера STM32F100RBT6 объем flash равен 128 Кбайт, а объем SRAM - 8 Кбайт. Соответственно, значение второго окна для поля ROM должно быть равно (128x1024) - 1 = 0x0801FFFF, и по такой же методике значение второго окна должно быть равно 0x02001FFF. На рисунке 8 отображены максимальные значения памяти для семейства STM32. Не менее важным является третье окно, отвечающее за размер стека и кучи. Стек необходим для сохранения контекста при вызове функций, передачи параметров функций и так далее. Куча необходима для функций работы с памятью C/C++. Оставим эти параметры такими же, как на рисунке. Добавим лишь, что память для стека и кучи выделяется из SRAM, и, например, в случае неиспользования функции работы с памятью поле НЕАРможно сделать нулевым, таким образом сэкономив оперативную память для нужд приложения. Следующим шагом является выбор программатора-отладчика. В поле Category выбираем nymnDebugger и далее в правом поле - вкладку Setup (рисунок 13.8). В нашем случае нам необходимо выбрать программатор- отладчик компании STMicroelectronics 8Т-1лпк.Для этого выбираем категорию Linker. Следует обратить внимание на поле Run to main. Данный пункт указывает, с какого места будет начинаться отладка ПО. Если этот пункт активен, то процесс отладки начнется с функции main(), и первоначальная инициализация микроконтроллера пропускается (она будет выполнена автоматически). Если же данный пункт не активен, то процесс отладки начнется с самого начала, а именно - с вектора сброса Reset Handler файла startup_stm32fl0x_md_vl.s. На первоначальном этапе для более подробного изучения

RkJQdWJsaXNoZXIy MTExODQxMg==