8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 168 169 170 171 172 173 174 ... 195

роллера источников. При этом должно выполняться следующее условие: длительность импульсов как НИЗКОГО, так и ВЫСОКОГО уровня сигнала SCK должна быть больше 2 (при/ск < 12 МГц) или 3 (при/ск > 12 МГц) периодов тактового сигнала микроконтроллера.

Программирование осуществляется путем посылки 4-байтных команд на вывод MOSI микроконтроллера. Результат выполнения команд чтения снимается с вывода MISO микроконтроллера. Передача команд и выдача результатов их выполнения осуществляются от старшего бита к младшему. При этом «защелкивание» входных данных выполняется по нарастающему фронту сигнала SCK, а «защелкивание» выходных данных — по спадающему (см. Рис. 14.3 и Рис. 14.4).

Входные данные (MOSI)

Выходные данные (MISO)

S H rL ji TL rbJb

Рис. 14.4. Передача данных при программировании по последовательному каналу

Формат всех команд, используемых для программирования микроконтроллеров семейства в этом режиме, приведен в Табл. 14.12.

Таблица 14.12. Команды режима программирования по последовательному каналу

Команда

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

Описание команды

1-й байт

2-й байт

3-й байт

4-й

байт

Разрешение программирования

$АС

$53

$00

$00

Разрешает программирование микроконтроллера, пока на выводе RESET присутствует напряжение НИЗКОГО уровня

Стирание кристалла

$АС

$80

$00

$00

Очистка содержимого FLASH -и EEPROM-памяти

Чтение флага готовности RDY/BSY!)

$F0

$00

$00

данные

Если 0-й бит принятого байта сброшен в 0, то предыдущая операция программирования не завершена. Перед посылкой новой команды программирования необходимо дождаться установки этого бита в 1


(продолжение)

Команда

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

Описание команды

1-й

байт

2-й байт

3-й байт

4-й

байт

Команды загрузки

Загрузка дополнительного байта адреса

$4D

$00

адрес

$00

Загрузка старшего байта адреса слова данных в моделях ATmega2560x/2561x (используется только младший бит)

Загрузка страницы FLASH-памяти, старший байт

$48

$00

адрес

старший байт

Запись младшего/старшего байта в буфер страницы памяти программ. Адрес является адресом слова в пределах страницы. Младший байт должен загружаться первым

Загрузка страницы FLASH-памяти, младший байт

$40

$00

адрес

младший байт

Загрузка страницы EEPROM-памяти (страничный доступ)1)

$С1

$00

адрес

данные

Запись байта в буфер страницы

EEPROM-памяти.

Адрес является адресом байта

в пределах страницы

Команды чтения

Чтение

FLASH-памяти, старший байт

$28

адрес (ст. байт)

адрес (мл. байт)

данные

Чтение старшего/младшего байта памяти программ. Адрес является адресом слова в пределах адресного пространства памяти программ. В моделях ATmega2560x/2561x предварительно должен быть загружен старший бит адреса (команда загрузки дополнительного байта адреса)

Чтение

FLASH-памяти, младший байт

$20

адрес (ст. байт)

адрес (мл. байт)

данные

Чтение

EEPROM-памяти

$А0

адрес (ст. байт)

адрес (мл. байт)

данные

Чтение содержимого ячейки EEPROM-памяти. Адрес является адресом байта в пределах адресного пространства EEPROM

Чтение ячеек защиты

$58

$00

$00

данные

Чтение байта, содержащего значение ячеек защиты

Чтение идентификатора

$30

$00

адрес

данные

Чтение байта идентификатора с заданным адресом (только в режимах защиты №1 и №2, см. Табл. 14.2)

Чтение младшего конфигурационного байта

$50

$00

$00

данные

Чтение конфигурационных ячеек. Сброшенный бит означает, что соответствующая конфигурационная ячейка запрограммирована

Чтение старшего конфигурационного байта

$58

$08

$00

данные


(продолжение)

Команда

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

Описание команды

1-й байт

2-й байт

3-й байт

4-й

байт

Чтение дополнительного конфигурационного байта

$50

$08

$00

данные

Чтение конфигурационных ячеек. Сброшенный бит означает, что соответствующая конфигурационная ячейка запрограммирована

Чтение калибровочной ячейки

$38

$00

адрес

данные

Чтение калибровочной константы по заданному адресу

Команды записи

Запись страницы FLASH-памяти

$4С

адрес (ст. байт)

адрес (мл. байт)

$00

Запись страницы памяти программ по заданному адресу. Адрес представляет собой значение старших битов слов загруженной страницы (Рис. 14.5). В моделях ATmega2560x/2561x предварительно должен быть загружен старший бит адреса (команда загрузки дополнительного байта адреса)

Запись

EEPROM-памяти

$С0

адрес (ст. байт)

адрес (мл. байт)

данные

Запись значения в ячейку EEPROM-памяти по заданному адресу

Запись страницы EEPROM-памяти (страничный доступ)1)

$С2

адрес (ст. байт)

адрес (мл. байт)

$00

Запись страницы EEPROM-памяти по заданному адресу. Адрес представляет собой номер страницы, сдвинутый влево (Рис. 14.5)

Запись ячеек защиты

$АС

$Е0

$00

данные

Запись ячеек защиты. Для программирования ячейки соответствующий бит байта данных должен быть сброшен

Запись младшего конфигурационного байта

$АС

$А0

$00

данные

Запись конфигурационных ячеек. Для программирования ячейки соответствующий бит байта данных должен быть сброшен

Запись старшего конфигурационного байта

$АС

$А8

$00

данные

Записьдополнительного конфигурационного байта

$АС

$А4

$00

данные

1} В моделях ATmega48x/88x/168x, ATmegal62x, ATmega 164х/324х/644х, ATmega 165х/325х/3250х/645х/6450х и ATmega640x/1280х/1281 х/2560х/2561 х.



0 ... 168 169 170 171 172 173 174 ... 195