mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-24 07:20:01 +02:00
jungfrau filter resistor highervalue in fpga is smaller resitance, and needs toggling
This commit is contained in:
parent
1f8823a3b7
commit
a84bd1f881
@ -110,8 +110,8 @@
|
|||||||
// CSM mode = high current (100%), low current (16%)
|
// CSM mode = high current (100%), low current (16%)
|
||||||
#define CONFIG_V11_STATUS_CRRNT_SRC_LOW_OFST (19)
|
#define CONFIG_V11_STATUS_CRRNT_SRC_LOW_OFST (19)
|
||||||
#define CONFIG_V11_STATUS_CRRNT_SRC_LOW_MSK (0x00000001 << CONFIG_V11_STATUS_CRRNT_SRC_LOW_OFST)
|
#define CONFIG_V11_STATUS_CRRNT_SRC_LOW_MSK (0x00000001 << CONFIG_V11_STATUS_CRRNT_SRC_LOW_OFST)
|
||||||
#define CONFIG_V11_STATUS_FLTR_RSSTR_HGHR_OFST (21)
|
#define CONFIG_V11_STATUS_FLTR_RSSTR_SMLR_OFST (21)
|
||||||
#define CONFIG_V11_STATUS_FLTR_RSSTR_HGHR_MSK (0x00000001 << CONFIG_V11_STATUS_FLTR_RSSTR_HGHR_OFST)
|
#define CONFIG_V11_STATUS_FLTR_RSSTR_SMLR_MSK (0x00000001 << CONFIG_V11_STATUS_FLTR_RSSTR_SMLR_OFST)
|
||||||
#define CONFIG_V11_STATUS_AUTO_MODE_OVRRD_OFST (23)
|
#define CONFIG_V11_STATUS_AUTO_MODE_OVRRD_OFST (23)
|
||||||
#define CONFIG_V11_STATUS_AUTO_MODE_OVRRD_MSK (0x00000001 << CONFIG_V11_STATUS_AUTO_MODE_OVRRD_OFST)
|
#define CONFIG_V11_STATUS_AUTO_MODE_OVRRD_MSK (0x00000001 << CONFIG_V11_STATUS_AUTO_MODE_OVRRD_OFST)
|
||||||
|
|
||||||
@ -260,8 +260,8 @@
|
|||||||
// CSM mode = high current (100%), low current (16%)
|
// CSM mode = high current (100%), low current (16%)
|
||||||
#define CONFIG_V11_CRRNT_SRC_LOW_OFST (19)
|
#define CONFIG_V11_CRRNT_SRC_LOW_OFST (19)
|
||||||
#define CONFIG_V11_CRRNT_SRC_LOW_MSK (0x00000001 << CONFIG_V11_CRRNT_SRC_LOW_OFST)
|
#define CONFIG_V11_CRRNT_SRC_LOW_MSK (0x00000001 << CONFIG_V11_CRRNT_SRC_LOW_OFST)
|
||||||
#define CONFIG_V11_FLTR_RSSTR_HGHR_OFST (21)
|
#define CONFIG_V11_FLTR_RSSTR_SMLR_OFST (21)
|
||||||
#define CONFIG_V11_FLTR_RSSTR_HGHR_MSK (0x00000001 << CONFIG_V11_FLTR_RSSTR_HGHR_OFST)
|
#define CONFIG_V11_FLTR_RSSTR_SMLR_MSK (0x00000001 << CONFIG_V11_FLTR_RSSTR_SMLR_OFST)
|
||||||
#define CONFIG_V11_AUTO_MODE_OVRRD_OFST (23)
|
#define CONFIG_V11_AUTO_MODE_OVRRD_OFST (23)
|
||||||
#define CONFIG_V11_AUTO_MODE_OVRRD_MSK (0x00000001 << CONFIG_V11_AUTO_MODE_OVRRD_OFST)
|
#define CONFIG_V11_AUTO_MODE_OVRRD_MSK (0x00000001 << CONFIG_V11_AUTO_MODE_OVRRD_OFST)
|
||||||
|
|
||||||
|
@ -2176,11 +2176,15 @@ int getFilterResistor() {
|
|||||||
#else
|
#else
|
||||||
uint32_t addr = CONFIG_V11_STATUS_REG;
|
uint32_t addr = CONFIG_V11_STATUS_REG;
|
||||||
#endif
|
#endif
|
||||||
// 0 for lower value, 1 for higher value
|
uint32_t regval = bus_r(addr);
|
||||||
if (bus_r(addr) & CONFIG_V11_STATUS_FLTR_RSSTR_HGHR_MSK) {
|
#ifndef VIRTUAL
|
||||||
return 1;
|
regval ^= BIT32_MASK;
|
||||||
}
|
#endif
|
||||||
|
// return 0 for lower value, 1 for higher value
|
||||||
|
if (bus_r(addr) & CONFIG_V11_STATUS_FLTR_RSSTR_SMLR_MSK) {
|
||||||
return 0;
|
return 0;
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int setFilterResistor(int value) {
|
int setFilterResistor(int value) {
|
||||||
@ -2188,14 +2192,14 @@ int setFilterResistor(int value) {
|
|||||||
if (value == 0) {
|
if (value == 0) {
|
||||||
LOG(logINFO, ("Setting Lower Filter Resistor\n"));
|
LOG(logINFO, ("Setting Lower Filter Resistor\n"));
|
||||||
bus_w(CONFIG_V11_REG,
|
bus_w(CONFIG_V11_REG,
|
||||||
bus_r(CONFIG_V11_REG) & ~CONFIG_V11_FLTR_RSSTR_HGHR_MSK);
|
bus_r(CONFIG_V11_REG) | CONFIG_V11_FLTR_RSSTR_SMLR_MSK);
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
// higher resistor
|
// higher resistor
|
||||||
else if (value == 1) {
|
else if (value == 1) {
|
||||||
LOG(logINFO, ("Setting Higher Filter Resistor\n"));
|
LOG(logINFO, ("Setting Higher Filter Resistor\n"));
|
||||||
bus_w(CONFIG_V11_REG,
|
bus_w(CONFIG_V11_REG,
|
||||||
bus_r(CONFIG_V11_REG) | CONFIG_V11_FLTR_RSSTR_HGHR_MSK);
|
bus_r(CONFIG_V11_REG) & ~CONFIG_V11_FLTR_RSSTR_SMLR_MSK);
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
LOG(logERROR, ("Could not set Filter Resistor. Invalid value %d\n", value));
|
LOG(logERROR, ("Could not set Filter Resistor. Invalid value %d\n", value));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user