Микропроцессорное управление микроклиматом теплицы

курсовая работа

4.2 Структура микроконтроллера ATmega8535

В данном микроконтроллере АЛУ подключено непосредственно к 32-м рабочим регистрам, объединенным в регистровый файл. Благодаря этому АЛУ выполняет одну операцию (чтение содержимого регистров, выполнение операции и запись результата обратно в регистровый файл) за один машинный цикл.

В микроконтроллерах AVR реализована Гарвардская архитектура, которая характеризуется раздельной памятью программ и данных, каждая из которых имеет собственные шины доступа к ним. Такая организация позволяет работать одновременно как с памятью программ, так и с памятью данных.

Рисунок 2 - Архитектура микроконтроллера ATmega8535

Счетчик команд.

Размер счетчика команд составляет 12 разрядов. Напрямую (как регистр) счетчик команд из программы недоступен.

При нормальном выполнении программы содержимое счетчика команд автоматически увеличивается на 1 или на 2 (в зависимости от выполняемой команды) в каждом машинном цикле. Этот порядок нарушается при выполнении команд перехода, вызова и возврата из подпрограмм, а также при возникновении прерываний.

После включения питания, а также после сброса микроконтроллера в счетчик программ автоматически загружается значение $000. Как правило, по этому адресу располагается команда перехода (RJMP) к инициализационной части программы.

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

Регистры общего назначения (РОН) микроконтроллера.

Все 32 РОН непосредственно доступны АЛУ, в отличие от микроконтроллеров других фирм. Любой РОН может использоваться во всех командах и как операнд-источник, и как операнд-приемник. Исключение составляют лишь пять арифметических и логических команд, выполняющих действия между константой и регистром (SBCI, SUBI, CPI, ANDI, ORI), а также команда загрузки константы в регистр (LDI). Эти команды могут обращаться только ко второй половине регистров (R16…R31).

Два старших регистра общего назначения формируют 16-разрядный индексный регистр Z, который используется в качестве указателя при косвенной адресации памяти программ и памяти данных. Так как объем адресуемой памяти составляет всего 32 байт, при обращении к ней используется только младший байт (регистр R30). Содержимое старшего байта индексного регистра (регистр R31) при косвенной адресации памяти данных автоматически очищается процессором.

Регистры ввода/вывода (РВВ) микроконтроллера.

Регистры ввода/вывода (РВВ) располагаются в так называемом пространстве ввода/вывода размером 64 байт. Все РВВ можно разделить на две группы: служебные регистры микроконтроллера и регистры, относящиеся к периферийным устройствам (в том числе порты ввода/вывода). Размер каждого регистра - 8 бит.

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

Регистр команд содержит команду, которая выбирается из FLASH-памяти программ для выполнения.

Начальная синхронизация происходит с приходом на вход синхронизатора сигнала RESET.

Делись добром ;)