
- •Лекция №1 Введение в интегрированные системы проектирования и управления
- •Лекция №2 Структура асутп на основе scada. Архитектура на примере пп Trace Mode. Понятия и определения.
- •Инструментальная система
- •Исполнительные модули
- •Лекция № 3 Обработка данных в канале Переменные канала
- •Экспоненциальное сглаживание
- •Подавление пиков
- •Контроль шкалы
- •Ограничение скорости изменения
- •Ограничение выходной величины
- •Логическая обработка Анализ на допустимость сочетания
- •Инверсия
- •Предустановка
- •Лекция №5 Языки программирования алгоритмов. Fbd модули
- •Типы входов и выходов
- •Пересчет блоков
- •Язык инструкций (Техно il)
- •Описание языка Техно il
- •Переменные Техно il
- •Входные переменные (I)
- •Выходные переменные (q)
- •Статические переменные (e)
- •Динамические переменные
- •Системные переменные
- •Константы
- •Операнды
- •Функции
- •Операторы циклов, условных и безусловных переходов, условный оператор.
- •Комментарии
- •Лекция № 7 Особенности работы с платами ввода –вывода. Разработка драйвера для платы усо l_card -264 в windows
- •Методика измерения межканального прохождения
- •Установка коэффициента усиления
- •Установка режима подключения сигналов
- •Также имеется возможность установки номера линии прерывания 1конфигурирования работы канала пдп
- •2Общая информация о dll-библиотекАх lcard_ad.Dll и lcard_32.Dll.
- •3Dll-библиотеки в Microsoft Windows.
- •4Использование библиотеки lcard_xx.Dll в программах на Си.
- •5Загрузка управляющей программы для плат l1610, l12xx, l1056, l305.
- •6 Загрузка bios процессора adsp-21xx в плату (loadbios())
- •7Установка базового адреса платы (set_base_address())
Системные переменные
В языке Техно IL используются две системные переменные:
result -;CMP
Первая из них используется при одноадресной записи операций. В этом случае она является вторым операндом и в нее записывается результат. Для явного вызова этой переменной используется идентификатор X.
Переменная CMP формируется операциями сравнения и оператором TEST. Она может принимать значения истинно или ложно и используется операторами условного перехода.
Константы
Константы могут быть двух типов:
целые числа в диапазоне от –127 до 127;
любые другие числа.
Эти константы могут записываться в десятеричном и в шестнадцатеричном виде. Шестнадцатеричная константа начинается с 0х.
Ограничений на число констант первого типа не накладывается. Максимальное число констант второго типа для программ типа FB равно 10, а для PRG – 40. Совпадающие по значению константы считаются за одну.
Операнды
Каждая инструкция программы содержит оператор и операнды. Оператор задает действие, которое надо выполнить с операндами. В качестве операндов в IL-программе могут использоваться все описанные выше переменные, кроме CMP, а также константы.
Значение операнда HEX-формата, задаваемого константой, не может быть больше 0xFF (255).
Язык Техно IL позволяет выполнять с операндами арифметические и логические операции, а также операции сравнения. Почти все они имеют два обозначения: символьное и мнемоническое.
Синтаксис записи операций
В соответствии со стандартом в строке записывается сначала мнемоническое обозначение операции, затем через пробел – операнд.. Техно IL позволяет использовать два операнда и мнемоническое или символьное обозначение операции. Кроме того, обозначение операции может быть помещено между операндами.
Внимание! При записи символа операции между операндами он должен быть отделен пробелами с двух сторон.
Например, операция сложения переменной Q1 с переменной I2 с записью результата в первую из них в соответствии со стандартом записывается следующим образом:
LD Q1
ADD I2
ST Q1
В Техно IL эта операция может быть записана так же, а может - существенно компактнее:
ADD Q1 I2
или
+ Q1 I2
или
Q1 + I2
В одной строке программы можно записать несколько операций. В этом случае их следует разделять символом “;”.
Арифметические операции
Техно IL поддерживает следующие арифметические операции:
-
Символьное обозначение
Мнемоническое обозначение
Описание
+
ADD
Сложить операнды;
-
SUB
Вычесть из первого операнда второй;
*
MUL
Умножить операнды;
/
DIV
Разделить первый операнд на второй;
%
MOD
Получить остаток от деления операндов;
**
POW
Возвести первый операнд в степень, заданную вторым операндом;
=
MOVE
Присвоить первому операнду значение второго.
Результат выполнения операции заносится в первый операнд. Если в операции указан только один операнд, то он воспринимается как второй, а в качестве первого используется значение аккумулятора.
Логические операции
Программы на Техно IL позволяют выполнять следующие логические операции с операндами:
-
Символьное обозначение
Мнемоническое обозначение
Описание
&
AND
Логическое умножение;
|
OR
Логическое сложение;
^
XOR
Исключающее логическое сложение;
ANDN
Логическое умножение первого операнда на инвертированное значение второго;
ORN
Логическое сложение первого операнда с инвертированным значением второго;
XORN
Исключающее логическое сложение первого операнда с инвертированным значением второго.
Эти операции выполняются побитно над значениями соответствующих битов операндов.
Операции сравнения
Из операций сравнения в Техно IL реализованы следующие:
-
Символьное обозначение
Мнемоническое обозначение
Описание
==
EQ
Сравнение на равенство;
>
GT
Сравнение на "больше";
>=
GE
Сравнение на "больше или равно";
<
LT
Сравнение на "меньше";
<=
LE
Сравнение на "меньше или равно";
!=
NE
Сравнение на неравенство;
TEST
Сравнение на равенство 0 логического умножения операндов.
Эти операции сравнивают значение первого операнда со вторым на соответствующее условие. По результатам формируется значение переменной CMP. Оно будет истинно при выполнении условия и ложно в противном случае.
Эта переменная анализируется в операторах условного перехода Если в операции указан только один операнд, то он воспринимается как второй. А в качестве первого используется аккумулятор.