Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Лабораторная работа 9. Ввод данных с клавиатуры





 

Цель работы: обучение созданию программ для ввода данных с клавиатуры. Закрепление навыков организации условных переходов и инициализации портов.

Клавиатура используется в реальных программах для ввода данных, инструкций, изменения алгоритма вычислений. В лабораторной работе с клавиатуры будем подавать напряжение (сигнал’1’) в порт D, без применения дополнительного источника питания. Сигнал будет обработан микропроцессором, и в PORTC будет выведен результат работы программы.

Изучите принципиальную схему подключения пленочной клавиатуры (рисунок 9.1), изображенную на лицевой панели стенда.

Здесь в виде контактов изображены кнопки клавиатуры. На рисунке 9.2 приведена, в качестве примера, монтажная схема подключения кнопки с цифрой «1» к порту D. Одна клемма кнопки «1» подключена к выводу RD7, а вторая клемма кнопки «1» подключена к выводу RD3. Предположим, что бит RD7 запрограммирован на вывод, а бит RD3 - на ввод. Когда кнопка нажата, с выходного бита RD7 проходит сигнал через кнопку «1» на клемму RD3, запрограммированную на ввод.

При составлении программы 9.1 решалась следующая задача: при поступлении аварийного сигнала с датчика, должна включиться сирена, подключенная к фидеру 7. Кнопка «1» в программе имитирует датчик, светодиод имитирует сирену. Изучите программу, выполняющую описанные действия и демонстрирующую зажигание светодиода, подключенного к выводу RC6.

 
 


Фрагмент 9.1. Программирование клавиатуры.

START

CLRF STATUS; Очищаем регистр STATUS.

BSF STATUS, 5; Выбираем банк ‘1’.

MOVLW B’00001111’; Константа для инициализации порта D.

MOVWF TRISD; Инициализируем биты RD0 - RD3 на ввод,
: остальные клеммы порта D (RD4 - RD7) на вывод.

CLRF TRISC; Инициализируем PORTC на вывод.

CLRF STATUS; Выбираем банк ‘0’.

CLRF PORTD; Очищаем регистр PORTD.

CLRF PORTC; Очищаем регистр PORTC.

MOVLW B’10000000’

MOVWF PORTD; Записываем 1 в бит RD7, настроенного на вывод,

; т.е. подаем напряжение на кнопку «1».

VKLUCH

BTFSS PORTD, 3; Проверяем появилась ли ‘1’ на клемме RD3,
; настроенной на ввод, то есть нажата ли кнопка «1»,

GOTO VKLUCH; если нет, то повторяем проверку

MOVLW B’01000000’; если кнопка нажата, то зажигаем светодиод,
; подключенный к клемме RC6.

MOVWF PORTC

END

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

Дополните программу 9.1 строками для инвертирования светодиодов при нажатии указанной в задании кнопки. Создайте в программе бесконечный цикл включения и инвертирования светодиодов. Продемонстрируйте работу преподавателю.

Т а б л и ц а 9.1- Варианты заданий

Вариант Кнопка зажигания светодиодов Кнопка инвертирования светодиодов Вариант Кнопка зажигания светодиодов Кнопка инвертирования светодиодов
  «0» «5»   «6» «2»
  «2» «6»   «7» «3»
  «3» «7»   «8» «4»
  «4» «8»   «9» «6»
  «5» «1»   «1» «7»

Контрольные вопросы

1. Расскажите какую реальную задачу решает ваша программа

2. Назначение клавиатуры.

3. Зачем разряды порта D настраивают на ввод и на вывод?

4. Как инициализируется порт D?

5. Как проверяется нажатие кнопки?

6. Почему каждая кнопка не имеет отдельных клемм?

7. Что выполняет инструкция BTFSS?

8. Что выполняет инструкция BTFSC?

9. Как настроить порт D, чтобы подключить кнопки «1» и «5»?

10. Как настроить порт D, чтобы подключить кнопки «4» и «5»?


Date: 2015-05-09; view: 698; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию