[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
>Как попадет управление на загрузчик?
В данной реализации верхние 2К flash программ содержат загрузчик.
Вектор сброса указывает на загрузчик, а остальные векторы прерываний указывают на таблицу переходов, расположенную в самом начале нижних 2К flash.
>Что если питание пропадет во время стирания блока с вектором сброса и до записи туда стартового адреса загрузчика?
Стираются только нижние 2К flash... Загрузчик и векторы не трогаются.
При сбросе загрузчик смотрит наличие DS1996. Если ее нет, считает CRC нижних 2К, и если все ОК, передает управление на нулевой адрес в таблице перехода. Если СRС не совпадает ждет DS1996 и "грузит до посинения..."
Если DS1996 обнаружена,- стирает нижние 2К flash и "грузит до посинения" те-же нижние 2К... (таблица переходов + целевая программа + CRC)
Oleg
E-mail: info@telesys.ru