00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef V1729_INCLUDE_H
00011 #define V1729_INCLUDE_H
00012
00013 #include <stdio.h>
00014 #include <string.h>
00015
00016 #include "mvmestd.h"
00017
00018 #define V1729_SUCCESS 1
00019 #define V1729_ERROR -1
00020
00021 #define V1729_MAX_CHANNELS (DWORD) 4
00022 #define V1729_MAX_CHANNEL_SIZE (DWORD) 2560
00023 #define V1729_RAM_SIZE (DWORD) (4*2563)
00024 #define V1729_RESET_W (DWORD) (0x0800)
00025 #define V1729_PRETRIG_LSB (DWORD) (0x1800)
00026 #define V1729_PRETRIG_MSB (DWORD) (0x1900)
00027 #define V1729_POSTTRIG_LSB (DWORD) (0x1A00)
00028 #define V1729_POSTTRIG_MSB (DWORD) (0x1B00)
00029
00030 #define V1729_TRIGTYPE (DWORD) (0x1D00)
00031 #define V1729_SOFT_TRIGGER (DWORD) (0x0)
00032 #define V1729_TRIG_ON_DISCR (DWORD) (0x1)
00033 #define V1729_EXTERNAL_TRIGGER (DWORD) (0x2)
00034 #define V1729_SOFT_OR_DISCR (DWORD) (0x3)
00035 #define V1729_RISING_EDGE (DWORD) (0x0)
00036 #define V1729_FALLING_EDGE (DWORD) (0x4)
00037 #define V1729_INHIBIT_RANDOM (DWORD) (0x0)
00038 #define V1729_AUTHORIZE_RANDOM (DWORD) (0x8)
00039 #define V1729_NORMAL_TRIGGER (DWORD) (0x0)
00040 #define V1729_EXT_TRIGG_NO_MASK (DWORD) (0x10)
00041
00042 #define V1729_TRIGCHAN (DWORD) (0x1E00)
00043 #define V1729_DISABLE_ALL (DWORD) (0x0)
00044 #define V1729_ENABLE_CH1 (DWORD) (0x1)
00045 #define V1729_ENABLE_CH2 (DWORD) (0x2)
00046 #define V1729_ENABLE_CH3 (DWORD) (0x4)
00047 #define V1729_ENABLE_CH4 (DWORD) (0x8)
00048 #define V1729_ALL_FOUR (DWORD) (0xF)
00049
00050 #define V1729_ACQ_START_W (DWORD) (0x1700)
00051 #define V1729_SOFT_TRIGGER_W (DWORD) (0x1C00)
00052 #define V1729_DATA_FIFO_R (DWORD) (0x0D00)
00053 #define V1729_TRIGREC_R (DWORD) (0x2000)
00054 #define V1729_FAST_READ_MODES (DWORD) (0x2100)
00055 #define V1729_N_COL (DWORD) (0x2200)
00056 #define V1729_CHANMASK (DWORD) (0x2300)
00057 #define V1729_INTERRUPT_REG (DWORD) (0x8000)
00058 #define V1729_FRQ_SAMPLING (DWORD) (0x8100)
00059
00060 #define V1729_1GSPS (DWORD) 2
00061 #define V1729_2GSPS (DWORD) 1
00062
00063 #define V1729_VERSION_R (DWORD) (0x8200)
00064 #define V1729_INTERRUPT_ENABLE (DWORD) (0x8300) //
00065
00066 void v1729_AcqStart(MVME_INTERFACE *mvme, DWORD base);
00067 void v1729_Reset(MVME_INTERFACE *mvme, DWORD base);
00068 int v1729_Setup(MVME_INTERFACE *mvme, DWORD base, int mode);
00069 int v1729_Status(MVME_INTERFACE *mvme, DWORD base);
00070 int v1729_isTrigger(MVME_INTERFACE *mvme, DWORD base);
00071 void v1729_SoftTrigger(MVME_INTERFACE *mvme, DWORD base);
00072 void v1729_PreTrigSet(MVME_INTERFACE *mvme, DWORD base, int value);
00073 void v1729_PostTrigSet(MVME_INTERFACE *mvme, DWORD base, int value);
00074 void v1729_TriggerTypeSet(MVME_INTERFACE *mvme, DWORD base, int value);
00075 void v1729_ChannelSelect(MVME_INTERFACE *mvme, DWORD base, int value);
00076 void v1729_FrqSamplingSet(MVME_INTERFACE *mvme, DWORD base, int value);
00077 void v1729_NColsSet(MVME_INTERFACE *mvme, DWORD base, int value);
00078 int v1729_NColsGet(MVME_INTERFACE *mvme, DWORD base);
00079 int v1729_TimeCalibrationRun(MVME_INTERFACE *mvme, DWORD base, int flag);
00080 int v1729_PedestalRun(MVME_INTERFACE *mvme, DWORD base, int loop, int flag);
00081 void v1729_DataRead(MVME_INTERFACE *mvme, DWORD base, WORD *pdest, int nch, int npt);
00082 int v1729_OrderData(MVME_INTERFACE *mvme, DWORD base, WORD *psrce, int *pdest, int nch, int ch, int npt);
00083
00084 #endif // V1729_INCLUDE_H