- •В.Н. Веприк, в.А. Афанасьев, а.И. Дружинин, а.А. Земсков, а.Р. Исаев, о.В. Малявко микроконтроллеры семейства mcs-51
- •Введение.
- •Система обозначений компонентов фирмы intel и функциональный состав семейства mcs-51
- •2. Основные характеристики базовой модели семейства микроконтроллеров mcs-51.
- •2.1. Синхронизация микроконтроллера.
- •2.2. Организация таймеров/счетчиков.
- •Организация прерываний.
- •Организация последовательного интерфейса.
- •2.5. Система команд семейства mcs-51.
- •2.5.1. Команды пересылки данных.
- •Команда обработки данных.
- •3. Учебный микропроцессорный контроллер умпк-51
- •3.1. ОписаниеУмпк-51
- •3.2. Порядок работы с умпк-51.
- •3.2.1. Режим просмотра и изменения содержимого внешней памяти программ.
- •3.2.2. Вывод на дисплей содержимого программного счетчика.
- •3.2.3. Просмотр и изменение содержимого внутренней памяти данных.
- •3.2.4. Просмотр и изменение содержимого битов битового процессора.
- •3.2.5. Просмотр и изменение содержимого внутренних регистров оэвм.
- •Запуск программы пользователя в автоматическом или пошаговом режиме.
- •3.2.7. Аналоговый вывод.
- •3.2.9. Организация обмена с инструментальной эвм.
- •3.3. Подсистема аналогового вывода умпк-51.
- •3.4. Подсистема аналогового ввода умпк-51.
- •Через последовательный порт.
- •3.5.1. Инициализация уапп и таймера/счетчика 1.
- •Прием/передача на основе обработки прерываний уапп.
- •4. Темы лабораторных работ и варианты заданий Лабораторная работа №1
- •Лабораторная работа №2
- •Лабораторная работа №3
- •Порядок выполнения работ
- •5. Подпрограммы, рекомендуемые к использованию в лабораторных работах
- •Машинные команды оэвм 1816ве51 (по группам операций) Арифметические операции.
- •Логические операции
- •Команды вызова подпрограмм Команды безусловных и возврата переходов
- •Команды условных переходов.
- •Команды обработки отдельных бит данных.
- •Команды пересылок данных.
- •Основные характеристики микроконтроллеров mcs 51 / mcs 251
- •Список литературы
4. Темы лабораторных работ и варианты заданий Лабораторная работа №1
Изучение структуры и функциональных возможностей УМПК-51.
Изучение архитектуры и системы команд микроконтроллера семейства MSC-51.
Варианты заданий
Ввод информации с клавиатуры и отображение ее на дисплее с возможностью "стирания" введенных символов.
Вывод на дисплей "бегущего" сообщения.
Собственные варианты демонстрационных программ.
Лабораторная работа №2
Универсальный асинхронный приемопередатчик и
программирование процедур обмена информацией
Варианты заданий
Вариант 1. Программа передачи данных с использованием промежуточного буфера данных типа FIFO.
За основу может быть взята структура, приведенная на рис.16. Режим работы УАПП - первый. Скорость передачи - переменная, от 10 Кбод до 100 бод. Размер буфера FIFO (рис.19) составляет 8 ячеек ОЗУ. Визуальную регистрацию передачи символов информации произвести с помощью осциллографа.
Очередь в буфере FIFO может расти и сокращаться. После включения каждого нового элемента в буфер указатель конца (УК) увеличивается на 1. Когда УК очереди достигнет зарезервированного в памяти конца буфера, он снова приобретает начальное значение (структура замкнута в кольцо). Буфер полон, если УК+1=УН и пуст при УК=УН. В исходном состоянии УК=УН=АДРЕС НАЧАЛА буфера.
Вариант 2. Обмен данными через последовательный порт между МК-51 в режиме "ВЕДУЩИЙ¾ВЕДОМЫЙ".
Микропроцессорный комплекс УМПК-51 содержит в своем составе необходимые технические средства для обеспечения асинхронной передачи/приема информации в стандарте RS-232С. На рис.20 представлена схема коммутации двух УМПК-51 при обмене информацией друг с другом. Требуется разработать программное обеспечение обмена, включающее две программы, которые назовем по аналогии с выполняемыми функциями контроллеров: Ведущий и Ведомой.
Вид обмена - асинхронный по первому УАПП со скоростью передачи 2400 бод.
Запуск обеих управляющих программ (каждая на своем УМПК-51) производится в произвольный момент времени и сопровождается выводом сообщения "RS-232" на экран дисплея каждого УМПК. Вывод данного сообщения подтверждает факт готовности к реализации соответствующих функций приема или передачи.
Начало передачи инициируется нажатием произвольной клавиши клавиатуры ВЕДУЩЕГО. При этом он посылает управляющее сообщение (УС) из четырех байт В1¸В4, определяющих начальный и конечный адреса буфера памяти для последующей передачи ВЕДОМОМУ массива данных:
В1 и В2 - младший и старший байты начального адреса буфера;
В3 и В4 - младший и старший байты конечного адреса.
Рис.20. Схема информационной коммутации двух УМПК-51
В ходе приема ВЕДОМЫМ байтов УС осуществляется занесение их в одноименные по номеру регистры внутренней памяти данных с подсчетом контрольной суммы (КС) путем циклического сложения без учета переносов и переполнений.
КС=В1+В2+В3+В4.
По окончании приема УС ВЕДОМЫЙ принимает пятый В5 контрольный байт (вычисленный уже ВЕДУЩИМ аналогичным образом), который сравнивается с КС. В случае безошибочного приема/передачи ВЕДОМЫЙ переходит в режим ожидания приема основной информации и занесения ее в ОЗУ по полученным в ходе приема УС адресам, в противном случае, он передает ошибочное значение КС ВЕДУЩЕМУ и переходит к точке программы, с которой можно совершить повторный прием УС.
ВЕДУЩИЙ, анализируя факт наличия/отсутствия передачи КС от ВЕДОМОГО (вводится короткая задержка), также либо повторяет передачу УС, либо переходит к передаче массива информации.
В ходе передачи информации как ВЕДУЩИЙ, так и ВЕДОМЫЙ УМПК-51 индицируют адрес ячейки памяти на дисплее. С этой целью байтовые посылки разделяются искусственно введенной задержкой длительностью 0,5¸1 с. Подсчет КС и выявление ошибок приема/передачи на этом этапе не производятся (с целью сокращения объема учебных программ).
По окончании обмена оба УМПК-51 выводят на дисплей строку символов "End".
На рис.21 и 22 приведены блок-схемы управляющих программ ВЕДУЩАЯ и ВЕДОМАЯ соответственно. Приведенные блок-схемы программ ориентированы на организацию приема/передачи на основе опроса флагов TI и RI, но будут полезны и при разработке программ обслуживания прерываний.
Рис.21. Структура ВЕДУЩЕЙ программы
Рис.22. Структура ВЕДОМОЙ программы