Материал: 8-разрядные микроконтроллеры Atmel

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

ATMEL

ÊÒÖ-ÌÊ

предохранитель.

Бит 0 = 0 программирует SUT0 бит-предохранитель. Бит 0 = 1 стирает SUT0 битпредохранитель.

3. Ïîäàть на вывод WR отрицательный импульс и ожидать перехо да вывода RDY/BSY на высокий уровень

Программирование битов блокирования

Алгоритм программирования битов блокирования приведен ниже (подробности загрузки команд, адресов и данных см. в разделе Программир ование Flash памяти.

1.Загрузить команду 0010 0000.

2.Загрузить данные.

Бит 2 = 0 программирует бит блокирования 2 Бит 1 = 0 программирóåò бит блокирования 1

3. Подать на вывод WR отрицательный импульс и ожидать перехо да вывода RDY/BSY на высокий уровень

Биты блокирования могут быть очищены только при выполнен ии операции очистки кристалла

Чтение битов-предохранителей и битов блокирования

Алгоритм чтения битов-предохранителей и битов блокирова ния приведен ниже (подробности загрузки команд, адресов и данных см. в раздел е Программирование Flash памяти.

1.Загрузить команду 0000 0100.

2.Установить OE в состояние 0 и BS1 в состояние 0 или 1. По выводам PB(7 - 0) можно считать состояния битов-предохранителей и битов бл окирования.

Ïðè BS1 = 0

Бит 5: бит-предохранитель SPIEN (0 - запрограммирован, 1 - очищен) Бит 3: бит-предохранитель SPIEN (0 - запрограммирован, 1 - очищен) Бит 1: бит-предохранитель SUT1 (0 - запрограммирован, 1 - очищен)

Бит 0: бит-предохранитель SUT0 (0 - запрограммирован, 1 - очищен). При BS1 = 0

Бит 2: бит блокирования LB1 (0 - запрограммирован, 1 - очищен) Бит 1: бит блокирования LB0 (0 - запрограммирован, 1 - очищен)

3.Установить OE в состояние 1.

Чтение байтов сигнатуры

Алгоритм чтения байтов сигнатуры приведен ниже (подробно сти загрузки команд, адресов и данных см. в разделе Программирование Flash памяти.

1.Загрузить команду 0000 1000.

2.Загрузить бàéт адреса ($00 - $02).

3.Установить OE в состояние 0 и BS1 в состояние 0. По выводам PB(7 - 0) мо жно считать байт сèãíатуры.

4.Установить OE в состояние 1.

Команда загружается только перед чтением первого байта.

154

ÊÒÖ-ÌÊ

Программирование Flash и EEPROM памяти по последовательному каналу (Serial Downloading)

И Flash память программ и EEPROM память данных могут быть запрограммированы по последовательной шине SPI. При этом вы вод RESET должен быть подключен к уровню GND. Последовательный интерфейс орг анизуется посредством выводов SCK, RXD/PDI (вход) и TXD/PDO (выход). После установки на выводе RESET низкого уровня, прежде чем начать операции прогр аммирования/стирания, необходимо выполнить команду «Разрешить программирован ие». При программировании EEPROM в процессе самотактируемой операции программирования выполняется автоматическое стирание (только в режиме пос ледовательного программирования) и, следовательно, на требуется выполне ния команды очистки кристалла. Операция очистки кристалла устанавливает сод ержимое всех ячеек памяти и в памяти программ и в EEPROM памяти в состояние $FF.

Матрицы памяти программ и EEPROM памяти расположены в отдельн ых адресных пространствах:

ATmega603: с $0000 по $7FFF для памяти программ и с $0000 по $07FF для EEPROM памяти.

ATmega103: с $0000 по $FFFF для памяти программ и с $0000 по $0FFF для EEPROM памяти.

Внешний системный тактовый сигнал подается на вывод XTAL1. Кв арцевый кристалл подсоединяется между выводами XTAL1 и XTAL2. Минимальна я длительность периодов высокого и низкого уровня на входе последовател ьного тактового сигнала (SCK) должна быть:

Низкий уровень - не менее 2 тактовых циклов XTAL1.

Высокий уровень - не менее 2 тактовых циклов XTAL1.

Алгоритм программирования по последовательному каналу

Для программирования и проверки микроконтроллера ATmega103/L в последовательном режиме рекомендуется следующий алгори тм (формат 4-байтовых команд см. в таблице 39):

1. Выполнить последовательность включения питания:

Подать на выводы VCC и GND напряжение питания, причем выводы RESET и SCK во время подачи питания должны быть на уровне 0. Если к выводам XTAL1 и XTAL2 не подсоединен кварцевый кристалл, то тактовый сигнал подае тся на вывод XTAL1. В ряде систем программирующий не может гарантировать нахожден ие вывода SCK на низком уровне в течение всего периода подачи питания. В этом случ ае на вывод RESET должен быть подан положительный импульс длительностью не менее двух циклов XTAL1 после того как на SCK будет установлен уровень 0.

2.Сделать выдержку не менее 20 мс и разрешить программирование в последовательном режиме посылкой на вывод PE0 (PDI/RXD).последов ательной команды «Разрешить программирование».

3.При выдаче третьего байта команды «Разрешить программирование»., значение, установленное как вторым байтом ($ 53), будет возвр ащено в течение передачи третьего байта. Если значение $53 не будет возвращено необхо димо подать на вывод SCK положительный импульс и вновь послать команду «Разреши ть программирование». Если возврат значения $53 не будет получен в течение 32 попыто к, то связь устанавливалась с неработающим устройством.

4.Если была выполнена очистка кристалла (выполняется если необходимо

155

ATMEL

ÊÒÖ-ÌÊ

очистить Flash память) делается выдержка 10 мс, подается положи тельный импульс на вывод RESET и начинается выполнение алгоритма с пункта 2.

5.Flash память программируется сразу по одной странице. Страница загружается по одному байту подачей 7 младших битов адрес а и байта данных вместе

ñкомандой «Загрузить страницу памяти программ». Страниц а памяти программ сохраняется загрузкой команды «Записать страницу памят и программ» вместе с 9 старшими битами адреса.

6.Матрица EEPROM программируется по одному байту загрузкой адреса и данных вместе с с соответствующей командой «Записать». Со ответствующие ячейки памяти EEPROM, перед записью новых данных, автоматически очища ются. Следующий байт может быть записан через 4 мс (при напряжении питания 2,7 В) или через 1 мс мс (при напряжении питания 5,0 В).

7.Любой байт в области памяти может быть проверен командой «Читать», которая возвращает содержимое по заданному адресу через последовательный выход вывода PE1(PDO/TXD).

8.Ïî ïîëíîì завершении сеанса программирования, для перехода к нормальной работе, вывод RESET должен быть установлен на высокий уровень .

9.Выполнить последовательность отключения питания (при необходимости) Установить низкий уровень на выводе XTAL1 (åñëи не использова лся кварцевый кристалл). Установить высокий уровень на выводе RESET.

Отключить напряжение питания VCC.

Таблица 38. Система команд программирования в последовательном реж име

Команда

 

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

 

Описание

 

Áàéò 1

Áàéò 2

Áàéò 3

Áàéò 4

 

 

 

Разрешить

1010 1100

0101 0011

xxxx xxxx

xxxx xxxx

 

Разрешает последовательное

программирование

 

 

 

 

программирование после установки

(ProgrammingEnable)

 

 

 

 

 

 

 

 

 

 

 

RESET

нанизкийуровень

 

 

 

 

 

 

 

 

Очистить кристалл

1010 1100

100x xxxx

xxxx xxxx

xxxx xxxx

Очищает Flash и EEPROM память

(Chip Erase)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Читать память

0010 H000

aaaa aaaa

bbbb bbbb

oooo oooo

 

Читает H (1 или 0) и данные o

программ (Read

 

 

 

 

памяти программ по слову адреса

Program Memory)

 

 

 

 

a:b

 

 

 

 

 

 

 

 

Загрузить страницу

0100 H000

xxxx xxxx

xbbb bbbb

iiii iiii

Записывает H (1 или 0) и данные i в

памяти программ

 

 

 

 

память программ по слову адреса

(Load Program

 

 

 

 

 

b

Memory Page)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Записать страницу

0100 1100

aaaa aaaa

bxxx xxxx

xxxx xxxx

Записывает страницу памяти

памяти программ

 

 

 

 

программ по адресу a:b

(Write Program

 

 

 

 

 

 

 

Memory Page)

 

 

 

 

 

 

 

Читать EEPROM

1010 0000

xxxx aaaa

bbbb bbbb

oooo oooo

 

Читает данные o из EEPROM

память (Read

 

 

 

 

памяти по адресу a:b

EEPROM Memory)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Записать в EEPROM

1100 0000

xxxx aaaa

bbbb bbbb

iiii iiii

 

Записывает данные i в EEPROM

память (Write

 

 

 

 

 

память по адресу a:b

EEPROM Memory)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

156

ÊÒÖ-ÌÊ

Читатьбиты

01011000

xxxxxxxx

xxxxxxxx

xxxxx21x

Читает биты блокировки.

блокировки

 

 

 

 

0-запрограммирован,

(Read Lock Bits)

 

 

 

 

1-незапрограммирован

 

 

 

 

 

 

Записать биты

1010 1100

111x x 21x

xxxx xxxx

xxxx xxxx

Записывает биты блокировки. При

блокировки

 

 

 

 

программировании биты 1,2 = 0

(Write Lock Bits)

 

 

 

 

 

Читатьбиты-

01010000

xxxxxxxx

xxxxxxxx

xx 5x 61 43

Читаетбиты-предохранители.

предохранители

 

 

 

 

0- запрограммирован,

(Read Fuse Bits)

 

 

 

 

1 - незапрограммирован

 

 

 

 

 

 

Записать биты-

1010 1100

101x 61 43

xxxx xxxx

xxxx xxxx

Записывает биты-предохранители.

предохранители

 

 

 

 

Устанавливает биты 6, 4,3=0 для

(Write Fuse Bits)

 

 

 

 

программирования битов, 1 для

 

 

 

 

 

очистки битов

 

 

 

 

 

 

Читать байт

0011 0000

xxxx xxxx

xxxx xxbb

oooo oooo

Читает байт сигнатуры o по адресу

сигнатуры (Read

 

 

 

 

b

Signature Byte)

 

 

 

 

 

Примечания: a = старшие биты адреса b = младшие биты адреса

H = 0 - младший байт, 1 - старший байт o = выход данных

i = вход данных

x = состояние значения не имеет 1 = бит блокировки 1 2 = бит блокировки 2

3 = бит-предохранитель SUT0

4= бит-предохранитель SUT1

5= бит-предохранитель SPIEN

6= бит-предохранитель EESAVE

При последовательной записи в микроконтроллеры ATmega603/103 данн ые микроконтроллером ATmega 103 выбираются по нарастающему фронту на SCK.

При последовательном чтении данных из микроконтроллеро в ATmega603/103 данные тактируются по падающему фронту на SCK. Объяснение пр едставлено на Рис. 67.

Вход последовательных

MSB

LSB

данных PE0(PD1/RXD)

 

 

Выход последовательных

MSB

LSB

данных PE1(PD0/TXD)

 

 

Вход последовательного тактового сигнала PB7(SCK)

Выборка

Рис. 67. Временные диаграммы режима последовательного программирования.

157

ATMEL

ÊÒÖ-ÌÊ

Предельно допустимые режимы эксплуатации

 

 

 

Диапазон рабочих температур

îò -40°C äî +105°C

 

Диапазон температур хранения

îò -65°C äî +150°C

 

Напряжение на любом выводе относительно земли

îò -1,0 Â äî +7,0 Â

 

Максимальное рабочее напряжение

6,6 Â

 

Потребление по постоянному току

300 ìÀ

 

 

 

 

Примечание: Воздействия за пределами указанных в таблице режимов могут привести к выходу прибора из строя. Указанные режимы являются стресс овыми и постоянная работа приборов в этих и других режимах за пределами, указанными в спецификациях, недопустима. Длительное воздействие предельных режимов может привес ти к снижению надежности приборов.

Характеристики по постоянному току

TA = от -40°Cдо 85°C, VCC = от 2,7 В до 6,0 В (если не оговорено другое)

Îáî-

Параметр

Условия

 

Ìèí

Òèï

Ìàêñ

Åä. èç-

çíà÷.

 

 

 

 

 

 

мерен.

 

 

 

 

 

 

 

 

VIL

Входное напряжение низкого уровня

 

 

-0,5

 

0,3 VCC

Â

VIL1

Входное напряжение низкого уровня

XTAL

 

-0,5

 

0,2 VCC

Â

VIH

Входное напряжение высокого уровня

Исключая

 

0,6 VCC

 

VCC+0,5

Â

 

 

 

(XTAL, RESET)

 

 

 

 

 

 

 

 

 

 

 

 

 

VIH1

Входное напряжение высокого уровня

XTAL

 

0,8 VCC

 

VCC+0,5

Â

VIH2

Входное напряжение высокого уровня

RESET

 

VCC

 

VCC+0,5

Â

V

OL

Выходное напряжение низкого уровня(1)

I = 20 ìÀ, V

= 5Â

 

 

0,6

 

 

 

OL

CC

 

 

 

 

 

 

Порты A, B, C, D

IOL = 10 ìÀ, VCC = 3Â

 

 

0,5

Â

VOH

Выходн. напряжение высокого уровня

IOH = -3 ìÀ, VCC = 5Â

4,2

 

 

 

 

 

Порты A, B, C, D

IOH = -1,5ìÀ, VCC = 3Â

2,3

 

 

Â

IIL

Входной ток утечки вывода I/O

VCC = 6Â,

 

-8,0

 

8,0

ìêÀ

 

 

 

низкий уровень

 

 

 

 

 

 

 

 

 

 

 

 

IIH

Входной ток утечки вывода I/O

VCC = 6 Â,

 

-8,0

 

8,0

ìêÀ

 

 

 

высокий уровень

 

 

 

 

 

 

 

 

 

 

 

 

RRST

Нагрузочный резистор сброса

 

 

100

 

500

êÎì

 

 

 

 

 

 

 

 

RI/O

Нагрузочный резистор I/O

 

 

35

 

120

êÎì

ICC

Потребляемый ток в режимах:

Активный, 4 МГц,

 

 

3,0

ìÀ

 

 

 

VCC=3 Â(2)

 

 

 

 

 

 

 

 

Idle, 4 ÌÃö, VCC=3 Â

 

1,0

1,2

ìÀ

 

 

 

Power Down, 4 ÌÃö,

 

8,5

15

ìêÀ

 

 

 

VCC=3 В, WDT разрешен

 

 

 

 

 

 

 

Power Down, 4 ÌÃö,

 

< 1

2,0

ìêÀ

 

 

 

VCC=3 В, WDT запрещен

 

 

 

 

VACIO

Напряжение смещения входа

VCC = 5 Â

 

 

 

40

ìÂ

 

 

аналогового компаратора

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IACLK

Утечка по входу аналогового

VCC = 5 Â,

 

-50

 

50

íÀ

 

 

компаратора

VIN = VCC /2

 

 

 

 

tACPD

Задержка аналогового компаратора

VCC = 2,7 Â,

 

 

750

 

íñ

 

 

 

VCC = 4,0 Â

 

 

500

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

158

Источник: https://studfile.net/preview/16521258/