Материал: Микропроцессоры и микроконтроллеры в измерительной технике методические указания к лабораторным работам для студентов направления Приборостроение. Кондусов В.А

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Лабораторная работа № 2 Изучение приемов программирования и отладки программ на языке ассемблеРа для восьмиразрядного микропроцессора

Цель работы: изучение приемов программирования.

Рисунок 6. Главное окно программы.

Задание первое. Для микропроцессора К580 составить блок-схему алгоритма нахождения суммы целых положительных чисел в массиве из 10 элементов: 7,8,…16.

Задание второе. Составить и запустить программу, реализующую данный алгоритм.

Задание третье. Записать протокол оттранслированной программы.

Задание четвертое. Посчитать время выполнение программы (для fт=2 МГц) и количество байт, занимаемое программой.

Задание пятое. С рабочего стола загрузить эмулятор восьмиразрядной эвм кр580. На экране монитора появится главное окно программы (рис. 6):

Содержимое главного окна программы:

  1. Главное меню программы;

  2. Структурная схема МП-системы;

  3. Таблица содержимого ОЗУ МП-системы;

  4. Внешние периферийные устройства, подключенные к портам МП-системы;

  5. Панель редактирования значений выбранной (текущей) ячейки ОЗУ МП-системы;

  6. Панель редактирования значений содержимого выбранного регистра общего назначения (РОН) МП-системы;

  7. Группа кнопок «Сброс» для обнуления всех ячеек ОЗУ и регистров общего назначения (РОН) МП-системы;

  8. Панель системы команд МП КР580ВМ80А (скрытый вид);

  9. Группа кнопок «Выполнение» для выполнения программы МП-системой в сквозном, командном и тактовом режимах.

В поле окна 3 разместите программу третьего задания в машинных кодах начиная с адреса 1100Н. Используя группу кнопок поля 9 выполнить программу в сквозном, командном и тактовом режимах.

Лабораторная работа № 3 Использование микроЭвм для управления технологическим процессом

Цель работы: Разработка программы сортировки

Задание. Для выбранного варианта задачи составить структурную схему алгоритма и написать программу, реализующую заданный алгоритм (для микропроцессора К580).

Задача. Микропроцессорное устройство - контроллер –

должно работать в циклическом режиме и предназначено для сортировки изделий по контролируемому параметру.

Критерии для оценки параметра PAR:

- PAR – «Брак»;

- S3 ≤ PAR < S2 - 3-й сорт;

- S2 ≤ PAR < S1 - 2-й сорт;

- S1 ≤ PAR -1-й сорт.

Значение контролируемого параметра считывается из порта ввода номер X . Сортность изделия выдается в порт вывода номер Y в виде кода 01Н, 02Н, 03Н или 00Н для 1-го, 2-го,3-го сортов или "Брака" соответственно. Количество бракованных изделий и изделий 1-го, 2-го и 3-го сортов должно запоминаться в ячейках памяти с номерами 2000 Н, 2001 Н, 2002 Н и 2003 Н соответственно.

Таблица 3

Номер варианта

1

2

3

4

5

6

7

8

9

10

X

160

161

162

163

164

165

166

167

168

169

Y

60

61

62

63

64

65

66

67

68

69

S1

160

161

162

163

164

165

166

167

168

169

S2

100

100

100

100

100

100

100

100

100

100

S3

60

61

62

63

64

65

66

67

68

69

Продолжение табл. 3

Номер варианта

11

12

13

14

15

16

17

18

19

20

X

170

171

172

173

174

175

176

177

178

179

Y

70

71

72

73

74

75

76

77

78

79

S1

170

171

172

173

174

175

176

177

178

179

S2

100

100

100

100

100

100

100

100

100

100

S3

70

71

72

73

74

75

76

77

78

79

ПРИЛОЖЕНИЕ 1

Таблица П.1.1

Система команд микропроцессора кр580ик80а

Мнемокод команды

Описание команды

Длина команды байт

Изменяемые флаги

Число тактов

INR r

Увеличение содержимого регистра r на единицу

1

Z, S, P, AC

5

INR М

Увеличение на единицу содержимого ячейки памяти по адресу, указанному в регистрах Н и L

1

Z, S, P, AC

10

DCR r

Уменьшение содержимого регистра r на единицу

1

Z, S, P, AC2

5

DCR М

Уменьшение на единицу содержимого ячейки памяти по адресу, указанному в регистрах Н и L

1

Z, S, P, AC2

10

МОV r1,r2

Пересылка данных из регистра r2 в регистр r1

1

-

5

МОV

М, r

Пересылка данных из регистра r в ячейку памяти по адресу, указанному в регистрах Н и L

1

-

7

МОV г, М

Пересылка данных в регистр r из ячейки памя­ти по адресу, указанному в регистрах Н и L

1

-

7

АDD r

Суммирование содержимого регистра r и содержимого аккумулятора

1

Z, S, P, C, AC

4

АDD М

Суммирование содержимого ячейки памяти по адресу, указанному в регистрах Н и L, с содержимым аккумулятора

1

Z, S, P, C, AC

7

Продолжение табл. П.1.1

АDС r

Сложение с учетом переноса содержимого регистра r и содержимого аккумулятора

1

Z, S, P, C, AC

4

АDС М

