- •Основы микропроцессорной техники
- •В.И. Енин
- •В.И. Енин
- •Введение
- •После изучения дисциплины необходимо знать
- •После изучения дисциплины необходимо уметь
- •В.1. Роль и место курса “Микропроцессорная техника” в учебном процессе
- •1. Микропрограммные автоматы
- •После изучения главы необходимо знать
- •1.1. Автомат без памяти
- •1.2. Микропрограммный автомат
- •1.2.1. Автомат с памятью
- •1.2.2. Микропрограммный автомат в системе управления
- •1.2.3. Структурный автомат
- •1.3. Схемная реализация микропрограммных автоматов
- •2. МикропрограмМируемые контроллеры и микропроцессоры
- •После изучения главы необходимо знать
- •2.1. Блок микропрограммного управления
- •2.2. Блок обработки цифровых данных.
- •3. Принципы организации эвм
- •После изучения главы необходимо знать
- •3.1. Выполнение команд в эвм
- •Система команд и методы адресации
- •Подпрограммы
- •3.2. Общие принципы организации ввода-вывода
- •3.2.1. Программный режим ввода-вывода
- •3.2.2. Обмен информацией в режиме прерывания программы
- •3.2.3. Прямой доступ к памяти
- •3.2.4. Подключение внешних устройств
- •4. Архитектура однокристального микропроцессора
- •После изучения главы необходимо знать
- •4.1. Архитектура микропроцессора к580ик80а
- •4.1.1. Формат команд микропроцессора к580ик80а
- •4.1.2. Методы адресации микропроцессора к580ик80а
- •4.1.3. Команды безусловной и условной передач управления
- •4.1.4. Примеры команд процессора к580ик80а
- •4.2. Организация обмена в однокристальных микроЭвм
- •4.2.1. Функционирование микропроцессора
- •4.2.2. Подключение озу и регистров внешних устройств
- •5. Системы счисления и арифметические операции над числами
- •После изучения главы необходимо знать
- •5.1. Системы счисления для представления чисел в эвм
- •5.2. Представление в эвм целых двоичных чисел без знака
- •5.3. Представление в эвм целых чисел со знаком
- •5.3.1. Представление чисел со знаком в прямом коде
- •5.3.2. Представление чисел со знаком в дополнительном коде
- •5.3.3. Особенности выполнения сложения двоичных чисел без знака и со знаком
- •1. Примеры сложения чисел без знака.
- •2. Примеры сложения чисел со знаком.
- •5.4. Двоично-десятичная система представления чисел
- •5.5. Представление чисел в формате с плавающей точкой
- •Примеры представления чисел типа single
- •Примеры представления чисел типа real
- •6. Семейство процессоров х86
- •После изучения главы необходимо знать
- •6.1. Архитектура процессора 8086
- •Регистры процессора
- •Инструкции процессора
- •Сегментация памяти
- •Методы адресации
- •Распределение памяти
- •Прерывания
- •Функционирование
- •6.2. Процессоры 80286
- •Реальный режим
- •Защищенный режим
- •Прерывания
- •Регистр состояния задачи
- •Некоторые особенности функционирования
- •Функциональная схема pc at
- •7. Шина isa и интерфейсы сопряжения с устройствами управления
- •После изучения главы необходимо знать
- •7.1. Конструкция шины isa
- •Выводы шины isa
- •Распределение адресов на системной плате ат
- •Циклы магистрали
- •Прямой доступ к памяти
- •Регенерация памяти
- •Основные электрические характеристики линий isa
- •7.2. Проектирование устройств сопряжения для шины isa
- •7.2.1. Селекторы (дешифраторы) адреса
- •7.2.2. Операционная часть интерфейса
- •7.2.3. Микросхемы для построения интерфейсов Условные графические обозначения элементов цифровой техники
- •7.2.4. Микросхемы приемопередатчиков сигналов магистрали
- •Микросхемы селекторов адреса выходных регистров
- •8. Интерфейс centronics
- •После изучения главы необходимо знать
- •8.1. Порядок обмена по интерфейсу Centronics
- •8.2. Программируемый параллельный интерфейс ( ппи)
- •9. Обмен данными по интерфейсу rs-232
- •После изучения главы необходимо знать
- •9.1. Назначение линий связи rs-232
- •9.2. Подключение модема к rs-232
- •9.3. Подключение терминалов к rs-232
- •9.4. Подключение удаленных объектов управления
- •9.5. Назначение портов rs-232
- •10. Отсчёт реального времени в эвм
- •После изучения главы необходимо знать
- •10.1. Программируемый таймер
- •10.1.1. Режимы работы таймера
- •10.1.2. Таймер на системной плате ibm pc
- •10.2. Программируемый контроллер прерываний
- •10.2.1. Режимы работы пкп
- •10.2.2. Программирование пкп
- •10.3. Прерывания в ibm pc
- •10.3.1. Векторы прерывания
- •10.3.2. Прерывания bios и dos
- •10.3.3. Написание собственных прерываний
- •10.4. Отсчёт реального времени в эвм
- •10.5. Процедуры и функции для работы с прерываниями
- •После изучения главы необходимо знать
- •11.1. Архитектура 32-разрядных процессоров
- •11.1.1. Регистры процессора
- •11.1.2. Организация памяти
- •11.1.3. Режимы адресации
- •11.1.4. Ввод и вывод
- •11.1.5. Прерывания и исключения
- •11.1.6. Процессоры Pentium
- •11.2. Страничное управление памятью
- •11.3. Кэширование памяти
- •Кэш прямого отображения
- •Ассоциативный кэш
- •12. Однокристальные микроконтроллеры
- •После изучения главы необходимо знать
- •12.1. Однокристальный микроконтроллер к1816
- •12.2. Avr микроконтроллеры
- •12.3. Процессоры обработки сигналов
- •12.3.1. Однокристальный цифровой процессор обработки
- •12.3.2. Цифровые процессоры обработки сигналов (цпос)
- •13. Промышленное оборудование для цифровых систем управления
- •После изучения главы необходимо знать
- •13.1. Оборудование для централизованных систем управления
- •13.1.1. Персональные компьютеры для целей управления
- •13.1.2. Промышленные рабочие станции
- •13.1.3. Шасси для ibm совместимых промышленных компьютеров
- •13.1.4. Модульные промышленные компьютеры mic-2000
- •13.1.5. Процессорные платы
- •13.1.6. Устройства для сбора данных и управления
- •13.2. Оборудование для распределенных систем сбора данных и управления
- •13.2.1. Модули удаленного сбора данных и управления adam-5000
- •13.2.2. Модули удаленного сбора данных и управления adam-4000
- •13.3. Прикладное программное обеспечение
- •Заключение
- •Список использованных источников
- •Оглавление
- •Системы счисления и арифметические
12.2. Avr микроконтроллеры
Однокристальные микроконтроллеры фирмы “ATMEL” широко используются для построения систем управления, поскольку они имеют все необходимые аппаратные средства для этих целей. Контроллеры этого семейства являются 8-разрядными микроконтроллерами, предназначенными для встраиваемых приложений. Микроконтроллеры, выполненные по КМОП технологии, имеют малое энергопотребление и достаточно высокое быстродействие. Микроконтроллер может управлять различными устройствами и принимать данные при минимуме дополнительных узлов, поскольку большое число периферийных устройств имеется непосредственно на кристалле. Это позволяет уменьшить размеры устройств управления и снизить потребление энергии от источника.
Микроконтроллеры AVR также построены по Гарвардской архитектуре, которая характеризуется раздельной памятью программ и данных, каждая из которых имеет собственные шины доступа к ним. Такая организация позволяет одновременно работать как с памятью программ, так и с памятью данных (Рис.12.8).
Контроллеры имеют встроенную FLASH-память программ объемом от 1 до 8 Кбайт, память данных на основе ЭСППЗУ (EEPROM) объемом от 64 до 512 байт, статическое ОЗУ (SRAM) объемом до 512байт.
Процессор (центральное процессорное устройство) имеет RISC-архитектуру, позволяющую выполнять несколько сокращенный и упрощенный набор команд за один такт. Он принимает из памяти программ коды команд, декодирует и выполняет их. Он состоит из регистров общего назначения, АЛУ и блока управления. Процессор имеет 32 РОН, размещенных в области ОЗУ и подключенных непосредственно к АЛУ. Это позволяет избежать дополнительных пересылок. Большинство команд выполняется за один машинный цикл. Процессор поддерживает многоуровневую систему прерываний.
В памяти программ хранятся коды команд, последовательность которых формирует программу для микроконтроллера. EEPROM память данных предназначена для постоянного хранения неизменяемых при работе данных (констант программы). В оперативной памяти данных хранятся переменные программ, здесь расположен и стек.
Команды микроконтроллера занимают одно или два 16-разрядного слова. Процессор при обращении к памяти использует пять методов адресации: прямой регистровый, прямой адресации, косвенный, косвенный со смещением, косвенный с предварительным декрементом, косвенный с постинкрементом. Адресация констант в памяти программ осуществляется через специальный регистр Z.
Регистры ввода-вывода располагаются в пространстве ввода-вывода размером 64 байта и разделяются на служебные регистры микроконтроллера и регистры периферийных устройств. Регистры имеют 8 разрядов. Распределение адресов пространства ввода-вывода зависит от конкретной модели.
Контроллер имеет несколько портов ввода-вывода. Каждый вывод порта цифрового ввода-вывода может быть запрограммирован как входной или выходной независимо от других. Нагрузочная способность всех выводов равна 20ма.
Тактовый генератор определяет скорость работы микроконтроллера. В качестве ГТИ используется или встроенный RC-генератор, или генератор на внешнем резонаторе.
Для отсчета временных интервалов и счета входных импульсов в состав контроллера входят один или несколько 8/16-разрядных таймера/счетчика.
Сторожевой таймер предназначен для предотвращения сбоев программы. Таймер работает следующим образом: после запуска программы он начинает отсчет заданного временного интервала. Если программа не перезапустит его до истечения этого интервала, то сторожевой таймер перезапустит микроконтроллер.
В состав контроллера, в зависимости от типа, может входить последовательный порт - полнодуплексный универсальный асинхронный приемопередатчик(UART). В него также могут входить один или несколько генераторов сигнала с широтно-импульсной модуляцией (ШИМ), аналоговый компаратор, 10-разрядный АЦП (6 или 8 каналов).
Последовательный синхронный интерфейс SPI используется для программирования контроллера. Вторым назначением интерфейса является организация высокоскоростного обмена данными между микроконтроллером и различными периферийными устройствами, в том числе и между несколькими микроконтроллерами AVR.
Заметим, что выводы микросхем контроллеров могут быть многофункциональными и используются по-разному, в зависимости от режима работы.
При программировании микроконтроллера полученный в результате компиляции программы машинный код загружается в память программ, а требуемые данные заносятся в EEPROM.
Программирование контроллера (с использованием программатора) выполняется по параллельному либо по последовательному (непосредственно в системе через последовательный SPI-интерфейс) каналам.
Программирование по последовательному каналу памяти программ и данных осуществляется через последовательный интерфейс SPI путем посылки 4-байтовых команд в последовательном формате на вывод контроллера. В посылках содержатся команды программирования, адреса и данные в заданном формате. При этом каждый бит посылки стробируется сигналами тактового генератора. Данный режим используется, как правило, для программирования или перепрограммирования микроконтроллера непосредственно в системе. Наличие этого режима является большим достоинством контроллеров AVR., т.к. он позволяет значительно упростить модернизацию программного обеспечения.
Для написания программ и отладки используются такие программные средства как Ассемблер Wavrasm или отладчик AVR Studio.