From 0b8b4cb3889609f6f835eb5454ca33ed0fdf7054 Mon Sep 17 00:00:00 2001 From: "carina@hades" Date: Tue, 12 Dec 2023 19:20:31 -0500 Subject: [PATCH] add some board setting to program to board from memory --- ClassDigitizer.cpp | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/ClassDigitizer.cpp b/ClassDigitizer.cpp index 5d51a70..1933794 100644 --- a/ClassDigitizer.cpp +++ b/ClassDigitizer.cpp @@ -843,6 +843,14 @@ void Digitizer::ProgramSettingsToBoard(){ // usleep(pauseMilliSec * 1000); // } //} + + haha = DPP::BoardConfiguration; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::AcquisitionControl; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::GlobalTriggerMask; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::FrontPanelIOControl; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::FrontPanelTRGOUTEnableMask; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::RegChannelEnableMask; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + /// Channels Setting for( int ch = 0; ch < NumInputCh; ch ++){ if( DPPType == V1730_DPP_PHA_CODE ){ @@ -865,6 +873,7 @@ void Digitizer::ProgramSettingsToBoard(){ } } + }else{ /// board setting //for( int p = 0; p < (int) RegisterBoardList_QDC.size(); p++){ @@ -874,6 +883,14 @@ void Digitizer::ProgramSettingsToBoard(){ // usleep(pauseMilliSec * 1000); // } //} + + haha = DPP::BoardConfiguration; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::AcquisitionControl; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::GlobalTriggerMask; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::FrontPanelIOControl; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::FrontPanelTRGOUTEnableMask; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + haha = DPP::QDC::GroupEnableMask; WriteRegister(haha, GetSettingFromMemory(haha), -1, false); + /// Channels Setting for( int ch = 0; ch < GetNumRegChannels(); ch ++){ for( int p = 0; p < (int) RegisterChannelList_QDC.size(); p++){ @@ -885,7 +902,12 @@ void Digitizer::ProgramSettingsToBoard(){ } } - } + } + + //set agg + ret = CAEN_DGTZ_SetNumEventsPerAggregate(handle, 10); + ret |= CAEN_DGTZ_SetDPPEventAggregation(handle, 0, 0); // Auto set + } void Digitizer::SetSettingToMemory(Reg registerAddress, unsigned int value, unsigned short ch ){