|
Ув. коллеги как передавать управление из Boot области к программе
Написал BootLoader для Atmega он должен принимать данные по UART и прошивать ими Flash.
Зашил BootLoader в контроллер, при помощи этого BootLoadera загрузил код программы во FLASH
Как теперь передать управление программе?
Или допустим работает прикладная программа возникло событие по которому нужно передать управление
BootLoaderу как это сделать?
Я пишу на Си, можно конечно сделать вставку на асме которая бы передавала
управление на нужный адрес, но есть ли другой способ не протироречащий структурному программированию,
потому что в этом случае могут быть проблемы со стеком его ведь тоже нужно будет инициализировать.
Еще вопрос фуз BOOTRST у меня прошит (программа стартует с BOOT области)
В программе BOOTloadera я прошил бит IVSEL в регистре GICR чтобы для программы BootLodera стартовые
адреса векторов прерываний начинались в области BootLoadera.
Я так понимаю что когда BootLoader передает управление прикладной программе,
то это бит нужно обнулить чтобы адреса векторов прерываний начинались в начале Flash памяти?
А если прикладная программа передает управление BootLoaderу, то этот бит она долджна установить
так или нет?
E-mail: info@telesys.ru