Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы МП.New.doc
Скачиваний:
26
Добавлен:
23.11.2019
Размер:
1.08 Mб
Скачать

Лабораторная работа № 1

«Управление внешними устройствами через параллельные порты микроконтроллера. Режим Normal работы таймеров-счетчиков»

Цель работы

  1. Изучить функциональные возможности и принципы конфигурирования параллельных портов микроконтроллеров AVR.

  2. Изучить устройство и порядок программирования таймеров для работы в нормальном режиме.

  3. Приобрести практические навыки работы с интегрированной средой разработки AVRStudio и программатором.

  4. Приобрести практические навыки программирования режимов работы параллельных портов.

Порядок выполнения работы

  1. Изучить теоретический материал по теме.

  2. Написать программу вывода числового значения на светодиоды

  3. Написать программу, реализующую циклическое включение светодиодов «бегущий огонь». Временной интервал свечения светодиода должен быть равен периоду полного счета 16-ти битного таймера-счетчика.

  4. Произвести отладку программы средствами AVRStudio.

  5. Произвести загрузку программы в микроконтроллер.

  6. Продемонстрировать результат преподавателю.

Теоретические сведения

1. Порты ввода/вывода

1.1. Общие сведения

Каждый порт микроконтроллеров состоит из определенного числа выводов, через которые микроконтроллер может осуществлять прием и передачу цифровых сигналов. Задание направления передачи данных через любой контакт ввода/вывода может быть произведено программно в любой момент времени.

Выходные буферы всех портов, имея симметричные нагрузочные характеристики, обеспечивают высокую нагрузочную способность при любом уровне сигнала. Нагрузочной способности достаточно для непосредственного управления светодиодными индикаторами.

Входные буферы всех выводов построены по схеме триггера Шмитта. Для всех входов имеется возможность подключения внутреннего подтягивающего резистора между входом и шиной питания.

Отличительной особенностью портов микроконтроллеров семейства Mega (как и всех микроконтроллеров AVR) при использовании их в качестве цифровых портов ввода/вывода общего назначения является реализация истинной функциональности «чтение/модификация/запись». Благодаря этому можно выполнять операции над любым выводом (с помощью команд SBI и CBI), не влияя на другие выводы порта. Это относится к изменению режима работы контакта ввода/вывода, к изменению состояния выходного буфера (для выходов) и к изменению состояния внутреннего подтягивающего резистора (для входов).

1.2. Регистры портов ввода/вывода

Обращение к портам производится через регистры ввода/вывода. Под каждый порт в адресном пространстве ввода/вывода зарезервировано по 3 адреса, по которым размещены следующие регистры: регистр данных порта PORTx, регистр направления данных DDRx и регистр выводов порта PINx. Действительные названия регистров получаются подстановкой названия порта вместо символа х. Соответственно, регистры порта А называются PORTA, DDRA, PINA, порта В - PORTB, DDRB, PINB и т. д.

Поскольку с помощью регистров PINx осуществляется доступ к физическим значениям сигналов на выводах порта, они доступны только для чтения, тогда как остальные два регистра доступны и для чтения, и для записи.

Рис. 1.1. Структурная схема канала ввода/вывода