On Thu, Nov 24, 2016 at 12:10 AM, Srinivas, Raghavendra (IntlAssoc)
<[email protected]> wrote:
> Just out of curiosity, ttl.pulse(t) is essentially,
>
> ttl.on()
> delay(t)
> ttl.off()
>
> How would ttl.pulse_off(t) be different from
>
> ttl.off()
> delay(t)
> ttl.on()
>
> to avoid the problem when t=0 that back to back pulses have?
As explained earlier, they would be
if t:
ttl.on()
delay(t)
ttl.off()
and
if t:
ttl.off()
delay(t)
ttl.on()
respectively.
And as you can see, the behavior with zero-length pulses is
surprising. You would expect a zero-length pulse to "do nothing". But
it does:
ttl.on()
ttl.pulse(0)
is not the same as
ttl.on()
In fact and maybe surprising it is equivalent to the same as the exact
opposite, namely:
ttl.off()
Furthermore, and as explained earlier as well, it is confusing because
you can always do both:
ttl.pulse(0)
and
ttl.pulse(10*ns)
though they have very different results. But sometimes you can't do:
ttl.pulse(5*ns)
That raises an exception depending on the exact fine timestamp.
--
Robert Jördens.
_______________________________________________
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq