4410-4412: update set() parameters

Note that the `frequency` param is mandatory in AD9912.set(), while optional in AD9910.set()
nix_fix
occheung 2021-12-08 12:17:22 +08:00
parent b9c7dcec67
commit 2127697fe6
1 changed files with 5 additions and 6 deletions

View File

@ -428,8 +428,7 @@ def run(self):
self.cpld.init() self.cpld.init()
self.dds0.init() self.dds0.init()
self.dds0.cfg_sw(True) self.dds0.cfg_sw(True)
self.dds0.set_att(6.) self.dds0.set(10*MHz)
self.dds0.set(10*MHz, amplitude=1.0)
\end{minted} \end{minted}
If the synchronization feature of AD9910 was enabled, RF signal across different channels of the same Urukul can be synchronized. If the synchronization feature of AD9910 was enabled, RF signal across different channels of the same Urukul can be synchronized.
@ -449,8 +448,8 @@ def run(self):
self.dds1.set_phase_mode(PHASE_MODE_TRACKING) self.dds1.set_phase_mode(PHASE_MODE_TRACKING)
self.dds1.set_att(6.) self.dds1.set_att(6.)
self.dds0.set(10*MHz, phase=0.0) self.dds0.set(frequency=10*MHz, phase=0.0)
self.dds1.set(10*MHz, phase=0.25) # 0.25 turns phase offset self.dds1.set(frequency=10*MHz, phase=0.25) # 0.25 turns phase offset
\end{minted} \end{minted}
Note that the phase difference between the 2 channels might not be exactly 0.25 turns, but it is a constant. Note that the phase difference between the 2 channels might not be exactly 0.25 turns, but it is a constant.
It can be negated by adjusting the \texttt{phase} parameter. It can be negated by adjusting the \texttt{phase} parameter.
@ -487,7 +486,7 @@ def configure_ram_mode(self, dds):
dds.amplitude_to_ram(self.amp, self.asf_ram) dds.amplitude_to_ram(self.amp, self.asf_ram)
dds.write_ram(self.asf_ram) dds.write_ram(self.asf_ram)
dds.set(10*MHz, profile=-1) dds.set(frequency=10*MHz, ram_destination=RAM_DEST_ASF)
# Pass osk_enable=1 to set_cfr1() if it is not an amplitude RAM # Pass osk_enable=1 to set_cfr1() if it is not an amplitude RAM
dds.set_cfr1(ram_enable=1, ram_destination=RAM_DEST_ASF) dds.set_cfr1(ram_enable=1, ram_destination=RAM_DEST_ASF)
@ -523,7 +522,7 @@ Multiple RAM channels can also be synchronized.
Similar to the 10 MHz single-tone RF signals, specify \texttt{phase} when calling \texttt{dds.set()} in \texttt{configure\char`_ram\char`_mode}. Similar to the 10 MHz single-tone RF signals, specify \texttt{phase} when calling \texttt{dds.set()} in \texttt{configure\char`_ram\char`_mode}.
For example, set phase to 0 for the channels (\texttt{phase=0.0}). For example, set phase to 0 for the channels (\texttt{phase=0.0}).
\begin{minted}{python} \begin{minted}{python}
dds.set(10*MHz, phase=0.0, profile=-1) dds.set(frequency=10*MHz, phase=0.0, ram_destination=RAM_DEST_ASF)
\end{minted} \end{minted}
Then, replace the \texttt{run()} function with the following. Then, replace the \texttt{run()} function with the following.
\begin{minted}{python} \begin{minted}{python}