typedef struct tagPT_FAIDmaExStart
{
INT16U TrigSrc;
INT16U TrigMode;
INT16U ClockSrc;
INT16U TrigEdge;
INT16U SRCType;
FP32 TrigVol;
INT16U CyclicMode;
INT16U NumChans;
INT16U StartChan;
INT32U ulDelayCnt;
INT32U count;
INT32U SampleRate;
INT16U *GainList;
INT16U *CondList;
INT16U *buffer0;
INT16U *buffer1;
INT16U *Pt1;
INT16U *Pt2;
INT16U *Pt3;
} PT_FAIDmaExStart, *LPT_FAIDmaExStart;
PT_FAIDmaExStart is used in function DRV_FAIDmaExStart.
| Name | Direction | Range | Description |
| TrigSrc | input | 0, 1 | The triggering source: 0-internal 1-external |
| TrigMode | input | 0, 1, 2, 3 | The triggering mode: 0-Pacer (initiates DMA sampling immediately) 1-Post (initiates DMA sampling when external signal occurs) 2-Delay (delays user specified number of samples and initiates the sampling when external signal occurs) 3-About (initiates the DMA sampling, and continues to sample user-specified number of samplings when external signal occurs, then stops.) Mode Pacer must be set to internal triggering source. Modes Post, Delay and About must be set to external triggering source. |
| ClockSrc | input | 0, 1, 2 | The clock source: 0-Internal 1-External clock 0 2-External clock 1 |
| TrigEdge | input | 0, 1 | The trigger edge (It only takes effect
under modes Post, Delay and About
Trigger): 0-Rising edge 1-Falling edge |
| SRCType | input | 0, 1, 2, 3, 4 | The triggering source type: 0-Digtal 1-Analog input of Channel 0 2-Analog input of Channel 1 3-Analog input of Channel 2 4-Analog input of Channel 3 |
| TrigVol | input | Depends on the hardware. | The trigger voltage. The DMA sampling begins when the voltage of the channel exceeds the specified value (only used in analog trigger). |
| CyclicMode | input | 0, 1 | The cyclic mode: 0-Non-cyclic 1-Cyclic |
| NumChans | input | 1-N (N is the maximum AI channel number) | The sampling channel count. |
| StartChan | input | 0-(N-1) (N is the maximum AI channel number) | The starting channel for scanning. The range is from
the minimum zero (the first AI channel) to the maximum AI channel
number minus one. For
example, the range will be from 0 to (N-1) on a device with N
written as the number of the AI channel. The last
channel can be calculated with the following formula: number of the last channel = StartChan + NumChans
|
| ulDelayCnt | input | 2-65535 | The delay count (only used in Delay-trigger and About-trigger). |
| count | input | Depend on the hardware. | The sampling data count. It must be above zero, an even number (because of memory alignment and performance). |
| SampleRate | input | Depends on the pacer and divider on the hardware. | Total sampling rate on scanning channels (Hz). Since the sampling is performed channel by channel, the exact sampling rate
of single channel can be calculated in the following formula: Sampling rate of single channel = SampleRate / NumChans |
| GainList | input | Depends on hardware. | The pointer which indicates the array that stores the GainCode. It is used to configure the target sampling channels from StartChan to the last sampling channel in order. The voltage input range is determined by the GainCode list. Please refer to the Hardware Manual for details. |
| CondList | input | default | Reserved. |
| buffer0 | output | depend on hardware. | The sampling data buffer. It should be set to a multiple of the sampling channel count (NumChans); otherwise, in cyclic mode, the first sampling data will not correspond to the starting channel. Please refer to the FastAnalogInput to set a buffer with proper size. |
| buffer1 | output | default | Reserved. |
| Pt1 | default | Reserved. | |
| Pt2 | default | Reserved. | |
| Pt3 | default | Reserved. |
ulDelayCnt is used to set the data count in Delay-Trigger and About-Trigger mode.
In Delay-Trigger acquisition mode
ulDelayCnt = M

In About-Trigger acquisition mode
ulDelayCnt =M

Please refer to the Hardware Manual for individual card Member Range.