|
для передачи управления основной программе нужно вернуть SFR'ы в значение по умолчанию после ресета и сделать jmp на нулевой адрес, я делаю так:
void (* pf)(void)=0;
pf();
Если из прикладной программы нужно передать управление в boot loader, можно сделать так же, вместо 0 поставив адрес boot loader. О SFR'ах заботься сам, стек инициализирует startup.
Можно сбрасывать MCU watchdog'ом, попадешь либо в приложение, либо в boot loader, в зависимости от BOOTRSТ. В общем, вариантов много.
E-mail: info@telesys.ru