You can select the memory type to be used in the transfer mode of device buffer and user buffer.
Memory Type of Device Buffer
In the FIFO (First In First Out) type, conversion data writing into memory is always performed after the latest data, and data reading from memory is always performed from the oldest data.
If conversion data is stored in all of the memory while conversion data is stored, an overflow error occurs and conversion stops.
In FIFO, data can be read during AD conversion. Read data periodically so that the memory does not overflow. Therefore, it is possible to perform a long time sampling longer than the memory capacity.
The FIFO type is used to acquire all conversion data. It can be used for analog input under various conditions from sampling of specified number to infinite sampling.
In RING type, the conversion data is sequentially written. When storing exceeds the upper limit of the memory, overwrites the old conversion data to store the new data. You can read data from memory anywhere. At this time, data reading is performed based on the writing position of current data.
The RING type is used to acquire the data with certain specific conditions. For example, when you need to acquire the data before and after the external trigger stop, or you want to acquire data at the moment that command (AioStopAi) is executed, use the RING memory.
Memory Type of User Buffer
Transfer stops when conversion data transfer is done to the end of the
user buffer.
It is a valid memory type when the number of sampling times has been confirmed
in advance.
Transfer does not stop even if conversion data transfer is done to the
end of the user buffer.
Until the conversion stop condition is satisfied, the memory is overwritten
and transfer is performed.
It can be used for long time monitoring and infinite sampling which requires
all data.
Set Memory Type
Use function AioSetAiMemoryType to set memory type.
Ret = AioSetAiMemoryType ( Id , AiMemoryType )
When using device buffer, set AiMemoryType = 0 in FIFO, set MemoryType
= 1 in RING.
When using user buffer, set AiMemoryType = 0 to not overwrite, set MemoryType
= 1 to overwrite.