The Low Level CAMAC Interface

The functions which are described in this section perform raw CAMAC I/O. They are intended to be used for debugging purposes or for testing new hardware.


Table 8.1: Raw CAMAC Functions
name Explanation Example
cmcrd Read $ret = cmcrd( $n, $f, $a);
cmcrdbcd Read binary coded decimals $ret = cmcrdbcd( $n, $f, $a);
cmcrdbcdc Read complementary binary coded decimals $ret = cmcrdbcdc( $n, $f, $a);
cmcwd Write $ret = cmcwd( $n, $f, $a, $data);
cmcci Clear inhibit $ret = cmcci();
cmcsi Set inhibit $ret = cmcsi();
cmcdc Data way clear $ret = cmcdc();
cmcdz Data way zero $ret = cmcdz();
cmcsc Select crate $ret = cmcsc( $crate);


The following example code demonstrates how data is read/written from/to an input/output register.

#!/bin/perl

use Spectra; 

$n = 9; 
$f = 0; 
$a = 0; 
$status = cmcrd( $n, $f, $a);
print " cmcrd: Got $status \n"; 

$n = 8; 
$f = 16; 
$a = 0; 
$date = 15; 
$status = cmcwd( $n, $f, $a, $data);
print " cmcwd status: $status \n";