v560.c File Reference

Go to the source code of this file.

Functions

static uint16_t regRead (MVME_INTERFACE *mvme, DWORD base, int offset)
static void regWrite (MVME_INTERFACE *mvme, DWORD base, int offset, uint16_t value)
uint16_t v560_RegisterRead (MVME_INTERFACE *mvme, DWORD base, int offset)
void v560_RegisterWrite (MVME_INTERFACE *mvme, DWORD base, int offset, uint16_t value)
void v560_Read (MVME_INTERFACE *mvme, DWORD base, uint32_t data[16])
void v560_Reset (MVME_INTERFACE *mvme, DWORD base)
void v560_Status (MVME_INTERFACE *mvme, DWORD base)


Function Documentation

static uint16_t regRead ( MVME_INTERFACE mvme,
DWORD  base,
int  offset 
) [static]

Definition at line 20 of file v560.c.

00021 {
00022   mvme_set_am(mvme, MVME_AM_A24);
00023   mvme_set_dmode(mvme, MVME_DMODE_D16);
00024   return mvme_read_value(mvme, base + offset);
00025 }

static void regWrite ( MVME_INTERFACE mvme,
DWORD  base,
int  offset,
uint16_t  value 
) [static]

Definition at line 31 of file v560.c.

00032 {
00033   mvme_set_am(mvme, MVME_AM_A24);
00034   mvme_set_dmode(mvme, MVME_DMODE_D16);
00035   mvme_write_value(mvme, base + offset, value);
00036 }

void v560_Read ( MVME_INTERFACE mvme,
DWORD  base,
uint32_t  data[16] 
)

Definition at line 48 of file v560.c.

00049 {
00050   int i;
00051   mvme_set_am(mvme, MVME_AM_A24);
00052   mvme_set_dmode(mvme, MVME_DMODE_D32);
00053   //mvme_set_blt(mvme, MVME_BLT_BLT32);
00054   //mvme_set_blt(mvme, MVME_BLT_NONE);
00055   //mvme_set_blt(mvme, 0);
00056   //mvme_read(mvme, data, base + 0x10, 16*4);
00057 
00058   for (i=0; i<16; i++)
00059     data[i] = mvme_read_value(mvme, base + 0x10 + 4*i);
00060 }

uint16_t v560_RegisterRead ( MVME_INTERFACE mvme,
DWORD  base,
int  offset 
)

Definition at line 38 of file v560.c.

00039 {
00040   return regRead(mvme,base,offset);
00041 }

void v560_RegisterWrite ( MVME_INTERFACE mvme,
DWORD  base,
int  offset,
uint16_t  value 
)

Definition at line 43 of file v560.c.

00044 {
00045   regWrite(mvme,base,offset,value);
00046 }

void v560_Reset ( MVME_INTERFACE mvme,
DWORD  base 
)

Definition at line 63 of file v560.c.

00064 {
00065   regRead(mvme,base,0x54); // VME VETO reset
00066   regRead(mvme,base,0x50); // scalers clear, vme interrupt clear and disable
00067 }

void v560_Status ( MVME_INTERFACE mvme,
DWORD  base 
)

Definition at line 70 of file v560.c.

00071 {
00072   printf("CAEN V560 at A24 0x%x: version 0x%x, type 0x%x, code 0x%x, scaler status: 0x%x\n", (int)base,regRead(mvme,base,0xFE),regRead(mvme,base,0xFC),regRead(mvme,base,0xFA),regRead(mvme,base,0x58));
00073 }


Midas DOC Version 3.0.0 ---- PSI Stefan Ritt ----
Contributions: Pierre-Andre Amaudruz - Sergio Ballestrero - Suzannah Daviel - Doxygen - Peter Green - Qing Gu - Greg Hackman - Gertjan Hofman - Paul Knowles - Exaos Lee - Rudi Meier - Glenn Moloney - Dave Morris - John M O'Donnell - Konstantin Olchanski - Renee Poutissou - Tamsen Schurman - Andreas Suter - Jan M.Wouters - Piotr Adam Zolnierczuk