- •Основы микропроцессорной техники
- •Алматы 2014
- •Введение
- •1 Лабораторная работа № 1. Системы счислений. Карта памяти данных pic16f87x
- •1.1 Системы счисления
- •1.2 Карта памяти данных pic16f87x
- •1.4 Контрольные вопросы
- •2.1 Краткие теоретические сведения и задания для внеаудиторной подготовки
- •2.2 Исходные данные и выполнение программы
- •2.3 Выполнение проекта на умк-7
- •2.4 Выполним соответствующие настройки для запуска Вашего проекта:
- •2.5 Оформление отчета по лабораторной работе
- •2.6 Выводы.
- •2.7 Контрольные вопросы
- •3.1 Краткие теоретические сведения и задания для внеаудиторной подготовки
- •3.2 Исходные данные и выполнение программы
- •3.3 Оформление отчета по лабораторной работе
- •3.4 Выводы
- •3.5 Контрольные вопросы
- •4 Таймеры
- •4.1 Краткие теоретические сведения и задания для внеаудиторной подготовки
- •4.2 Лабораторная работа № 4 Вложенные таймеры
- •4.2.1 Исходные данные и выполнение программы
- •4.3 Оформление отчета по лабораторной работе
- •4.4 Выводы
- •4.7 Исходные данные и выполнение программы
- •4.8 Оформление отчета по лабораторной работе
- •4.11 Исходные данные и выполнение программы
- •4.12 Оформление отчета по лабораторной работе
- •5.1 Теоретические сведения
- •5.2 Исходные данные и задание
- •5.3 Оформление отчета по лабораторной работе
- •5.4 Контрольные вопросы
- •Приложение а Системы счислений
- •Приложение б Карта памяти мк pic16877
- •Приложение в
- •"Умк-7"
- •Приложение г Регистр Status
- •Приложение д Описание инструкций мк pic
- •Приложение е Модуль таймера tmr1
- •Приложение ж
- •Приложение з Модуль ацп
- •Список литературы
- •Содержание
- •0 50013, Алматы, Байтурсынова, 126
2.2 Исходные данные и выполнение программы
Задача. Создать программу, поясняющую функции регистровTRISпо настройке разрядов соответствующих портов на ввод или вывод. Программа должна содержать разделы, присущие полноценной программе:
- присвоение имен определенным РОН;
- указания по записи программы в память программ;
- настройка необходимых регистров;
- рабочая часть программы.
Cоединить проводами выводыPORTCс гнездами сигнальных ламп как показано на рисунке 2.2.
Рисунок 2.2 – Схема подключения сигнальных ламп на пульте
Управление технологическим оборудованием выполняется программой 2.1. Заголовок программы записывается через 5 отступов (одно нажатие Tab). После точки с запятой в программе печатаются комментарии, которые пропускаются компилятором.
Программа 2.1:
Include<p16F877А.inc>; подключение библиотеки символьных имен РСН.
;В этой части программы отдельным РОН присваиваются имена, имена ;пишут без отступа, далее пробел Tab, пишем EQU(указатель EQU от equal ;(англ.) – одинаковый, равносильный), один пробел и адрес РОН
;если нет необходимости в создании именованных РОН,то этой части ;нет
Con EQU h'25'
Con1 EQU h'26'
;В этой части пишутся указания по записи созданной программы в память ;программ
org h’00’; следующая инструкция (NOP) будет записана в память программ по адресу ;h’00’.
nop; инструкция, для работы отладчика будет записана по адресу h’00’.
nop; инструкция будет записана по адресу h’01’ памяти МК.
nop; инструкция будет записана по адресу h’02’ памяти МК.
;Регистр памяти с адресом h'04' зарезервирован для записи имени ;программы, которая запускается для обработки появившегося прерывания
org h’05’; дальнейший код будет записан начиная с адреса h’05’
;Инструкции для настройки МК.
CLRF STATUS; очищаем 5,6,7 бит регистраStatus и выбираем нулевой ;банк.Биты 0-4 после выполнения данной инструкции равны 1. Между ;инструкциейCLRFи именем регистра один пробел. Сохранить окноWatch
BSF STATUS,5; записав в 5-й разряд ‘1’ (без пробела после инструкции), выбираем ;первый банк.
MOVLW B'11110000'; пересылаем в аккумулятор W число В’11110000’, ;соответствующее заданию по настройке выходов порта PORTC
;Настраиваем регистр TRISC в режим, разрешающий вывод энергии из ;защелок PORTC на выход в тех разрядах, которые соответствуют заданию
MOVWF TRISC; настраиваем биты 0-3 PORTC на вывод, а биты 4-7 на ввод
BCF STATUS,5; возвращаемся в нулевой банк, в нем будет работать рабочая часть
; Рабочая часть программы
NACH; метка, на которую возвращаемся после выполнения инструкции ;GOTO
MOVLW B'11111111'; пересылаем в аккумулятор W число В’11111111’.
MOVWF PORTC; убеждаемся по сигнализации, что зажигаются только ;лампочки в 0-4 разрядах в соответствии с настройкой регистра TRISC по ;заданию
; сохранить окно
BCF PORTC,0; отключаем лампу по заданию.
; сохранить окно
BSF PORTC,0; включаем лампу по заданию.
MOVLW B'10000001';засылаем второе число по заданию в аккумулятор
MOVWF Con; засылаем эту константу в регистрCon
CLRW ;очистка аккумулятора, проверьте в окнеWatch
MOVF Con,w; засылаем константу из регистраConв аккумулятор
; сохранить окно
MOVWF PORTC;остаются гореть только лампы по заданию
; сохранить окно
GOTO NACH; переход на меткуNACHдля повторения.
END; конец программы.
На основе образца подготовьте программу для своего варианта.
Т а б л и ц а 2.1 – Варианты заданий
|
1 |
2 |
3 |
4 |
5 |
6 |
TRISC |
11111000 |
11110000 |
11100000 |
11000000 |
10000000 |
00000000 |
Бит измен-й |
1 |
2 |
3 |
4 |
5 |
6 |
2-е число |
10000001 |
10000010 |
10000011 |
10000100 |
10000101 |
00000110 |
Таблица 2.2 – Варианты заданий
|
7 |
8 |
9 |
10 |
11 |
12 |
TRISC |
00111111 |
00011111 |
00001111 |
00000111 |
00000011 |
00000001 |
Бит измен-й |
7 |
6 |
5 |
4 |
5 |
6 |
2-е число |
10000001 |
11000010 |
11100011 |
11110100 |
11111001 |
11111100 |