- •Кузнецов в.Н., Лисютченков с.Н. Цифровые и микропроцессорные устройства
- •Часть 3
- •220301– Автоматизация технологических процессов и производств
- •Содержание
- •Предисловие
- •Лабораторная работа №1 «Освоение среды разработки vmlab 3.12»
- •1.2 Теоретическое введение
- •1.2.1 Общие сведения
- •1.2.2 Среда разработки vmlab
- •1.2.3 Описание пользовательского интерфейса
- •1.2.4 Команды меню
- •Save All − сохранить все файлы Save As − сохранить файл текущего окна под новым именем
- •1.2.5 Доступные окна
- •1.2.6 Аппаратные компоненты
- •1.2.7 Формат программы на ассемблере
- •1.3 Порядок выполнения лабораторной работы
- •1.3.1 Создание нового проекта
- •1.3.2 Редактирование файла ассемблера
- •1.3.3 Ассемблирование и выполнение программы
- •1.4 Задание на лабораторную работу
- •1.5 Контрольные вопросы
- •1.6 Содержание отчета по лабораторной работе
- •Лабораторная работа №2 «Изучение микроконтроллера aTmega128 и основы программирования»
- •2.2.1 Общие сведения о микроконтроллере aTmega128
- •Регистры ввода/вывода (рвв)
- •Организация памяти
- •Внешние прерывания
- •2.2.9 Директивы транслятора ассемблера
- •2.2.10 Выражения
- •2.2.11 Операнды
- •2.2.12 Функции
- •2.2.13 Операции
- •2.3 Порядок выполнения лабораторной работы
- •2.4 Задание на лабораторную работу
- •Задание для индивидуальной работы
- •2.5 Контрольные вопросы
- •2.6 Содержание отчета по лабораторной работе
- •3.2.2 Адресация в микроконтроллере
- •3.2.3 Команды пересылки данных
- •Mov Rd,Rr(пересылка между рон) – копирует содержимое регистра Rrв регистр Rd. Регистр-источник Rrне изменяется.
- •3.2.4 Команды передачи управления
- •3.3 Порядок выполнения лабораторной работы
- •3.4 Задание на лабораторную работу
- •3.5 Контрольные вопросы
- •3.6 Содержание отчета по лабораторной работе
- •Лабораторная работа №4 «Выполнение арифметических операций»
- •4.2 Теоретическое введение
- •4.3 Порядок выполнения лабораторной работы
- •4.4 Задание на лабораторную работу
- •4.5 Контрольные вопросы
- •4.6 Содержание отчета по лабораторной работе
- •Лабораторная работа №5 «Изучение логических операций»
- •5.2 Теоретическое введение
- •Управление энергопотреблением и режимы сна.
- •5.3 Порядок выполнения лабораторной работы
- •5.4 Задания на лабораторную работу
- •5.5 Контрольные вопросы
- •5.6 Содержание отчета по лабораторной работе
- •Лабораторная работа №6 «Изучение портов ввода/вывода и их программирование»
- •6.2 Теоретическое введение
- •6.2.1 Общие сведения
- •6.2.2 Порты в качестве универсального цифрового ввода-вывода
- •6.2.3 Настройка выводов
- •6.2.4 Неподключенные выводы
- •6.2.5 Альтернативные функции порта
- •6.2.5.1 Альтернативные функции порта a
- •6.2.5.2 Альтернативные функции порта в
- •6.2.5.3 Альтернативные функции порта c
- •6.2.5.4 Альтернативные функции порта d.
- •6.2.5.5 Альтернативные функции порта e
- •6.2.5.6 Альтернативные функции порта f
- •6.2.5.1 Альтернативные функции порта g
- •6.2.6 Описание регистров портов ввода-вывода
- •6.2.7 Обращение к портам ввода/вывода
- •6.3 Порядок выполнения лабораторной работы на симуляторе
- •6.4 Задание на лабораторную работу
- •Задания для индивидуальной работы
- •Контрольные вопросы
- •6.6 Содержание отчета по лабораторной работе
- •Лабораторная работа №7.
- •7.2.1 Общие сведения о Память
- •7.2.2 Статическое озу памяти данных
- •7.2.3 Организация памяти
- •7.2.4 Запоминающее устройство sram
- •7.2.5 Временная диаграмма доступа к памяти
- •7.3 Память данных на эсппзу
- •7.3.1 Чтение и запись эсппзу
- •7.3.2 Адресные регистры эсппзу
- •Порядок выполнения
- •7.4 Память ввода-вывода
- •Порядок выполнения
- •Порядок выполнения
- •7.5 Задание на лабораторную работу
- •Задание для индивидуальной работы
- •7.6 Контрольные вопросы
- •7.7 Содержание отчета по лабораторной работе
- •Генерация тактовых импульсов
- •Инициализация усапп
- •8.2.2 Передача данных - Передатчик усапп
- •8.2.3 Прием данных - Приемник усапп
- •Асинхронный прием данных
- •8.2.4 Многопроцессорный режим связи
- •8.2.5 Описание регистров усапп
- •8.2.6 Последовательный периферийный интерфейс - spi
- •8.2.7 Функционирование вывода ss
- •8.2.8 Связь двух мк
- •8.3 Задание на лабораторную работу
- •Задание для индивидуальной работы
- •8.6 Контрольные вопросы
- •Лабораторная работа №9 «Изучение принципа работы таймеров/счетчиков микроконтроллера»
- •9.2 Теоретическое введение
- •9.2.1 Общие сведения о таймерах/счетчиках
- •9.2.2 Назначение выводов таймеров/счетчиков
- •9.2.5 Выбор источника тактового сигнала
- •9.2.6 Режим таймера
- •9.2.7 Функция захвата (Capture)
- •9.2.8 Функция сравнения (Compare)
- •9.2.9 Режим шим
- •9.2.10 Сторожевой таймер
- •9.2.11 Общие сведения о работе клавиатуры
- •9.2.12 Ввод кода нажатой клавиши
- •9.2.13 Сканирование и идентификация
- •Листинг проектного файла №9
- •На эмуляторе
- •9.4 Задание на лабораторную работу
- •Задания для индивидуальной работы
- •9.5 Контрольные вопросы
- •10.2.2 Функционирование модуля ацп
- •10.2.3 Принцип действия
- •10.2.4 Каналы дифференциального усиления
- •10.2.5 Изменение канала или выбор опорного источника
- •10.2.6 Входные каналы ацп
- •10.2.7 Источник опорного напряжения ацп
- •10.2.8 Повышение точности преобразования
- •10.2.9 Методы компенсации смещения
- •10.2.10 Описание получения результата преобразования
- •10.2.5 Параметры ацп
- •10.2 Порядок выполнения работы на симуляторе
- •На эмуляторе
- •10.3 Задание на лабораторную работу
- •Задания для индивидуальной работы
- •10.4 Контрольные вопросы
- •Приложение
- •Список литературы
Асинхронный прием данных
УСАПП содержит блоки обнаружения данных и синхронизации для управления асинхронным приемом данных. Логика обнаружения синхронизации используется для синхронизации с внутренним генератором скорости связи для обеспечения возможности ввода последовательной посылки с выв. RxD. Логика обнаружения данных осуществляет выборку и фильтрацию (ФНЧ) каждого входящего бита данных, тем самым увеличивая помехоустойчивость приемника. Рабочий диапазон асинхронного приема определяется точностью встроенного генератора скорости связи, точностью скорости входящей посылки и размером посылки (количество бит).
8.2.4 Многопроцессорный режим связи
Установка бита многопроцессорного режима связи MPCM в регистре UCSRA активизирует функцию фильтрации входящих посылок приемником УСАПП. Посылки, которые не содержат информации об адресе игнорируются и не помещаются в приемный буфер. Это позволяет существенно уменьшить количество входящих посылок подлежащих обработке ЦПУ в многопроцессорных системах, связь между процессорами в которых организована через одну последовательную шину. Значение бита MPCM не оказывает ни какого влияния на работу передатчика, но при этом передатчик должен быть использован иначе, если используется режим многопроцессорной связи.
Если приемник настраивается на прием посылок с 5…8 битами данных, то первый стоп-бит позволяет отличить назначение принятых данных: адрес или данные. Если приемник настроен на прием 9 бит данных, то значение 9-го бита (RXB8) используется для идентификации адреса или данных. Если идентификатор типа посылки (первый стоп-бит или 9-ый бит данных) равен 1, то в посылке содержится адрес. В противном случае в посылке переданы данные.
Режим многопроцессорной связи позволяет нескольким подчиненным микроконтроллерам принимать данные от одного ведущего. При этом подчиненные микроконтроллеры по первой адресной посылке определяют к какому микроконтроллеру адресуется ведущий. Если один из подчиненных микроконтроллеров обнаруживает свой адрес, то следующие посылки данных он будет принимать в нормальном режиме, а остальные подчиненные микроконтроллеры эти данные игнорируют до тех пор, пока не будет обнаружена следующая адресная посылка.
Использование MPCM
Если микроконтроллер действует как ведущий, то он может использовать 9-битный формат данных в посылке (UCSZ = 7). 9-ый бит данных (TXB8) устанавливается при передаче адресной посылки (TXB8 = 1) и сбрасывается при передаче посылки данных (TXB = 0). В этом случае подчиненные микроконтроллеры также должны устанавливать 9-битный формат.
Для обмена данными в многопроцессорном режиме связи необходимо использовать следующие процедуры:
Все подчиненные микроконтроллеры переводятся в многопроцессорный режим связи (MPCM =1 в UCSRA).
Ведущий МК отправляет адресную посылку, а все подчиненные принимают и считывают эту посылку. В подчиненных МК флаг RXC в регистре UCSRA устанавливается как обычно.
Каждый подчиненный МК считывает регистр UDR и определяет к кому адресуется ведущий МК. Адресуемый МК должен очистить бит MPCM в UCSRA, в противном случае он ожидает следующего адресного байта и сохраняет установки MPCM.
Адресуемый МК принимает все данные до следующей адресной посылки. Другие подчиненные МК, у которых бит MPCM остался установленным будут игнорировать посылки данных.
После приема адресуемым МК последней посылки данных устанавливается бит MPCM и ожидается прием новой адресной посылки от ведущего МК. Далее процесс повторяется с пункта 2.
Использование 5..8-разрядных форматов данных возможно, но не удобно, т.к. приемник должен переключаться между n и n+1 форматами посылки. Это делает затруднительной полнодуплексную связь, т.к. передатчик и приемник используют общие установки формата. При использовании 5…8-разр. данных в посылке передатчик должен использовать два стоп-бита, т.к. первый стоп-бит будет задействован для индикации типа посылки.
Не пользуйтесь инструкциями "чтение-модификация-запись" (SBI и CBI) для установки или сброса бита MPCM. Бит MPCM находится в одной ячейке с флагом TXC, поэтому, последний может быть случайно сброшен при выполнении инструкций SBI или CBI.
