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

1.5 Контрольные вопросы и задания

  1. Поясните основные особенности архитектуры микроконтроллера AVR ATMEGA 128.

  2. Поясните принципы распределения адресных пространств памяти, регистров общего назначения и портов ввода/вывода в микроконтроллере AVR ATMEGA 128.

  3. Каково назначение отдельных битов регистра состояния SREG ?

  4. Поясните реализацию в микроконтроллере AVR ATMEGA 128 Гарвардской архитектуры и принципа конвейерной обработки команд.

  5. Каким образом реализуется вызов операторов языка Assembler из С – программы ? Приведите примеры.

  6. Дайте характеристику основным командам микроконтроллера AVR ATMEGA 128 при обращении к памяти и портам ввода/вывода.

2 Изучение режима программного опроса клавиатуры

Цель работы: изучить принципы функционирования и подключения к микроконтроллеру матричной клавиатуры 3*4 лабораторного макета, разработать алгоритм и программу для реализации режима опроса клавиатуры без использования прерываний.

2.1 Указания по организации самостоятельной работы

Перед работой необходимо проработать теоретический материал по литературе [1,2] и конспект лекций, ознакомиться со структурной схемой и принципами функционирования клавиатуры лабораторного макета, возможностями реализации режима программного опроса клавиатуры лабораторного макета на базе микроконтроллера AVR АТMEGA128. При подготовке к лабораторной работе необходимо составить предварительные варианты листингов программ, указываемых в пунктах практического выполнения работы.

2.1.1. Принципы анализа нажатия стандартных кнопок с помощью микроконтроллера avr mega128.

Параллельные входы микроконтроллеров часто используются для подключения различных коммутационных элементов: переключателей, кнопок, контактных блоков, которые служат для управления внешними устройствами. В простейшем случае кнопка подключается одним выводом к общему проводу, а другим – ко входной линии порта ввода/вывода, работающего в режиме ввода данных, и через резистор (сопротивлением порядка 10 кОм) с положительным полюсом источника электропитания (см. рисунок 2.1). При разомкнутых контактах кнопки на входной линии микроконтроллера установится уровень “логической единицы”, при замкнутых – “логического нуля”.

Рисунок 2.1 – Принципиальная схема подключения кнопки

к микроконтроллеру

Принцип проверки состояния нажатия клавиши заключается в периодическом программном опросе входной линии, к которой подключен один из выводов клавиши, и анализе значения соответствующего бита. Рассмотрим фрагмент ассемблерного кода процедуры контроля состояния нажатия кнопки, подключенной к 6-й линии порта ввода/вывода F (адрес регистра ввода 0) согласно схеме на рисунке 2.1:

ldi R16,0b01000000 Загрузить константу для маскирования в R16;

lbl: метка перехода для повторения опроса;

in R17,0 считать данные из регистра ввода порта F;

and R17,R16 обнулить все биты регистра R17, кроме 6-го.

cpi R17,0 сравнить значение в регистре R17 с нулем.

brne lbl если клавиша не нажата – то выполнить переход для повторения опроса, иначе – выполнять дальнейшие действия.