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

На рис. 2, в качестве примера, показано распределение адресов в адресном пространстве SRAM между регистрами общего назначения (GPR), регистрами ввода-вывода (IOR), ячейками памяти в SRAM и ячейками памяти в ERAM у микроконтроллера типа 8515.

Рис. 2

Запись в стек выполняется в порядке убывания адресов. В качестве исхо

дного адреса для обращений к стеку, который заносится в регистр-указатель стека в начале программы, целесообразно использовать старший адрес SRAM. В рассмотренном на рис. 2 примере таким адресом является адрес $025Е

6. Запоминающее устройство EEPROM

Постоянное запоминающее устройство EEPROM предназначено для хранения данных, записанных при программировании микроконтроллера и получаемых в процессе выполнения программы. При выключении напряжения питания данные сохраняются. Ячейка памяти содержит 8 разрядов. Емкость EEPROM (в числе бантов) у микроконтроллеров разных типов указана в табл. 1 в колонке EEPROM.

EEPROM имеет обособленное адресное пространство. При обращении к EEPROM адрес записывается в регистр адреса EEAR (№ $1Е). В микроконтроллерах типа 8515, 8535, ml63 и ml03 регистр адреса содержит два восьмизарядных регистра — EEARL и EEARH (№№ $1Е и $1F). Байт, предназначенный для записи, заносится в регистр данных EEDR (№ $Ш). Байт, получаемый при чтении, поступает в этот же регистр. Для управления процедурами записи и чтения используется регистр управления EECR (№ $1С).

Для записи байта в EEPROM необходимо:

1) записать адрес в регистр адреса;

2) записать байт в регистр данных;

3) установить в единичное состояние разряд EEMWE регистра EECR,

4) при EEMWE = 1 установить в единичное состояние разряд EEWE регистра EECR.

Процедура записи выполняется в зависимости от величины напряжения питания за 2,5—4 мс. При завершении записи разряд EEWE регистра EECR аппаратно сбрасывается в нулевое состояние.

Разряд EEMWE сохраняет единичное состояние в течение 4-х тактов после установки и аппаратпо сбрасывается в пулевое состояние.

В микроконтроллерах типа t12, tl5, 4433. 8535, ml63 и ml03 при нулевом состоянии разряда EEWE формируется запрос прерывания ЕЕ RDY. Прерывание по данному запросу разрешено при единичном состоянии разряда EERIE регистра EECR.

Для чтения байта из EEPROM необходимо:

1) записать адрес в регистр адреса;

2) установить в единичное состояние разряд EERE регистра EECR. Считанный байт поступает в регистр данных. Разряд EERE регистра EECR аппаратно сбрасывается в нулевое состояние.

7. Внешнее запоминающее устройство ERAM

Внешнее запоминающее устройство предназначено для хранения байтов данных. Оно может быть подключено к микроконтроллерам типа 8515 и m10З. Схема подключения ERAM к микроконтроллеру изображена на рис. 3.

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

Рис 3

Для подключения используются:

■ 8 выводов порта А (РА), через которое выдается младший байт кода адреса и байт данных для записи и принимается байт данных при чтении;

■ 8 выводов порта С (PC), через которые выдается старший байт кода адреса;

■ вывод ALE, через который выдается импульс для записи младшего байта кода адреса во внешний регистр RG;

■ вывод WR, через который в ERAM выдается импульс управления записью;

■ вывод RD, через который в ERAM выдается импульс управления чтением.

В микроконтроллере типа 8515 для выдачи сигнала ALE используется отдельный вывод, а сигналы WR и RD выдаются через выводы PD6 и PD7 соответственно. В микроконтроллере типа тЮЗ сигналы управления выдаются через отдельные выводы.

Обращение к внешней памяти по командам обращения к SRAM возможно после установки в единичное состояние разряда SRE регистра MCUCR (№ $35). Обращение выполняется за 3 такта.

Если требуется, в цикл обращения может быть введен дополнительный такт (такт ожидания). Дополнительный такт вводится при единичном состоянии разряда SRW в регистре MCUCR.

8. Периферийные устройства

В группу периферийных устройств входят:

■ параллельные порты ввода-вывода;

■ последовательный порт SPI;

■ последовательный порт UART;

■ последовательный порт TWSI (I2C);

■ таймеры-счетчики общего назначения;

■ сторожевой таймер и аналого-цифровой преобразователь;

■ аналоговый компаратор;

■ программируемый аппаратный модулятор;

■ блок прерываний.

Параллельный порт ввода-вывода (Port, P) предназначен для ввода и вывода данных. Микроконтроллеры семейства AVR имеют от одного до шести портов. Порт может иметь от трех до восьми выводов. Число параллельных портов ввода-вывода и суммарное число выводов портов у микроконтроллеров разных типов, указано в табл. 1 в колонках Р и I/O соответственно.

Вывод порта может работать в режиме входа или в режиме выхода. Направление передачи бита устанавливается для каждого вывода в отдельности.

Некоторые выводы портов кроме ввода и вывода битов данных могут использоваться для выполнения альтернативных функций при работе других устройств. Суммарное число выводов параллельных портов, которые могут выполнять альтернативные функции у микроконтроллеров разных типов, указано в табл. 1 в колонке ALT. В это число не включены выводы, выполняющие альтернативные функции только при программировании микроконтроллера. Альтернативные функции выводов портов у микроконтроллеров разных типов указаны в приложении ПЗ.

Последовательный порт ввода-вывода SPI (Serial Peripheral Interface) предназначен для ввода и вывода байтов при обмене данными с другими устройствами, имеющими порт SPI. Обмен выполняется под управлением тактового сигнала порта. Устройство, инициализирующее обмен и вырабатывающее тактовый сигнал, является ведущим (master). Устройство, выполняющее обмен при поступлении тактового сигнала, является ведомым (slave). В процессе обмена оба устройства последовательно бит за битом одновременно выдают и принимают байт. Обмен выполняется с использованием трех шин.

Максимальная скорость приема/передачи (в битах в секунду) равна 1/4 частоты тактового сигнала микроконтроллера (у МК типа m163 — 1/2 тактовой частоты).

К одному ведущему устройству могут быть подключены несколько ведомых. Функции ведущего и ведомого могут меняться в процессе работы системы.

Порт SPI, который может работать в режиме ведущего и ведомого и использоваться для обмена данными в процессе работы, имеется у микроконтроллеров типа 4433, 8515, 8535, ml63 и m10З (табл. 1, колонка SPI). Микроконтроллеры других типов, кроме til и t28, имеют порт SPI, который может работать только в режиме ведомого и ис-пользуется при последовательном программировании микроконтроллера без дополнительного источника напряжения (Downloading).

Последовательный порт ввода-вывода UART (Universal Asynchronous Receiver-Transmitter) предназначен для передачи и приема байтов данных по двухпроводным линиям связи (например, по интерфейсу RS-232C или "токовая петля"). Прием и передача могут вестись одновременно. При передаче байта формируется последовательность из десяти или одиннадцати битов (кадр), содержащая стартовый бит, имеющий нулевое значение, восемь битов байта (DO, D1, ., D7) и столовый бит, имеющий единичное значение. Между старшим битом байта (D7) и стоповым битом может помещаться дополнительный бит.

Страница:  1  2  3  4  5  6 


Другие рефераты на тему «Коммуникации, связь и радиоэлектроника»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы