Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Раздел 5. Инструкции и функции самас



Для обслуживания блоков camac язык camac‑basic обладает рядом специальных команд и встроенных функции. Кроме того, в языке camac‑basic имеются специальные средства, позволяющие быстро взаимодействовать с подпрограммами, написанными на других языках (например, языке ассемблера) для управления системой camac (см. раздел 9).

5.1. cdr ‑ определение регистра camac

Инструкция определяет регистр camac и требует задания трех параметров:

cdr v,n,a

где

v ‑ имя переменной, обозначающей регистр camac;

n ‑ константа, переменная или выражение, определяющее номер позиции модуля в крейте camac;

а ‑ константа, переменная или выражение, определяющее субадрес

В результате исполнения инструкции непосредственного обращения к camac не происходит, переменная v принимает значение, равное внутреннему адресу регистра camac в адресном пространстве контроллера.

Пример:

>10 cdr r, 3, 0

>15 rem camac-регистр r, станция 3, субадрес 0

5.2. cfr ‑ исполнение функций чтения

Инструкция служит для присваивания значений переменным 16-ти разрядных данных из регистров camac (чтение и запоминание данных camac). Инструкция требует задания трех параметров:

cfr f,a,v

где

f ‑ константа, переменная или выражение, определяющее функцию camac;

а ‑ константа, переменная или выражение, определяющее регистр camac;

v ‑ переменная, принимающая значение по окончании операции чтения.

Пример:

>10 cfr f,d,v

>20 cfr 2,r+2,t

5.3. cfw ‑ исполнение функции записи

Инструкция служит для передачи 16-разрядных данных в регистры camac. Инструкция требует задания трех параметров:

cfw f,a,v

где

f ‑ константа, переменная или выражение, определяющее функцию camac;

а ‑ константа, переменная или выражение, определяющее регистр camac;

v ‑ константа, переменная или выражение, значение которого передается в регистр camac.

Пример:

>10 cfw v,r,1

>20 cfw 17,x,1+sin(y)

5.4. cft ‑ исполнение функций установки и тестирования

Инструкция служит для исполнения функций установки состояния модулей camac и функций тестирования состояний, не требующих передачи данных. Инструкция требует задания двух параметров:

cft f,a

где

f ‑ константа, переменная или выражение, определяющее функцию camac;

а ‑ константа, переменная или выражение, определяющее субадрес camac.

Пример:

>10 cft f,r

>20 cft 26,a+1

5.5. ccz, ccc, cci ‑ генерация сигналов camac

Инструкции:

CCZ

CCC

служат для генерации сигналов сброса camac z и c, соответственно, и не требуют задания параметров.

Инструкция CCI служит для управления сигналом i (его установки либо сброса) и требует задания одного параметра:

CCI V

где v ‑ константа, переменная или выражение, определяющее состояние сигнала i (0 или 1).

Пример:

>10 ccz

>20 cci i1

>30 cci 0

5.6. ctq, cti, ctx, ctl ‑ тестирование состояния крейта camac

Значением функции тестирования состояния крейта camac являются значения 0 или 1 в зависимости от состояния крейта camac в момент исполнения функций. функции ctq, cti, ctxслужат для тестирования состояния Q, I, X, и требуют задания фиктивного аргумента в соответствии с синтаксисом языка (любого параметра). функция CTL служит для тестирования запросов lam и требует задания аргумента, определяющего номер станции (позиции) крейта camac.

Пример:

>10 y=cti(1)

>20 if ctq(x)=0 then 90

>30 z=ctl(8)





Дата публикования: 2014-12-25; Прочитано: 150 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...