Дипломная работа: 8-разрядные КМОП RISC микроконтроллеры с внутрисистемно программируемым Flash ПЗУ

• Диапазон напряжений питания от 2,7 В до 6,0 В (AT90LS8535) и от 4,0 В до 6,0 В (AT90S8535)

• Полностью статический прибор - работает при тактовой частоте от 0 Гц до 8 МГц

(AT90S8535) и при тактовой частоте от 0 Гц до 4 МГц (AT90LS8535)

• Производительность до 8 MIPS при частоте 8 МГц

• Два 8-разрядных таймера/счетчика с отдельным прескалером и режимом сравнения

• 16-разрядный (с режимами сравнения и захвата) таймер/счетчик с отдельным прескалером

• Три ШИМ канала

• Внешние и внутренние источники сигналов прерывания

• Программируемый сторожевой таймер с собственным встроенным генератором

• Встроенный аналоговый компаратор

• Встроенные часы реального времени с собственным встроенным генератором и режимом счетчика

• Блокировка режима программирования

• Режимы энергосбережения: пассивный (idle), экономичный (powersave) и стоповый(powerdown)

• Встроенная схема сброса по подаче питания

• Промышленный (-40°C...85°C) и коммерческий (0°C...70°C) диапазоны температур

• 40-выводной корпус PDIP и 44-выводные PLCC и TQFP

Архитектура микроконтроллеров семейства Mega

Микроконтроллеры AVR семейства Mega являются 8-разрядными микроконтроллерами с RISC-архитектурой. Они имеют электрически стираемую память программ (FLASH) и данных (EEPROM), а также разнообразные периферийные устройства. Следует отметить, что микро контроллеры семейства Mega имеют самый богатый набор периферийных устройств по сравнению с микроконтроллерами других семейств. Более того, состав этих устройств от модели к модели практически не меняется (меняются только их функциональные возможности). К устройствам, присутствующим не во всех моделях семейства, относятся АЦП, модуль двухпроводного интерфейса TW1 (TwoWireInterface, аналог шины 12 С), а также модуль интерфейса JTAG. Структурная схема микроконтроллеров семейства Mega приведена на Рис.

Организация памяти

В микроконтроллерах AVR реализована Гарвардская архитектура, в соответствии с которой разделены не только адресные пространства памяти программ и памяти данных, но также и шины доступа к ним. Способы адресации и доступа к этим областям памяти также различны. Такая структура позволяет центральному процессору работать одновременно как с памятью программ, так и с памятью данных, что существенно ограничивает производительность. Каждая из областей памяти данных (ОЗУ и EEPROM) также расположена в своем адресном пространстве.

Память программ

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

Как уже было сказано, память программ представляет собой электрически стираемое ППЗУ (FLASH-ПЗУ). В связи с тем что длина всех команд кратна одному слову (16 бит), память программ имеет 16-разрядную организацию. Соответственно, объем памяти микроконтроллеров семейства составляет 8К (8x1024) 16-разрядных слов. Логически память программ разделена на две неравные части — область прикладной программы и область загрузчика. В последней может располагаться специальная программа (загрузчик), позволяющая микроконтроллеру самостоятельно управлять загрузкой и выгрузкой прикладных программ. Если же возможность самопрограммирования микроконтроллера не используется, прикладная программа может располагаться и в области загрузчика.

Для адресации памяти программ используется счетчик команд (PC — ProgramCounter). Размер счетчика команд составляет 12разрядов

По адресу $0000 памяти программ находится вектор сброса. После инициализации (сброса) микроконтроллера выполнение программы начинается с этого адреса (по этому адресу должна размещаться коман­да перехода к инициализационной части программы). Начиная с адреса $001 памяти программ, располагается таблица векторов прерываний. Размер этой области 20 байт ($001…$014).

При возникновении прерывания после сохранения в стеке текущего значения счетчика команд происходит выполнение команды, расположенной по адресу соответствующего вектора. Поэтому по этим адресам располагаются команды перехода к подпрограммам обработки прерываний. В качестве этих команд используются команды относительного перехода (RJMP.

Если прерывания в программе не используются либо таблица векторов прерываний располагается в области загрузчика, то основная программа может начинаться непосредственно с адреса $0001.

Как известно, память программ может использоваться не только для хранения кода программы, но также и для хранения различных констант. Для пересылки байта из памяти программ в память данных имеется специальная команда — LPM. При использовании команды LPM адрес, по которому производится чтение, определяется содержимым индексного регистра Z. При этом старшие 15 разрядов содержимого регистра будут определять адрес слова (0...32К), а младший разряд будет определять, какой из байтов будет прочитан: «О» — младший байт, «1» — старший байт

В заключение следует отметить, что FLASH-ПЗУ, используемое в микроконтроллерах AVR, рассчитано как минимум на 1000 циклов стирания/записи.

Память данных

Память данных микроконтроллеров разделена на три части: регистровая память, оперативная память (статическое ОЗУ) и энерго независимое ЭСППЗУ (EEPROM).

Регистровая память включает 32 регистра общего назначения (РОН), объединенных в файл, и служебные регистры ввода/вывода (РВВ).

К-во Просмотров: 371
Бесплатно скачать Дипломная работа: 8-разрядные КМОП RISC микроконтроллеры с внутрисистемно программируемым Flash ПЗУ