Драйвер протокола приборов серии Мультитест |
Главная / ЭКВМ / Программы для ЭКВМ / Работа с оборудованием |
Драйвер может применяться в практических целях для построения систем контроля и мониторинга химического состава и физических параметров водных сред. Для этого может быть использован измерительно-вычислительный комплекс на базе ЭВМ Электроника МК-152 и аналитических приборов серии Мультитест. Программа может быть использована как пример построения перемещаемого драйвера, работающего с оборудованием по последовательному порту. На основе приведенного примера можно самостоятельно разработать драйвер для других устройств, поддерживающих обмен по интерфейсу RS-232C (Стык С2). Размещение подпрограммы драйвера в памяти программ и используемые регистры данныхПодпрограмма драйвера размещается в памяти программ ЭВМ с начала любой страницы (адрес кратный числу 100) и занимает три последовательно расположенные страницы. Параметры команды протокола передаются в регистрах R7-R9. Содержащиеся в регистрах R99-R102 значения изменяются при работе подпрограммы. Содержимое остальных регистров данных не изменяется. Вызов подпрограммыПеред вызовом подпрограммы в регистры загружаются значения: R7 - параметр Z; R8 - параметр R; R9 - сетевой номер. Обращение к подпрограмме производится соответствующей командой с косвеной или прямой расширенной адресацией по адресу начала подпрограммы в памяти. При каждом вызове происходит однократная посылка команды запроса в соответствии с установленными параметрами. Принятое по протоколу числовое значение в формате float преобразуется в число в формате ЭВМ. Значения регистров функций последовательного порта устанавливаются при каждом вызове подпрограммы. Возвращаемые значенияПодпрограмма возвращает в регистре X стека значение 0 при успешном окончании обмена, значения 1-255 при возникновении ошибок в соответствии с протоколом или значение 256 при отсутствии связи с прибором. В регистре стека Y возвращается число, полученное от опрашиваемого устройства, или нулевое значение при возникновении ошибок. Текст подпрограммы драйвера
Описание подпрограммы
Пример использованияПредположим, что приведенная выше подпрограмма загружена с адреса 100. Следующая программа, выполняет непрерывный опрос параметра по протоколу Мультитест и выводит в регистр Х значение числа, в регистр Y - состояние обмена (0-нет ошибок, 1-255 ошибка протокола, 256 - нет связи). Программа занимает 7 байт с нулевого адреса. В связи с небольшими размерами запишем программу в одну строку без указания адресов: РПП; 01; 00; ↔; К ЭКР; БП; 00 Перед запуском в регистры R7-R9 следует занести необходимые значения. Например, для считывания значения ЭДС из первого канала pH-метра-иономера Мультитест ИПЛ с сетевым номером 1 (параметры Z=10h, R=10h) в регистры следует занести следующие значения: R7=16, R8=16, R9=1. Программа запускается командами В/О, С/П. Останов программы производится нажатием клавиши С/П. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
НПП "СЕМИКО" (383) 271-01-25 (многоканальный) |