Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
536 Микроконтроллеры AVR от азов программирования... Группа команд передачи управления (безусловная передача управления) Мнемоника Описание Операция Ц иклы Флаги RJMP Относительный безусловный переход РС<-РС + к+1 2 - IJMP Косвенный безусловный переход PC<-Z 2 - RCALL Относительный вызов подпрограммы PC <- PC + к + 1 3 - ICALL Косвенный вызов подпрограммы PC<-Z 3 - RET Возврат из подпрограммы PC <- STACK 4 - RETI Возврат из подпрограммы обработки прерываний PC <- STACK 4 I Группа команд передачи управления (пропуск команды по условию) Мнемоника Описание Условие Циклы Флаги Все команды этой группы пропускают следующую за ней команду ( PC <- PC + 1 ) при разных условиях: CPSE Rd, Rr Сравнение и пропуск следующей команды при равенстве Если Rd = Rr 1/2/3 - SBRC Rr, b Пропуск следующей команды если разряд РОН сброшен Если Rr,b = 0 1/2/3 - SBRS Rr, b Пропуск следующей команды если разряд РОН установлен Если Rr.b = 1 1/2/3 - SBIC A, b Пропуск следующей команды если разряд РВВ сброшен Если A.b = 0 1/2/3 - SBIS A, b Пропуск следующей команды если разряд РВВ установлен Если A.b = 1 1/2/3 - Группа команд передачи управления (передача управления по условию) Мнемоника Описание Условие Циклы Флаги Все команды этой группы выполняют переход ( PC <- PC + к + 1 ) при разных условиях: BRBC s, к Переход, если флаг s регистра SREG сброшен Если SREG.s = 0 1/2 - BRBS s, к Переход, если флаг s регистра SREG установлен Если SREG.s = 1 1/2 - BRCSk Переход по переносу Если С = 1 1/2 - BRCCk Переход, если нет переноса Если С = 0 1/2 - BREQk Переход по условию «равно» Если Z = 1 1/2 - BRNEk Переход по условию «неравно» Если Z = 0 1/2 - BRSHk Переход по условию «больше или равно» Если С = 0 1/2 - BRLOk Переход по условию «меньше» Если С = 1 1/2 - BRMIk Переход по условию «отрицательное значение» Если N = 1 1/2 - BRPLk Переход по условию «положительное значение» Если N = 0 1/2 - BRGEk Переход по условию «больше или равно» (со знаком) Если (N и V) = 0 1/2 - BRLTk Переход по условию «меньше» (со знаком) Если (N или V) = 1 1/2 - BRHSk Переход по половинному переносу Если Н = 1 1/2 - BRHCk Переход, если нет половинного переноса Если Н = 0 1/2 - BRTSk Переход, если флагТ установлен Если Т = 1 1/2 - BRTCk Переход, если флагТ сброшен Если Т = 0 1/2 - BRVSk Переход по переполнению дополнительного кода ЕслиУ=1 1/2 - BRVCk Переход, если нет переполнения дополнительного кода Если V = 0 1/2 - BRIDk Переход, если прерывания запрещены Если I = 0 1/2 - BRIE к Переход, если прерывания разрешены Если I = 1 1/2 -
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==