@@ -682,6 +682,9 @@ <h3><a class="toc-backref" href="#id51" role="doc-backlink">USB-3100</a><a class
682682< li > < p > 4, 8 or 16 channels, individually programmable range 0-10V or +-10V.</ p > </ li >
683683< li > < p > Some models provide 0-20 mA current output as well as voltage output</ p > </ li >
684684< li > < p > Some models have high-drive voltage output (+-40 mA)</ p > </ li >
685+ < li > < p > Support for synchronously updating all DAC channels at the same time.
686+ This can be done in master or slave mode, which controls whether the
687+ SYNCLD signal is an output (master) or an input (slave).</ p > </ li >
685688< li > < p > 100 Hz maximum output rate</ p > </ li >
686689</ ul >
687690</ li >
@@ -924,42 +927,71 @@ <h3><a class="toc-backref" href="#id55" role="doc-backlink">Analog I/O Functions
924927< td > < p > Output range for this analog output channel. Choices are determined at run time
925928based on the model in use.</ p > </ td >
926929</ tr >
927- < tr class ="row-even "> < td > < p > $(P)$(R)Return</ p > </ td >
930+ < tr class ="row-even "> < td > < p > $(P)$(R)SyncMaster</ p > </ td >
931+ < td > < p > bo</ p > </ td >
932+ < td > < p > asynInt32</ p > </ td >
933+ < td > < p > ANALOG_OUT_SYNC_MASTER</ p > </ td >
934+ < td > < p > Controls whether the SYNCLD signal is an output (0, Master) or input (1, Slave).</ p > </ td >
935+ </ tr >
936+ < tr class ="row-odd "> < td > < p > $(P)$(R)SyncEnable</ p > </ td >
937+ < td > < p > bo</ p > </ td >
938+ < td > < p > asynInt32</ p > </ td >
939+ < td > < p > ANALOG_OUT_SYNC_ENABLE</ p > </ td >
940+ < td > < p > Controls whether the analog outputs are updated synchronously.</ p >
941+ < ul class ="simple ">
942+ < li > < p > If this is Disable then the DAC outputs are updated immediately when new values are
943+ written to the ao records.</ p > </ li >
944+ < li > < p > If this is Enable then the DAC outputs are not updated when the ao records are written to.
945+ They are only updated when the SyncWrite record is processed, and they all update simultaneously.</ p > </ li >
946+ </ ul >
947+ </ td >
948+ </ tr >
949+ < tr class ="row-even "> < td > < p > $(P)$(R)SyncWrite</ p > </ td >
950+ < td > < p > bo</ p > </ td >
951+ < td > < p > asynInt32</ p > </ td >
952+ < td > < p > ANALOG_OUT_SYNC_WRITE</ p > </ td >
953+ < td > < p > Writing to this record simultaneously updates all of the analog outputs to the values in the ao records.</ p > </ td >
954+ </ tr >
955+ < tr class ="row-odd "> < td > < p > $(P)$(R)Return</ p > </ td >
928956< td > < p > ai</ p > </ td >
929957< td > < p > asynInt32</ p > </ td >
930958< td > < p > ANALOG_OUT_VALUE</ p > </ td >
931959< td > < p > Analog output value to return to at the end of a pulse. This is converted from engineering
932960units to the 16-bit unsigned integer device units for the driver using the EGUL
933961and EGUF fields.</ p > </ td >
934962</ tr >
935- < tr class ="row-odd "> < td > < p > $(P)$(R)Pulse</ p > </ td >
963+ < tr class ="row-even "> < td > < p > $(P)$(R)Pulse</ p > </ td >
936964< td > < p > bo</ p > </ td >
937965< td > < p > N.A.</ p > </ td >
938966< td > < p > N.A.</ p > </ td >
939967< td > < p > Choices are “Normal” and “Pulse”. In Normal mode the Return record is ignored. In
940968Pulse mode the $(P)($R) output is written to to hardware, followed immediately by
941969writing the $(P)$(R)Return value.</ p > </ td >
942970</ tr >
943- < tr class ="row-even "> < td > < p > $(P)$(R)TweakVal</ p > </ td >
971+ < tr class ="row-odd "> < td > < p > $(P)$(R)TweakVal</ p > </ td >
944972< td > < p > ao</ p > </ td >
945973< td > < p > N.A.</ p > </ td >
946974< td > < p > N.A.</ p > </ td >
947975< td > < p > The amount by which to tweak the out when the Tweak record is processed.</ p > </ td >
948976</ tr >
949- < tr class ="row-odd "> < td > < p > $(P)$(R)TweakUp</ p > </ td >
977+ < tr class ="row-even "> < td > < p > $(P)$(R)TweakUp</ p > </ td >
950978< td > < p > calcout</ p > </ td >
951979< td > < p > N.A.</ p > </ td >
952980< td > < p > N.A.</ p > </ td >
953981< td > < p > Tweaks the output up by TweakVal.</ p > </ td >
954982</ tr >
955- < tr class ="row-even "> < td > < p > $(P)$(R)TweakDown</ p > </ td >
983+ < tr class ="row-odd "> < td > < p > $(P)$(R)TweakDown</ p > </ td >
956984< td > < p > calcout</ p > </ td >
957985< td > < p > N.A.</ p > </ td >
958986< td > < p > N.A.</ p > </ td >
959987< td > < p > Tweaks the output down by TweakVal.</ p > </ td >
960988</ tr >
961989</ tbody >
962990</ table >
991+ < p > < strong > NOTE for Sync records:</ strong > The sync features are only supported on the USB-31xx models.
992+ The Sync records exist for all analog output channels.
993+ However, only the records for the first channel, $(P)$(R)1Sync*, are used.
994+ The screen shot for the USB-3104 above shows the sync record widgets.</ p >
963995< p > The following is the medm screen for controlling the analog output
964996records for the USB-1608GX-2AO. Note that the engineering units limits
965997(EGUL and EGUF) do not have to be in volts, they can be in any units
0 commit comments