- •Методические указания и задания по лабораторному практикуму по курсу «Микропроцессоры» Учебное пособие Москва 2013
 - •Лабораторная работа №1. "Исследование возможностей интегрированной среды для создания программ для микроконтроллеров"
 - •1. Краткое описание интегрированной среды
 - •1.1. Окно интегрированной среды
 - •1.2. Использование отладчика (симулятора) для ассемблерных модулей
 - •1.3. Порядок создания программ на Ассемблере с помощью интегрированной среды
 - •1.4. Порядок отладки программ на Ассемблере с помощью интегрированной среды
 - •1.5. Дополнительные операторы языка Ассемблера для использования интегрированной среды
 - •1.6. Задание для домашней подготовки
 - •1.7. Лабораторное занятие
 - •1.8. Отчет по работе
 - •Лабораторная работа №2. "Исследование арифметических и логических операций над двоичными и шестнадцатеричными числами применительно к реализации в микроконтроллерах"
 - •1. Логические и арифметические операции
 - •2.6. Задание для домашней подготовки
 - •1.7. Лабораторное занятие
 - •Лабораторная работа №3. "Исследование возможностей интегрированной среды для создания программ для оэвм семейства mcs51"
 - •1.6. Задание для домашней подготовки
 - •1.7. Лабораторное занятие
 - •1.8. Содержание отчета
 - •1.9. Задания для самопроверки
 - •Лабораторная работа №4 Исследование программно-аппаратного комплекса для отладки программ для оэвм семейства mcs-51
 - •4.1. Макетно-отладочная плата ев-552
 - •2.3. Порядок создания и проверки программ в интегрированной системе uVision2 - eb552
 - •2.3.1. Использование программы ев552.Exe для загрузки нех файлов в плату
 - •8. Передача отлаживаемого файла в плату ев552
 - •2.4. Задание для домашней подготовки
 - •2.5. Лабораторное занятие
 - •2.5.1. Основы работы с массивами чисел
 - •2.5.2. Отладка программы в интегрированной среде
 - •2.6. Результаты отчета
 - •2.7. Контрольные вопросы
 - •Лабораторная работа № 5 Исследование таймеров-счетчиков и системы прерывания оэвм
 - •3.1. Основные теоретические сведения
 - •3.1.1. Использование таймера для осуществления программной задержки
 - •3.1.2. Система прерываний оэвм
 - •3.1.3. Управление работой таймеров
 - •Xseg at 0000h
 - •3.1.4. Работа таймера в режиме счетчика событий
 - •Xseg at 0000h
 - •3.2. Задание для домашней подготовки
 - •3.3. Лабораторное задание
 - •3.3.1. Исследование работы таймеров
 - •3.4. Содержимое отчета
 - •Список рекомендованной литературы
 
1.5. Дополнительные операторы языка Ассемблера для использования интегрированной среды
Интегрированная среда Uvision2 используется в частности для отладки программ, написанных на языке Ассемблера для ОЭВМ семейства MCS51. Большинство операторов этого языка совпадают с мнемониками команд ОЭВМ, которые приводятся в описании ОЭВМ. Однако для правильной работы компилятора среды необходимо добавлять некоторые операторы, которые называются «невыполняемыми» и которые используются для распределения памяти и переменных.
Программный модуль на ассемблере имеет вид:
NAME <имя модуля>
CSEG AT 0000H
ORG 0000H
;строки текста программы и директивы ассемблеру
*
*
END
Что касается задания имен и меток в программе, то они могут быть любыми, но нужно руководствоваться некоторыми правилами:
они должны начинаться с буквы,
они не должны содержать знаков препинания, но могут содержать символ подчеркивания,
они не должны превышать 6 символов.
они не должны совпадать с зарезервированными именами в языке Ассемблер.
Зарезервированные имена даны именам регистров и битовых переменных ОЭВМ в пространстве спецрегистров (SFR), и их можно использовать прямо в программе, не расшифровывая:
| 
				 Обозначение регистра или бита  | 
				 Альтернативное обозначение  | 
				 Назначение регистра или бита  | 
| 
				 Регистры специальных функций  | ||
| 
				 ACC  | 
				 -  | 
				 аккумулятор  | 
| 
				 B  | 
				 -  | 
				 регистр B  | 
| 
				 DPH  | 
				 -  | 
				 старший байт DPTR  | 
| 
				 DPL  | 
				 
  | 
				 младший байт DPTR  | 
