Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОМТ (на редактировании).doc
Скачиваний:
31
Добавлен:
17.05.2015
Размер:
3.86 Mб
Скачать

Содержание отчета

В отчете необходимо привести постановку задачи, блок-схему алгоритма и текст программы на языке Ассемблер с исправлениями, возникшими на этапе отладки.

Библиографический список

  1. MPLAB IDE Интегрированная среда разработки для микроконтроллеров PICmicro компании Microchip Tehnology Incorporated. – М. : ООО «Микро-чип», 2001.

  2. MPASM Руководство пользователя. – М. : ООО «Микро-чип», 2001.

  3. PIC16F87X. Однокристальные 8-разрядные FLASH CMOS микроконтроллеры компании Microchip Tehnology Incorporated. – М. : ООО «Микро-чип», 2002.

  4. PICmicro™Mid-RangeMCUFamilyReferenceManual,DS33023A—USA:MicrochipTechnologyIncorporated, 1997 — 688 с.

Приложение 1. Схема лабораторного макета

Рис. П2.1. Схема лабораторного макета

Приложение 2. Краткое описание набора инструкцийPIC16

Приложение 3. Список командPIC16 и их подробное описание

В описании команд используются следующие условные обозначения:

— регистрX.

— бит yрегистраX.

— биты с yпоzрегистраX.

— операция выполняется лишь тогда, когда условие верно

Строчные латинские буквы операндов в графе «синтаксис», обычно обозначают следующее:

f— номер регистра в регистровом файле;

d— указатель направления;

k— константа-литерал;

b— номер бита в регистре.

ADDLW— Сложение рабочего регистраWи константыk

Синтаксис

ADDLW k

Операнды

Операция

Измен.

флаги

C, DC, Z

Описание

Содержимое регистра W складывается с константой k. Результат помещается в регистр W.

Пример

; w = 10

addlw 12

; w = 22

addlw 342 ; ошибка, константа k больше 255

ADDWF— Сложениерабочего регистра Wи регистраf

Синтаксис

ADDWF f, d

Операнды

Операция

Измен.

флаги

C, DC, Z

Описание

Содержимое регистра W складывается c содержимым регистра f. Результат помещается в регистр W, при d=0, или в f при d=1.

Пример

; w = 10 f(11)=14

addwf 11,1

; w = 10, f(11)=24

addwf 11,0

; w = 34, f(11)=24

ANDLW— Побитное «И» рабочего регистраWи константыk

Синтаксис

ANDLW k

Операнды

Операция

Измен.

флаги

C, DC, Z

Описание

Выполняется побитное «И» регистра W и 8-битной константы k. Результат помещается в регистр W.

Пример

; w = 3

addlw 2

; w = 1

ANDWF— Побитное «И» рабочего регистраWи регистраf

Синтаксис

ANDWF f, d

Операнды

Операция

Измен.

флаги

C, DC, Z

Описание

Выполняется побитное «И» регистра W c содержимым регистра f. Результат помещается в регистр W, при d=0, или в f при d=1.

Пример

; w = 7 = 0b111, f(4)= 3 = 0b 11

andwf 4,0

; w = 3, f(4)=3

BCF— Очистка битаbрегистраf

Синтаксис

BCF f,b

Операнды

Операция

Измен.

флаги

Описание

Бит b регистра f устанавливается в 0.

Пример

; f(4) = 7 = 0b111

bcf 4,1

; f(4) = 5 = 0b101

BSF— Установка битаbрегистраfв единицу

Синтаксис

BCF f,b

Операнды

Операция

Измен.

флаги

Описание

Бит b регистра f устанавливается в 1.

Пример

; f(4) = 5 = 0b101

bsf 4,1

; f(4) = 5 = 0b111

BТFSC— Условный переход при нулевом битеbрегистраf

Синтаксис

BTFSC f,b

Операнды

Операция

Измен.

флаги

Описание

Если бит b регистра f устанавлен в 0, инкрементируется счетчик команд PC (тем самым, пропускается следующая команда), в противном случае ничего не выполняется. В случае инкремента счетчика команда выполняется за 2 машинных цикла, иначе — за 1.

Пример

; f(7) = 6 = 0b110, w = 1

btfsc 7,1

addlw 4

btfsc 7,0

addlw 9

; w = 10