|
|
@ -407,10 +407,6 @@ class Xsync : public IXsync { |
|
|
|
virtual xs_error_code_t RecordSigGenerator_getExternalTTLTriggerSrc(InputInterface_t &ttlPortNum) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_setExternalTTLTriggerPolarity(uint32_t polarity) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_getExternalTTLTriggerPolarity(uint32_t &polarity) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_setRecordExposureTime(uint32_t us) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_getRecordExposureTime(uint32_t &us) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_setRecordExposureOffsetTime(uint32_t us) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_getRecordExposureOffsetTime(uint32_t &us) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_getRecordState(uint32_t &state) override; |
|
|
|
virtual xs_error_code_t RecordSigGenerator_readTimecodeSnapshot(XsyncTimecode_t &timecode) override; |
|
|
|
|
|
|
@ -419,41 +415,77 @@ class Xsync : public IXsync { |
|
|
|
xs_error_code_t TimecodeOutputModule_setHeadphoneOutputLevel(int level); // 0:line,1:mi overridec
|
|
|
|
xs_error_code_t TimecodeOutputModule_getHeadphoneOutputLevel(int &level); |
|
|
|
|
|
|
|
virtual xs_error_code_t TTLOutputModule1_setSrcSigType(SignalType_t source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule1_getSrcSigType(SignalType_t &source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule1_setFreqDivision(uint32_t div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule1_getFreqDivision(uint32_t &div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule1_setFreqMultiplication(uint32_t multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule1_getFreqMultiplication(uint32_t &multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule1_readInFreq(float &freq) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule1_readOutFreq(float &freq) override; |
|
|
|
|
|
|
|
virtual xs_error_code_t TTLOutputModule2_setSrcSigType(SignalType_t source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule2_getSrcSigType(SignalType_t &source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule2_setFreqDivision(uint32_t div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule2_getFreqDivision(uint32_t &div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule2_setFreqMultiplication(uint32_t multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule2_getFreqMultiplication(uint32_t &multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule2_readInFreq(float &freq) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule2_readOutFreq(float &freq) override; |
|
|
|
|
|
|
|
virtual xs_error_code_t TTLOutputModule3_setSrcSigType(SignalType_t source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule3_getSrcSigType(SignalType_t &source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule3_setFreqDivision(uint32_t div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule3_getFreqDivision(uint32_t &div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule3_setFreqMultiplication(uint32_t multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule3_getFreqMultiplication(uint32_t &multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule3_readInFreq(float &freq) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule3_readOutFreq(float &freq) override; |
|
|
|
|
|
|
|
virtual xs_error_code_t TTLOutputModule4_setSrcSigType(SignalType_t source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule4_getSrcSigType(SignalType_t &source) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule4_setFreqDivision(uint32_t div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule4_getFreqDivision(uint32_t &div) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule4_setFreqMultiplication(uint32_t multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule4_getFreqMultiplication(uint32_t &multi) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule4_readInFreq(float &freq) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule4_readOutFreq(float &freq) override; |
|
|
|
virtual xs_error_code_t TTLOutputModule_setSrcSigType(int index, SignalType_t source) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
|
|
|
|
if (source == SIGNAL_LOGIC0 || //
|
|
|
|
source == SIGNAL_LOGIC1 || //
|
|
|
|
source == SIGNAL_BUSINESS_RECORD_SIG) { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout1_signal_process_mode, 3, 10)); // 转发模式
|
|
|
|
} else { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout1_signal_process_mode, 2, 10)); // 分频倍频模式
|
|
|
|
} |
|
|
|
REG_WRITE(reg::kreg_ttlout1_input_signal_select + (index - 1) * 16, source); |
|
|
|
return kxs_ec_success; |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_getSrcSigType(int index, SignalType_t &source) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
uint32_t source_u32; |
|
|
|
DO_XSYNC(reg_read(reg::kreg_ttlout1_input_signal_select + (index - 1) * 16, source_u32, 10)); |
|
|
|
source = (SignalType_t)source_u32; |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_setFreqDivision(int index, uint32_t div) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_WRITE(reg::kreg_ttlout1_pllout_freq_division_ctrl + (index - 1) * 16, div); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_getFreqDivision(int index, uint32_t &div) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_READ(reg::kreg_ttlout1_pllout_freq_division_ctrl + (index - 1) * 16, div); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_setFreqMultiplication(int index, uint32_t multi) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_WRITE(reg::kreg_ttlout1_pllout_freq_multiplication_ctrl + (index - 1) * 16, multi); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_getFreqMultiplication(int index, uint32_t &multi) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_READ(reg::kreg_ttlout1_pllout_freq_multiplication_ctrl + (index - 1) * 16, multi); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_readOutFreq(int index, float &freq) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
return readfreq(reg::kreg_ttlout1_sig_out_freq_detect + (index - 1) * 16, freq); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_setPolarity(int index, uint32_t polarity) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_WRITE(reg::kreg_ttlout1_pllout_polarity_ctrl + (index - 1) * 16, polarity); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_getPolarity(int index, uint32_t &polarity) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_READ(reg::kreg_ttlout1_pllout_polarity_ctrl + (index - 1) * 16, polarity); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_setTriggerEdge(int index, TriggerEdge_t edge) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_WRITE(reg::kreg_ttlout1_pllout_trigger_edge_select + (index - 1) * 16, edge); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_getTriggerEdge(int index, TriggerEdge_t &edge) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_READ(reg::kreg_ttlout1_pllout_trigger_edge_select + (index - 1) * 16, edge); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_setPluseWidth(int index, uint32_t us) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_WRITE(reg::kreg_ttlout1_pluse_width_ctrl + (index - 1) * 16, us); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_getPluseWidth(int index, uint32_t &us) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_READ(reg::kreg_ttlout1_pluse_width_ctrl + (index - 1) * 16, us); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_setOffsetTime(int index, uint32_t us) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_WRITE(reg::kreg_ttlout1_pluse_offset_ctrl + (index - 1) * 16, us); |
|
|
|
} |
|
|
|
virtual xs_error_code_t TTLOutputModule_getOffsetTime(int index, uint32_t &us) { |
|
|
|
if (index < 1 || index > 4) return kxs_ec_param_error; |
|
|
|
REG_READ(reg::kreg_ttlout1_pluse_offset_ctrl + (index - 1) * 16, us); |
|
|
|
} |
|
|
|
|
|
|
|
virtual xs_error_code_t Utils_readSigFreq(SignalType_t sig, float &freq) override { |
|
|
|
if (sig == SIGNAL_LOGIC0) { |
|
|
@ -808,157 +840,6 @@ xs_error_code_t Xsync::TTLInputModule3_detectFreq(float &freq) { return readfreq |
|
|
|
xs_error_code_t Xsync::TTLInputModule4_detectFreq(float &freq) { return readfreq(reg::k_ttlin4_freq_detector_reg, freq); } |
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
* TTLOutputModule * |
|
|
|
*******************************************************************************/ |
|
|
|
|
|
|
|
// 0:固定输出低电平,1:固定输出高电平,2:分频倍频模式,3:转发模式,4:测试模式
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_setSrcSigType(SignalType_t source) { |
|
|
|
if (source != SIGNAL_LOGIC0 && //
|
|
|
|
source != SIGNAL_LOGIC1 && //
|
|
|
|
source != SIGNAL_TTLIN1 && //
|
|
|
|
source != SIGNAL_TTLIN2 && //
|
|
|
|
source != SIGNAL_TTLIN3 && //
|
|
|
|
source != SIGNAL_TTLIN4 && //
|
|
|
|
source != SIGNAL_SYS_CLK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_GENLOCK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_TIMECODE_FREQ_OUTPUT && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_SIG && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_EXPOSURE_SIG //
|
|
|
|
) { |
|
|
|
return kxs_ec_param_error; |
|
|
|
} |
|
|
|
|
|
|
|
if (source == SIGNAL_TTLIN1 || //
|
|
|
|
source == SIGNAL_TTLIN2 || //
|
|
|
|
source == SIGNAL_TTLIN3 || //
|
|
|
|
source == SIGNAL_TTLIN4 || //
|
|
|
|
source == SIGNAL_SYS_CLK_OUTPUT || //
|
|
|
|
source == SIGNAL_SYS_GENLOCK_OUTPUT || //
|
|
|
|
source == SIGNAL_SYS_TIMECODE_FREQ_OUTPUT //
|
|
|
|
) { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout1_signal_process_mode, 2, 10)); // 分频倍频模式
|
|
|
|
} else { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout1_signal_process_mode, 3, 10)); // 转发模式
|
|
|
|
} |
|
|
|
REG_WRITE(reg::kreg_ttlout1_input_signal_select, source); |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_setSrcSigType(SignalType_t source) { |
|
|
|
if (source != SIGNAL_LOGIC0 && //
|
|
|
|
source != SIGNAL_LOGIC1 && //
|
|
|
|
source != SIGNAL_TTLIN1 && //
|
|
|
|
source != SIGNAL_TTLIN2 && //
|
|
|
|
source != SIGNAL_TTLIN3 && //
|
|
|
|
source != SIGNAL_TTLIN4 && //
|
|
|
|
source != SIGNAL_SYS_CLK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_GENLOCK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_TIMECODE_FREQ_OUTPUT && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_SIG && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_EXPOSURE_SIG //
|
|
|
|
) { |
|
|
|
return kxs_ec_param_error; |
|
|
|
} |
|
|
|
if (source == SIGNAL_TTLIN1 || //
|
|
|
|
source == SIGNAL_TTLIN2 || //
|
|
|
|
source == SIGNAL_TTLIN3 || //
|
|
|
|
source == SIGNAL_TTLIN4 || //
|
|
|
|
source == SIGNAL_SYS_CLK_OUTPUT || //
|
|
|
|
source == SIGNAL_SYS_GENLOCK_OUTPUT || //
|
|
|
|
source == SIGNAL_SYS_TIMECODE_FREQ_OUTPUT //
|
|
|
|
) { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout2_signal_process_mode, 2, 10)); // 分频倍频模式
|
|
|
|
} else { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout2_signal_process_mode, 3, 10)); // 转发模式
|
|
|
|
} |
|
|
|
REG_WRITE(reg::kreg_ttlout2_input_signal_select, source); |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_setSrcSigType(SignalType_t source) { |
|
|
|
if (source != SIGNAL_LOGIC0 && //
|
|
|
|
source != SIGNAL_LOGIC1 && //
|
|
|
|
source != SIGNAL_TTLIN1 && //
|
|
|
|
source != SIGNAL_TTLIN2 && //
|
|
|
|
source != SIGNAL_TTLIN3 && //
|
|
|
|
source != SIGNAL_TTLIN4 && //
|
|
|
|
source != SIGNAL_SYS_CLK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_GENLOCK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_TIMECODE_FREQ_OUTPUT && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_SIG && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_EXPOSURE_SIG //
|
|
|
|
) { |
|
|
|
return kxs_ec_param_error; |
|
|
|
} |
|
|
|
if (source == SIGNAL_TTLIN1 || //
|
|
|
|
source == SIGNAL_TTLIN2 || //
|
|
|
|
source == SIGNAL_TTLIN3 || //
|
|
|
|
source == SIGNAL_TTLIN4 || //
|
|
|
|
source == SIGNAL_SYS_CLK_OUTPUT || //
|
|
|
|
source == SIGNAL_SYS_GENLOCK_OUTPUT || //
|
|
|
|
source == SIGNAL_SYS_TIMECODE_FREQ_OUTPUT //
|
|
|
|
) { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout3_signal_process_mode, 2, 10)); // 分频倍频模式
|
|
|
|
} else { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout3_signal_process_mode, 3, 10)); // 转发模式
|
|
|
|
} |
|
|
|
REG_WRITE(reg::kreg_ttlout3_input_signal_select, source); |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_setSrcSigType(SignalType_t source) { |
|
|
|
if (source != SIGNAL_LOGIC0 && //
|
|
|
|
source != SIGNAL_LOGIC1 && //
|
|
|
|
source != SIGNAL_TTLIN1 && //
|
|
|
|
source != SIGNAL_TTLIN2 && //
|
|
|
|
source != SIGNAL_TTLIN3 && //
|
|
|
|
source != SIGNAL_TTLIN4 && //
|
|
|
|
source != SIGNAL_SYS_CLK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_GENLOCK_OUTPUT && //
|
|
|
|
source != SIGNAL_SYS_TIMECODE_FREQ_OUTPUT && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_SIG && //
|
|
|
|
source != SIGNAL_BUSINESS_RECORD_EXPOSURE_SIG //
|
|
|
|
) { |
|
|
|
return kxs_ec_param_error; |
|
|
|
} |
|
|
|
if (source == SIGNAL_TTLIN1 || source == SIGNAL_TTLIN2 || source == SIGNAL_TTLIN3 || source == SIGNAL_TTLIN4) { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout4_signal_process_mode, 2, 10)); // 分频倍频模式
|
|
|
|
} else { |
|
|
|
DO_XSYNC(reg_write(reg::kreg_ttlout4_signal_process_mode, 3, 10)); // 转发模式
|
|
|
|
} |
|
|
|
REG_WRITE(reg::kreg_ttlout4_input_signal_select, source); |
|
|
|
} |
|
|
|
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_getSrcSigType(SignalType_t &source) { REG_READ(reg::kreg_ttlout1_input_signal_select, source); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_getSrcSigType(SignalType_t &source) { REG_READ(reg::kreg_ttlout2_input_signal_select, source); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_getSrcSigType(SignalType_t &source) { REG_READ(reg::kreg_ttlout3_input_signal_select, source); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_getSrcSigType(SignalType_t &source) { REG_READ(reg::kreg_ttlout4_input_signal_select, source); } |
|
|
|
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_setFreqDivision(uint32_t div) { REG_WRITE(reg::kreg_ttlout1_pllout_freq_division_ctrl, div); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_setFreqDivision(uint32_t div) { REG_WRITE(reg::kreg_ttlout2_pllout_freq_division_ctrl, div); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_setFreqDivision(uint32_t div) { REG_WRITE(reg::kreg_ttlout3_pllout_freq_division_ctrl, div); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_setFreqDivision(uint32_t div) { REG_WRITE(reg::kreg_ttlout4_pllout_freq_division_ctrl, div); } |
|
|
|
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_getFreqDivision(uint32_t &div) { REG_READ(reg::kreg_ttlout1_pllout_freq_division_ctrl, div); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_getFreqDivision(uint32_t &div) { REG_READ(reg::kreg_ttlout2_pllout_freq_division_ctrl, div); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_getFreqDivision(uint32_t &div) { REG_READ(reg::kreg_ttlout3_pllout_freq_division_ctrl, div); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_getFreqDivision(uint32_t &div) { REG_READ(reg::kreg_ttlout4_pllout_freq_division_ctrl, div); } |
|
|
|
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_setFreqMultiplication(uint32_t multi) { REG_WRITE(reg::kreg_ttlout1_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_setFreqMultiplication(uint32_t multi) { REG_WRITE(reg::kreg_ttlout2_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_setFreqMultiplication(uint32_t multi) { REG_WRITE(reg::kreg_ttlout3_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_setFreqMultiplication(uint32_t multi) { REG_WRITE(reg::kreg_ttlout4_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_getFreqMultiplication(uint32_t &multi) { REG_READ(reg::kreg_ttlout1_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_getFreqMultiplication(uint32_t &multi) { REG_READ(reg::kreg_ttlout2_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_getFreqMultiplication(uint32_t &multi) { REG_READ(reg::kreg_ttlout3_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_getFreqMultiplication(uint32_t &multi) { REG_READ(reg::kreg_ttlout4_pllout_freq_multiplication_ctrl, multi); } |
|
|
|
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_readInFreq(float &freq) { return readfreq(reg::kreg_ttlout1_sig_in_freq_detect, freq); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_readInFreq(float &freq) { return readfreq(reg::kreg_ttlout2_sig_in_freq_detect, freq); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_readInFreq(float &freq) { return readfreq(reg::kreg_ttlout3_sig_in_freq_detect, freq); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_readInFreq(float &freq) { return readfreq(reg::kreg_ttlout4_sig_in_freq_detect, freq); } |
|
|
|
|
|
|
|
xs_error_code_t Xsync::TTLOutputModule1_readOutFreq(float &freq) { return readfreq(reg::kreg_ttlout1_sig_out_freq_detect, freq); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule2_readOutFreq(float &freq) { return readfreq(reg::kreg_ttlout2_sig_out_freq_detect, freq); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule3_readOutFreq(float &freq) { return readfreq(reg::kreg_ttlout3_sig_out_freq_detect, freq); } |
|
|
|
xs_error_code_t Xsync::TTLOutputModule4_readOutFreq(float &freq) { return readfreq(reg::kreg_ttlout4_sig_out_freq_detect, freq); } |
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
* TimecodeInputModule * |
|
|
|
*******************************************************************************/ |
|
|
|
#if 0
|
|
|
@ -1103,20 +984,20 @@ xs_error_code_t Xsync::RecordSigGenerator_setExternalTTLTriggerPolarity(uint32_t |
|
|
|
xs_error_code_t Xsync::RecordSigGenerator_getExternalTTLTriggerPolarity(uint32_t &polarity) { //
|
|
|
|
return _reg_read(reg::record_sig_gen_ttlin_trigger_level, polarity); |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::RecordSigGenerator_setRecordExposureTime(uint32_t us) { //
|
|
|
|
return reg_write(reg::record_sig_gen_exposure_time, us); |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::RecordSigGenerator_getRecordExposureTime(uint32_t &us) { |
|
|
|
auto ret = reg_read(reg::record_sig_gen_exposure_time, us); |
|
|
|
// us = us / 10;1
|
|
|
|
return ret; |
|
|
|
} |
|
|
|
xs_error_code_t Xsync::RecordSigGenerator_setRecordExposureOffsetTime(uint32_t us) { return reg_write(reg::record_sig_gen_exposure_offset_time, us); } |
|
|
|
xs_error_code_t Xsync::RecordSigGenerator_getRecordExposureOffsetTime(uint32_t &us) { |
|
|
|
auto ret = reg_read(reg::record_sig_gen_exposure_offset_time, us); |
|
|
|
// us = us / 10;
|
|
|
|
return ret; |
|
|
|
} |
|
|
|
// xs_error_code_t Xsync::RecordSigGenerator_setRecordExposureTime(uint32_t us) { //
|
|
|
|
// return reg_write(reg::record_sig_gen_exposure_time, us);
|
|
|
|
// }
|
|
|
|
// xs_error_code_t Xsync::RecordSigGenerator_getRecordExposureTime(uint32_t &us) {
|
|
|
|
// auto ret = reg_read(reg::record_sig_gen_exposure_time, us);
|
|
|
|
// // us = us / 10;1
|
|
|
|
// return ret;
|
|
|
|
// }
|
|
|
|
// xs_error_code_t Xsync::RecordSigGenerator_setRecordExposureOffsetTime(uint32_t us) { return reg_write(reg::record_sig_gen_exposure_offset_time, us); }
|
|
|
|
// xs_error_code_t Xsync::RecordSigGenerator_getRecordExposureOffsetTime(uint32_t &us) {
|
|
|
|
// auto ret = reg_read(reg::record_sig_gen_exposure_offset_time, us);
|
|
|
|
// // us = us / 10;
|
|
|
|
// return ret;
|
|
|
|
// }
|
|
|
|
xs_error_code_t Xsync::RecordSigGenerator_setTimecodeCtrlFlag(uint32_t autoStart, uint32_t autoStop) { //
|
|
|
|
uint32_t flag = (autoStart & 0x01) | ((autoStop & 0x01) << 1); |
|
|
|
return reg_write(reg::record_sig_gen_timecode_control_flag, flag); |
|
|
|