Главная » Все файлы » Просмотр файлов из архивов » Документы » Б.Б.Михайлов, О.И.Елисеева - Исследование однокристального микропроцессора 1816ВЕ51

Б.Б.Михайлов, О.И.Елисеева - Исследование однокристального микропроцессора 1816ВЕ51, страница 3

2017-12-27СтудИзба

Описание файла

Документ из архива "Б.Б.Михайлов, О.И.Елисеева - Исследование однокристального микропроцессора 1816ВЕ51", который расположен в категории "". Всё это находится в предмете "элементы электронной и микропроцессорной техники" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "элементы электронной и микропроцессорной техники" в общих файлах.

Онлайн просмотр документа "Б.Б.Михайлов, О.И.Елисеева - Исследование однокристального микропроцессора 1816ВЕ51"

Текст 3 страницы из документа "Б.Б.Михайлов, О.И.Елисеева - Исследование однокристального микропроцессора 1816ВЕ51"

Для обращения к внешней памяти команд необходимо нажать кнопку “PM”(Program memory). В результате на 1-м, 2-м, 3-м и 4-м индикаторах дисплея высветятся нижние сегменты, что подтверждает возможность ввода адреса ячейки памяти. Адрес ячейки вводится путем последовательного нажатия 4-х числовых кнопок (от «0» до «F»). Например, если требуется проконтролировать содержимое ячейки памяти по адресу 1123, необходимо нажать кнопку «PM», а затем ввести цифры 1, 1, 2, 3. В результате на правых индикаторах дисплея появится содержимое ячейки памяти по адресу 1123.

Внешняя память данных и программ имеет общее адресное пространство. Для памяти программ отведены адреса с 0000 по 07FF (2К), для памяти данных – адреса с 1000 по 17FF (4К).

Просмотр памяти команд осуществляется с помощью кнопок «+1» и «-1». С помощью кнопки «+1» выполняется просмотр памяти в сторону старших адресов (вперед), с помощью кнопки «-1» - в сторону младших адресов (назад). Одновременно с нажатием кнопки «+1» происходит запись набранной команды в ячейку памяти.

Ввод нового значения ячейки по выбранному адресу (5-ый и 6-ой индикаторы) производится путем нажатия на соответствующие числовые кнопки. При этом на 6-м индикаторе дисплея высвечивается запятая, являющаяся признаком ввода информации. Отсутствие запятой на индикаторе показывает, что данная информация введена в память.

При вводе очередной цифры содержимое дисплея сдвигается на один разряд влево и дополняется вновь введенной цифрой, что позволяет не набирать незначащие старшие нули и корректировать неправильно набранные значения. Введенное значение записывается в память кнопкой «+1», при этом осуществляется автоматический переход к следующей ячейке. Отказ от записи набранного значения производится с помощью кнопки «-1» или вводом новых данных.

Примечание. Поскольку адреса 1750H . . . 17FFH зарезервированы и используются управляющей программой, НЕ РЕКОМЕНДУЕТСЯ использовать эти адреса при выполнении лабораторной работы.

1.3. Вывод на дисплей содержимого программного счетчика.

Эта процедура осуществляется нажатием кнопки «PC» («Program counter»). В результате на дисплей выводится значение программного счетчика на момент последнего выхода из программы пользователя и содержимое памяти команд по этому адресу. При начальной установке значение программного счетчика устанавливается равным 1000H. После вывода на дисплей значения программного счетчика возможен просмотр и изменение содержимого памяти аналогично описанному выше.

1.4. Просмотр и изменение содержимого внутренней памяти данных.

Для ввода адреса внутренней памяти данных нажать кнопку «DM» («Data memory»). На дисплее должно появиться сообщение « А - _ _». После этого ввести две цифры требуемого адреса. При этом на дисплей индицируется адрес и содержимое ячейки внутренней памяти данных. Просмотр и изменение содержимого памяти данных выполняется также как это описано в п. 1.2.

Примечание. 1. При выполнении лабораторной работы используйте ячейки памяти в диапазоне адресов 50Н…7FH !!!!!!

2. При вводе адреса, превышающего 7FH, осуществляется доступ непосредственно к регистрам специальных функций (SFR).

    1. Просмотр и изменение содержимого отдельных разрядов.

Для ввода адреса требуемого разряда необходимо нажать кнопку «BT» («Bit»). В результате на дисплей выводится сообщение «b - _ _». После этого необходимо ввести две цифры требуемого адреса. В результате на дисплее индицируется адрес и содержимое бита (0 или 1). Просмотр и изменение содержимого битов выполняется так же, как описано в п.1.2.

1.6. Просмотр и изменение содержимого внутренних регистров.

Для просмотра и изменения содержимого внутренних регистров контроллера необходимо нажать кнопку «RG» («Registers»). После этого на дисплее будет индицироваться мнемоническое обозначение и содержимое регистров в следующем порядке:

Acc – регистр-аккумулятор;

B – регистр B;

FL – регистр флагов PSW (с указателем номера используемого банка памяти данных);

dPH – старший байт регистра – указателя данных DPTR;

