quadEM  7-0
Macros | Functions
drvAPS_EM.cpp File Reference
#include <stdio.h>
#include <string.h>
#include <devLib.h>
#include <epicsTypes.h>
#include <epicsThread.h>
#include <epicsString.h>
#include <epicsMessageQueue.h>
#include <epicsPrint.h>
#include <iocsh.h>
#include <epicsExport.h>
#include "drvAPS_EM.h"

Macros

#define MAX_A24_ADDRESS   0xffffff
 
#define MAX_MESSAGES   100
 
#define APS_EM_PULSE_VALUE   1024
 
#define APS_EM_PERIOD_VALUE   0xFFFF
 
#define COMMAND1   0xa000
 
#define RANGE_COMMAND   1
 
#define GO_COMMAND   4
 
#define CONV_COMMAND   5
 
#define PULSE_COMMAND   6
 
#define PERIOD_COMMAND   7
 
#define REBOOT_COMMAND   14
 
#define MIN_CONVERSION_TIME_VALUE   384
 
#define MAX_CONVERSION_TIME_VALUE   8192
 

Functions

int drvAPS_EMConfigure (const char *portName, unsigned short *baseAddr, int fiberChannel, const char *unidigName, int unidigChan, char *unidigDrvInfo, int ringBufferSize)
 EPICS iocsh callable function to call constructor for the drvAPS_EM class. More...
 
void drvAPS_EMRegister (void)
 
 epicsExportRegistrar (drvAPS_EMRegister)
 

Macro Definition Documentation

#define APS_EM_PERIOD_VALUE   0xFFFF
#define APS_EM_PULSE_VALUE   1024
#define COMMAND1   0xa000
#define CONV_COMMAND   5
#define GO_COMMAND   4
#define MAX_A24_ADDRESS   0xffffff
#define MAX_CONVERSION_TIME_VALUE   8192
#define MAX_MESSAGES   100
#define MIN_CONVERSION_TIME_VALUE   384
#define PERIOD_COMMAND   7
#define PULSE_COMMAND   6
#define RANGE_COMMAND   1
#define REBOOT_COMMAND   14

Function Documentation

int drvAPS_EMConfigure ( const char *  portName,
unsigned short *  baseAddr,
int  fiberChannel,
const char *  unidigName,
int  unidigChan,
char *  unidigDrvInfo,
int  ringBufferSize 
)

EPICS iocsh callable function to call constructor for the drvAPS_EM class.

Parameters
[in]portNameThe name of the asyn port driver to be created.
[in]baseAddrA24 base address of the VME card
[in]fiberChannelAddress [0-3] of the fiber channel connected to the electrometer
[in]unidigNameName of asynPort for the Ip-Unidig driver if it is being used to generate interrupts
[in]unidigChanChannel number [0-23] of the Ip-Unidig connected to the APS_EM pulse output, if Ip-Unidig is being used.
[in]unidigDrvInfoThe drvInfo field for the data callback of the ipUnidig driver. If not specified then asynUser->reason=0 is used.
[in]ringBufferSizeThe number of samples to hold in the input ring buffer. This should be large enough to hold all the samples between reads of the device, e.g. 1 ms SampleTime and 1 second read rate = 1000 samples. If 0 then default of 2048 is used.
void drvAPS_EMRegister ( void  )
epicsExportRegistrar ( drvAPS_EMRegister  )