Предыдущая Следующая

Защита кода микроконтроллера от чтения доступна в микроконтроллерах с загрузчиком версии 1.61 и выше. Защита кода от чтения разрешается путем программирования Flash-памяти по адресу OxlFC (пользовательский сектор 0 Flash-памяти) значением 0x87654321 (десятичное значение 2271560481). Адрес

Oxl FC используется, чтобы разрешить использование некоторого участка памяти для обработчика исключительных ситуаций (ИС). Если защита кода от чтения разрешена, то заблокированы порт отладки JTAG, внешняя начальная загрузка памяти и нижеперечисленные команды ISP:

• чтение памяти;

• запись в оперативную память;

• переход (Go)-

• копирование оперативной памяти во Flash-память.

При попытке выполнения перечисленных команд ISP возвращается сообщение CODE_READ_PROTECTION_ENABLED.

Команда стирания ISP производит стирание всех пользовательских секторов только тогда, когда разрешена защита кода от чтения. Это ограничение не действует, если защита кода от чтения запрещена.

Защита кода от чтения не затрагивает команды IAP.

20.9. Команды ISP

Обработчик команд ISP оперирует командами, перечисленными в Табл. 20.6. Для каждой команды обработчиком поддерживаются детальные коды возврата. Обработчик команд ISP возвращает код возврата INVALID_COMMAND, когда получает неопределенную команду. Команды и коды возврата приведены в формате ASCII.

Таблица 20.6. Сводная таблица команд ISP

Команда ISP

Формат команды

Описание

Разблокировка

U <Код разблокировки>

Табл. 20.7

Установка скорости обмена

В < Скорость обмена> <Стоповый бит>

Табл. 20.8

Эхо

А <Установка>

Табл. 20.10

Запись в оперативную память

Ш<Начальный адрес> <Количество байтов>

Табл. 20.11

Чтение памяти

R <Адрес> <Количество байтов>

Табл. 20.12

Подготовить сектор(-а) к операции записи

Р <Начальный номер сектора> <Конечный номер сектора>

Табл. 20.13

Копировать оперативную память во Flash-память

С <Адрес Flash-naMHTH> <Адрес оперативной памяти> <Количество байтов>

Табл. 20.14

Переход

G <Адрес> <Режим>

Табл. 20.15

Стереть сектор(-а)

Е <Начальный номер сектора> <Конечный номер сектора>

Табл. 20.16

Заполнить пробелами сектор(-а)

I <Начальный номер сектора> <Конечный номер сектора>

Табл. 20.17

Читать идентификатор устройства (ID)

J

Табл. 20.18

Читать версию загрузчика кода

К

Табл. 20.19

Сравнение

М <Адрес1> <Адрес2> <Количество байтов>

Табл. 20.20

Код CMDSUCCESS возвращается обработчиком команд ISP только в том случае , когда полученная команда ISP была полностью выполнена и хост может подавать новую команду ISP. Исключениями из этого правила являются команды: «Установка скорости обмена», «Запись в оперативную память», «Чтение памяти» и «Переход».

Ниже подробно описывается каждая из команд ISP.

Разблокировка <Код разблокировки>. Описание этой команды приведено в Табл. 20.7.


Предыдущая Следующая






Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_222.html on line 320

Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_222.html on line 320

Warning: include() [function.include]: Failed opening './news.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/picprof/data/www/picprof.com/book/book4_222.html on line 320