Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Перечень условных обозначений и сокращений.docx
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
348.72 Кб
Скачать

2.4 Описание команд. Общий формат команд

Система команд микропроцессорного комплекта PIC 16CXX приведена в таблице 2.2.

Таблица 2.2. Система команд PIC 16CXX

Мнемоника

Название

Синтаксис

Операнды

Операция

Статус

Слова

Циклы

ADDWF

ADD W to f

ADDWF f,d

f,d

(W)+(f)->W/f

C,DC,Z

1

1

ANDWF

AND W with f

ANDWF f,d

f,d

(W).AND.(f)->W/f

Z

1

1

CLRF

Clear f

CLRF f

f,d

00h->f; 1->Z

Z

1

1

CLRW

Clear W register

CLRW

-

00h->W; 1->Z

Z

1

1

COMF

Complement f

COMF f,d

f,d

(f\)->W/f

Z

1

1

DECF

Decrement f

DECT f,d

f,d

(f)-1->W/f

Z

1

1

DECFSZ

Decrement f, skip if 0

DECFSZ f,d

f,d

(f)-1->W/f

skip if result=0

-

1

1(2)

INCF

Increment f

INCF f,d

f,d

(f)+1->W/f

Z

1

1

INCFSZ

Increment f, skip if 0

INCFZ f,d

f,d

(f)+1->W/f

-

1

1(2)

IORWF

Inclusive OR W with f

IORWF f,d

f,d

(W).OR.(f)->(W)

Z\

1

1

MOVF

Move f

MOVF f,d

f,d

(f)->W/f

Z

1

1

MOVWF

Move W to f

MOVWF f

F

(W)->(f)

-

1

1

NOP

No operation

NOP

-

-

-

1

1

RLF

Rotate Left f througt Carry

RLF f,d

f,d

<- [C]<-register <-

C

1

1

RRF

Rotate Right through Carry

RRF f,d

f,d

-> [C]->register ->

C

1

1

SUBWF

Subtract W from f

SUBWF f,d

f,d

f-(W)->W/f

C,DC,Z

1

1

SWAPF

Swap f

SWAPF f,d

f,d

f<0:3>->d<4:7>

-

1

1

XORWF

Exclusive OR with f

XORWF f,d

f,d

(W).XOR.(f)->W/f

Z

1

1

Бит-ориентированые операции

BCF

Bit Clear f

BCF f,b

f,b

0->f(b)

-

1

1

BSF

Bit Set f

BSF f,b

f,b

1->f(b)

-

1

1

BTFSC

Bit Test, skip,if Clear

BTFSC f,b

f,b

skip if (f<b>)=0

-

1

1(2)

BTFSS

Bit Test, skip,if Set

BTFSS f,b

f,b

skip,if (f<b>)=1

-

1

1(2)

Литеральные операции и операции управления

ADDLW

Add Literal to W

ADDLW k

k

(W)+k->W

C,DC,Z

1

1

ANDLW

And Literal and W

ANDLW k

k

(W).AND.(k)->W

Z\

1

1

CALL

Subrouutine Call

CALL k

k

(PC)+1->TOS

k ->PC<10: 0>

(PCLATH<4:3>)->

PC<12:11>

-

1

1

2

1

Таблица 2.2. Система команд PIC 16CXX (продолжение)

CLRWDT

Clear Watching Timer

CLRWDT

-

00h->WDT

0->WDT prescaler

1->TO\; 1->PD\

TO\,

PD\

1

1

GOTO

Unconditional Branch

GOTO k

0<= k <=2047

k->PC<10:0>

(PCLATH<4:3>)-> PC<12:11>

-

1

2

IORLW

Inclusive OR Literal with W

IORLW k

k

(W).OR.(k)->W

Z

1

1

MOVLW

Move Literal to W

MOVLW

k

k->(W)

-

1

1

RETFIE

Return from Interrupt

RETFIE

TOS->PC;

1->GIE

-

1

2

RETLW

Return Literal to W

RETLW k

k->W;

TOS->PC

-

1

2

RETURN

Return from subtrroutine

RETURN

-

TOS->PC

-

1

2

SLEEP

-

SLEEP

-

00->WDT

0->WDT prescaler

1->TO\,0->PD\

TO\,

PD\

1

1

SUBLW

Subtract W from Literal

SUBLW k

k

k-(W)->(W)

C,DC,Z

1

1

XORLW

Exclusive OR W with f

XOR

f,d

(W).XOR.(f)->W/f

Z

1

1

Общий формат команд :

Формат байт-ориентированных операций приведен на рисунке 3.

13 8

7

6 0

Код операции

d

