コード例 #1
0
    def generate_sequence(self, gen_seq_func, do_program=True, lt1=False):
        seq = Sequence('spin_control')
        awgcfg.configure_sequence(seq, 'mw_weak_meas')

        seq_wait_time = gen_seq_func(self, seq)

        if self.wait_for_AWG_done == 1:
            self.par['sequence_wait_time'] = 1
        else:
            self.par['sequence_wait_time'] = seq_wait_time

        seq.set_instrument(self.awg)
        seq.set_clock(1e9)
        seq.set_send_waveforms(do_program)
        seq.set_send_sequence(do_program)
        seq.set_program_channels(True)
        seq.set_start_sequence(False)

        seq.force_HW_sequencing(True)
        seq.send_sequence()
コード例 #2
0
    def generate_sequence(self,gen_seq_func,do_program=True,lt1=False):
        seq = Sequence('spin_control')
        awgcfg.configure_sequence(seq,'mw_weak_meas')

        seq_wait_time = gen_seq_func(self,seq)
        
        if self.wait_for_AWG_done ==1 :
            self.par['sequence_wait_time'] = 1
        else:    
            self.par['sequence_wait_time'] = seq_wait_time
        
        seq.set_instrument(self.awg)
        seq.set_clock(1e9)
        seq.set_send_waveforms(do_program)
        seq.set_send_sequence(do_program)
        seq.set_program_channels(True)
        seq.set_start_sequence(False)
    
        seq.force_HW_sequencing(True)
        seq.send_sequence()
コード例 #3
0
    def prepare_AWG(self,seq_func,do_program=True):
        self.microwaves.set_iq('on')
        self.microwaves.set_frequency(self.MW_freq)
        self.microwaves.set_pulm('on')
        self.microwaves.set_power(self.MW_power)
        self.counters.set_is_running(False)
        
        seq = Sequence('spin_control')
        awgcfg.configure_sequence(seq,'mw_weak_meas')

        seq_wait_time = seq_func(self,seq)
        self.par['sequence_wait_time'] = seq_wait_time
        
        seq.set_instrument(self.awg)
        seq.set_clock(1e9)
        seq.set_send_waveforms(do_program)
        seq.set_send_sequence(do_program)
        seq.set_program_channels(True)
        seq.set_start_sequence(False)
    
        seq.force_HW_sequencing(True)
        seq.send_sequence()
        if (True==True):
            #start AWG
            self.awg.set_runmode('SEQ')
            self.awg.start()  
            while self.awg.get_state() != 'Waiting for trigger':
                qt.msleep(1)
        
            self.microwaves.set_status('on')
            qt.msleep(1)
            
            #start ADwin
            #self.spin_control(lt1,ssro_dict=ssro_dict)

        else:
            print 'Measurement aborted'
        return seq_wait_time    
コード例 #4
0
    def prepare_AWG(self, seq_func, do_program=True):
        self.microwaves.set_iq('on')
        self.microwaves.set_frequency(self.MW_freq)
        self.microwaves.set_pulm('on')
        self.microwaves.set_power(self.MW_power)
        self.counters.set_is_running(False)

        seq = Sequence('spin_control')
        awgcfg.configure_sequence(seq, 'mw_weak_meas')

        seq_wait_time = seq_func(self, seq)
        self.par['sequence_wait_time'] = seq_wait_time

        seq.set_instrument(self.awg)
        seq.set_clock(1e9)
        seq.set_send_waveforms(do_program)
        seq.set_send_sequence(do_program)
        seq.set_program_channels(True)
        seq.set_start_sequence(False)

        seq.force_HW_sequencing(True)
        seq.send_sequence()
        if (True == True):
            #start AWG
            self.awg.set_runmode('SEQ')
            self.awg.start()
            while self.awg.get_state() != 'Waiting for trigger':
                qt.msleep(1)

            self.microwaves.set_status('on')
            qt.msleep(1)

            #start ADwin
            #self.spin_control(lt1,ssro_dict=ssro_dict)

        else:
            print 'Measurement aborted'
        return seq_wait_time