- •Лабораторная работа № 1 Исследование измерительных органов микроэлектронных реле тока и напряжения
- •Краткие теоретические сведения
- •Описание лабораторной установки
- •Порядок выполнения работы
- •Содержание отчёта
- •Контрольные вопросы
- •Лабораторная работа № 2 Исследование функциональных элементов микроэлектронных реле
- •Краткие теоретические сведения
- •Порядок выполнения работы
- •Описание лабораторной установки
- •Описание лабораторной установки
- •Порядок выполнения работы
- •Описание лабораторной установки
- •Порядок выполнения работы
- •Содержание отчёта
- •Контрольные вопросы
- •Лабораторная работа № 5 Принципы программирования на языке Ассемблер микропроцессора Intel 8080 (кр580вм80)
- •Краткие теоретические сведения
- •Описание лабораторной установки
- •Порядок выполнения работы
- •Описание лабораторной установки
- •Relay – подпрограмма работы реле
- •Порядок выполнения работы
- •Описание лабораторной установки
- •Порядок выполнения работы
- •Описание лабораторной установки
- •Порядок выполнения работы Занятие 1
- •Занятие 2
- •Содержание отчёта
- •Контрольные вопросы
- •Литература
- •Содержание
Описание лабораторной установки
Лабораторная установка представляет собой учебный микропроцессорный комплект – УМК. Это устройство предназначено для изучения процесса программирования микропроцессора. УМК имеет дисплей, первые четыре индикатора которого отображают адрес в шестнадцатеричном коде, а оставшиеся два индикатора – данные по выбранному адресу также в шестнадцатеричном коде.
Для выполнения лабораторной работы потребуются следующие операции на УМК:
Сброс – нажать «СБ»;
Переход по адресу: нажать «П», ввести нужный адрес, нажать «ВП»;
Переход к следующему адресу: нажать «|_|»;
Запуск программы: нажать «СТ», ввести начальный адрес программы, нажать «ВП».
Порядок выполнения работы
Продумайте, как работает программа №1, приведенная в табл. 5.3.
Продумайте, как протестировать программу №1 с помощью простейших чисел.
Получите у преподавателя число в HEX коде (каждому студенту – свое число) и без использования калькулятора вручную проинвертируйте его, получив результат в HEX коде.
Таблица 5.3
Программа инверсии числа в ОЗУ
Адрес HEX |
Данные HEX |
Команда |
Комментарий |
0800 |
3A 00 09 |
LDA 0900 |
(A)((0900)) Чтение из ОЗУ |
0803 |
2F |
CMA |
(A)( ) Инверсия |
0804 |
32 01 09 |
STA 0901 |
((0901))(A) Запись в ОЗУ |
0807 |
C7 |
RST0 |
Выход |
Запишите программу № 1 в память УМК.
Протестируйте программу №1.
Проверьте правильность расчётов по заданному числу с помощью программы №1.
Таблица 5.4
Программа инверсии числа в ОЗУ с использованием косвенной адресации
Адрес HEX |
Данные HEX |
Команда |
Комментарий |
0800 |
21 00 09 |
LXI H,0900 |
(HL)0900 Запись регистровой пары адресом данных |
0803 |
7E |
MOV A,M |
(A)((HL)) Чтение данных из ОЗУ при косвенной адресации |
0804 |
2F |
CMA |
(A)( ) Инверсия |
0805 |
23 |
INX H |
(HL)(HL)+1 Переход к следующему адресу |
0806 |
77 |
MOV M,A |
((HL))(A) Запись данных в ОЗУ при косвенной адресации |
0807 |
C7 |
RST0 |
Выход |
Повторите те же действия с программой № 2, приведенной в табл. 5.4.
Продумайте, как работает программа № 3, приведенная в табл. 5.5.
Продумайте, как протестировать программу № 3 с помощью простейших чисел.
Получите у преподавателя два числа в HEX коде (каждому студенту – свои числа) и без использования калькулятора вручную сложите их, получив результат в HEX коде.
Таблица 5.5
Программа увеличения числа в ячейке ОЗУ
Адрес HEX |
Данные HEX |
Команда |
Комментарий |
0800 |
3A 00 09 |
LDA 0900 |
(A)((0900)) Чтение из ОЗУ |
0803 |
C6 05 |
ADI 05 |
(A)(A)+05 Суммирование |
0805 |
32 01 09 |
STA 0901 |
((0901))(A) Запись в ОЗУ |
0808 |
C7 |
RST0 |
Выход |
Запишите программу № 3 в память УМК и протестируйте ее.
Проверьте правильность расчётов по заданным числам с помощью программы № 3.
Продумайте, как работает программа № 4, приведенная в табл. 5.6. Зачем нужно поле «метка»?
Продумайте, как протестировать программу № 4.
Запишите программу № 4 в память УМК и протестируйте ее различными вариантами чисел, записывая в черновик результаты тестирования.
Таблица 5.6
COMP – программа сравнения чисел в ячейках ОЗУ
Адрес HEX |
Данные HEX |
Метка |
Команда |
Комментарий |
0800 |
3A 00 09 |
COMP: |
LDA 0900 |
(A)((0900)) Чтение из ОЗУ первого числа |
0803 |
47 |
|
MOV B,A |
(B)(A) Сохранение первого числа в регистре В |
0804 |
3A 01 09 |
|
LDA 0901 |
(A)((0901)) Чтение из ОЗУ второго числа |
0807 |
B8 |
|
CMP B |
(A)>(B)? Сравнение чисел |
0808 |
D2 0C 08 |
|
JNC MET |
Переход на МЕТ, если (A)>(B) |
080B |
78 |
|
MOV A,B |
(A)(B) Сохранение большего числа |
080C |
32 30 09 |
MET: |
STA 0930 |
((0930))(A) Запись в ОЗУ |
080F |
C7 |
|
RST0 |
Выход |
Измените программу № 4 таким образом, чтобы она определяла меньшее из чисел (воспользуйтесь табл. 5.2). Протестируйте полученную программу.
Продумайте, как работает программа № 5, приведенная в табл. 5.7. Составьте блок-схему алгоритма этой программы и покажите ее преподавателю.
Таблица 5.7
SUM – программа сложения массива чисел в ячейках ОЗУ
Адрес HEX |
Данные HEX |
Метка |
Команда |
Комментарий |
0800 |
21 00 09 |
SUM: |
LXI H,0900 |
(HL)0900. В регистровой паре HL – адрес первого слагаемого |
0803 |
06 05 |
|
MVI B,05 |
(B)05. В регистре В - количество слагаемых (количество циклов) |
0805 |
CD 10 08 |
|
CALL ADD8 |
Вызов подпрограммы ADD8 |
0808 |
32 30 09 |
|
STA 0930 |
((0930))(A). Запись в ОЗУ мл. байта результата |
080B |
79 |
|
MOV A,C |
(A)(C) |
080C |
32 31 09 |
|
STA 0931 |
((0931))(A). Запись в ОЗУ ст. байта результата |
080F |
C7 |
|
RST0 |
Выход |
Подпрограмма ADD8: |
||||
0810 |
AF |
ADD8: |
XRA A |
(A)00. В регистре А - мл. байт результата |
0811 |
4F |
|
MOV C,A |
(C)00. В регистре С - ст. байт результата |
0812 |
86 |
CNT: |
ADD M |
(A) (A) +((HL)). Сложение с числом из массива |
0813 |
D2 17 08 |
|
JNC TRM |
Переход на TRM, если не было переноса в 9-й разряд |
0816 |
0C |
|
INR C |
(C) (C)+1. Инкремент старшего байта результата |
0817 |
23 |
TRM: |
INX H |
(HL(HL)+1. Переход с след. адресу массива |
0818 |
05 |
|
DCR B |
(B) (B)-1. Декремент счетчика циклов |
0819 |
С2 12 08 |
|
JNZ CNT |
(B)=0? Цикл |
081C |
C9 |
|
RET |
Возврат из подпрограммы |
Продумайте, как протестировать программу № 5.
Получите у преподавателя пять чисел в HEX коде (каждому студенту – свои числа) и без использования калькулятора вручную сложите их, получив результат в HEX коде.
Запишите программу № 5 в память УМК и протестируйте ее.
Проверьте правильность расчётов по заданным числам с помощью программы № 5.
Получите у преподавателя индивидуальное задание по разработке своей программы.
Содержание отчёта
Все исследуемые программы без столбцов «Адрес» и «Данные»; результаты тестирования программ; подробное описание всех расчётов, результаты проверки расчётов с помощью программ; описание программы, разработанной по заданию преподавателя.
Контрольные вопросы
Что такое микропроцессор?
Что такое микропроцессорная система?
Для чего нужна память в микропроцессорных системах?
Что такое регистры микропроцессора?
Что такое Ассемблер?
Литература [3], [4], [5]
ЛАБОРАТОРНАЯ РАБОТА № 6
Микропроцессорные реле
Цель работы: ознакомиться с основными принципами работы микропроцессорных реле.
Краткие теоретические сведения
Микропроцессорное реле – это функциональный элемент микропроцессорной техники, способный выполнять функции классических реле: измерение требуемой физической величины, сравнение её значения с уставкой и выдача управляющего воздействия.
Микропроцессорное реле сочетает в себе элементы аппаратной и программной части микропроцессорной системы. Функции измерения и выдачи управляющего воздействия реализует аппаратная часть, а функцию сравнения с уставкой – программная часть. Значение уставки задаётся пользователем с внешней клавиатуры, либо дистанционно через интерфейс связи.
Микропроцессорное реле, в отличие от классических (электромеханических и микроэлектронных) реле, является многофункциональным. Так, например, оно способно одновременно выполнять функции реле тока, реле частоты и реле времени.
Структурная схема микропроцессорного реле приведена на рис. 6.1.
Рис. 6.1
Измеряемый параметр электрической сети (напряжение, ток или частота), через соответствующий измерительный трансформатор ИТ подаётся на вход вторичного измерительного преобразователя ИП, который формирует сигнал требуемого уровня. Этот сигнал поступает на аналоговый вход аналого-цифрового преобразователя АЦП, где преобразуется в двоичный код. Полученный двоичный код передаётся в микропроцессорную систему МПС, в памяти которой имеется требуемое программное обеспечение. Цифровой выход МПС воздействует на вход релейного органа РО, имеющего на выходе электромеханический или электронный ключ, соединяемый с оперативными цепями РЗА.
В качестве АЦП, как правило, используют АЦП последовательных приближений, выполненный на основе ЦАП. Его структурная схема приведена на рис. 6.2.
Рис. 6.2
Преобразование
мгновенного значения входного аналогового
напряжения
в пропорциональный двоичный код
осуществляется за
тактов, где
– разрядность АЦП.
Вначале
микропроцессорная система МПС
выдаёт логическую единицу в старший
разряд цифро-аналогового преобразователя
ЦАП,
а в остальные разряды – логические
нули. На выходе ЦАП
формируется
аналоговое напряжение
,
которое сравнивается с входным напряжением
с помощью компаратора К.
Если
,
то на выходе компаратора появляется
логический ноль, который передаётся и
в МПС,
где анализируется. В результате МПС
оставляет в старшем разряде единицу и
выдаёт логическую единицу в следующий
разряд.
Если
,
то на выходе компаратора появляется
логическая единица. В этом случае МПС
меняет в старшем разряде единицу на
логический ноль и выдаёт логическую
единицу в следующий разряд.
Далее
процесс повторяется ещё
раз. В результате на выходе ЦАП
формируется напряжение
,
а полученный на цифровых входах ЦАП
двоичный код
записывается в память МПС.
Этот код в десятичной системе счисления
связан с входным напряжением соотношением:
, (6.1)
где: int – операция извлечения целой части без округления;
– опорное напряжение для ЦАП.
