- •Кузнецов в.Н., Лисютченков с.Н. Цифровые и микропроцессорные устройства
- •Часть 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 Контрольные вопросы
- •Приложение
- •Список литературы
6.2.5.5 Альтернативные функции порта e
Альтернативные функции порта Е представлены в таблице 6.13.
Таблица 6.13 Альтернативные функции выводов порта Е
Вывод порта |
Альтернативная функция |
PE7 |
INT7/IC3(1) (вход внешнего прерывания 7 или вход триггера захвата фронта таймера-счетчика 3) |
PE6 |
INT6/ T3(1) (вход внешнего прерывания 6 или вход синхронизации таймера-счетчика 3) |
PE5 |
INT5/OC3C(1) (вход внешнего прерывания 5 или выход С компаратора и ШИМ таймера-счетчика 3) |
PE4 |
INT4/OC3B(1) (вход внешнего прерывания 4 или выход B компаратора и ШИМ таймера-счетчика 3) |
PE3 |
AIN1/OC3A (1) (инвертирующий вход аналогового компаратора или выход A компаратора и ШИМ таймера-счетчика 3) |
PE2 |
AIN0/XCK0(1) (неинвертирующий вход аналогового компаратора или вход/выход внешний синхронизации УСАПП0) |
PE1 |
PDO/TXD0 (вывод программируемых данных или вывод передачи УАПП0) |
PE0 |
PDI/RXD0 (ввод программируемых данных или вывод приема УАПП0) |
INT7/IC3 – Порт E, разряд 7
INT7 – Источник внешнего прерывания 7. Вывод PE7 может выполнять функцию источника внешнего прерывания микроконтроллера.
IC3 – вход захвата фронтов таймера-счетчика 3.
INT6/T3 – Порт E, разряд 6
INT6 – Источник внешнего прерывания 6. Вывод PE6 может выполнять функцию источника внешнего прерывания микроконтроллера.
T3 – Счетный вход таймера-счетчика 3.
INT5/OC3C – Порт E, разряд 5
INT5 – Источник внешнего прерывания 5. Вывод PE5 может выполнять функцию источника внешнего прерывания микроконтроллера.
OC3C – выход компаратора С таймера-счетчика 3. Для выполнения данной функции вывод должен быть настроен как выход (DDE5 =1). Вывод OC3С также выполняет функцию выхода, когда таймер переведен в режим ШИМ.
INT4/OC3B – Порт E, разряд 4
INT4 – Источник внешнего прерывания 4. Вывод PE4 может выполнять функцию источника внешнего прерывания микроконтроллера.
OC3B – выход компаратора B таймера-счетчика 3. Для выполнения данной функции вывод должен быть настроен как выход (DDE4 =1). Вывод OC3B также выполняет функцию выхода, когда таймер переведен в режим ШИМ.
AIN1/OC3A – Порт E, разряд 3
AIN1 – инвертирующий вход аналогового компаратора. Данный вывод непосредственно подключен к инвертирующему входу аналогового компаратора.
OC3A – выход компаратора A таймера-счетчика 3. Для выполнения данной функции вывод должен быть настроен как выход (DDE3 =1). Вывод OC3A также выполняет функцию выхода, когда таймер переведен в режим ШИМ.
AIN0/XCK0 – Порт E, разряд 2
AIN0 – неинвертирующий вход аналогового компаратора. Данный вывод непосредственно подключен к неинвертирующему входу аналогового компаратора.
XCK0, USART0 – внешняя синхронизация. Регистр направления данных (DDE2) задает, является ли синхронизация выходной (DDE2=1) или входной (DDE2=0). Вывод XCK0 активен только тогда, когда УСАПП0 работает в синхронном режиме.
PDO/TXD0 – Порт E, разряд 1
PDO – вывод последовательно программируемых через SPI данных. В процессе последовательного программирования данный вывод используется как линия вывода данных из ATmega128.
TXD0 – вывод передачи УАПП0.
PDI/RXD0 – Порт E, разряд 0
PDI – ввод последовательно программируемых через SPI данных. В процессе последовательного программирования данный вывод используется как линия ввода данных в ATmega128.
RXD0 – Вывод приема данных УСАПП0. Если разрешена работа приемника УСАПП0, то данный вывод настраивается как вход независимо от состояния DDRE0. После того, как УСАПП0 настроит данный вывод как вход, запись лог. 1 в PORTE0 включит подтягивающий резистор на данном выводе.
В таблицах 6.14 и 6.15 описывается связь альтернативных функций выводов порта Е и отключающих сигналов.
Таблица 6.14 Отключающие сигналы для разрешения альтернативных функций на PE7..PE4
Наименование сигнала |
PE7/INT7/IC3 |
PE6/INT6/T3 |
PE5/INT5/OC3C |
PE4/INT4/OC3B |
PUOE |
0 |
0 |
0 |
0 |
PUOV |
0 |
0 |
0 |
0 |
DDOE |
0 |
0 |
0 |
0 |
DDOV |
0 |
0 |
0 |
0 |
PVOE |
0 |
0 |
OC3C ENABLE |
OC3B ENABLE |
PVOV |
0 |
0 |
OC3C |
OC3B |
DIEOE |
INT7 ENABLE |
INT6 ENABLE |
INT5 ENABLE |
INT4 ENABLE |
DIEOV |
1 |
1 |
1 |
1 |
DI |
INT7 INPUT/IC3 INPUT |
INT7 INPUT/T3 INPUT |
INT5 INPUT |
INT4 INPUT |
AIO |
- |
- |
- |
- |
Таблица 6.15 Отключающие сигналы для разрешения альтернативных функций на PE3..PE0
Наименование сигнала |
PE3/AIN1/OC3A |
PE2/AIN0/XCK0 |
PE1/PDO/TXD0 |
PE0/PDI/RXD0 |
PUOE |
0 |
0 |
TXEN0 |
RXEN0 |
PUOV |
0 |
0 |
0 |
PORTD1•PUD |
DDOE |
0 |
0 |
TXEN0 |
RXEN0 |
DDOV |
0 |
0 |
1 |
0 |
PVOE |
OC3B ENABLE |
UMSEL0 |
TXEN0 |
0 |
PVOV |
OC3C |
XCK0 OUTPUT |
TXD0 |
0 |
DIEOE |
0 |
0 |
0 |
0 |
DIEOV |
0 |
0 |
0 |
0 |
DI |
0 |
RXD0 |
- |
RXD0 |
AIO |
AIN1 INPUT |
AIN0 INPUT |
- |
- |