Skip to content

NI DAQMX Channel Attributes Digital Output

Greg Stoll edited this page Sep 10, 2021 · 2 revisions

Channel Attributes - Digital Output

See how to get and set attributes.

DAQmx_DO_OutputDriveType

Data Type: int32
Description: Specifies the drive type for digital output channels.

Valid values

DAQmx_Val_ActiveDrive 12573 Drive the output pin to approximately 0 V for logic low and +3.3 V or +5 V, depending on the device, for logic high.
DAQmx_Val_OpenCollector 12574 Drive the output pin to 0 V for logic low. For logic high, the output driver assumes a high-impedance state and does not drive a voltage.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_InvertLines

Data Type: bool32
Description: Specifies whether to invert the lines in the channel. If you set this property to TRUE, the lines are at high logic when off and at low logic when on.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_NumLines

Data Type: uInt32
Description: Indicates the number of digital lines in the channel.
Restrictions: Not Settable

You can get this attribute using:   DAQmxGetChanAttribute

DAQmx_DO_Tristate

Data Type: bool32
Description: Specifies whether to stop driving the channel and set it to a high-impedance state. You must commit the task for this setting to take effect.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

Line States

DAQmx_DO_LineStates_StartState

Data Type: int32
Description: Specifies the state of the lines in a digital output task when the task starts.

Valid values

DAQmx_Val_High 10192 Logic high.
DAQmx_Val_Low 10214 Logic low.
DAQmx_Val_Tristate 10310 High-impedance state. You can select this state only on devices with bidirectional lines. You cannot select this state for dedicated digital output lines. On some devices, you can select this value only for entire ports.
DAQmx_Val_NoChange 10160 Do not change the state of the lines. On some devices, you can select this value only for entire ports.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_LineStates_PausedState

Data Type: int32
Description: Specifies the state of the lines in a digital output task when the task pauses.

Valid values

DAQmx_Val_High 10192 Logic high.
DAQmx_Val_Low 10214 Logic low.
DAQmx_Val_Tristate 10310 High-impedance state. You can select this state only on devices with bidirectional lines. You cannot select this state for dedicated digital output lines. On some devices, you can select this value only for entire ports.
DAQmx_Val_NoChange 10160 Do not change the state of the lines. On some devices, you can select this value only for entire ports.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_LineStates_DoneState

Data Type: int32
Description: Specifies the state of the lines in a digital output task when the task completes execution.

Valid values

DAQmx_Val_High 10192 Logic high.
DAQmx_Val_Low 10214 Logic low.
DAQmx_Val_Tristate 10310 High-impedance state. You can select this state only on devices with bidirectional lines. You cannot select this state for dedicated digital output lines. On some devices, you can select this value only for entire ports.
DAQmx_Val_NoChange 10160 Do not change the state of the lines. On some devices, you can select this value only for entire ports.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_LogicFamily

Data Type: int32
Description: Specifies the logic family to use for generation. A logic family corresponds to voltage thresholds that are compatible with a group of voltage standards. Refer to the device documentation for information on the logic high and logic low voltages for these logic families.

Valid values

DAQmx_Val_2point5V 14620 Compatible with 2.5 V CMOS signals.
DAQmx_Val_3point3V 14621 Compatible with LVTTL signals.
DAQmx_Val_5V 14619 Compatible with TTL and 5 V CMOS signals.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

Overcurrent

DAQmx_DO_Overcurrent_Limit

Data Type: float64
Description: Specifies the current threshold in Amperes for the channel. A value of 0 means the channel observes no limit. Devices can monitor only a finite number of current thresholds simultaneously. If you attempt to monitor additional thresholds, NI-DAQmx returns an error.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_Overcurrent_AutoReenable

Data Type: bool32
Description: Specifies whether to automatically reenable channels after they no longer exceed the current limit specified by DAQmx_DO_Overcurrent_Limit.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_Overcurrent_ReenablePeriod

Data Type: float64
Description: Specifies the delay in seconds between the time a channel no longer exceeds the current limit and the reactivation of that channel, if DAQmx_DO_Overcurrent_AutoReenable is TRUE.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

Digital Output General Properties

Digital Output Advanced

Digital Output Data Transfer And Memory

DAQmx_DO_UseOnlyOnBrdMem

Data Type: bool32
Description: Specifies whether to write samples directly to the onboard memory of the device, bypassing the memory buffer. Generally, you cannot update onboard memory after you start the task. Onboard memory includes data FIFOs.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_DataXferMech

Data Type: int32
Description: Specifies the data transfer mode for the device.

Valid values

DAQmx_Val_DMA 10054 Direct Memory Access. Data transfers take place independently from the application.
DAQmx_Val_Interrupts 10204 Data transfers take place independently from the application. Using interrupts increases CPU usage because the CPU must service interrupt requests. Typically, you should use interrupts if the device is out of DMA channels.
DAQmx_Val_ProgrammedIO 10264 Data transfers take place when you call an NI-DAQmx Read function or an NI-DAQmx Write function.
DAQmx_Val_USBbulk 12590 Data transfers take place independently from the application using a USB bulk pipe.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_DataXferReqCond

Data Type: int32
Description: Specifies under what condition to transfer data from the buffer to the onboard memory of the device.

Valid values

DAQmx_Val_OnBrdMemEmpty 10235 Transfer data to the device only when there is no data in the onboard memory of the device.
DAQmx_Val_OnBrdMemHalfFullOrLess 10239 Transfer data to the device any time the onboard memory is less than half full.
DAQmx_Val_OnBrdMemNotFull 10242 Transfer data to the device any time the onboard memory of the device is not full.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_UsbXferReqSize

Data Type: uInt32
Description: Specifies the maximum size of a USB transfer request in bytes. Modify this value to affect performance under different combinations of operating system and device.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_UsbXferReqCount

Data Type: uInt32
Description: Specifies the maximum number of simultaneous USB transfers used to stream data. Modify this value to affect performance under different combinations of operating system and device.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_MemMapEnable

Data Type: bool32
Description: Specifies for NI-DAQmx to map hardware registers to the memory space of the application, if possible. Normally, NI-DAQmx maps hardware registers to memory accessible only to the kernel. Mapping the registers to the memory space of the application increases performance. However, if the application accesses the memory space mapped to the registers, it can adversely affect the operation of the device and possibly result in a system crash.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

DAQmx_DO_GenerateOn

Data Type: int32
Description: Specifies on which edge of the sample clock to generate samples.

Valid values

DAQmx_Val_SampClkActiveEdge 14617 Active edges.
DAQmx_Val_SampClkInactiveEdge 14618 Inactive edges.

You can get/set/reset this attribute using:   DAQmxGetChanAttribute   DAQmxSetChanAttribute   DAQmxResetChanAttribute

Table of Contents

Internal Development

Creating and Setting Up a gRPC Server

Server Security Support

Creating a gRPC Client

gRPC Client Examples

Session Utilities API Reference

Driver Documentation

gRPC API Differences From C API

Sharing Driver Sessions Between Clients

C API Docs
NI-DAQmx
NI-DCPOWER
NI-DIGITAL PATTERN DRIVER
NI-DMM
NI-FGEN
NI-FPGA
NI-RFmx Bluetooth
NI-RFmx NR
NI-RFmx WCDMA
NI-RFmx GSM
NI-RFmx CDMA2k
NI-RFmx Instr
NI-RFmx LTE
NI-RFmx SpecAn
NI-RFmx TD-SCDMA
NI-RFmx WLAN
NI-RFSA
NI-RFSG
NI-SCOPE
NI-SWITCH
NI-TCLK
NI-XNET
Clone this wiki locally