| 
				 IE  | 
				 
  | 
				 маска прерываний  | 
| 
				 IP  | 
				 
  | 
				 маска приоритетов прерываний  | 
| 
				 P0  | 
				 
  | 
				 порт 0  | 
| 
				 P1  | 
				 
  | 
				 порт 1  | 
| 
				 P2  | 
				 
  | 
				 порт 2  | 
| 
				 P3  | 
				 
  | 
				 Порт 3  | 
| 
				 PSW  | 
				 
  | 
				 слова состояние  | 
| 
				 SBUF  | 
				 
  | 
				 буфер посл. порта  | 
| 
				 SCON  | 
				 
  | 
				 настройка посл. порта  | 
| 
				 SP  | 
				 
  | 
				 Указатель стека  | 
| 
				 TCON  | 
				 
  | 
				 флаги таймеров  | 
| 
				 TH0  | 
				 
  | 
				 старший байт таймер 0  | 
| 
				 TL0  | 
				 
  | 
				 младший байт таймер 0  | 
| 
				 TH1,TL1  | 
				 
  | 
				 То же для таймера 1  | 
| 
				 TMOD  | 
				 
  | 
				 настройка таймеров  | 
| 
				 Триггеры специальных функций  | ||
| 
				 CY  | 
				 PSW.7  | 
				 перенос  | 
| 
				 AC  | 
				 PSW.6  | 
				 вспомогательный .перенос  | 
| 
				 F0  | 
				 PSW.5  | 
				 общий флаг  | 
| 
				 RS1  | 
				 PSW.4  | 
				 выбора банка регистров  | 
| 
				 RS0  | 
				 PSW.3  | 
				 
  | 
| 
				 OV  | 
				 PSW.2  | 
				 переполнение  | 
| 
				 P  | 
				 PSW.0  | 
				 четность  | 
| 
				 TF1  | 
				 TCON.7  | 
				 переполнение таймера1  | 
| 
				 TR1  | 
				 TCON.6  | 
				 включение таймера1  | 
| 
				 TF0  | 
				 TCON.5  | 
				 переполнение таймера0  | 
| 
				 TR0  | 
				 TCON.4  | 
				 включение таймера0  | 
| 
				 IE1  | 
				 TCON.3  | 
				 наличие прерывания 1  | 
| 
				 IT1  | 
				 TCON.2  | 
				 управление прерыванием 1  | 
| 
				 IE0  | 
				 TCON.1  | 
				 наличие прерывания 0  | 
| 
				 IT0  | 
				 TCON.0  | 
				 управление прерыванием 0  | 
| 
				 SM0  | 
				 SCON.7  | 
				 нулевой триггер управления режимом последовательного порта  | 
| 
				 SM1  | 
				 SCON.6  | 
				 управление режимом последовательного порта  | 
| 
				 SM2  | 
				 SCON.5  | 
				 
  | 
| 
				 REN  | 
				 SCON.4  | 
				 разрешения приема  | 
| 
				 TB8  | 
				 SCON.3  | 
				 передаваемый 8-ой бит данных  | 
| 
				 RB8  | 
				 SCON.2  | 
				 принимаемый 8-ой бит данных  | 
| 
				 TI  | 
				 SCON.1  | 
				 готовность передатчика  | 
| 
				 RI  | 
				 SCON.0  | 
				 буфер приемника заполнен  | 
| 
				 EA  | 
				 IE.7  | 
				 маска всех прерываний  | 
| 
				 ES  | 
				 IE.4  | 
				 маска прерывания от последовательного порта  | 
| 
				 ET1  | 
				 IE.3  | 
				 маска прерываний от таймера1  | 
| 
				 ET0  | 
				 IE.1  | 
				 маска прерываний от таймера0  | 
| 
				 EX1  | 
				 IE.2  | 
				 маска прерываний по INT1  | 
| 
				 EX0  | 
				 IE.0  | 
				 маска прерываний по INT0  | 
| 
				 T1  | 
				 P3.5  | 
				 внешний сигнал для таймера 1 или для нужд пользователя  | 
| 
				 T0  | 
				 P3.4  | 
				 внешний сигнал для таймера 0 или для нужд пользователя  | 
| 
				 INT1  | 
				 P3.3  | 
				 внешний сигнал для системы прерывания 1 или общий сигнал для нужд пользователя  | 
| 
				 INT0  | 
				 P3.2  | 
				 внешний сигнал для системы прерывания 1 или общий сигнал для нужд пользователя  | 
