- •Основы микропроцессорной техники
- •В.И. Енин
- •В.И. Енин
- •Введение
- •После изучения дисциплины необходимо знать
- •После изучения дисциплины необходимо уметь
- •В.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. Однокристальные микроконтроллеры
12.1. Однокристальный микроконтроллер К1816
12.2. AVR микроконтроллеры
12.3. Процессоры обработки сигналов
Отдельный класс микропроцессорных систем представляют однокристальные (выполненные в виде одной микросхемы) микроконтроллеры. Интеграция всех составных систем микроконтроллера в одном кристалле привела к ряду ограничений на принципы его организации и к развитию архитектуры в специфическом направлении. Современные однокристальные микроконтроллеры обладают ресурсами и возможностями управления в реальном масштабе времени. Область применения однокристальных микропроцессоров - встроенные и распределенные системы управления.
Цель главы – ознакомление с основными элементами архитектуры однокристальных контроллеров.
После изучения главы необходимо знать
Основные элементы архитектуры контроллеров,
организацию портов ввода-вывода,
методы расширения адресного пространства памяти программ и данных.
Однокристальные контроллеры, выпускаемые различными производителями, отличаются друг от друга, но имеют и общим характеристики. Архитектура микроконтроллеров относится к гардвардскому типу, в которой память данных и программ разнесены, т.е. отдельно есть память команд (программ) и отдельно есть память данных, где хранятся переменные. Общим для них является 8- или 16-разрядный процессор, перепрограммируемое ПЗУ емкостью несколько Кбайт с электрическим или ультрафиолетовым стиранием, небольшое ОЗУ данных, значительное число линий цифрового ввода-вывода. Для организации работы в реальном масштабе времени контроллеры имеют таймер и систему прерываний. Некоторые контроллеры имеют встроенные АЦП, ЦАП и сторожевой таймер.
Физическое программирование контроллеров осуществляется с помощью программаторов, пересылающими данные в ПЗУ программ в параллельном или последовательном коде в соответствии с протоколом программирования. Для написания программ обычно используется Ассемблер. Составленная программа транслируется с помощью кросс-ассемблера на ЭВМ и загружается в контроллер с помощью программатора. Используются также специальные среды разработки и программирования.
Типичным примером однокристальных контроллеров является семейство микроконтроллеров К1816, выпускаемое в различных модификациях.
12.1. Однокристальный микроконтроллер к1816
Семейство однокристальных микроконтроллеров серии К1816 имеет базовый (простейший) вариант К1816ВЕ48 и наиболее сложный К1816ВЕ51. Все модели семейства К1816 совместимы по принципу снизу-вверх. К1816ВЕ51 имеет в своем составе последовательный приемопередатчик, что позволяет создавать топологически распределенные система управления и регулирования. В этом случае обмен информацией между множеством микроконтроллеров осуществляется через локальную сеть.
В состав контроллеров семейства К1816 входит процессор, перепрограммируемое ПЗУ емкостью 1-8 Кбайт с ультрафиолетовым или электрическим стиранием, которое имеет возможность наращивания внешним ПЗУ до 64 Кбайт, ОЗУ данных до 256 байт с возможностью наращивания. Разрядность, количество и назначение входов/выходов зависит от типа контроллера (Рис.12.1.).
Простейший однокристальный контроллер К1816ВЕ48, функциональная схема которого представлена на рисунке 12.2. имеет следующие аппаратные средства:
8-разрядный процессор,
внутреннее ОЗУ данных емкостью 64байта с возможностью внешнего расширения на 256 байт,
внутреннее ППЗУ программ с ультрафиолетовым стиранием емкостью 1Кбайт с возможностью внешнего расширения до 4 Кбайт,
программируемый 8-разрядный таймер-счетчик,
3 программируемых 8-разрядных порта (24=3*8 линии прямого ввода-вывода для связи с объектами) с возможностью внешнего расширения до 8 портов,
3 тестируемых входа (признаков вырабатываемых объектами),
одноуровневая векторная система прерываний с двумя источниками запросов,
генератор с частотой синхронизации до 6 Мгц.
Назначение основных выводов микросхемы:
PROG (ПРОГ) - выходной строб для расширителя ввода-вывода или программирующий импульс 25в при программировании,
ALE (САВП) - строб адреса внешней памяти используемый для приема и фиксации адреса внешней памяти на внешнем регистре, генерируется в начале каждого машинного цикла для синхронизации внешних цепей,
PSEN (РВПП)- разрешение внешней памяти программ, сигнал выдается только при обращении к внешней памяти программ,
EA (ОРПП)- отключение рабочей памяти программ, разрешение доступа к внешней памяти, для запрета внутреннего ПЗУ в режимах эмуляции и отладки,
SS (ШАГ) - сигнал, позволяющий при отладке выполнять программу с остановом после очередной команды, т.е. пошаговый режим,
T0 - входной сигнал, опрашиваемый командами условного перехода для ветвления по условию,
T1 - входной сигнал, опрашиваемый командам условного перехода, и вход счетчика-таймера,
INT - сигнал запроса прерывания от внешнего источника,
RD - строб чтения из внешней памяти данных или устройства ввода-вывода,
WR - строб записи во внешнюю память данных или устройство ввода-вывода,
RESET - вход сигнала общего сброса,
Р1 (P10-P17) - 8-битный псевдодвунаправленный порт, каждый разряд может быть запрограммирован на ввод или вывод,
Р2 (P20-P27) - 8-битный псевдодвунаправленный порт, каждый разряд которого может быть запрограммирован на ввод или вывод; младшая тетрада используется в качестве 4 старших разрядов адреса во время чтения из внешней памяти программ (ВПП); старшая тетрада используется для подключения БИС расширителя ввода-вывода (порты 4-7),
BUS - 8-битный двунаправленный многофункциональный порт ввода-вывода информации; может выполнять прием и выдачи байтов синхронно с сигналами RD и WR; при обращении к ВПП содержит 8 младших разряда адреса и затем по сигналу PSEN (РВПП) принимает выбранную команду; при обращении к внешней памяти данных (ВПД) содержит 8 бит адреса синхронно с сигналом ALE (строб адреса внешней памяти) и байт данных синхронно с сигналами RD и WR.
Процессор имеет два набора по 8 восьмиразрядных регистров в адресном пространства внутреннего ОЗУ. Выбор одного из наборов регистров выполняется специальной командой, что позволяет переключать контекст программы. Рабочие регистры доступны по командам с прямой адресацией; ячейки внутренней памяти данных доступны по командам с косвенной адресацией через регистры R0, R1 и R0', R1'. Процессор имеет ограниченную систему команд: 12 арифметических, 28 логических, 19 передач управления и десятичную коррекцию. Методы адресации: прямая регистровая, косвенная регистровая и непосредственная. Указатель стека - трехразрядный. Стек расположен в адресном пространстве внутреннего ОЗУ данных.
Память программ реализована в резидентном ППЗУ емкостью 1Кбайт. Счетчик команд - 12 разрядный, что позволяет адресовать 4Кбайт. В счетчике команд инкрементируется только 11 разрядов; старший разряд изменяется программно специальной командой смены банка памяти. Память разбита на страницы по 256 байт. В резидентной памяти программ находятся три специализированных адреса:
адрес 0, по которому передается управление после общего сброса,
адрес 3, по которому расположен вектор прерывания от внешнего источника,
адрес 7, по которому расположен вектор прерывания от таймера.
В командах условного перехода задается 8-битный адрес передачи управления внутри страницы. Для межстраничных переходов используется команды безусловного перехода и перехода к подпрограмме.
Память данных содержит два банка рабочих регистров с адресами 0-7 и 24-31. Адреса 8-23 используются 8-уровневым стеком, в котором фиксируется только адрес возврата и флаги. При расширении памяти возможен доступ к 256 байтам внешней памяти данных через регистры косвенного адреса.
Загрузка прикладных программ требует использования программатора, который имеет средства ввода адресов и данных, средства контроля за введенной информацией и который генерирует необходимую последовательность сигналов программирования в соответствии с техническими условиями (ТУ).
П рограмматоры обычно выполняются в виде отдельного модуля подключаемого к ЭВМ. Для разработки программного обеспечения существуют отладочные платы и эмуляторы ассемблера. При программировании адрес и данные последовательно устанавливаются на шине BUS, P2 (старшие разряды) и заносятся подачей стробов на управляющие входы микросхемы.
Р асширение внешней памяти программ выполняется по приведенной ниже функциональной схеме (Рис.12.3.). Временная диаграмма работы также представлена на рисунке. На шине BUS выставляются 8 младших разряда адреса, которые по срезу сигнала ALE (Address Latch Enable, САВП -строб адреса внешней памяти) запоминаются во внешнем регистре. 4 старших разряда адреса выставляются в порту P2. Сигналом PSEN (Program Store Enable, РВПП- разрешение внешней памяти программ) разрешается работа внешней памяти. По спаду этого сигнала производится ввод команды.
П одключение внешней памяти данных показано на функциональной схеме (Рис.12.4.). Выставленный адрес запоминается во внешнем регистре по стробу адреса внешней памяти, по сигналам чтения/записи данные считываются/записываются из/в память. При необходимости еще большего увеличения памяти можно реализовать страничный механизм ОЗУ (по 256 байт) используя регистр P2 в качестве страничного регистра.
Для расширения пространства ввода/вывода выпускается специальная микросхема расширителя КР580ВР43 подключаемая к порту P2 и имеющая 16 линий (Рис.12.5.). Но более удобно использовать микросхему КР580ВВ55. Порты параллельного адаптера можно адресовать или как ячейки памяти (Рис.12.6.) или использовать для этой цели линии порта P2 (Рис.12.7.). Для ввода аналоговых сигналов возможно использование числоимпульсного преобразования. Внешний блок формирует пачки, в которых число импульсов пропорционально входному сигналу. Эти пачки поступают на вход счетчика. Управление преобразователем реализуется через выходные линии одного из портов P1 или P2. Примером системы управления, реализованной на микроконтроллере серии 1816, является система " Разрез", предназначенная для управления рабочими органами асфальтоукладчика.