Scwart2 Суббота, 23.11.2024, 11:25
Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
» Меню сайта

» Категории раздела
Мои статьи [117]
СХЕМЫ [108]
Различные электронные схемы
Справочник [46]
справочные данные

» Наш опрос
Купите ли вы ноутбук с рук?
Всего ответов: 77

» Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0

» Форма входа

Главная » Статьи » Справочник

НАБОР КОМАНД PIC МИКРОКОНТРОЛЛЕРОВ СЕМЕЙСТВА PIC17
Мнемоника Краткое описание Циклов 16-ти битный код Изменяет флаги Прим.
БАЙТ-ОРИЕНТИРОВАННЫЕ КОМАНДЫ
ANDWF f,d Сложение WREG и f 1 0000 111D FFFF FFFF OV, C, DC, Z
ADDWFC f,d Прибавление WREG и Carry bit( Бита переноса) к f 1 0001 000D FFFF FFFF OV, C, DC, Z
ANDWF f,d Поразрядная операция "И" c WREG и f 1 0000 101D FFFF FFFF Z
CLRF f,s Очистка регистра f 1 0010 100S FFFF FFFF нет 3
COMF f,d Инвертирование битов регистра f 1 0001 001D FFFF FFFF Z
CPFSEQ f Операция сравнения f с WREG, пропуск след. комманды если f=WREG 1(2) 0011 0001 FFFF FFFF нет 6, 8
CPFSGT f Операция сравнения f с WREG, пропуск след. комманды если f>WREG 1(2) 0011 0010 FFFF FFFF нет 2, 6, 8
CPFSLT f Операция сравнения f с WREG, пропуск след. комманды если f<WREG 1(2) 0011 0000 FFFF FFFF нет 2, 6, 8
DAW f,s Десятичная коррекция регистра WREG 1 0010 111S FFFF FFFF C 3
DCFSNZ f,d Уменьшение значения регистра f, пропуск следующей инструкции если результат не равен нулю. 1(2) 0010 011D FFFF FFFF нет 6, 8
DECF f,d Уменьшение значения регистра f 1 0000 011D FFFF FFFF OV, C, DC, Z
DECFSZ f,d Уменьшение значения регистра f, пропуск следующей инструкции если результат равен нулю. 1(2) 0001 011D FFFF FFFF нет 6, 8
INCF f,d Увеличение значения регистра f на 1 1 0001 010D FFFF FFFF OV, C, DC, Z
INCFSZ f,d Увеличение значения регистра f, пропуск следующей инструкции если результат равен нулю. 1(2) 0001 111D FFFF FFFF нет 6, 8
INFSNZ f,d Увеличение значения регистра f, пропуск следующей инструкции если результат не равен нулю. 1(2) 0010 010D FFFF FFFF нет 6, 8
IORWF f,d Логическая операция включающего ИЛИ WREG и f 1 0000 100D FFFF FFFF Z
MOVFP f,p Пересылка содержимого регистра f в p 1 011P PPPP FFFF FFFF нет
MOVPF p,f Пересылка содержимого регистра p в f 1 010P PPPP FFFF FFFF Z
MOVWF f Пересылка содержимого регистра WREG в регистр f 1 0000 0001 FFFF FFFF нет
MULWF f Перемножение WREG с f 1 0011 0100 FFFF FFFF нет 9
NEGW f,s Изменить знак WREG 1 0010 110S FFFF FFFF OV, C, DC, Z 1, 3
NOP Пустая команда 1 0000 0000 0000 0000 нет
RLCF f,d Циклический сдвиг влево через флаг переноса 1 0001 101D FFFF FFFF C
RLNCF f,d Циклический сдвиг влево (без переноса) 1 0010 001D FFFF FFFF нет
RRCF f,d Циклический сдвига вправо через флаг переноса 1 0001 100D FFFF FFFF C
RRNCF f,d Циклический сдвига вправо (без флага переноса) 1 0010 000D FFFF FFFF нет
SETF f,s Установка всех битов f в 1 1 0010 101S FFFF FFFF нет 3
SUBWF f,d Вычитание WREG из f 1 0000 010D FFFF FFFF OV, C, DC, Z 1
SUBWFB f,d Вычитание W из f с заемом 1 0000 001D FFFF FFFF OV, C, DC, Z 1
SWAPF f,d Обмен местами полу-байт регистра f 1 0001 110D FFFF FFFF нет
TABLRD t,i,f Чтение таблицы 2 (3 тактов, если f=PCL) 1010 10TI FFFF FFFF нет 7
TABLWT t,i,f Табличная запись 2 (и больше если происходит запись во встроенную EEPROM ) 1010 11TI FFFF FFFF нет 5
TLRD t,f Считывание Защелки таблицы 1 1010 00TX FFFF FFFF нет
TLWT t,f Запись в Защелку таблицы 1 1010 01TX FFFF FFFF нет
TSTFSZ f Проверка f, пропуск след. ком. если 0. 1(2) 0011 0011 FFFF FFFF нет 6, 8
XORWF f,d Логическая операция исключающего ИЛИ с WREG и f 1 0000 110D FFFF FFFF Z
БИТ-ОРИЕНТИРОВАННЫЕ КОМАНДЫ
BCF f,b Очистка бита в f 1 1000 1BBB FFFF FFFF нет
BSF f,b Установка бита в f 1 1000 0BBB FFFF FFFF нет
BTFSC f,b Проверка на равенство бита нулю, пропускаем след. команду если да. 1(2) 1001 1BBB FFFF FFFF нет 6, 8
BTFSS f,b Проверка на равенство бита 1, пропускаем след. команду если да. 1(2) 1001 0BBB FFFF FFFF нет 6, 8
BTG f,b Инвертирование бита в регистра f 1 0011 1BBB FFFF FFFF нет
СИМВОЛЬНЫЕ КОМАНДЫ И КОМАНДЫ ВЕТВЛЕНИЯ
ADDLW k Сложение литеры и WREG 1 1011 0001 KKKK KKKK OV, C, DC, Z
ANDLW k Логическая операция "И" с символом и WREG 1 10011 0101 KKKK KKKK Z
CALL k Вызов процедуры 2 111K KKKK KKKK KKKK нет 7
CLRWDT Сброс Сторожевого Таймера (WDT) 1 0000 0000 0000 0100 TO, PD
GOTO k Безусловный переход 2 110K KKKK KKKK KKKK None 7
IORLW k Логическая операция включающего ИЛИ с символом и WREG 1 1011 0011 KKKK KKKK Z
LCALL k Вызов дальней процедуры 2 1011 0111 KKKK KKKK нет 4, 7
MOVLB k Пересылка литеры в младший полубайт регистра BSR 1 1011 1000 UUUU KKKK Нет
MOVLR k Пересылка литеры в старший полубайт регистра BSR 1 1011 101X KKKK UUUU Нет 9
MOVLW k Пересылка литеры в регистр WREG 1 1011 0000 KKKK KKKK нет
MULLW k Перемножение литеры с WREG 1 1011 1100 KKKK KKKK нет 9
RETFIE Возврат управления после прерывания 2 0000 0000 0000 0101 GLINTD 7
RETLW k Возврат с литерой в W 2 1011 0110 KKKK KKKK нет 7
RETURN Возврат из процедуры 2 0000 0000 0000 0010 нет 7
SLEEP Переход в режим "сна" 1 0000 0000 0000 0011 TO, PD
SUBLW k Вычитание W из литеры 1 1011 0010 KKKK KKKK OV, C, DC, Z
XORLW k Логическая операция исключающего ИЛИ с символом и W 1 1011 0100 KKKK KKKK Z

Примечания:
  1. Метод двоичного дополнения
  2. Беззнаковая операция
  3. Если s='1', изменяется только файл; Если s='0', тогда оба и WREG и file изменяются; Если нужно, что бы изменядся только Рабочий регистр (WREG), тогда необходимо сделать f = WREG.
  4. Во время выполнения LCALL, содержимое PCLATH загружается в MSb регистра PC и kkkk kkkk загружется в LSb регистра PC(PCL).
  5. Выполнение команды может занять несколько командных циклов при программировании EPROM, если табличный указатель относится ко внутренней EPROM. Выполнение команды завершается прерыванием. Когда команда используется для записи во внешнюю EPROM, выполнение команды занимает 2 командных цикла.
  6. Если условие истинно - команда выполняется за 2 командных цикла, если ложно - за 1 ком. цикл.
  7. Команда выполняется за 2 ком. цикла, кроме TABLRD с PCL (младший байт PC) которая выполняется за 3 ком. цикла.
  8. "пропускаем" - означает, что команда следующая за данной не выполняется, а выполняется команда, которая находится через одну от данной. Вместо следующей за данной командой выполняется команда NOP (Пустая операция).
  9. Эта команда отсутствует в микоконтроллере PIC17C42


Источник: http://kazus.ru
Категория: Справочник | Добавил: tehnomir (30.06.2011)
Просмотров: 1640 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
» Поиск

» Друзья сайта
  • wyp.club
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz


  • Copyright MyCorp © 2024
    Хостинг от uCoz