HP (Hewlett-Packard) 9112 Series ユーザーズマニュアル

ページ / 83
 
56 
•  C/C++ Library 
AD data, the buffer size must large than the number of AD conversion. 
 
In DOS environment, please make sure this memory is double-word 
alignment. Every 16-bit unsigned integer data in ad_buffer: 
 
D11 D10 D9 .......................D1 D0   C3  C2   C1  C0 
 
D11, D10, ..., D1, D0  : A/D converted data 
C3, C2, C1, C0           : converted channel no. 
 
memID(Windows-95) :  the memory ID of the allocated system DMA 
memory to act as the circular buffer. In Windows 95 environment, before 
calling  W_9112_ContDmaStart,  W_9112_Alloc_DMA_Mem must be 
called to allocate a contiguous DMA memory. W_9112_Alloc_DMA_Mem 
will return a memory ID for identify the allocated DMA memory, as well as 
the linear address of the DMA memory for user to access the data. The 
format of the A/D data is the same as DOS buffer (ad_buffer argument). 
c1 : 
the 16-bit timer frequency divider of timer channel #1 
c2 : 
the 16-bit timer frequency divider of timer channel #2 
 
u  Return Code 
ERR_NoError, 
 
ERR_BoardNoInit,  
ERR_InvalidADChannel,  ERR_AD_InvalidRange,  
ERR_InvalidTimerValue 
u  Example 
See Demo Program 'AD_DEMO5.C'  
5.18  _9112_CheckHalfReady 
u  Description 
  
When you use _9112_ContDmaStart() to convert A/D data then you must 
use _9112_CheckHalfReady() to  check data ready or not in the circular 
buffer,  size of data is half of the circular buffer (count/2) and using 
_9112_DblBufferTransfer() to get data. 
u  Syntax 
Visual C++ (Windows-95) 
int W_9112_CheckHalfReady (int card_number, int * halfReady) 
 
Visual Basic (Windows-95) 
int W_9112_CheckHalfReady (ByVal card_number As Long, halfReady 
As Long) As Long 
 
C/C++ ( DOS) 
int _9112_CheckHalfReady(int card_number, int *halfReady )