Сложение с учетом переноса содержимого ячейки памяти по адресу, указанному в регистрах Н и L, с содержимым аккумулятора

1

Z, S, P, C, AC

7

SUB r

Вычитание содержимого регистра r из содержимого аккумулятора

1

Z, S, P, C1, AC2

4

SUB M

Вычитание из содержимого аккумулятора содержимого ячейки памяти по адресу, указанному в регистрах Н и L

1

Z, S, P, C1, AC2

7

SВВ r

Вычитание с заемом содержимого регистра r из содержимого аккумулятора

1

Z, S, P, C1, AC2

4

SВВ М

Вычитание с заемом из содержимого аккумулятора содержимого ячейки памяти по адресу, указанному в регистрах Н и L

1

Z, S, P, C1, AC2

7

ANA r

Поразрядное И над содержимым регистра r и аккумулятора

1

Z, S, P, C=0, AC=0

4

АNА М

Поразрядное И над содержимым аккумулятора и ячейки памяти по адресу, указанному в регистрах Н и L

1

Z, S, P, C=0, AC=0

7

Продолжение табл. П.1.1

ХRА r

Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над содержимым регистра r и аккумулятора

1

Z, S, P, C=0, AC=0

4

ХRА М

Поразрядное ИСКЛЮЧАЮЩЕЕ ИЛИ над содержимым аккумулятора и ячейки памяти по адресу, указанному в регистрах Н и L

1

Z, S, P, C=0, AC=0

7

ОRА r

Поразрядное ИЛИ над содержимым регистра r и аккумулятора

1

Z, S, P, C=0, AC=0

4

ORА М

Поразрядное ИЛИ над содержимым аккумулятора и ячейки памяти по адресу, указанному в регистрах Н и L

1

Z, S, P, C=0, AC=0

7

СМР r

Сравнение содержимого регистра r и аккумулятора Уменьшение на единицу содержимого пары

1

(Z, S, P, C, AC)3

4

СМР М

Сравнение содержимого аккумулятора и ячейки памяти по адресу, указанному в регистрах Н и L

1

(Z, S, P, C, AC)3

7

INX rp

Увеличение на единицу содержимого пары регистров rр (В, D, Н, SР)

1

-

5

DCX rp

Уменьшение на единицу содержимого пары регистров rр (В, D, Н, SР)

1

-

5

Продолжение табл. П.1.1

DАD rр

Сложение содержимого пары регистров rр (В, D, Н, SР) с содержимым пары регистров Н и L и хранение результата в Н и L

1

-

10

РОР rр

Выдача данных из стека в пару регистров rр (В, D, Н) или в аккумулятор и регистр признаков PSW

1

(Z, S, P, C, AC)6

10

РUSН rp

3анесение в стек содержимого пары регистров rр (В, D, Н) или содержимого аккумулятора и регистра признаков PSW

1

-

11

SТАХ rр

Запись содержимого аккумулятора в ячейку памяти, косвенно адресуемую парой регистров rр (В, D)

1

-

7

LDАХ rр

Запись в аккумулятор содержимого ячейки памяти, косвенно адресуемой парой регистров rр (В, D)

1

-

7

RNZ

Возврат из подпрограммы при отсутствии нуля (флаг нуля в состоянии 0)

1

-

5/11

RZ

Возврат из подпрограммы при наличии нуля (флаг нуля в состоянии 1)

1

-

5/11

RZС

Возврат из подпрограммы при отсутствии переноса (флаг переноса в состоянии 0)

1

-

5/11

Продолжение табл. П.1.1

RC

Возврат из подпрограммы при наличии переноса (флаг переноса в состоянии 1)

1

-

5/11

RРО

Возврат из подпрограммы при отсутствии четности (флаг четности в состоянии 0)

1

-

5/11

RРЕ

Возврат из подпрограммы при наличии четности (флаг четности в состоянии 1)

1

-

5/11

RР

Возврат из подпрограммы при положительном результате (флаг знака в состоянии 0)

1

-

5/11

RМ

Возврат из подпрограммы при отрицательном результате (флаг знака в состоянии 1)

1

-

5/11

RЕТ

Безусловный возврат из подпрограммы

1

-

5/11

RLС

Циклический сдвиг содержимого аккумулятора влево

1

C4

4

RRС

Циклический сдвиг содержимого аккумулятора вправо

1

C4

4

Продолжение табл. П.1.1

RAL

Циклический сдвиг содержимого аккумулятора влево, включая флаг переноса

1

C4

4

RAR

Циклический сдвиг содержимого аккумулятора вправо, включая флаг переноса

1

C4

4

ХСНG

Обмен данными между парами регистров Н, L и D, Е

1

-

4

ХТНL

Обмен данными между двумя верхними ячейками стека и парой регистров Н, L (сначала самая верхняя обменивается с L, затем следующая с Н)

1

-

18

SРНL

Передача в указатель стека содержимого регистров Н и L

1

-

5

PCHL

Передача в счетчик команд содержимого пары регистров Н и L с последующим выполнением программы с адреса, равного новому содер­жимому счетчика команд (по существу команда перехода)

1

-

5

HLT

Останов программы

1

-

7

NOP

Отсутствие операции

1

-

4

DI

Запрет на прерывание программы

1

-

4

Источник: https://studfile.net/preview/16567589/