Может нынче и не актуально, но в копилку стоит поместить.
Двухядерный dsPIC33CH512MP208. Защита кода имеет два бита в
конфиг-регистрах. Включение защиты GS (общего сегмента) и включение
защиты BS (бут сегмента). Включение защиты бута означает, что бут
может писать в общий, но не может писать в себя. Все так, НО. В
этом МК есть возможность включить AIVT и включить ее можно, только
если включен сегмент бута (именно включен - защита тут не причем).
AIVT при этом возникает на
последней странице бута (то есть количество страниц бута при этом должно быть не менее 2). Теперь проблема. Даташит в явном виде вещает:
Write protection of the BS does not cover the AIVT.
И это не так!!!! В результате при использовании AIVT в основном коде, а IVT в загрузчике, при попытке включить защиту BS, обновить AIVT вместе с обновлением кода в GS становится невозможно.
Вот об этом я и решил поведать коллективу. ))))