dPL – младший байт регистра – указателя данных DPTR;

SP – регистр – указатель стека;

PCH – старший байт программного счетчика;

PCL – младший байт программного счетчика;

b0r0 – регистр R0 нулевого банка памяти данных;

b0r1 - регистр R1 нулевого банка памяти данных;

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

b3r7 – регистр R7 3-го банка регистров.

Последовательный просмотр содержимого регистров в направлении больших адресов (вперед) осуществляется с помощью кнопки «+1», в направлении меньших адресов (назад) - с помощью кнопки «-1». Для изменения содержимого выбранного регистра используйте числовые кнопки («0»…»F»)..

Регистр слова состояния программы (ССП или PSW) является местом занесения признаков полученного результата хранящегося в аккумуляторе. Другое название этого регистра – регистр флагов (FL).

7p 6 5 4 3 2 1 0p

С

АС

F0

RS1

RS0

OV

X

P

Рис.1

С – флаг переноса. Устанавливается при выполнении арифметических операций.

АСфлаг переноса из третьего бита результата (полуперенос). Используется при выполнении операции десятичной коррекции.

F0флаг пользователя. Может устанавливаться, сбрасываться и проверяться программно.

RS0, RS1 – определяют банк регистров резидентной памяти данных (РПД) следующим образом:

00 – 0 банк адреса 00Н – 07Н

01 – 1 банк адреса 09Н – 0FH

10 – 2 банк адреса 10Н – 17Н

11 - 3 банк адреса 18Н – 1FH

Разряды RS0, RS1 устанавливаются и сбрасываются программно

OV – флаг переполнения. Устанавливается после выполнения арифметических операций.

Р – флаг паритета. Фиксирует четное число бит (единиц) в аккумуляторе (контроль четности).

1.7. Порядок занесения команды (программы).

Коды команд (программа) вводятся в память программ (program memory) следующим образом:

  1. Открыть ячейку памяти, нажав на кнопку PM.

2) Вести 16р адрес памяти (четыре шестнадцатеричных числа), используя числовые кнопки.

3) Вести 8р содержимое данной ячейки (код операции или операнд), используя числовые кнопки.

4) Записать введенное значение в ячейку памяти, нажав на кнопку «+1». При этом значение счетчика команд (PC) увеличивается на 1 - инкрементируется.

Процесс занесения можно продолжить далее: в следующую ячейку ввести новый код и записать его, нажав кнопку «+1».

Примечание. Занесение информации в память данных и регистры микропроцессора выполняется аналогично.

1.8. Запуск выполнения программы.

После ввода программы пользователя , выполните предварительную установку регистров внутренней памяти и отдельных битов , если это необходимо для выполнения программы.

Запуск программы пользователя может быть выполнен в одном из двух режимов: пошаговом и автоматическом. Для запуска программы пользователя необходимо предварительно ввести адрес первой выполняемой команды в программный счетчик с помощью кнопок «PC» или «PM», т.е. после записи программы в память необходимо вернуться в начало программы (набрать адрес ячейки, в которой хранится первая исполняемая команда программы).

Запуск программы пользователя в пошаговом режиме осуществляется нажатием кнопки «ST» («Step»). При этом выполняется одна команда и на дисплей выводится новое значение программного счетчика (адрес следующей команды).

Запуск программы пользователя в автоматическом режиме осуществляется нажатием кнопки «RU» («Run»).

Выход из программы пользователя при работе в автоматическом режиме производится нажатием на любую кнопку. При этом сохраняется содержимое внутренней памяти данных и регистров контроллера и на дисплей выводится адрес останова (адреса ячейки памяти, на которой прервали команду). Это дает возможность просмотра результатов выполнения программы.

Для продолжения выполнения программы нажмите кнопку «RU» или «ST».

Примечание. В данном микропроцессоре отсутствуют команды HALT и STOP. Поэтому выход из-под программы осуществляется по запросу прерывания, который выставляет контроллер клавиатуры после нажатия любой кнопки.

Задание 2. Изучить порядок выполнения команд и программ.

1. Команды обращения к регистрам

1.1 . Запись данных в регистр.

а) Ручная запись:

- нажмите кнопку «Rg»;

  • выберите нужный регистр, нажав кнопку «+1»;

  • используя числовые кнопки «0», «1»,….. «F» занесите двухзначное число в

данный регистр;

- запомните это число, нажав кнопку «+1».

б) Программная запись. Эта операция выполняется, например, с помощью команды передачи данных из аккумулятора в регистр.

Команда

Структура

Код

MOV Rn, A

1111 1rrr

F8…FF

Здесь rrr – номер n-го регистра 0…7, F8 – код команды при обращении к нулевому регистру, FF – код команды при обращении к седьмому регистру, соответственно.

Примечание. Выбор банка регистров осуществляется с помощью разрядов RS0, RS1 слова состояния процессора ССП (PSW). После включения питания по умолчанию устанавливается нулевой банк.

