mirror of
https://github.com/m-labs/artiq.git
synced 2024-12-26 03:38:25 +08:00
update NAC3
This commit is contained in:
parent
b1cfd343eb
commit
34f3862558
@ -10,7 +10,7 @@ time is an error.
|
||||
|
||||
from numpy import int32, int64
|
||||
|
||||
from artiq.language.core import nac3, kernel, portable, Kernel, KernelInvariant
|
||||
from artiq.language.core import *
|
||||
from artiq.language.units import ns, us
|
||||
from artiq.coredevice.core import Core
|
||||
from artiq.coredevice.ttl import TTLOut
|
||||
@ -313,7 +313,7 @@ class AD53xx:
|
||||
self.ldac.on()
|
||||
|
||||
@kernel
|
||||
def set_dac_mu(self, values: list[int32], channels: list[int32]): # NAC3TODO default list(range(40))
|
||||
def set_dac_mu(self, values: list[int32], channels: Option[list[int32]] = none):
|
||||
"""Program multiple DAC channels and pulse LDAC to update the DAC
|
||||
outputs.
|
||||
|
||||
@ -335,14 +335,15 @@ class AD53xx:
|
||||
t_10 = self.core.seconds_to_mu(1500.*ns)
|
||||
# compensate all delays that will be applied
|
||||
delay_mu(-t_10-int64(len(values))*self.bus.xfer_duration_mu)
|
||||
channels_list = channels.unwrap() if channels.is_some() else [i for i in range(40)]
|
||||
for i in range(len(values)):
|
||||
self.write_dac_mu(channels[i], values[i])
|
||||
self.write_dac_mu(channels_list[i], values[i])
|
||||
delay_mu(t_10)
|
||||
self.load()
|
||||
at_mu(t0)
|
||||
|
||||
@kernel
|
||||
def set_dac(self, voltages: list[float], channels: list[int32]): # NAC3TODO default list(range(40))
|
||||
def set_dac(self, voltages: list[float], channels: Option[list[int32]] = none):
|
||||
"""Program multiple DAC channels and pulse LDAC to update the DAC
|
||||
outputs.
|
||||
|
||||
|
@ -55,7 +55,7 @@ class NAC3Devices(EnvExperiment):
|
||||
self.core.reset()
|
||||
self.zotino0.init()
|
||||
self.zotino0.set_leds(0x15)
|
||||
self.zotino0.set_dac([1.2, -5.3, 3.4, 4.5], [0, 1, 2, 3])
|
||||
self.zotino0.set_dac([1.2, -5.3, 3.4, 4.5])
|
||||
|
||||
self.core.break_realtime()
|
||||
self.mirny0_cpld.init()
|
||||
|
8
flake.lock
generated
8
flake.lock
generated
@ -45,11 +45,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1648508200,
|
||||
"narHash": "sha256-8ohq5rj5rV9xyHDbU0oT/2CXT917XQYtxU92GIC+43s=",
|
||||
"lastModified": 1648584347,
|
||||
"narHash": "sha256-m27UgTuWDO6rLkwNdxBeGXW7rLZbdl5vCp7afe0P4qo=",
|
||||
"ref": "master",
|
||||
"rev": "a38cc0444456392fba6949367e4073ee9df149bf",
|
||||
"revCount": 705,
|
||||
"rev": "b8ef44d64eabf62175d2b3e900124e0607c7b4d3",
|
||||
"revCount": 710,
|
||||
"type": "git",
|
||||
"url": "https://git.m-labs.hk/m-labs/nac3.git"
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user