Фрагмент 9.1. Программирование клавиатуры.
Добавленные команды по сравнению с лабораторной работой №8, выделены курсивом.
; Инструкции для настройки МК опущены.
CLRF TRISC
MOVLW b'00001111'
MOVWF TRISD; настраиваем PORTD: биты 0-3 на ввод, 4-7 на ввод.
BCF STATUS, 5
CLRF PORTC
; Рабочая часть программы
MOVLW B'11110000'
MOVWF PORTD; подаем питание на выводы К7-К4 клавиатуры.
MOVLW B'10000000'
MOVWF PORTC; включаем сигнализацию наличия питания на пульт.
Sled_det BTFSS PORTD, 2; проверяем нажатие кнопки Pusk.
GOTO Sled_det; если кнопка Pusk не нажата повторяем проверку.
BSF PORTC, 0; если нажата, включаем звуковую сигнализацию S1.
MOVLW d'40'; задаем время работы сигнализации S1.
CALL Timer
MOVLW B'10001110'
MOVWF PORTC; включаем двигатели D1 и D2, сигнализацию L1.
MOVLW d'60'; задаем время работы D1.
CALL Timer
BCF PORTC, 2; выключаем D1, продолжают работать D2, L1 и L2.
MOVLW d'20'; задаем время работы вентилятора D2 и лампочки L1.
CALL Timer
MOVLW B'10000000'
MOVWF PORTC; выключаем вентилятор D2 и сигнализацию L1.
MOVLW d’20’; задаем время для замены заготовки.
CALL Timer
GOTO Sled_det; на метку Sled_det для нового запуска установки.
GOTO $; разделитель основной программы и подпрограмм.
Timer; в подпрограмме показан только внутренний цикл с кнопками Stop.
M_in; метка внутреннего счетчика.
BTFSC PORTD, 1; проверяем нажатие кнопки Stop1 или Stop2.
GOTO Stop; если кнопка Stop нажата, останавливаем камеру.
DECF Sch_in, F; уменьшаем значение счетчика Sch_in на 1.
BTFSS STATUS, Z; если счетчик обнулился (Z=1), пропускаем GOTO.
GOTO M_in; срабатывает только при Z=0.
DECF Sch_out, F; уменьшаем значение счетчика Sch_out на 1.
. . . .
RETURN
Stop CLRF PORTC; окончание работы окрасочной камеры.
END; конец текста всей программы.
- Микропроцессорные системы в электроэнергетике
- Алматы 2013
- Введение
- 1 Системы счислений. Карта памяти микроконтроллера
- 1.1 Краткие теоретические сведения
- 1.2 Задания
- 1.3 Контрольные вопросы
- 2 Изучение среды mplab. Управление оборудованием
- 2.1 Краткие теоретические сведения и задания для внеаудиторной подготовки
- "Умк-mini"
- 2.2 Исходные данные
- 2.3 Выполнение проекта на умк-7
- 4.Выполним соответствующие настройки для запуска Вашего проекта:
- 6.Запуск проекта
- 2.4 Контрольные вопросы
- 3 Сложение, вычитание. Логика
- 3.1 Теоретические сведения
- 3.2 Исходные данные и выполнение программы
- 3.4 Контрольные вопросы
- 4 Операции преобразования информации
- 4.1 Теоретические сведения
- 4.2 Исходные данные и задание
- 4.3 Контрольные вопросы
- 5 Анализ информации посредством регистра состояния
- 5.1 Теоретические сведения
- 5.2 Исходные данные
- 5.3 Порядок выполнения работы
- 5.4 Контрольные вопросы
- 6 Маскирование
- 6.1 Краткие теоретические сведения
- 6.2 Исходные данные и задание
- 6.3 Контрольные вопросы
- 7 Суммирование массива информации
- 7.1 Теоретические сведения
- 7.2 Исходные данные
- 7.3 Выполнение задания
- 7.4 Контрольные вопросы
- 8 Автоматизация окрасочной камеры. Организация подпрограмм
- 8.1 Теоретические сведения
- 8.2 Задание на проектирование.
- 8.3 Выполнение задания
- 8.4 Контрольные вопросы
- 9 Программированиеклавиатуры
- 9.1 Теоретические сведения
- 9.2 Задание на проектирование
- Фрагмент 9.1. Программирование клавиатуры.
- 9.3 Задание на выполнение
- 9.4 Контрольные вопросы
- 10 Автоматизация упаковки
- 10.1 Задание на автоматизацию упаковочной машины
- 10.2 Исходные данные
- 10.3 Выполнение задания
- 10.4 Контрольные вопросы
- 11 Программирование обработки аварийной ситуации
- 11.1 Теоретические сведения
- 11.2 Задание на проектирование и выполнение программы
- 11.3 Контрольные вопросы
- 12 Программирование таймерных функций
- 12.1 Задание на проектирование
- 12.2 Выполнение работы
- 12.3 Контрольные вопросы
- Приложение а Системы счислений
- Приложение б Карта памяти мк pic16877
- Приложение в
- Регистр Status
- Приложение д Описание инструкций мк pic
- Приложение е Модуль таймера tmr1
- Список литературы
- Содержание
- 0 50013, Алматы, Байтурсынова, 126