[an error occurred while processing this directive]
|
У меня есть BootLoader для Atmega8 и есть программа приложения. Можно ли эти две программы оформить в одну , чтобы программа BootLoadera была в процедурой программы приложения. Чтобы потом записывать их вместе в контроллер. Я понимаю что программа BootLoadera должна находиться по определенным адресам во Flash памяти контроллера. В документации на IAR C Compiller я прочитал что любую процедуру основной программы можно разместить в созданным мной сегменте, например “MYSEGMENT_F”, а этот сегмент разместить на определенные адреса Flash (это прописывается в “XCL” файле ).
типа так
-Z(CODE)MYSEGMENT=1800-1FFF // Сегмент для процедуры BootLoader’a
В программе приложения я пишу чтобы процедура BootLoader’а разместилась в сегменте “MYSEGMENT_F”, а следовательно и по адресам 1800-1FFF
типа так
#pragma location =”segment”
BootLoader(void)
{
……………..
…………….
}
Вопрос правильно я делаю будет ли так работать BootLoader?
P.S.Другой алгоритм типа такого . Загружаю BootLoader в область 1800-1FFF , с его помощью загружаю программу приложения по UART неподходит.
Нужно чтобы процедура BootLoadera была в составе программы приложения и программировалась вместе с ним. Получать управление BootLoader будет при выполнении программы приложения.
E-mail: info@telesys.ru