Основные команды микроконтроллера PIC16F84A
Условные обозначения:
W – рабочий регистр
f – адрес ячейки памяти или название переменной (регистр)
b – номер бита в регистре (от 0 до 7)
k – числовая константа
d – выбор места назначения результата команды (при d=1 результат сохраняется в заданный регистр f, при d=0 результат сохраняется в рабочем регистре W)
Мнемоника | Краткое описание | Циклов | Изменяет флаги |
---|---|---|---|
БАЙТ-ОРИЕНТИРОВАННЫЕ КОМАНДЫ | |||
ADDWF f,d | Сложение W и f | 1 | C, DC, Z |
ANDWF f,d | Поразрядная операция "И" c W и f | 1 | Z |
CLRF f | Очистка регистра f | 1 | Z |
CLRW | Очистка регистра W | 1 | Z |
COMF f,d | Инвертирование битов регистра f | 1 | Z |
DECF f,d | Уменьшение значения регистра f | 1 | Z |
DECFSZ f,d | Уменьшение значения регистра f, пропуск следующей инструкции если результат равен нулю. | 1(2) | нет |
INCF f,d | Увеличение значения регистра f на 1 | 1 | Z |
INCFSZ f,d | Увеличение значения регистра f, пропуск следующей инструкции если результат равен нулю. | 1(2) | нет |
IORWF f,d | Логическая операция включающего ИЛИ W и f | 1 | Z |
MOVF f,d | Пересылка содержимого регистра f | 1 | Z |
MOVWF f | Пересылка содержимого регистра W в регистр f | 1 | нет |
NOP | Пустая команда | 1 | нет |
RLF f,d | Циклический сдвиг влево через флаг переноса | 1 | C |
RRF f,d | Циклический сдвига вправо через флаг переноса | 1 | C |
SUBWF f,d | Вычитание W из f | 1 | C, DC, Z |
SWAPF f,d | Обмен местами полу-байт регистра f | 1 | нет |
XORWF f,d | Логическая операция исключающего ИЛИ с W и f | 1 | Z |
БИТ-ОРИЕНТИРОВАННЫЕ КОМАНДЫ | |||
BCF f,d | Очистка бита в f | 1 | нет |
BSF f,b | Установка бита в f | 1 | нет |
BTFSC f,b | Проверка на равенство бита нулю, пропускаем след. команду если да. | 1(2) | нет |
BTFSS f,b | Проверка на равенство бита 1, пропускаем след. команду если да. | 1(2) | нет |
СИМВОЛЬНЫЕ КОМАНДЫ И КОМАНДЫ ВЕТВЛЕНИЯ | |||
ADDLW k | Сложение литеры и W | 1 | C, DC, Z |
ANDLW k | Логическая операция "И" с символом и W | 1 | Z |
CALL k | Вызов процедуры | 2 | нет |
CLRWDT | Сброс Сторожевого Таймера (WDT) | 1 | TO, PD |
GOTO k | Безусловный переход | 2 | нет |
IORLW k | Логическая операция включающего ИЛИ с символом и W | 1 | Z |
MOVLW k | Пересылка литеры в регистр W | 1 | нет |
RETFIE | Возврат управления после прерывания | 2 | нет |
RETLW k | Возврат с литерой в W | 2 | нет |
RETURN | Возврат из процедуры | 2 | нет |
SLEEP | Переход в режим "сна" | 1 | TO, PD |
SUBLW k | Вычитание W из литеры | 1 | C, DC, Z |
XORLW k | Логическая операция исключающего ИЛИ с символом и W | 1 | Z |