![](/user_photo/2706_HbeT2.jpg)
- •Микропроцессорные системы в электроэнергетике
- •Алматы 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
3.4 Контрольные вопросы
Как определить с регистрами какого банка работает программа?
Что выполняет инструкция ADDWFR1,F?
Что выполнят инструкция SUBWFR2,F?
Что выполняет инструкция ANDWFR1,F?
Что выполняет инструкция IORWFR1,W?
Что выполняет инструкция XORWFR2,W?
Приведите инструкции установки и сброса бита.
Назначение директивы ORG h’05’.
Приведите таблицы истинности логических операций.
Преимущества МК по сравнению с релейной аппаратурой.
Назовите знакомые вам устройства, в которых применяются МК.
Нарисуйте локальную схему управления с МК.
На какие части делится программа?
В каком банке находятся регистры R1,R2 иREZ.
Какой результат мы увидим при сложении 230+60 в МК?
Какой результат мы увидим при вычитании 130-135 в МК?
4 Операции преобразования информации
Цель работы: изучение операций преобразования информации с помощью инструкций COMF, SWAPF, RRF, RLF.
4.1 Теоретические сведения
Побитная операция инверсии COMFможет применяться для одновременного изменения управляющих сигналов всего подключённого оборудования через определенные промежутки времени.
Операция обмена полубайтами SWAPможет применяться для изменения параметров пары однотипного оборудования по очереди.
При сдвиге по инструкциям RRFиRLFво всех случаях бит, сдвигаемый из регистра, записывается в битCARRYрегистраSTATUS, а бит, который был вCARRY, записывается в другой конец регистра.
Инструкции сдвига (RRF, RLF)используются при выполнении операций умножения и целочисленного деления на два, при условии, что в битеCarryзаписан ноль. Они могут также применяться при управлении протяженным оборудованием. Например, при окрашивании, охлаждении или нагреве деталей во время их движения на конвейере[4].
4.2 Исходные данные и задание
Во фрагменте программы 4.1 показано применение операций инверсии, очистки бита, обмена полубайтами и сдвига вправо. Предполагается, что регистр PORTC настроен на вывод. Начало программы напишите самостоятельно по аналогии с программой 3.1.
Фрагмент программы 4.1.
NACH; метка повтора цикла программы.
MOVLW B'11110011' ; это число D’243’.
MOVWF PORTC; записываем W в PORTC.
COMF PORTC, F; инвертируем PORTC.
MOVWF PORTC; восстанавливаем PORTC из W.
BCF PORTC, 7; очищаем седьмой бит.
MOVWF PORTC; восстанавливаем PORTC из W.
SWAPF PORTC, F; обмен полубайтами регистра PORTC.
MOVWF PORTC; восстанавливаем PORTC из W.
BCF STATUS, 0; запись нуля в бит С регистра status.
RRF PORTC, F; делим на 2. Результат записываем в PORTC.
BCF STATUS, 0
RRF PORTC, F; делим на 2 содержимое PORTC.
BCF STATUS, 0
RLF PORTC, F; умножаем на 2 содержимое PORTC.
BCF STATUS, 0
RLF PORTC, F; умножаем на 2 содержимое PORTC.
GOTO NACH
END
Оформите фрагмент 4.1 как программу и введите программу в микроконтроллер. Сравните полученные результаты с данными в таблице 4.1.
Создайте окно наблюдения для всех регистров программы в необходимом формате чисел.
Таблица 4.1- Результаты работы инструкций
Числа на входе |
Инструкция |
Числа на выходе PORTC | ||
Форма b |
Форма h или D |
Форма b |
Форма h или D | |
11110011 |
- |
COMF |
00001100 |
- |
11110011 |
- |
BCF (7-й бит) |
01110011 |
- |
11110011 |
- |
BSF (3-й бит) |
11111011 |
- |
11110011 |
H’F3’ |
SWAPF |
00111111 |
H’3F’ |
11110011 01111001 00111100 01111000 |
D’243’ D’121’ D’60’ D’120’ |
RRF RRF RLF RLF |
01111001 00111100 01111000 11110000 |
D’121’ D’60’ D’120’ D’240’ |
Запустите подготовленную по заданию таблицы 4.2 программу. Результаты работы всех операций с числами запишите в таблицу 4.1.
Т а б л и ц а 4.2 – Варианты заданий
Вариант |
Заданное входное число |
Номер очищаемого бита |
Номер устанавливаемого бита |
Вариант |
Заданное входное число |
Номер очищаемого бита |
Номер устанавливаемого бита |
1 |
h ‘D1’ |
1 |
0 |
6 |
h ‘B6’ |
6 |
5 |
2 |
h ‘E2’ |
2 |
1 |
7 |
h ‘F7’ |
7 |
6 |
3 |
h ‘B3’ |
3 |
2 |
8 |
h ‘C8’ |
0 |
7 |
4 |
h ‘C4’ |
4 |
3 |
9 |
h ‘99’ |
1 |
0 |
5 |
h ‘D5’ |
5 |
4 |
10 |
h ‘АA’ |
2 |
1 |