Система команд микроконтроллера
Сокращенное обозначение команд | Формант команды | Комментарий | |
Код операции | Операнд | ||
Команды ввода-вывода | |||
ОЖО | Адрес входа | Ожидание отсутствия входного сигнала. Переход к выполнению следующей команды происходит только при отсутствии сигнала на входе с заданным адресом | |
ОЖ1 | Адрес входа | Ожидание наличия входного сигнала. Переход к выполнению следующей команды происходит только при наличии сигнала на входе с заданным адресом | |
ПР0 | Адрес входа | Проверка входа на отсутствие сигнала. При отсутствии сигнала на входе с заданным адресом бит условия сохраняет предыдущее значение, в противном случае бит условия обнуляется | |
ПР1 | Адрес входа | Проверка входа на наличие сигнала. При наличии сигнала на входе с заданным адресом бит условия сохраняет предыдущее значение, в противном случае бит условия обнуляется | |
ВКЛ | Адрес выхода | Включить выход с заданным адресом | |
ВЫКЛ | Адрес выхода | Выключить выход с заданным адресом | |
БУ | Адрес выхода | Вывод бита условия прямой. Выход с заданным адресом устанавливается в соответствии с содержимым бита условия | |
БУ | Адрес выхода | Вывод бита условия инверсный. Выход с заданным адресом устанавливается в соответствии со значением, противоположным содержимому бита условия | |
Т | Т | Выдержка времени. Команда задержки выполнения управляющей программы на время Т-0,1 с | |
УСТ БУ ВХ | 1E | Адрес входа | Бит условия принимает значения сигнала на входе с заданным адресом |
УСТ БУ ВХ | 1F | Адрес входа | Бит условия принимает инверсное значение сигнала на вход с заданным адресом |
Команды управления программой | |||
НОП | Нет операции. Безусловный переход к выполнению следующей команды | ||
СТОП | Останов программы | ||
БУП | Адрес команды | Безусловный переход к выполнению команды, содержащейся по указанному адресу | |
УП1 | 0А | Адрес команды | Переход к выполнению команды, содержащейся но указанному адресу, если в бите условия 1. В противном случае происходит выполнение следующей команды |
УП0 | OB | Адрес команды | Переход к выполнению команды, содержащейся по указанному адресу, если в бите условия 0. В противном случае происходит выполнение следующей команды |
ПП | Адрес команды | Переход к подпрограмме. Переход к выполнению команды, содержащейся по указанному адресу, с запоминанием адреса возврата | |
ВОЗВРАТ | Возврат из подпрограммы | ||
Команды управления счетчиком | |||
ССЧ | OD | ONc(ONc -номер счетчика) | Сброс счетчика. Обнуление счетчика с заданным номером |
+СЧ | OC | ONc(ONc -номер счетчика) | Содержимое счетчика с заданным номером увеличивается на 1 |
=СЧ | OE | Установка, номер счетчика | Сравнение счетчика. Если содержимое счетчика с заданным номером равно уставке, то бит условия сохраняет свое предыдущее значение. В противном случае бит условия обнуляется |
Команды контроля и редактирования программы | |||
РЕД | Адрес команды | Команда управляющей программы, начиная с указанного адреса и до первого адреса, содержащего команду НОП, сдвигается в сторону увеличения адресов на один шаг. По указанному адресу записывается код 0000 команды НОП. Команда РЕД используется для вставки команд в управляющую программу | |
КСП | Номер страницы (08 или 09) | Вычисление контрольной суммы кодов команд, содержащихся в странице памяти с указанным номером |
Формат каждой команды (рисунок 8) составляет 2 байта и делится на два поля длиной по восемь разрядов (DO—D7) — поле кода операции (старший байт) и поле операнда (младший байт). N0, N1, N2, N3 кодируются символами шестнадцатеричной системы счисления (см. табл. 1).
D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0
N3
N2
N1
N0
Старший байт
Младший байт
Рисунок 8- Формат команды микроконтроллера
Совокупность команд микроконтроллера, образующая управляющую программу, записывается и хранится в модуле ЭНЗУ. Объем модуля позволяет записать 256 команд (512 байт) и составляет нулевую зону памяти (0 зона МЭНЗУ), которая в свою очередь делится на две страницы, объемом по 128 команд (256 байт). Нулевой номер зоны является базовым адресом для отсчета команд управляющей программы, записанной в зоне, и хранится в служебном регистре БА, организованном исполнительной программой в оперативном запоминающем устройстве (ОЗУ) микроконтроллера.
Таблица 3
Команды вывода информации
Формат команды | Условное обозначение перемещения исполнительного механизма | Комментарий | |
Код операции | Операнд | ||
Включить электромагнитный клапан с адресом 00. Механизм подъема займет нижнее положение | |||
Выключить электромагнитный клапан с адресом 00. МПД займет верхнее положение | |||
Включить электромагнитный клапан с адресом 00. Механизм поворота повернется против часовой стрелки | |||
Выключить электромагнитный клапан с адресом 01. МПВ повернется по часовой стрелке | |||
Включить электромагнитный клапан с адресом 02. Механизм горизонтальных перемещений выдвинется вперед | |||
Выключить электоомагнитный клапан с адресом 02. МГП отведен назад | |||
Включить электромагнитный клапан с адресом 03. Фланец механизма сгиба опустится и займет нижнее положение. Механизм ротации совершит поворот против часовой стрелки | |||
Выключить электромагнитный клапан с адресом 03. Фланец МСГ поднят. MP повернется по, часовой 1 стрелке | |||
Включить электромагнитный клапан с адресом 04. Механический схват разожмется | |||
Выключить электромагнитный клапан с адресом 04. Механический схват сожмется | |||
Электромагнитный клапан с адресом 01 включить, если бит условия установлен в 1; в противном случае — выключить | |||
Электромагнитный клапан с адресом 03 включить, если бит условия установлен в 0; в противном случае — выключить |
Помимо БА (базового адреса) в ОЗУ имеются следующие регистры:
СК — счетчик команд микроконтроллера, содержимое которого определяет адрес команды в пределах зоны памяти;
БУ — бит условия, значение которого устанавливается в зависимости от результата выполнения операций; анализ БУ используется для управления ходом выполнения управляющей программы;
УС — указатель стека, определяющий адреса ячеек ОЗУ (стековый памяти), в которых запоминаются значения БА и СК при обращении к подпрограмме и откуда они выбираются при выполнении команды возврата.
— шестнадцать счетчиков, содержание которых может изменяться от 0 до F. При необходимости счетчик может быть использован как однобитная память.
Команды ввода—вывода обеспечивают ввод информации от датчиков контроля положения манипулятора и состояния оборудования и выдачу управляющих воздействий на исполнительные устройства.
В командах вывода информации (табл. 3) адрес выхода, определяемый значением операнда, кодируется двумя шестнадцатеричными цифрами N1, N0 (см. табл. 2), первая из которых принимает значение 0 и указывает адрес модуля вывода дискретных сигналов. Второе число (N0) определяет один из шестнадцати выходов 0,..., F модуля. Состояние каждого выхода отображается соответствующим индикатором (см. рис. 3, поз. 9).
В командах ввода информации (табл. 4) их адреса определяются аналогично адресам выходов. Состояние каждого входа отображается на индикаторах 0,... F, выведенных на переднюю панель модуля ввода дискретных сигналов (см. рис. 3, поз.8).
Таблица 4
Дата добавления: 2022-02-05; просмотров: 338;