Hello, maybe one of you has an idea about the following topic. We want to use the Zotino as a frequency generator in the kilohertz range. For this we set a periodeic output of 1V with duration t. Between the pulses there is a delay also of t (see attached script). We now notice that the amplitude of the output signal decreases for higher frequencies (also in the attached folder).
Why is this the case?
`
class DMAPulseZotino(EnvExperiment):
"""
Record a sequence set for the sinara zotino (two pulses with amplitude 0
and 1). The script can be used to create a alternating output signal. The
signal frequency depends on the delay between both outputs. The maximal
frequency is around 200 kHz for a delay near 1.6 us.
"""
def build(self):
self.setattr_device("core")
self.setattr_device("core_dma")
self.setattr_device("zotino0")
self.setattr_argument("time", NumberValue(default=100))
@kernel
def record(self):
"""
Record the sequene set.
Returns
-------
None.
"""
time = self.time
volt0 = self.zotino0.voltage_to_mu(0)
volt1 = self.zotino0.voltage_to_mu(1)
with self.core_dma.record("pulses"):
for i in range(500):
self.zotino0.set_dac_mu([volt0], [0])
delay(time*us) # minimum for signal is 1.5*us
self.zotino0.set_dac_mu([volt1],[0])
delay(time *us)
@kernel
def run(self):
"""
Reset the core device, load the pre-defined sequence set and play this
set.
Returns
-------
None.
"""
self.core.reset()
self.zotino0.init()
delay(10*us)
self.record()
pulse_handle = self.core_dma.get_handle("pulses")
self.core.break_realtime()
while True:
self.core_dma.playback_handle(pulse_handle)
`
