| » Статистика |  
 Онлайн всего: 1  Гостей: 1  Пользователей: 0  |  
  
 
 | 
 
НАБОР КОМАНД 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 | 
  |  
  Примечания: 
- 9-й бит счетчика команд будет установлен в 0 любой инструкцией, 
которая производит запись в регистр PC, кроме команды GOTO. (Просмотрите
 документацию по конкретному микроконтроллеру, раздел Память / Косвенная
 адресация данных / Регистры INDF и FSR (Memory Section/indirect Data 
Addressing, INDF and FSR Registers) 
 - Когда регистр ввода вывода используется для модификации самого 
себя (MOVF PORTB, 1), то для записи будут использоваться значения 0/1 
непосредственно с ножек микроконтролера, а не значение записаное в 
выходную защелку порта. (См. схему устройства ноги ввода вывода из 
даташита.) Например если в защелку записана единица, а порт сконфигурен 
на ввод данных и снаружи на этом выводе логический 0, то в PORTB будет 
записан 0! Смысл в том, что выход защелки отделен от ножки контроллера 
тристабильным буфером и на вход считывается именно нога контроллера, 
которая за буфером. Поэтому вроде писали в порт 1, а читается 0, вот он 
то и пишется обратно. 
 - Инструкция TRIS f, где f=5,6, или 7 пишет значение аккумулятора
 W регистр управления тристабильным состоянием выходов защелок портов 
PORTA , B или C соответственно. 1 переводит выход в высокоимпендансное 
состояние и отключает от ноги выход защелки. Смысл весь в том что 
входной защелки у контроллера нет и нога читается прямо в шину. А на 
выход есть защелка у которой есть регистр управления состоянием выхода 
TRIS. Поэтому если выход защелки включен, то что пишем на вывод, то и 
читается взад, а если выход в Z состоянии, то что мы там писали на вывод
 не важно, все равно защелка от ноги оторвана, а взад читается то, что 
на ноге, а там может быть все что угодно. 
 - Если команда оперирует с регистром TMR0(и при этом d=1), тогда предделитель обнуляется (если он относится к модулю Timer 0) 
   
  Источник: http://kazus.ru |  
| Категория: Справочник | Добавил: tehnomir (30.06.2011) 
  
 |  
| Просмотров: 1510 
| Рейтинг: 0.0/0 |  
 
 |   
 | 
 
 
 |