
5—170 Глава 5: Стандартные команды RLL.
Руководство пользователя контроллера DL06 (D0-06USER-M-RUS)/ Перевод ООО «ПЛКСистемы»
Swap (SWAP)
Команда Swap обменивает данные в двух
таблицах равной длины.
Шаг 1:— Загрузите длину таблицы (число ячеек V-памяти) в первый уровень
стека аккумулятора. Этот параметр должен быть шестнадцатиричным числом
в пределах от 0 до FF. Помните, что таблицы должны быть одинаковой
длины.
Шаг 2:— Загрузите начальный адрес ячейки V-памяти для таблицы в
аккумулятор. Этот параметр должен быть шестнадцатиричным числом. Вы
можете использовать команду LDA для конвертации восьмиричного адреса в
шестнадцатиричное число.
Шаг 3:— Вставьте команду Swap, которая определяет начальный адрес
второй таблицы V-памяти. Этот параметр должен быть шестнадцатиричным
числом. Вы можете использовать команду LDA для конвертации
восьмиричного адреса в шестнадцатиричное число.
Полезный совет: — Инструкция будет выполнятся каждый цикл
сканирования, если входная логика включена. Если Вы не хотите, чтобы
команда выполнялась более чем один цикл сканирования, используйте
команду одиночного импульса PD во входной логике.
Полезный совет: — Вы можете использовать команду LDA для
преобразования восьмиричного адреса в шестнадцатиричный и загрузки его в
аккумулятор.
Полезный совет: — Перестановка данных выполняется в пределах одного
цикла сканирования. Если инструкция выполняется в течении нескольких
последовательных циклов сканирования, то будет трудно знать фактическое
содержание любой таблицы в заданный момент времени. Таким образом, не
забудьте, что применять эту команду следует только в одном сканировании.
Тип данных операнда Диапазон DL06
A aaa
V-память V Смотри карту памяти
Пример справа показывает таблицу из двух слов
при V3000. Мы будем менять содержание с
другой таблицей из двух слов начиная с 3100,
используя команду Swap. Требуемая релейная
программа дана ниже.
Пример программы, приведенный ниже использует контакт PD (одиночный
импульс для перехода входа от выключено в включено). Сначала, мы
загружаем длину таблиц (два слова) в аккумулятор. Затем мы загружаем
адрес первой таблицы (V3000) в аккумулятор, используя команду LDA,
преобразовывающую восьмеричный адрес в шестнадцатеричное число.
Обратите внимание, что это не имеет значения, какую таблицу мы объявляем
первой, потому что результаты перестановки будут одинаковы.