Commit d0c8ca97 authored by Dimitris Lampridis's avatar Dimitris Lampridis

pytest: working adc acquisitions with adc-lib

parent 3c548276
......@@ -39,12 +39,20 @@ class FmcAdc100m(PyFmcAdc100m14b4ch):
conf.value_set(PyAdcConf.ADC_CONF_TRG_THR_ENABLE, 1)
self.apply_config(conf, 0)
def config_acquisition(self, pre, post, nshot):
def start_acquisition(self, pre, post, nshot=1):
conf = PyAdcConf(PyAdcConf.ADC_CONF_TYPE_ACQ, 0)
conf.value_set(PyAdcConf.ADC_CONF_ACQ_PRE_SAMP, pre)
conf.value_set(PyAdcConf.ADC_CONF_ACQ_POST_SAMP, post)
conf.value_set(PyAdcConf.ADC_CONF_ACQ_N_SHOTS, nshot)
self.apply_config(conf, 0)
self.acq_start(PyFmcAdc100m14b4ch.ADC_F_FLUSH, timeval(0,0))
def acquisition_complete(self):
try:
self.acq_poll(0, timeval(1,0))
return True
except OSError:
return False
class WrtdTestNode(PyWrtd):
def __init__(self, node_id):
......
......@@ -10,7 +10,7 @@ def fmc_adc():
fmc_adc_list = [FmcAdc100m(pytest.fmc_adc1), FmcAdc100m(pytest.fmc_adc2)]
yield fmc_adc_list
for dev in fmc_adc_list:
dev.stop()
dev.acq_stop(0)
dev.disable_triggers()
@pytest.fixture()
......@@ -139,6 +139,8 @@ class TestWrtdRefDesigns(object):
rule_name = f'rule.{adc_channel}'
adc.add_rule_enabled(rule_name, f'net{tdc_channel}', adc_channel)
fmc_adc[fmc].start_acquisition(pre=1, post=2)
fdelay.add_alarm('alarm1')
fd_channel = f'LC-O{4*fmc+1}'
......@@ -190,3 +192,5 @@ class TestWrtdRefDesigns(object):
adc_channel = f'LC-O{fmc+1}'
adc.check_log_entry({'id': adc_channel, 'log_type': 'CONSUMED', 'log_reason': 'START'})
adc.check_log_entry({'id': adc_channel, 'log_type': 'CONSUMED', 'log_reason': 'DONE'})
assert fmc_adc[fmc].acquisition_complete(), "acquisition timeout"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment