Аз вече писах за метода за добавяне на външен файл в фърмуера на микроконтролера, дори пише за този онлайн конвертор е двоичен файл в с-с глава. Въпреки това, има един прост и лесен начин, който осигурява на IAR и дори, строго погледнато, свързваща трябва да бъде в състояние да го направят.
Разбира се, вие вече знае - ние се изкачи до настройките за връзка.
Един от моите най-често срещаните задачи през последните години - това е основният монтаж на devaysa на фърмуера, която съставя в фърмуер daughterboard. Основната стартиране на устройството проверява версията на фърмуера на допълнителните разходи на, и ако тя е под - новини за чистия си. Така че трябва да бъдат включени в основния фърмуер двоичен файл с дъщерно дружество на фърмуера.
Отворете прозореца Options -> Линкер -> Input:
Ние виждаме в долната част на «Сурови двоично изображение» опция. Това е точно това, което е необходимо, посочете файла.
Какво правят другите опции?
- Символ - за глобален символ на кода, това е името, което ще бъде назначен за масив от съдържанието на файла. Написах тук batp_fw, защото този фърмуер (фърмуер) BATP борда.
- Раздел - раздел свръзка, където ще бъде поставен на файла. Пишете тук «fw_section», само повече ще трябва да се създаде и публикува тази секция.
- Изравнете - байтове подравняване, полудуми или думи. Аз обикновено слагам 4 тук (приведе до границата на думата).
Посочете името на символа в прозореца «Дръжте символи», в противен случай характера (и целият масив), ще бъде изхвърлен в свръзката на сглобяване.
Запазете промените и да си отида, за да редактирате скрипта свръзката. Тя се намира в папката на проекта, нещо като stm32f4xx_flash.icf.
Добавих линията
Е, черешката на тортата, използването на тази част от паметта като масив в програмата - това е много ... не е много лесно!
Разбира се, типа на данните може да бъде всяко удобно за Вас време. Искате ли да получите достъп до байт по байт - използвайте Чар или по-добре uint8_t, искате да се ускори четене - контакт дума по дума, използвайки неподписан вътр или по-добре uint32_t.
Въпреки това, този метод позволява да се включи само един файл, ако искате да включите neskolko- нужда да редактирате ръчно свързваща командния ред.
Свързани статии