Сопряжение компьютеров с внешними устройствами в стандарте КАМАК. Заярный В.П - 51 стр.

UptoLike

51
Оператор delay(X) приостанавливает выполнение программы на Х
микросекунд. Задержка требуется для того, чтобы система КАМАК успе-
вала обрабатывать команду. Если попытаться работать без задержки, сис-
тема будет срабатывать не при каждом запуске программы и будет рабо-
тать неустойчиво.
Выбираем слово состояния (128
10
=0000000010000000
2
), исходя из сле-
дующего:
Режим : чтение;
Смещение : нет;
Диапазон : 0 ÷ –1.016В;
Тактирование: 25 нс.
Процедура cc2mag() должна выдавать слово состояния на магистраль.
Выдача данных на магистраль КАМАК происходит при запуске СС-08 на
выполнение функции с номером F(16) — F(23). Выбираем F(16). Можно
выбрать также F(17) как функцию чтения РС с магистрали. В этом случае
имеем
дублирование чтения, что при нестабильной работе системы повы-
шает надежность работы программы.
procedure cc2mag(a:word);
begin
port[$104]:=lo(a);
port[$105]:=hi(a);
port[$108]:=adcaddr;
port[$102]:=16
end;
Процедура вывода данных на магистраль описана также в руководстве
к работе «Программирование ЦАП в стандарте КАМАК».
Чтение данных с магистрали в регистр состояния АЦП происходит
при выполнении функции NA(0)F(17). Запрограммировать этот процесс
несложно. Заносим в
регистр контроллера N (порт 108Н) номер станции
АЦП, в регистр А (порт 101Н) — 0, в регистр F (порт 102Н) — 17:
procedure writeRC;
begin
port[$108]:=adcaddr;
port[$101]:=$0;
port[$102]:=17;
end;
Запуск АЦП на оцифровку производится аналогично, но с использо-
ванием функции NA(0)F(25):