НАБОР КОМАНД PIC МИКРОКОНТРОЛЛЕРОВ СЕМЕЙСТВА PIC14000/PIC16CXXX
Мнемоника | Описание | Циклы | Флаги | Прим. | Байт-ориентированные команды | ADDWF f,d | Сложение W с f | 1 | C,DC,Z | 1,2 | ANDWF f,d | Логическое "И" W с f | 1 | Z | 1,2 | CLRF f | Сброс регистра f | 1 | Z | 2 | CLRW | Сброс регистра W | 1 | Z | - | COMF f,d | Инверсия регистра f | 1 | Z | 1,2 | DECF f,d | Декремент регистра f | 1 | Z | 1,2 | DECFSZ f,d | Декремент f, пропустить команду, если 0 | 1(2) | Z | 1,2,3 | INCF f,d | Инкремент регистра f | 1 | Z | 1,2 | INCFSZ f,d | Инкремент f, пропустить команду, если 0 | 1(2) | Z | 1,2,3 | IORWF f,d | Логическое "ИЛИ" W c f | 1 | Z | 1,2 | MOVF f,d | Пересылка регистра F | 1 | Z | 1,2 | MOVWF f | Пересылка W в F | 1 | | - | NOP | Холостая команда | 1 | | - | RLF f,d | Вращение f влево через перенос | 1 | C | 1,2 | RRF f,d | Вращение f вправо через перенос | 1 | C | 1,2 | SUBWF f,d | Вычитание W из f | 1 | C,DC,Z | 1,2 | SWAPF f,d | Обмен местами тетрад в f | 1 | | 1,2 | XORWF f,d | Исключающее "ИЛИ" W и f | 1 | Z | 1,2 | Операции с константами и управляющими регистрами | ADDLW k | Сложение константы с W | 1 | C,DC,Z | - | ANDLW k | Логическое "И" константы и W | 1 | Z | - | IORLW k | Логическое "ИЛИ" константы и W | 1 | Z | - | SUBLW k | Вычитание W из константы | | | | MOVLW k | Пересылка константы в W | 1 | | - | XORLW k | Исключающее "ИЛИ" константы и W | 1 | Z | - | OPTIONS | Загрузка OPTIONS регистра | 1 | 4 | TRIS f | Загрузка TRIS регистра | 1 | 4 | Бит-ориентированные команды | BCF f,b | Сброс бита b в регистре f | 1 | 1,2 | BSF f,b | Установка бита b в регистре f | 1 | 1,2 | BTFSC f,b | Пропустить команду, если бит b=0 | 1(2) | 3 | BTFSS f,b | Пропустить команду, если бит b=1 | 1(2) | 3 | Переходы | CALL k | Вызов подпрограммы | 2 | - | CLRWDT (k) | Сброс Watchdog таймера | 1 | /TO,/PD | - | GOTO k | Переход по адресу | 2 | - | RETLW k | Возврат из подпрограммы с загрузкой константы в W | 2 | - | RETFIE | Возврат из прерывания | 2 | - | RETURN | Возврат из подпрограммы | 2 | - | SLEEP | Переход в режим SLEEP | 1 | /TO,/PD | - |
Мнемоники специальных инструкций | Мнемоника | Описание | Эквивалентные
операции | Флаги | Прим. | ADDCF f,d | Добавить бит C к регистру | BTFSC STATUS,0
INCF f,d | Z | ADDDCF f,d | Добавить бит DC к регистру | BTFSC STATUS,1
INCF f,d | Z | B k | Переход | GOTO k | - | BC k | Переход если C=1 | BTFSC STATUS,0
GOTO k | - | BDC k | Переход если DC=1 | BTFSC STATUS,1
GOTO k | - | BNC k | Переход если C=0 | BTFSS STATUS,0
GOTO k | - | BNDC k | Переход если DC=0 | BTFSS STATUS,1
GOTO k | - | BNZ k | Переход если не ноль | BTFSS
STATUS,2
GOTO k | - | BZ k | Переход если ноль | BTFSC STATUS,2
GOTO k | - | CLRC | Очистить бит C | BCF
STATUS,0 - | CLRDC | Очистить бит DC | BCF
STATUS,1 | - | CLRZ | Очистить бит Z | BCF
STATUS,2 | - | LCALL k | LGOTO k | MOVFW f | Пересылка регистра в W | MOVF f,0 | Z | NEGF f,d | Изменение знака регистра | COMF f,1
INCF f,d Z | SETC | Установить бит C | BSF
STATUS,0 | - | SETDC | Установить бит DC | BSF
STATUS,1 | - | SETZ | Установить бит Z | BSF
STATUS,2 | - | SKPC | Пропустить если C=1 | BTFSS
STATUS,0 | - | SKPDC | Пропустить если DC=1 | BTFSS
STATUS,1 | - | SKPNC | Пропустить если C=0 | BTFSC
STATUS,0 | - | SKPNDC | Пропустить если DC=0 | BTFSC
STATUS,1 | - | SKPNZ | Пропустить если не ноль | BTFSC
STATUS,2 | - | SKPZ | Пропустить если ноль | BTFSS
STATUS,2 | - | SUBCF f,d | Вычесть бит C из регистра | BTFSC
STATUS,0
DECF f,d | Z | SUBDCF f,d | Вычесть бит DC из регистр | BTFSC
STATUS,1
DECF f,d | Z | TSTF f | Проверка регистра | MOVF f,1 | Z | Замечания и пояснения f - адрес регистра (0x00 - 0x7f) d - выбор приемника для результата (d=0: результат сохраняется в W; d=1: результат сохраняется в регистр f. По умолчанию d=1.) b - адрес бита (0 - 7) в регистре k - символьное поле, константа, метка. Примечание 1: Когда модифицируется регистр ввода/вывода, например MOVF 6,1, значение, используемое для модификации считывается непосредственно с ножек кристалла. Если значение защелки вывода для ножки, запрограммированной на вывод равно "1", но внешний сигнал на этом выводе "0" из-за "навала" снаружи, то будет считываться "0". Примечание 2: Если операндом этой команды является регистр TMR0 (и, если допустимо, d=1), то делитель, если он подключен к Timer0, будет обнулен. Примечание 3: Если изменяется Program Counter (PC) или выполняется заданное условие, то команда требует два цикла. Второй цикл выполняется как NOP. Примечание 4: Команды TRIS и OPTION помещены в перечень команд для совместимости с семейством PIC16C5X. Их использование не рекомендуется. В PIC16C84 регистры TRIS и OPTION доступны для чтения и записи как обычные регистры с номером. Предупреждаем, что эти команды могут не поддерживаться в дальнейших разработках PIC16CXX.
Читайте далее: Химическое меднение, MAX724, MAX726 5 А/2 А, ШИМ - импульсные, DC/DC понижающие стабилизаторы, О мерах безопасности при изготовлении и наладке устройств, Транзисторные сглаживающие фильтры, Как читать штрих код, Необычные профессии микросхем для часов, Применение АЦП КР572ПВ5, Экономичный преобразователь кода для семисегментного индикатора, Схема, обеспечивающая развертку по диагональной оси любого осциллографа, Мощный транзистор в лавинном режиме, Простой индикатор уровня сигнала на ИН13, Кварцевый фильтр, Повышение частоты кварца, Драйвер лазерной указки, Подставка для паяльника, Имитируем работу клавиатуры, Как удлинить ось, Как закрепить тонкое сверло в патроне электродрели, Нож для зачистки проводов,
|