Раздел: Документация
0 ... 172 173 174 175 176 177 178 ... 195 3.Выждать не менее 100 не. 4.Перепрограммировать ячейку RSTDISBL (если установлена защита, то сначала необходимо выполнить стирание кристалла). 5.Выйти из режима программирования (отключить питание или подать на вывод RESET напряжение ВЫСОКОГО уровня). 6.Перевести микроконтроллер в режим программирования, как было описано ранее. 14.3.2.Стирание кристалла Команда «Стирание кристалла» должна выполняться перед каждым перепрограммированием микроконтроллера. Данная команда полностью уничтожает содержимое FLASH- и EEPROM-памяти, а затем сбрасывает ячейки защиты (записывает в них 1). Однако на состояние конфигурационных ячеек данная команда не влияет. Кроме того, в ряде моделей микроконтроллеров семейства Mega можно предотвратить стирание EEPROM-памяти путем программирования конфигурационной ячейки EESAVE. Для выполнения команды «Стирание кристалла» необходимо выполнить следующие действия: 1.Загрузить команду «Стирание кристалла» (код 1000 0000). 2.Подать на вывод WR отрицательный импульс; при этом на выводе RDY/BSY появляется сигнал НИЗКОГО уровня. 3.Ждать появления на выводе RDY/BSY сигнала ВЫСОКОГО уровня. 14.3.3.Программирование FLASH-памяти Запись FLASH-памяти Запись FLASH-памяти производится в следующей последовательности (реализация каждого этапа приведена в Табл. 14.17): 1.Загрузить команду «Запись FLASH-памяти» (код 0001 0000). 2.Загрузить младший байт адреса (положение ячейки внутри страницы). 3.Загрузить младший байт данных. 4.Загрузить старший байт данных. 5.Запомнить данные в буфере. 6.Повторить пп. 2...5 до полного заполнения буфера страницы. 7.Загрузить старший байт адреса (номер страницы). 8.Загрузить дополнительный байт адреса (в моделях ATmega2560x/2561x). 9.Записать страницу. 10.Повторить пп. 2...9 для записи остальных страниц памяти программ. 11.Завершить программирование, загрузив команду «Нет операции» (код 0000 0000). Необходимо отметить, что если для адресации ячейки памяти внутри страницы требуется меньше 8 битов (при размере страницы менее 256 слов), то оставшиеся старшие биты младшего байта адреса используются для адресации страницы при выполнении команды «Запись страницы» (Рис. 14.8). Временные диаграммы, иллюстрирующие процесс записи FLASH-памяти, приведены на Рис. 14.9. PCMSBPAGEMSB О
PAGEEND
Puc. 14.8. Адресация FLASH-памяти при программировании в параллельном режиме DATA -ХА1 -ХАО-BS1 -BS2 - XTAL1 . WR RDY/BSY RESET ОЁ PAGEL 6 12 3 4523 457 8 9 Адрес, Данные, Данные, Адрес, Данные, Данные, Адрес, Адрес, мл.байт мл.байт ст.байт мл.байт мл.байт ст.байт ст.байт доп.байт 9...12В j-\ г J~\- Рис. 14.9. Запись FLASH-памяти Чтение FLASH-памяти Для чтения FLASH-памяти необходимо выполнить следующие действия (реализация каждого этапа приведена в Табл. 14.17): 1.Загрузить команду «Чтение FLASH-памяти» (код 0000 0010). 2.Загрузить дополнительный байт адреса (в моделях ATmega2560x/2561x). 3.Загрузить старший байт адреса. 4.Загрузить младший байт адреса. 5.Установить ОЕ и BS1 в 0, после этого с шины данных DATA можно будет считать значение младшего байта содержимого ячейки памяти. 6.Установить BS1 в 1, после этого с шины данных DATA можно будет считать значение старшего байта содержимого ячейки памяти. 7.Установить ОЕ в 1. 14.3.4. Программирование EEPROM-памяти Запись EEPROM-памяти Запись EEPROM-памяти производится в следующей последовательности (реализация каждого этапа приведена в Табл. 14.17): 1.Загрузить команду «Запись EEPROM-памяти» (код 0001 0001). 2.Загрузить старший байт адреса. 3.Загрузить младший байт адреса. 0 ... 172 173 174 175 176 177 178 ... 195
|