Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КРУТО НАВЕРНОЕ.doc
Скачиваний:
8
Добавлен:
09.02.2015
Размер:
89.6 Кб
Скачать

Министерство образования РФ

––––––––––––––

Санкт-Петербургский государственный

электротехнический университет «ЛЭТИ»

ОДНОКРИСТАЛЬНАЯ МИКРОЭВМ СЕМЕЙСТВА MCS51

Методические указания

к лабораторным работам по дисциплине

«ЦИФРОВЫЕ И МИКРОПРОЦЕССОРНЫЕ УСТРОЙСТВА»

Санкт-Петербург

2000 Г удк 621.391.23

Однокристальная микроЭВМ семейства MCS51: Методические указания к лабораторным работам по дисциплине «Цифровые и микропроцессорные устройства» / Сост.: А.К.Артемьев, А.В.Матвеев, И.С. Минченко, Ю.В. Сентябрев. СПб.:Изд-во СПбГЭТУ «ЛЭТИ», 2000. 32 с.

Содержат описание лабораторных работ, посвященных изучению программно-аппаратных средств однокристальной микроЭВМ 87С51FA, могут использоваться при курсовом и дипломном проектировании.

Предназначены для студентов специальностей 200000 «Электронная техника, радиотехника и связь», 210000 «Автоматика и управление», 220000 «Информатика и вычислительная техника» и бакалавров по направлениям 550400 «Телекоммуникации», 552500 «Радиотехника» для вузов с объемом лабораторного практикума по курсу 16 – 18 ч.

Утверждено

редакционно-издательским советом университета

в качестве методических указаний

 СПбГЭТУ «ЛЭТИ», 2000

Лабораторная работа 1

ИЗУЧЕНИЕ ПРИНЦИПОВ ОТЛАДКИ ПРОГРАММ С ИСПОЛЬЗОВАНИЕМ РЕЗИДЕНТНЫХ СРЕДСТВ МИКРОКОНТРОЛЛЕРА

1. 1. Краткое описание лабораторного макета

Лабораторный макет выполнен на базе однокристальной микроЭВМ семейства MCS51. Память программ содержит ПЗУ объемом 16K (адреса 0H … 3FFFH) с резидентными программами «монитор», «редактор», «ассемблер» и сервисными подпрограммами.

Память данных объемом 32К (0H ... 7FFFH) разделена на две части: первая (0H ... 3FFFH) предназначена для редактора и ассемблера, вторая совмещена с памятью программ (4000H ... 7FFFH) и в нее можно помещать как данные, так и исполняемый программный код.

Макет содержит два цифроаналоговых преобразователя (ЦАП). Первый подключен к порту P1 микроЭВМ, второй – к шине данных, запись в него осуществляется аналогично обращению к ячейке ОЗУ с адресом 8000Н.

Макет содержит перестраиваемый генератор частоты, управляемый формирователь постоянного напряжения ЕВХ, аналоговый компаратор, выход которого подключен к входу порта Р3.3 (INT1), и фильтр нижних частот (ФНЧ),подключенный к выводу Р1.5.

1. 2. Функции и директивы программы «монитор»

Программа «монитор» предназначена для организации интерфейса пользователь – микроЭВМ. При включении питания или нажатии кнопки «сброс» программируется последовательный порт микроЭВМ и выводится сообщение 'MCS-87C51FA SCS-MONITOR'.

Монитор выполняет одну из директив: D (просмотр), M (редактирование), T (копирование), C (сравнение), J (запуск программы), E (вход в программу редактора и транслятора ассемблера MCS51), F (заполнение), S (определение кодов символов) в следующих областях памяти: внутреннем ОЗУ (M), внешнем ОЗУ (R) и ПЗУ (P). Символы-указатели области памяти (M, R, Р) вводятся вслед за символом директивы без пробела. Директивы могут содержать до трех параметров, представляющих собой числа в шестнадцатеричной системе счисления, разделенные между собой символами <,> или <пробел>. Незначащие нули и символ «H» вводить не нужно. Ввод директивы заканчивается нажатием клавиши <CR> или <ВК>. В случае ошибки при вводе директива не выполняется, выводится символ <#> и директиву необходимо ввести заново.

