Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Работа №3 цифровые системы на базе микроконтроллера atmega103: контроль внешних устройств через параллельные порты - работа с клавиатуройСодержание книги
Поиск на нашем сайте
Цель работы: получение практических навыков программирования процедур опроса состояния внешних устройств (на примере подключения клавиатуры). Введение Клавиатура является одним из наиболее распространенных устройств для ввода оператором в цифровую систему команд и данных. Обычно клавиши клавиатуры организованы в виде матрицы и их состояние читается через параллельные порты. На плате лабораторного макета смонтирована простая 12-кнопочная клавиатура, которая подключена к выводам PD0 - PD6 порта PD микроконтроллера. Клавиатура имеет вид матрицы 4x3, кнопки обозначены А1 - A3, В1 - ВЗ, С1 - СЗ, D1 - D3, где цифры 1, 2, 3 определяют номер столбца, а буквы А, В, С, D указывают позицию кнопки в столбце. Подключение кнопок клавиатуры к выводам порта PD показано на рисунке 1 Приложения. Для контроля состояния кнопки в строке необходимо подать низкий потенциал (логический «0») на вывод микроконтроллера PD0 (PD1, PD2, PD3). В этом случае на выводе PD4, PD5 или PD6, подключенном к нажатой кнопке, установится «0». Для определения текущего состояния клавиатуры микроконтроллер должен периодически считывать состояния выводов PD4 - PD6, последовательно устанавливая на выводах PD0 - PD3 состояние "0". Для этого служит процедура опроса клавиатуры, посредством выполнения которой микроконтроллер определяет позицию нажатой кнопки. В реальных системах опрос клавиатуры производится периодически по сигналам таймера или осуществляется по запросу прерывания, формируемому клавиатурой. Основной проблемой при обслуживании клавиатуры является защита от дребезга контактов, который может привести к формированию ложной информации. Для защиты применяются как аппаратные, так и программные средства. На плате лабораторного макета аппаратных средств защиты от дребезга контактов нет, поэтому должны применяться исключительно программные методы, все варианты которых сводятся к повторному чтению состояния клавиатуры. Нажатие клавиши должно вызывать ввод в цифровую систему определенного 8-разрядного символа. Кодировка клавиш, которая должна быть реализована при выполнении данной работы на лабораторном макете, задается преподавателем. У микроконтроллеров ATmega103 имеется 6 параллельных портов ввода/вывода. Порт А. Порт А является 8-разрядным двунаправленным портом ввода/вывода, оснащен встроенными нагрузочными резисторами. Взаимодействие с портом А осуществляется через три расположенных в пространстве ввода/вывода (памяти данных) регистра: регистр данных - PORTA $1В($ЗВ), регистр направления данных - DDRA $1А($ЗА) и регистр входных данных - PINA, $19($39). Регистр входных данных обеспечивает только возможность чтения, регистры данных и направления данных обеспечивают возможность и чтения и записи. Все выводы порта А оснащены индивидуально подключаемыми встроенными нагрузочными резисторами. Выходные буферы порта А обеспечивают ток до 20мА, что достаточно для прямого управления светодиодными индикаторами. Если выводы РА0 - РА7 используются в качестве входов и внешним сигналом удерживаются на низком уровне, то вытекающий ток обеспечивается подключением внутренних нагрузочных резисторов. Выводы порта А могут выполнять альтернативную к основной функцию. При взаимодействии с внешней памятью данных они могут работать как младшие разряды мультиплексированной шины адреса/данных. Альтернативная функция включается установкой бита SRE (разрешение внешней памяти данных) в регистре MCUCR, при этом установки регистра направления данных игнорируются.
Рисунок 3.1 – Регистры данных пора А – PORTA
PINA - не является регистром в полном смысле слова, обращение по этому адресу обеспечивает чтение физического состояния каждого вывода порта. При чтении регистра PORTA читается состояние защелок данных порта А, а при чтении PINA читаются непосредственно логические состояния на выводах.
|
||||
Последнее изменение этой страницы: 2019-11-02; просмотров: 120; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.220.94.189 (0.006 с.) |