Основы микропроцессорной техники


Перечень и форматы команд


Микроконтроллеры подгруппы PIC16F8X имеют простую и эффективную систему команд, состоящую всего из 35 команд.

Каждая команда МК подгруппы PIC16F8X представляет собой 14-битовое слово, разделенное на код операции (OPCODE), и поле для одного и более операндов, которые могут участвовать или не участвовать в этой команде. Система команд PIC16F8X является ортогональной и включает в себя команды работы с байтами, команды работы с битами и операции с константами и команды управления. В таблице 5.10 приведены описания полей команд.

Таблица 5.10. Описания полей команд МК семейства PIC16CXXX.ПолеОписание
f Адрес регистра
w Рабочий регистр
b Номер бита в 8-разрядном регистре
k Константа
x Не используется. Ассемблер формирует код с x=0
d

Регистр назначения:

d=0 – результат в регистре w

d=1 – результат в регистре f

По умолчанию d=1

label Имя метки
TOS Beршина стека
PC Счетчик команд
PCLATH Регистр PCLATH
GIE Бит разрешения всех прерываний
WDT Сторожевой таймер
/TO Тайм-аут
/PD Выключение питания
dest Регистр назначения: рабочий регистр w или регистр, заданный в команде
[ ]Необязательные параметры
( )Содержание
Присвоение
< >Поле номера бита
Из набора

Для команд работы с байтами f обозначает регистр, с которым производится действие; d – бит, определяющий, куда положить результат. Если d =0, то результат будет помещен в регистр w, при d=1 результат будет помещен в регистр "f", упомянутый в команде.

Для команд работы с битами b обозначает номер бита, участвующего в команде, а f – это регистр, в котором данный бит расположен.

Для команд передачи управления и операций с константами, k обозначает восьми- или одиннадцатибитную константу.

Почти все команды выполняются в течение одного командного цикла. В двух случаях исполнение команды занимает два командных цикла:

  • проверка условия и переход;
  • изменение программного счетчика как результат выполнения команды.

Один командный цикл состоит из четырех периодов генератора. Таким образом, для генератора с частотой 4 МГц время исполнения командного цикла будет 1 мкс.




Начало  Назад  Вперед



Книжный магазин