diff --git a/fpga/lib/ips/dino.cpp b/fpga/lib/ips/dino.cpp index bb798d352..6ab463a33 100644 --- a/fpga/lib/ips/dino.cpp +++ b/fpga/lib/ips/dino.cpp @@ -140,14 +140,18 @@ void DinoAdc::configureHardware() { void DinoAdc::setRegisterConfig(std::shared_ptr reg, double sampleRate) { constexpr double dinoClk = 25e6; // Dino is clocked with 25 Mhz + constexpr size_t dinoRegisterTimer = 0; + constexpr size_t dinoRegisterScale = 1; + constexpr size_t dinoRegisterOffset = 2; uint32_t dinoTimerVal = static_cast(dinoClk / sampleRate); double rateError = dinoClk / dinoTimerVal - sampleRate; reg->setRegister( - 0, + dinoRegisterTimer, dinoTimerVal); // Timer value for generating ADC trigger signal - reg->setRegister(1, -0.001615254F); // Scale factor for ADC value - reg->setRegister(2, 10.8061F); // Offset for ADC value + reg->setRegister(dinoRegisterScale, + -0.001615254F); // Scale factor for ADC value + reg->setRegister(dinoRegisterOffset, 10.8061F); // Offset for ADC value uint32_t rate = reg->getRegister(0); float scale = reg->getRegisterFloat(1); float offset = reg->getRegisterFloat(2);