mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-23 06:50:02 +02:00
Merge branch '3.0' into 3.0.1
This commit is contained in:
commit
4c9cc1b477
Binary file not shown.
@ -6,7 +6,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* global variables */
|
/* global variables */
|
||||||
void serializeToSPI(u_int32_t addr, u_int32_t val, u_int16_t csmask, int numbitstosend, u_int16_t clkmask, u_int16_t digoutmask, int digofset) {
|
void serializeToSPI(u_int32_t addr, u_int32_t val, u_int32_t csmask, int numbitstosend, u_int32_t clkmask, u_int32_t digoutmask, int digofset) {
|
||||||
#ifdef VERBOSE
|
#ifdef VERBOSE
|
||||||
if (numbitstosend == 16)
|
if (numbitstosend == 16)
|
||||||
printf("Writing to SPI Register: 0x%04x\n",val);
|
printf("Writing to SPI Register: 0x%04x\n",val);
|
||||||
@ -14,15 +14,15 @@ void serializeToSPI(u_int32_t addr, u_int32_t val, u_int16_t csmask, int numbits
|
|||||||
printf("Writing to SPI Register: 0x%08x\n", val);
|
printf("Writing to SPI Register: 0x%08x\n", val);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
u_int16_t valw;
|
u_int32_t valw;
|
||||||
|
|
||||||
// start point
|
// start point
|
||||||
valw = 0xffff; /**todo testwith old board 0xff for adc_spi */ // old board compatibility (not using specific bits)
|
valw = 0xffffffff; // old board compatibility (not using specific bits)
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
|
|
||||||
// chip sel bar down
|
// chip sel bar down
|
||||||
valw &= ~csmask; /* todo with test: done a bit different, not with previous value */
|
valw &= ~csmask; /* todo with test: done a bit different, not with previous value */
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
|
|
||||||
{
|
{
|
||||||
int i = 0;
|
int i = 0;
|
||||||
@ -30,30 +30,30 @@ void serializeToSPI(u_int32_t addr, u_int32_t val, u_int16_t csmask, int numbits
|
|||||||
|
|
||||||
// clk down
|
// clk down
|
||||||
valw &= ~clkmask;
|
valw &= ~clkmask;
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
|
|
||||||
// write data (i)
|
// write data (i)
|
||||||
valw = ((valw & ~digoutmask) + // unset bit
|
valw = ((valw & ~digoutmask) + // unset bit
|
||||||
(((val >> (numbitstosend - 1 - i)) & 0x1) << digofset)); // each bit from val starting from msb
|
(((val >> (numbitstosend - 1 - i)) & 0x1) << digofset)); // each bit from val starting from msb
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
|
|
||||||
// clk up
|
// clk up
|
||||||
valw |= clkmask ;
|
valw |= clkmask ;
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// chip sel bar up
|
// chip sel bar up
|
||||||
valw |= csmask; /* todo with test: not done for spi */
|
valw |= csmask; /* todo with test: not done for spi */
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
|
|
||||||
//clk down
|
//clk down
|
||||||
valw &= ~clkmask;
|
valw &= ~clkmask;
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
|
|
||||||
// stop point = start point of course
|
// stop point = start point of course
|
||||||
valw = 0xffff; /**todo testwith old board 0xff for adc_spi */ // old board compatibility (not using specific bits)
|
valw = 0xffffffff; // old board compatibility (not using specific bits)
|
||||||
bus_w16 (addr, valw);
|
bus_w (addr, valw);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ int setThresholdEnergy(int ev, int imod);
|
|||||||
|
|
||||||
// parameters - dac, adc, hv
|
// parameters - dac, adc, hv
|
||||||
#ifdef JUNGFRAUD
|
#ifdef JUNGFRAUD
|
||||||
void serializeToSPI(u_int32_t addr, u_int32_t val, u_int16_t csmask, int numbitstosend, u_int16_t clkmask, u_int16_t digoutmask, int digofset);
|
void serializeToSPI(u_int32_t addr, u_int32_t val, u_int32_t csmask, int numbitstosend, u_int32_t clkmask, u_int32_t digoutmask, int digofset);
|
||||||
void initDac(int dacnum);
|
void initDac(int dacnum);
|
||||||
extern void setAdc(int addr, int val); // AD9257.h
|
extern void setAdc(int addr, int val); // AD9257.h
|
||||||
int voltageToDac(int value);
|
int voltageToDac(int value);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user