Работа с директивами на примерах:

  1. Директива D (просмотр)

DR00_FF

D - директива просмотра

R – область памяти (М,Р)

00 – номер ячейки, с которой начинается просмотр(обратите внимание: выводится вся строка с данным элементом).

_ - пробел

FF - номер ячейки, на котором заканчивается просмотр(обратите внимание: выводится вся строка с данным элементом).

(При просмотре области памяти М, просто DM)

После ввода команды нажимаем Enter. Мы видим таблицу, в ячейках которой находится содержимое выбранной области памяти.

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

0000

00

01

02

03

04

05

06

07

08

09

0A

0B

0C

0D

0E

0F

0010

10

11

1E

1F

0020

20

22

2D

2F

0030

30

33

3C

3F

0040

40

44

4B

4F

0050

50

55

5A

5F

0060

60

66

69

6F

0070

70

77

78

7F

0080

80

87

88

8F

0090

90

96

99

9F

00A0

A0

A5

AA

AF

00B0

B0

B4

BB

BF

00C0

C0

C3

CC

CF

00D0

D0

D2

DD

DF

00E0

E0

E1

EE

EF

00F0

F0

F1

F2

F3

F4

F5

F6

F7

F8

F9

FA

FB

FC

FD

FE

FF

  1. Директива F (заполнение)

FM5A_A5_77

Enter

F - директива заполнения

M– область памяти(R,Р)

5А - номер ячейки, с которой начинается заполнение

А5 – номер ячейки, на которой заканчивается заполнение

77 – то число, которым заполняются ячейки

_ - пробел.

  1. Директива Т (копирование)

TPM55_DD_79

Enter

T - директива копирования

Р - область памяти, с которой производят копирование(R,М,Р)

M– область памяти, в которую производят копирование (R,Р,М)

55 - номер ячейки, с которой начинается копирование в Р

DD - номер ячейки, на которой заканчивается копирование в Р

79 - номер ячейки, с которой начинается вставка в М.

  1. Директива М (редактирование)

MR00

Enter

М – директива редактирования

R – область памяти (М,Р)

00 – элемент, с которого начинается последовательное редактирование ячеек.

После нажатия Enter появляется номер ячейки; через « : » записано число, которым заполнена данная ячейка; через « - » мы записываем то число, которым хотим заполнить данную ячейку. Нажимая после этого «пробел» мы будем редактировать следующую ячейку. Закончив редактирование нужных ячеек, жмем Enter.

  1. Директива С (сравнение)

СМР00_0А_11

Enter.

С – директива сравнения

М – первая сравниваемая область памяти (М,Р,R)

Р – вторая сравниваемая область памяти (М,Р,R)

00 – номер элемента в первой области, с которого начнется сравнение

0А – номер элемента в первой области, на котором сравнение закончится

11 - номер элемента во второй области, с которого начнется сравнение

_ - пробел

  1. Директива S (определение кодов символов)

S5

Enter.

S – директива

5 – здесь может быть любой символ, код которого нас интересует

  1. Директива J (запуск программы)

J4000

Enter.

запуск программы с адреса 4000H

При выводе информации, не помещающейся на один экран, остановка/возобновление вывода осуществляется нажатием клавиш <Ctrl>+<S>. Прекращение вывода с выходом в монитор – <Ctrl>+<A>.

1. 3. Полноэкранный редактор

Переход из монитора в режим ввода текста программы осуществляется по директиве <E>. Функции клавиш аналогичны редактору Volkov Commander.

Клавиши <Home> и <End> объединены в одну <Home>.

<BS> или <Ctrl>+<H> – удаление символа слева от курсора.

<Ctrl>+<G> – удаление символа над курсором.

<Ctrl>+<Y> – удаление строки, отмеченной курсором.

<Ctrl>+<K> – очистка с позиции курсора до конца строки.

<ESC> – выход из редактора.

Введенный с клавиатуры текст располагается во внешнем ОЗУ с адреса 0B01H по 3FFFH. Максимальное число строк – 1024. Во избежание потери текста отлаживаемой программы не рекомендуется использовать данный диапазон адресов при трансляции.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]