C/C++ Libraries
•
49
@ Syntax
Visual C++ (Windows 95)
int W_7200_DI_DMA_Start (U8 mode, U32 count, U32 handle,
Boolean wait_trg, U8 trg_pol, Boolean clear_fifo, Boolean
disable_di)
Visual Basic (Windows 95)
W_7200_DI_DMA_Start (ByVal mode As Byte, ByVal count As Long,
ByVal handle As Long, ByVal wait_trg as Byte, ByVal trg_pol
As Byte, ByVal clear_fifo As Byte, ByVal disable_di As Byte)
As Long
C/C++ (DOS)
int _7200_DI_DMA_Start (U8 mode, U32 count, U32 *di_buffer,
Boolean wait_trig, U8 trig_pol, Boolean clear_fifo, Boolean
disable_di)
@ Argument
mode: Digital Input trigger modes
DI_MODE0: Internal timer pacer (TIME 0)
DI_MODE1: External signal I_REQ rising edge
DI_MODE2: External signal I_REQ falling edge
DI_MODE3: I_REQ & I_ACK handshaking
count: For non-double-buffered DI, this parameter denotes the number of
digital input samples to read. For double-buffered DI, it is the size of circular
buffer (in samples, not in bytes).
handle (Win95): The handle of system DMA memory. In Windows 95,
before calling _7200_DI_DMA_Start, depending on using double-buffer
mode or not, either _7200_Alloc_DMA_Mem or
_7200_Alloc_DBDMA_Mem must be called to allocate a contiguous DMA
memory and get the handle.
di_buffer (DOS): If double buffer mode is disabled, this is the start address
of the memory buffer to store the DI data. If double buffer mode is enabled,
this memory buffer is actually of no use. But the buffer size still must be
larger than the number of count (count*4 bytes). Use this buffer as transfer
buffer in _7200_DblBufferTransfer to make use of this buffer.
**This memory should be double-word alignment.
wait_trig: The waiting status of trigger
DI_NONWAITING: the input sampling will be start immediately
DI_WAITING: the input samples waiting rising or falling edge trigger
to start DI
trig_pol: trigger polarity
DI_RISING: rising edge trigger
DI_FALLING: falling edge trigger