Порядок выполнения:

  1. Занесите в аккумулятор (A) любое двухзначное число.

  2. Нажмите кнопку «PM».

  3. Введите значение 1000. (С этого адреса можно вводить программы пользователя).

  4. Наберите код команды.

  5. Нажмите кнопку «+1» для запоминания команды.

  6. Запустите программу с адреса 1000 в пошаговом режиме, для чего используйте кнопку «ST».

  7. Проверьте содержимое регистра, который использовался в данной команде.

в) Программное занесение константы. В этом случае в выбранный регистр заносится содержимое второго байта команды (ХХ).

.

Команда

Структура

Код

MOV Rn, #d

0111 1rrr

78…7F

#d

ХХ

Порядок выполнения:

  1. Нажмите кнопку «PM».

  2. Введите значение 1000.

  3. Введите код команды.

  4. Нажмите кнопку «+1» для запоминания команды. Адрес памяти изменился и стал 1001.

  5. Занесите значение константы по этому адресу.

  6. Нажмите кнопку «+1» для запоминания константы.

  7. Перейдите в начало программы, то есть в ячейку с адресом 1000.

  8. Нажмите кнопку «ST» для пошагового выполнения программы.

  9. Проверьте содержимое регистра, который используется в данной команде.

г) Программное занесение прямо адресуемого байта памяти (РПД) в регистр.

Команда

Структура

Код

MOV Rn, ad

1010 1rrr

A8…AF

ad

ХХ

Здесь аd - адрес байта РПД.

  1. Откройте ячейку резидентной памяти данных (кнопка «DM») в диапазоне адресов от 40 до 7F.

  2. Занесите в ячейку любое число.

  3. Запустите исполнение команды с 1000 адреса.

  4. Проверьте содержимое соответствующего регистра, номер которого используется в коде команды.

1.2. Чтение регистра

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

Команда

Структура

Код

MOV A, Rn

1110 1rrr

E8…EF

Занесите код команды в память программ по адресу 1000. Выполните команду в пошаговом режиме для третьего регистра второго банка. Просмотрите содержимое регистра. Значение, лежащее в регистре «Rn», будет занесено в «А».

Примечание. Банк регистра определяется разрядами RS0, RS1 регистра флагов (FL). По умолчанию установлен нулевой банк.

б) Пересылка значения регистра по прямому адресу в РПД.

Команда

Структура

Код

MOV ad, Rn

1000 1rrr

88…8F

ad

XX

Примечание. Используйте ячейки памяти в диапазоне адресов 40Н…7FH

2.Команды обращения к памяти.

В этих командах используется косвенная адресация с помощью регистров r0 или r1.

    1. Занесение информации в резидентную память данных (РПД)

Команда

Структура

Код

MOV @Ri,A

1111 011i

F6/F7

  1. Введите в память программ код команды по 1000 адресу.

  2. Занесите в аккумулятор произвольное значение.

  3. Запишите в регистр банка памяти данных, номер которого указан в команде (b0r0 или b0r1), значение адреса РПД. Выполните команду в пошаговом режиме.

  4. Проверьте правильность выполнения команды. Результат занесите в отчет.

    1. Занесение константы.

Команда

Структура

Код

MOV @Ri,#d

0111 011i

76/77

#d

XX

  1. Введите команду в память программ, начиная с 1000 адреса.

  2. Во второй байт команды (адрес 1001) занесите значение константы.

  3. Запишите в регистр, номер которого указан в команде, значение адреса РПД .

  4. Выполните команду в пошаговом режиме.

  5. Проверить правильность выполнения команды. Результат занесите в отчет.

    1. Чтение памяти

Команда выполняет пересылку данных из РПД в аккумулятор. Предварительно следует занести в ячейку памяти пересылаемое значение, и в соответствующий регистр - адрес ячейки

Команда

Структура

Код

MOV A,@Ri

1110 011i

E6/E7

(Ri)

XX

По команде пересылается значение ячейки РПД, адрес которой указан в регистре b0r0 или b0r1.

  1. Однооперандные команды.

Выполните приведенные команды, предварительно занеся в аккумулятор (А) и соответствующий регистр (Rn) конкретные значения. Результаты выполнения команд занесите в отчет.

Команда

Структура

Код

Содержание команды

INC А

0000 0100

04

Инкремент аккумулятора

INC Rn

0000 1rrr

08…0F

Инкремент регистра

CLR A

1110 0100

E4

Сброс аккумулятора

SWAP A

1100 0100

C4

Обмен местами тетрад в аккумуляторе

4. Двухоперандные команды

Команда

Структура

Код

Содержание команды

ADD A,Rn

0010 1rrr

28…2F

Сложение акк. и рег.(результат в А)

MUL A,B

1010 0100

A4

Умножение акк. на рег.В (результат в B,А)

XCH A,Rn

1100 1rrr

C8…CF

Обмен акк. с регистром

ANL A,Rn

0101 1rrr

58…5F

Лог. умножение акк. и рег.(результат в А)

ORL A,Rn

0100 1rrr

48…4F

Лог. сложение акк. и рег.(результат в А)

Выполните приведенные команды, предварительно занеся в аккумулятор (А) и соответствующий регистр (Rn) конкретные значения. Результаты выполнения команд занесите в отчет.

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее