Объявление

Свернуть
Пока нет объявлений.

Набор команд PIC микроконтроллеров семейства PIC16с5X

Свернуть
X
Свернуть
  •  

  • Набор команд PIC микроконтроллеров семейства PIC16с5X

    Мнемоника Краткое описание Циклов 12-ти битный код Изменяет флаги Прим.
    БАЙТ-ОРИЕНТИРОВАННЫЕ КОМАНДЫ
    ADDWF f,d Сложение W и f 1 0001 11DF FFFF C, DC, Z 1, 2, 4
    ANDWF f,d Поразрядная операция "И" W и f 1 0001 01DF FFFF Z 2, 4
    CLRF f Очистка регистра f 1 0000 011F FFFF Z 4
    CLRW Очистка регистра W 1 0000 0100 0000 Z
    COMF f,d Инвертирование битов регистра f 1 0010 01DF FFFF Z
    DECF f,d Уменьшение значения регистра f 1 0000 11DF FFFF Z 2, 4
    DECFSZ f,d Уменьшение значения регистра f, пропуск следующей инструкции если результат равен нулю. 1(2) 0010 11DF FFFF нет 2, 4
    INCF f,d Увеличение значения регистра f на 1 1 0010 10DF FFFF Z 2, 4
    INCFSZ f,d Увеличение значения регистра f, пропуск следующей инструкции если результат равен нулю. 1(2) 0011 11DF FFFF нет 2, 4
    IORLW k Логическая операция включающего ИЛИ с символом и W 1 1101 KKKK KKKK Z 2, 4
    IORWF f,d Логическая операция включающего ИЛИ W и f 1 0001 00DF FFFF Z
    MOVF f,d Пересылка содержимого регистра f 1 0000 00DF FFFF Z 2, 4
    MOVWF f Пересылка содержимого регистра W в регистр f 1 0000 001F FFFF нет 1, 4
    NOP Пустая команда 1 0000 0000 0000 нет
    RLF f,d Циклический сдвиг влево через флаг переноса 1 0011 01DF FFFF C 2, 4
    RRF f,d Циклический сдвига вправо через флаг переноса 1 0011 00DF FFFF C 2, 4
    SUBWF f,d Вычитание W из f 1 0000 10DF FFFF C, DC, Z 1, 2, 4
    SWAPF f,d Обмен местами полу-байт регистра f 1 0011 10DF FFFF нет 2, 4
    XORWF f,d Логическая операция исключающего ИЛИ с W и f 1 0001 10DF FFFF Z 2, 4
    БИТ-ОРИЕНТИРОВАННЫЕ КОМАНДЫ
    BCF f,d Очистка бита в f 1 0100 BBBF FFFF нет 2, 4
    BSF f,b Установка бита в f 1 0101 BBBF FFFF нет 2, 4
    BTFSC f,b Проверка на равенство бита нулю, пропускаем след. команду если да. 1(2) 0110 BBBF FFFF нет
    BTFSS f,b Проверка на равенство бита 1, пропускаем след. команду если да. 1(2) 0111 BBBF FFFF Нет
    СИМВОЛЬНЫЕ КОМАНДЫ И КОМАНДЫ ВЕТВЛЕНИЯ
    ANDLW k Логическая операция "И" с символом и W 1 1110 KKKK KKKK Z
    CALL k Вызов процедуры 2 1001 KKKK KKKK нет 1
    CLRWDT Сброс Сторожевого Таймера (WDT) 1 0000 0000 0100 TO, PD
    GOTO k Безусловный переход 2 101K KKKK KKKK нет
    MOVLW k Пересылка литеры в регистр W 1 1100 KKKK KKKK нет
    OPTION Загрузка данных в регистр OPTION 1 0000 0000 0010 нет
    RETLW k Возврат с литерой в W 2 1000 KKKK KKKK нет
    SLEEP Переход в режим "сна" 1 0000 0000 0011 TO, PD
    TRIS f Загрузка данных в регистр TRIS 1 0000 0000 0FFF нет 3
    XORLW k Логическая операция исключающего ИЛИ с символом и W 1 1111 KKKK KKKK Z
    Примечания:
    1. 9-й бит счетчика команд будет установлен в 0 любой инструкцией, которая производит запись в регистр PC, кроме команды GOTO. (Просмотрите документацию по конкретному микроконтроллеру, раздел Память / Косвенная адресация данных / Регистры INDF и FSR (Memory Section/indirect Data Addressing, INDF and FSR Registers)
    2. Когда регистр ввода вывода используется для модификации самого себя (MOVF PORTB, 1), то для записи будут использоваться значения 0/1 непосредственно с ножек микроконтролера, а не значение записаное в выходную защелку порта. (См. схему устройства ноги ввода вывода из даташита.) Например если в защелку записана единица, а порт сконфигурен на ввод данных и снаружи на этом выводе логический 0, то в PORTB будет записан 0! Смысл в том, что выход защелки отделен от ножки контроллера тристабильным буфером и на вход считывается именно нога контроллера, которая за буфером. Поэтому вроде писали в порт 1, а читается 0, вот он то и пишется обратно.
    3. Инструкция TRIS f, где f=5,6, или 7 пишет значение аккумулятора W регистр управления тристабильным состоянием выходов защелок портов PORTA , B или C соответственно. 1 переводит выход в высокоимпендансное состояние и отключает от ноги выход защелки. Смысл весь в том что входной защелки у контроллера нет и нога читается прямо в шину. А на выход есть защелка у которой есть регистр управления состоянием выхода TRIS. Поэтому если выход защелки включен, то что пишем на вывод, то и читается взад, а если выход в Z состоянии, то что мы там писали на вывод не важно, все равно защелка от ноги оторвана, а взад читается то, что на ноге, а там может быть все что угодно.
    4. Если команда оперирует с регистром TMR0(и при этом d=1), тогда предделитель обнуляется (если он относится к модулю Timer 0)

      Возможность размещать комментарии к сообщениям отключена.

    Метки статей

    Свернуть

    Меток пока нет.

    Новые статьи

    Свернуть

    • «NO EXCUSES» — специальная программа компании MOTOROLA
      от admin
      Дмитрий Панфилов
      «NO EXCUSES» — специальная программа компании MOTOROLA

      Ни для кого не секрет, что микропроцессоры и микроконтроллеры находят самое широкое применение в различных областях науки и техники. Сегодня трудно указать область электроники, где не использовались бы микроконтроллеры. Количество...
      10.02.2017, 14:56
    • Частотомер на PIC16F873 с двух строчным ЖКИ способный измерять частоты
      от admin
      alt="" />Частотомер на PIC16F873 с двух строчным ЖКИ способный измерять частоты от 10Гц до 45МГц. Чувствительность по входу около 50мВ, входное сопротивление 250 Ком, входная ёмкость 15пФ. Питание девятивольтная батарея 6F22.В память можно вносить значения, которые будут, прибавлены к входной частоте...
      10.02.2017, 14:56
    • Управление нагрузкой 220В переменного напряжения с использованием симисторов
      от admin
      Для плавного управления нагрузкой, например, лампой освещения, можно использовать симистор. Открывается симистор током при подачи на управляющий электрод импульса. Закрывается, когда ток, проходящий через него, становится равным нулю, когда переменное напряжение меняет знак.
      ...
      10.02.2017, 14:56
    • Управление модулем Ke-USB24A из Excel
      от admin
      Всю прелесть программирования USB модуля Ke-USB24A можно оценить когда встает вопрос о необходимости написания программы на каком-либо не очень широко распространенном языке или для какой-либо среды, которая, казалось бы не предусматривает возможность работы с USB устройствами....
      10.02.2017, 14:55
    • Управление матрицей 8х8 - легко!
      от admin
      Матрица управляется так же как и 7-сегментные индикаторы - динамически. Мега16 портом А управляет одной координатой (выбирает сторку для вывода инфы), порт С - выводит ту самую информацию. Информация берётся из массива.
      />

      />
      Что бы пользоваться редактором, нужно переменную STROKA из примера переименовать в rows_arr.
      Вложения: matrica8x8.fcf_avr (56 Кб) Любители ПИКов, вам не составит труда пореколбасить этот п...
      10.02.2017, 14:55
    • То, что улучшает нашу жизнь (микросхемы для домашних и игровых устройств)
      от admin
      Журнал «Компоненты и технологии» №8 2001 г.
      Ракович Н. Н.

      "В человеке все должно быть прекрасно… и у него в доме тоже"
      (Почти по А. П. Чехову)
      В последнее время при чтении профессиональных электронных журналов и статей, посвященных использованию электронных компонентов, у меня возникло и окрепло унылое ощущение, что вся гигантская...
      10.02.2017, 14:55
    Обработка...
    X