У меня есть плата с чипом ATMEGA88, которая имеет загрузчик по адресу 0x1800 и прошивку по адресу 0x0000. Оба имеют доступ к USB. Загрузчик может написать новую прошивку, но теперь мне нужно написать новый загрузчик.
Конечно, это не проблема при использовании программатора AVR, но возможно ли это сделать через USB? Моя идея была прошить специальную прошивку через старый загрузчик, который затем может написать новый загрузчик. Это возможно? Если да, то как?
Мои текущие попытки не увенчались успехом. Все команды (boot_page_erase, boot_page_fill и boot_page_write) выполняются успешно так же, как это делает загрузчик (с той лишь разницей, что он начинает запись с индекса 0x1800, а не 0x0000), но когда я перезагружаю устройство, старый загрузчик все еще там, так что на самом деле ничего не было записано на флэш-память.