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

Обработчик команды ISP сравнивает принятую контрольную сумму с вычисленной контрольной суммой полученных байтов. Если эти контрольные суммы совпадают, то обработчик команд ISP отвечает строкой «ОК <CR> <LF>», чтобы продолжить дальнейшую передачу. Если контрольные суммы не совпадают, то обработчик команд ISP отвечает строкой «RESEND <CR> <LF>». В ответ, хост должен повторно передать соответствующие байты данных.

Описание этой команды приведено в Табл. 20.11.

Таблица 20.11. Команда ISP «Запись в оперативную память»

Команда

W

Вход

Начальный адрес: адрес в оперативной памяти, начиная с которого должны быть записаны байты данных. Этот адрес должен лежать в границах слова (32 бита). Количество байтов: Количество байтов, которые будут записаны. Это значение должно быть кратным 4

Код возврата

CMD_SUCCESS |

ADDR ERROR (Адрес не в границах слова) 1 ADDR_NOT_MAPPED |

COUNT ERROR (Количество байтов не кратно 4) | PARAM ERROR

CODE_READ_PROTECTION_ENABLED (включен режим защиты кода от чтения)

Описание

Эта команда используется, чтобы загрузить данные в оперативную память. Данные должны быть в формате UU-encoded. С загрузчиком версии 1.61 и выше эта команда блокирована, когда разрешена защита кода от чтения.

Пример использования

«W 1073742336 4 <CR> <LF>» запись 4 байт данных по адресу 0x4000 0200

Чтение памяти <Адрес> <количество байтовХ Поток данных сопровождается кодом возврата успешного выполнения команды. В ходе обмена, обработчик команд должен передавать контрольную сумму после передачи 20 строк данных

в формате UU-encode. Контрольная сумма вырабатывается путем сложения байтов необработанных данных (до их кодирования в формат UU-encode) и сбрасывается после передачи 20 строк в формате UU-encode. Длина любой строки формата UU-encode не должна превысить 61 символ (байт), т. е. может содержать до 45 байт данных. Когда количество исходных данных соответствует менее чем двадцати строкам UU-encode, то контрольная сумма должна вырабатываться, исходя из фактического количества передаваемых байтов.

Хост сравнивает принятую контрольную сумму с вычисленной контрольной суммой полученных байтов. Если эти контрольные суммы совпадают, то хост отвечает строкой «ОК <CR> <LF>», чтобы продолжить дальнейшую передачу. Если контрольные суммы не совпадают, то хост отвечает строкой «RESEND <CR> <LF>». В ответ, обработчик команд ISP должен повторно передать соответствующие байты данных.

Описание этой команды приведено в Табл. 20.12.

Таблица 20.12. Команда ISP «Чтение памяти»

Команда

R

Вход

Начальный адрес: адрес в оперативной памяти, начиная с которого должны быть прочитаны байты данных. Этот адрес должен лежать в границах слова (32 бита). Количество байтов: количество байтов, которые будут прочитаны. Это значение должно быть кратным 4

Код возврата

CMD_SUCCESS сопровождающий <фактические данные (в формате UU-encode)> | ADDR ERROR (Адрес не в границах слова) | ADDR_NOT_MAPPED |

COUNT ERROR (Количество байтов не кратно 4) | РАКАМ ERROR

CODE_READ_PROTECTION_ENABLED (включен режим защиты кода от чтения)

Описание

Эта команда используется, чтобы читать данные из оперативной памяти. С загрузчиком версии 1.61 и выше эта команда блокирована, когда разрешена защита кода от чтения

Пример использования

«R 1073741824 4 <CR> <LF>» чтение 4 байт данных по адресу 0x4000 0000

Подготовить сектор(-а) к операции записи <Начальный номер сектора> конечный номер сектора> — эта команда производит операцию «запись/стирание» Flash-памяти за два шага.


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



НА ГЛАВНУЮ | ЧТО ТАКОЕ PIC ? | ПРОГРАММАТОР | ПРОЕКТЫ | СТАТЬИ | ССЫЛКИ | КАРТА САЙТА
Hosted by uCoz