Микроконтроллеры

Контроллерный рынок России:факты и домыслы, парадоксы и закономерности.

"ГЛЮКИ" МИКРОКОНТРОЛЛЕРОВ PIC

Выбор микроконтроллера

  1. Система команд микроконтроллеров семейства MSP430
  2. Командные циклы и длина команд

Таблица. Набор команд MSP430

Мнемоника   Описание   V N Z C
ADC(.B)* dst Сложение бита С с получателем dst + C -> dst * * * *
ADD(.B) src,dst Сложение источника с получателем src + dst -> dst * * * *
ADDC(.B) src,dst Сложение источника и бита С с получателем src + dst + C -> dst * * * *
AND(.B) src,dst Операция «И» источника и получателя src .and. dst -> dst 0 * * *
BIC(.B) src,dst Очистка битов в получателе .not.src .and. dst -> dst - - - -
BIS(.B) src,dst Установка битов в получателе src .or. dst -> dst - - - -
BIT(.B) src,dst Проверка битов в получателе src .and. dst 0 * * *
BR* dst Переход по назначению dst -> PC - - - -
CALL dst Вызов получателя PC + 2 -> stack, dst -> PC - - - -
CLR(.B)* dst Очистка получателя 0 -> dst - - - -
CLRC*   Очистка бита С 0 -> C - - - 0
CLRN*   Очистка бита N 0 -> N - 0 - -
CLRZ*   Очистка бита Z 0 -> Z - - 0 -
CMP(.B) src,dst Сравнение источника и получателя dst – src * * * *
DADC(.B)* dst Десятичное сложение бита С с получателем dst + c -> dst (десятичное) * * * *
DADD(.B) src,dst Десятичное сложение источника и бита С с получателем src + dst + C -> dst (десятичное) * * * *
DEC(.B)* dst Декремент получателя dst - 1 -> dst * * * *
DECD(.B)* dst Двойной декремент получателя dst - 2 -> dst * * * *
DINT*   Запрещение прерываний 0 -> GIE - - - -
EINT*   Разрешение прерываний 1 -> GIE - - - -
INC(.B)* dst Инкремент получателя dst + 1 -> dst * * * *
INCD(.B)* dst Двойной инкремент получателя dst + 2 -> dst * * * *
INV(.B)* dst Инвертирование получателя .not.dst -> dst * * * *
JC/JHS label Переход, если С установлен / переход если наивысший или такой же   - - - -
JEQ/JZ label Переход, если равно / переход если Z установлен   - - - -
JGE label Переход, если больше или равно   - - - -
JL label Переход, если меньше   - - - -
JMP label Переход PC + 2 * смещение -> PC - - - -
JN label Переход, если N установлен   - - - -
JNC/JLO label Переход, если С не установлен / переод если низший   - - - -
JNE/JNZ label Переход, если не равно, переход если Z не установлен   - - - -
MOV(.B) src,dst Пересылка источника в получатель src -> dst - - - -
NOP*   Нет операции   - - - -
POP(.B)* dst Снятие элемента со стека в получатель @SP -> dst, SP + 2 -> SP - - - -
PUSH(.B) src Помещение источника в стек SP - 2 -> SP, src -> @SP - - - -
RET*   Возврат из подпрограммы @SP -> PC, SP + 2 -> SP - - - -
RETI   Возврат из прерывания   * * * *
RLA(.B)* dst Арифметическая ротация влево   * * * *
RLC(.B)* dst Ротация влево через С   * * * *
RRA(.B) dst Арифметическая ротация вправо   0 * * *
RRC(.B) dst Ротация вправо через С   * * * *
SBC(.B)* dst Вычитание not(C) из получателя dst + 0FFFFh + C -> dst * * * *
SETC*   Установка С 1 -> C - - - 1
SETN*   Установка N 1 -> N - 1 - -
SETZ*   Установка Z 1 -> Z - - 1 -
SUB(.B) src,dst Вычитание источника из получателя dst + .not.src + 1 -> dst * * * *
SUBC(.B) src,dst Вычитание источника и not(C) из получателя dst + .not.src + C -> dst * * * *
SWPB dst Обмен байтов   - - - -
SXT dst Распространение знака   0 * * *
TST(.B)* dst Проверка получателя dst + 0FFFFh + 1 0 * * 1
XOR(.B) src,dst Исключающее «ИЛИ» источника и получателя src .xor. dst -> dst * * * *






© 2008 Электроника для начинающих | Programming V.Lasto | Povered by Nano-CMS | Designer S.Gordi