f (файл #)

Рисунок 3 - Формат байт-ориентированных операций

Формат бит-ориентированных операций приведен на рисунке 4.

13 10

9 7

6 0

Код операции

b (бит #)

f (файл #)

Рисунок 4 - Формат бит-ориентированных операций

Формат литерных операций и операций управления приведен на рисунке 5.

13 8

7 0

Код операции

k (литерал)

Рисунок 5 - Формат литерных операций и операций управления

ADDLW ( Add literal to W). Содержимое регистра W добавляется к 8-битовому литералу k и результат помещается в регистр W.

ANDLW ( AND Literal and W ). Содержимое регистра W логически умножается с 8-битовым литералом k. Результат помещается в регистр W.

ADDWF (Add W to f). Сложение содержимого регистра W и регистра f. Если d равно 0, то результат запоминается в регистре W. Если d есть 1, то результат помещается в регистре f.

ANDWF (AND W with f) .Сложение содержимого регистра W и регистра f.

BCF (Bit Clear f). Очистка бита b в регистре f.

BTFSC (Bit Test, skip if Clear). Если бит b в регистре равен 0, то следующая команда пропускается. Если бит b равен 1, то следующая команда присоединяется к текущей команде и выполнение ее отменяется, а пустая операция выполняется взамен. Команда получается двухтактовой.

BSF (Bit Set f). Установка бита b в регистре f в единицу.

BTFSS (Bit Test,skip if Set). Если бит ‘b ‘в регистре ‘f’ равен 1, то следующая команда пропускается. Если бит ‘b’ есть 1, то следующая команда присоединяется к текущей команде и выполнение ее отменяется, а взамен выполняется пустая операция. Команда получается двухтактовой.

CLRF (Clear f). Содержимое регистра ‘f’ очищается и бит Z устанавливается в единицу.

CALL (Subroutine Call). Вызов подпрограммы. Адрес возврата (PC +1) помещается сверху в стек. 11 бит непосредственного адреса загружаются в биты (10; 0) счетчика команд PC. Старшие биты PC загружаются из PCLATH. Команда двухтактовая.

CLRW (Clear W Register). Регистр W очищается. Бит Z устанавливается в 1.

CLRWDT (Clear Watching Timer). Эта команда перезапускает сторожевой таймер. Она также перезапускает предделитель сторожевого таймера. Устанавливаются в единицу биты признаков TO\ , PD\.

DECF (Decrement f) Декремент в регистре W.

COMF (Complement f) Содержимое регистра W инвертируется.

DECFSZ (Decrement f,skip if 0). Содержимое регистра ‘f’ декретируется.

Если результат есть 0 ,следующая команда, которая уже присоединена пропускается. Пустая операция выполняется, взамен, делая команду двухтактовой.

GOTO (Unconditional Branch). Команда безусловного перехода Непосредственное значение одиннадцати бит загружаются в биты PC< 10: 0>. Старшие биты загружаются из PCLATH <4: 3 >. Команда двухтактовая

INCFSZ (Increment f, skip if 0). Содержимое регистра ‘f’ инкреминируется.

Если результат равен 0, следующая команда, которая уже подсоединена, декремируется. Взамен выполняется пустая операция, делая команду двухтактовой.

INCF (Increment f). Содержимое регистра ‘f’ инкреминируется.

IORLW (Inclusive OR Literal with W).Операция ИЛИ содержимого регистра W и 8-битового литерала ‘k’. Результат помещается в регистр W.

IORWF (Inclusive OR W with f). Операция ИЛИ содержимого регистров W и ‘ f’.

MOVF (Move f). Содержимое регистра ‘f’ перемещается по назначению d. Если d=0 , назначается регистр W. Если d =1, назначается сам файловый регистр.d =1 полезен для тестирования файлового регистра.

MOVLW (Move Literal to W). Восьмибитовый литерал ‘k’ загружается в регистр W. Не надо осторожничать при ассемблировании 0.

MOVWF(Move W to f ). Перемещение данных из регистра W в регистр ‘f’.

NOP (No operation). Нет операции.

RETFIE ( Return from Interrupt). Возврат от прерывания. Стек разгружается и верхушка стека (TOS ) загружается в PC. Прерывания возможны установкой бита разрешения общего прерывания (Global Interrupt Enable GIE). GIE-бит разрешения общего прерывания. Это двухтактовая команда.

RETLW(Return Literal to W). Регистр W загружается 8-битовым литералом ‘k’ Счетчик команд загружается из верха стека (возврат адреса). Это двухтактовая команда.

RETURN (Return from Subroutine). Возврат из подпрограммы. Стек разгружается и верхушка стека ( TOS ) загружается в счетчик команд. Эта команда двухтактовая.

RTF (Rotate Right). Содержимое регистра ‘f’ циклически сдвигается на один бит вправо через флаг переноса.

RLF (Rotate Left f througgh Carry). Содержимое регистра ‘f’ перемещается на один бит влево через флаг переноса.

SLEEP. Бит признака понижения мощности (PD\) очищается. Бит признака истечения времени (TO\) устанавливается в 1. Сторожевой таймер и его предделитель очищаются. Процессор переводится в режим спячки и генератор останавливается.

SUBLW (Subtract W from Literal ). Содержимое регистра W вычитается (методом дополнительного кода ) из 8-битового литерала ‘k’. Результат помещается в регистр W.

SUBWF (subtract W from f). Вычитание (методом дополнительного кода) содержимого регистра W из содержимого регистра ‘f’ SWAPF (Swap f). Старшие и младшие части регистра ‘f’ обмениваются информацией.

XORLW (Exlusive OR Literal with W) (Исключающее ИЛИ, неравнозначность). Выполняется операция ‘ исключающее’ ИЛИ содержимого регистра W и 8-битового литерала ‘k’. Результат помещается в W регистр.

XORWF (Exlusive OR W with f) (Исключающее ИЛИ , неравнозначность). Выполняется операция исключающее ИЛИ содержимого регистра W и регистра ‘f’.

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