mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-23 18:17:59 +02:00
Jungfrautrigger (#516)
* jungfrau trigger added * added blocking trigger
This commit is contained in:
@ -218,6 +218,8 @@
|
||||
#define CONTROL_START_ACQ_MSK (0x00000001 << CONTROL_START_ACQ_OFST)
|
||||
#define CONTROL_STOP_ACQ_OFST (1)
|
||||
#define CONTROL_STOP_ACQ_MSK (0x00000001 << CONTROL_STOP_ACQ_OFST)
|
||||
#define CONTROL_SOFTWARE_TRIGGER_OFST (2)
|
||||
#define CONTROL_SOFTWARE_TRIGGER_MSK (0x00000001 << CONTROL_SOFTWARE_TRIGGER_OFST)
|
||||
#define CONTROL_CORE_RST_OFST (10)
|
||||
#define CONTROL_CORE_RST_MSK (0x00000001 << CONTROL_CORE_RST_OFST)
|
||||
#define CONTROL_PERIPHERAL_RST_OFST (11) // DDR3 HMem Ctrlr, GBE, Temp
|
||||
|
Binary file not shown.
@ -2686,6 +2686,33 @@ int stopStateMachine() {
|
||||
return OK;
|
||||
}
|
||||
|
||||
int softwareTrigger(int block) {
|
||||
#ifndef VIRTUAL
|
||||
// ready for trigger
|
||||
if (getRunStatus() != WAITING) {
|
||||
LOG(logWARNING, ("Not yet ready for trigger!\n"));
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
LOG(logINFO, ("Sending Software Trigger\n"));
|
||||
bus_w(CONTROL_REG, bus_r(CONTROL_REG) | CONTROL_SOFTWARE_TRIGGER_MSK);
|
||||
|
||||
#ifndef VIRTUAL
|
||||
// block till frame is sent out
|
||||
if (block) {
|
||||
enum runStatus s = getRunStatus();
|
||||
while (s == RUNNING || s == TRANSMITTING) {
|
||||
usleep(5000);
|
||||
s = getRunStatus();
|
||||
}
|
||||
}
|
||||
LOG(logINFO, ("Ready for Next Trigger...\n"));
|
||||
#endif
|
||||
|
||||
return OK;
|
||||
}
|
||||
|
||||
enum runStatus getRunStatus() {
|
||||
LOG(logDEBUG1, ("Getting status\n"));
|
||||
// scan error or running
|
||||
|
Reference in New Issue
Block a user