def copyFromCaptureTrace(self, _=None): """ Send reference data to hardware from the trace window """ ds_param = Parameter.findParameter( ['OpenADC', 'Trigger Setup', 'Downsample Factor']) if ds_param is not None and ds_param.getValue() != 1: logging.warning( "OpenADC downsampling is enabled - SAD trigger will not work") data = self.getCaptueTraceRef() if len(data) != 128: logging.warning('Reference IS NOT 128 samples long, got %d' % len(data)) self.findParam(['sad', 'sadref']).setValue(self.packTrace(data))
def setTriggerModule(self, module): #When using special modes, force rising edge & stop user from easily changing if module != self.MODULE_BASIC: Parameter.findParameter(['OpenADC', 'Trigger Setup', 'Mode']).setValue("rising edge", ignoreReadonly=True) Parameter.findParameter(['OpenADC', 'Trigger Setup', 'Mode']).setReadonly(True) else: Parameter.findParameter(['OpenADC', 'Trigger Setup', 'Mode']).setReadonly(False) resp = self.oa.sendMessage(CODE_READ, ADDR_TRIGMOD, Validate=False, maxResp=1) resp[0] &= 0xF8 resp[0] |= module self.oa.sendMessage(CODE_WRITE, ADDR_TRIGMOD, resp)
def setTriggerModule(self, module): #When using special modes, force rising edge & stop user from easily changing if module != self.MODULE_BASIC: Parameter.findParameter(['OpenADC', 'Trigger Setup', 'Mode']).setValue("rising edge", ignoreReadonly=True) Parameter.findParameter(['OpenADC', 'Trigger Setup', 'Mode']).setReadonly(True) else: Parameter.findParameter(['OpenADC', 'Trigger Setup', 'Mode']).setReadonly(False) resp = self.oa.sendMessage(CODE_READ, ADDR_TRIGMOD, Validate=False, maxResp=1) resp[0] &= 0xF8 resp[0] |= module self.oa.sendMessage(CODE_WRITE, ADDR_TRIGMOD, resp)