- •Микропроцессорные системы в электроэнергетике
- •Алматы 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
11.3 Контрольные вопросы
Назначение РСН INTCON?
Что такое прерывания?
Как в программе используется флаг прерывания?
Какие задачи решает обработчик прерывания?
Когда срабатывает обработчик прерываний?
Что такое вектор сброса и вектор прерывания?
Что является аргументом при вызове подпрограммы Timer.
Как при наладке программы выполняется переход к обработчику?
Назначение символа «;» в тексте программы?
Порядок отладки программы.
Что имитируют кнопки клавиатуры?
Назначение адресов h’00’ иh’04’ оперативной памяти.
Как устраняется дребезг контактов?
Что такое паразитные наводки?
В любой ли ситуации срабатывает прерывание?
12 Программирование таймерных функций
Цель работы: научиться применять встроенный таймер микроконтроллера и регистры специального назначения, связанные с его настройкой.
Ознакомьтесь с регистрами специального назначения PIR1, TICON, INTCON, TMR1, TMR1H, TMR1L по приложению Е /4/.
12.1 Задание на проектирование
Создать программу для автоматической окрасочной камеры, описанной в лабораторной работе №8, выполняющую следующую работу:
- при подаче питания включить световую сигнализацию на пульт оператора L2. Кроме того, включить звуковую предупреждающую сигнализациюS1 на 2 секунды;
- включить двигатель краскораспылителя D1, вентилятораD2 и лампочкуL1 на 3 секунды;
- выключить краскораспылитель D1. ВентиляторD2 и лампочкаL1 продолжают работать еще 2 секунды;
- выключить D2 иL1 на 1 секунду для замены заготовки в камере;
- выполнить подсчет окрашенных заготовок;
- повторить процесс окрашивания новой заготовки, начиная с включения предупреждающей звуковой сигнализации S1.
Временная диаграмма работы камеры показана на рисунке 8.2.
Изучите блок-схему алгоритма автоматизации работы окрасочной камеры по рисункам 12.2 и 12.3.
Рисунок 12.2 - Блок-схема программы Рисунок 12.3 - Блок-схема п/п Timer2
Ознакомьтесь с фрагментами программы. Они демонстрируют использование таймераTRM1 для организации временных задержек. На основе фрагментов создайте программу для заданного варианта.
Фрагменты программы. Курсивом отмечены дополнительные команды по сравнению с лабораторной работой №8.
Include <p16F877.inc>; подключаем библиотеку символов.
T_reg EQU h'20'; регистр, определяющий время задержки.
Kol_det EQU h'21'; регистр, хранящий количество окрашенных деталей.
; Команды стандартной настройки МК опущены.
BSF STATUS, 5
CLRF TRISC
CLRF PIE1; запрещаем периферийные прерывания.
BCF STATUS, 5
CLRF T1CON; установка TMR1 в режим ожидания, тактирование ;TMR1 от внутреннего генератора, значение предделителя частоты 1:1.
CLRF TMR1H; очищаем старший регистр-счетчик TMR1.
CLRF TMR1L; очищаем младший регистр-счетчик TMR1.
CLRF INTCON; запрещаем прерывания от TMR1.
MOVLW b'00110000'; тактирование от внутреннего генератора.
MOVWF T1CON; устанавливаем предделитель частоты 1:8.
; Рабочая часть совпадает с программой лабораторной работы 8.
GOTO$
; Подпрограмма Timerзаменяется на подпрограммуTimer2.
Timer2; Подпрограмма задержки времени с встроенным таймером TMR1.
MOVWF T_reg
; Return; для выключения Timer2 при отладке главной программы.
M_T_reg; следующие 4 команды только для отладки в режиме F7.
; MOVLW D'255'; для отладки Timer2.
; MOVWF TMR1H; для отладки Timer2.
; MOVLW D'254'; для отладки Timer2.
; MOVWF TMR1L; для отладки Timer2.
BCF PIR1, TMR1IF; сброс флага переполнения таймера в каждом цикле.
BSF T1CON, TMR1ON; пуск таймера TMR1.
; Следующие три строки это циклы работы таймера TRM1.
M_ TRM1; метка
BTFSS PIR1, TMR1IF; проверка флага переполнения таймера
GOTO M_ TRM1; если флага нет, то цикл TRM1 продолжается.
DECFSZ T_reg, F; уменьшаем число в регистре и проверяем на ноль.
GOTO M_T_reg; (только при Z=0) время не кончилось, повторяем цикл.
RETURN
END