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

0 ... 176 177 178 179 180 181 182 ... 195

Активные состояния:

•Shift-DR — осуществляется побитная загрузка байта данных;

•Update-DR — содержимое регистра данных FLASH-памяти копируется во временный регистр в буфере страницы. Чередование старшего и младшего байта при каждом прохождении состояния Update-DR осуществляется автоматически, начиная с младшего байта при загрузке команды.

PROG PAGEREAD (код команды $07)

Эта команда предназначена для считывания содержимого страницы памяти программ через порт JTAG. Реализация этой команды также зависит от модели микроконтроллера.

В «старых» моделях (ATmega 16х/32х/64х/128х и ATmegal62x) в качестве регистра данных выбирается регистр чтения виртуальной страницы (Virtual FLASH Page Read Register), размер которого на 1 байт больше размера страницы памяти программ. Побайтная пересылка содержимого страницы в сдвиговый регистр осуществляется автоматически.

Активные состояния:

•Shift-DR — осуществляется побайтная пересылка содержимого страницы FLASH-памяти в сдвиговый регистр и побитовая его выдача на вывод TDO. Первые 8 тактов используются для первоначальной загрузки сдвигового регистра, поэтому выдаваемые в это время биты следует игнорировать.

В остальных моделях в качестве регистра данных выбирается 8-битный регистр данных FLASH-памяти.

Активные состояния:

•Capture-DR — содержимое выбранного байта защелкивается в регистре данных FLASH-памяти. Чередование старшего и младшего байта при каждом прохождении состояния Capture-DR осуществляется автоматически, начиная с младшего байта при загрузке команды.

•Shift-DR — осуществляется побитовая загрузка байта данных.

14.4.4. Алгоритм программирования

В этом разделе описываются действия, которые необходимо выполнять для программирования микроконтроллеров через порт JTAG. Формат всех команд, используемых при программировании (не путать с командами JTAG), приведен в Табл. 14.20.


Таблица 14.20. Команды программирования по интерфейсу JTAG

Команда

TDI

TDO

Примечание

1

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

0100011 10000000 0110001 10000000 0110011 10000000 0110011 10000000

xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxxxxxxxxxx

-

Ь. Запрос

состояния операции

0110011 10000000

xxxxxox xxxxxxxx

2

2

а. Вход в режим записи FLASH-памяти

0100011J0010000

xxxxxxxxxxxxxxx

-

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

0001011 сссссссс

xxxxxxxxxxxxxxx

-

с. Загрузка старшего байта адреса

0000111 аааааааа

xxxxxxxxxxxxxxx

-

d. Загрузка младшего байта адреса

000001 ljbbbbbbb

xxxxxxxxxxxxxxx

-

е. Загрузка младшего байта данных

0010011 iiiiiiii

xxxxxxxxxxxxxxx

-

f. Загрузка старшего байта данных

0010111 Jiiiiiii

xxxxxxxxxxxxxxx

-

g. Фиксация данных

0110111 00000000 1110111 00000000 OllOlllJOOOOOOO

xxxxxxxxxxxxxxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxx

-

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

0110111 00000000 0110101 00000000 0110111 00000000 OllOlllJOOOOOOO

xxxxxxxxxxxxxxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxx xxxxxxxxxxxxxxx

-

i. Запрос состояния операции

OllOlllJOOOOOOO

xxxxxoxxxxxxxxx

2

3

а. Вход в режим чтения FLASH-памяти

0100011J0000010

xxxxxxxxxxxxxxx

-

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

000101l cccccccc

xxxxxxxxxxxxxxx

, -

с. Загрузка старшего байта адреса

00001ll aaaaaaaa

xxxxxxxxxxxxxxx

-

d. Загрузка младшего байта адреса

000001 ljbbbbbbb

xxxxxxxxxxxxxxx

-

е. Чтение младшего и старшего байтов данных

0110010 00000000

011011000000000

011011100000000

xxxxxxxxxxxxxxx xxxxxxxoooooooo xxxxxxx 00000000

9 8


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

Команда

TDI

TDO

Примечание

4

а. Вход в режим записи EEPROM-памяти

0100011 00010001

xxxxxxx xxxxxxxx

-

Ь. Загрузка старшего байта адреса

0000111 аааааааа

xxxxxxx xxxxxxxx

-

с. Загрузка младшего байта адреса

000001 ljbbbbbbb

xxxxxxx xxxxxxxx

-

d. Загрузка байта данных

0010011 iiiiiiii

xxxxxxx xxxxxxxx

-

е. Фиксация данных

0110111 00000000 1110111 00000000 0110111 00000000

xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx

-

f. Запись страницы EEPROM-памяти

0110011 00000000 0110001 00000000 0110011 00000000 0110011 00000000

xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx

-

g. Запрос состояния операции

0110011,00000000

xxxxxox xxxxxxxx

2

5

а. Вход в режим чтения EEPROM-памяти

0100011J0000011

xxxxxxx xxxxxxxx

-

Ь. Загрузка старшего байта адреса

00001 П аааааааа

xxxxxxx xxxxxxxx

-

с. Загрузка младшего байта адреса

000001 ljbbbbbbb

xxxxxxx xxxxxxxx

-

d. Чтение байта данных

0110011 bbbbbbbb 0110010 00000000 OllOOllJOOOOOOO

xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxx oooooooo

-

6

а. Вход в режим записи конфигурационных ячеек

0100011.01000000

xxxxxxx xxxxxxxx

-

Ь. Загрузка байта данных

0010011 iiiiiiii

xxxxxxx xxxxxxxx

3,5

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

0111011 00000000 0111001 00000000 0111011 00000000 OlllOllJOOOOOOO

xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxx xxxxxxxx xxxxxxxxxxxxxxx

-

d. Запрос состояния операции

0110111J0000000

xxxxxoxxxxxxxxx

2

е. Загрузка байта данных

001001 ljiiiiiii

xxxxxxxxxxxxxxx

3,5



0 ... 176 177 178 179 180 181 182 ... 195