HP manual 18 9112CheckHalfReady, 56 ∙ C/C++ Library

Page 64

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

uReturn Code

ERR_NoError,ERR_BoardNoInit,

ERR_InvalidADChannel, ERR_AD_InvalidRange,

ERR_InvalidTimerValue

uExample

See Demo Program 'AD_DEMO5.C'

5.18 _9112_CheckHalfReady

uDescription

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.

uSyntax

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 )

56 C/C++ Library

Image 64
Contents Page ALL Rights Reserved TrademarksDetailed Company Information Adlink Technology IncQuestions Page Contents Conversion Conversion Digital Input and Output9112DO 9112DA 9112ADSetChannel 9112ADSetRange 9112DblBufferTransfer 9112GetOverrunStatusAppendix A. Demo. Programs Product Warranty/Service What do you need VR Assignment AdjustmentSoftware Utilities PCI Scan UtilityHow to Use This Guide T r o d u c t i o n FeaturesIntroduction ∙ Specifications ApplicationsAnalog Input A/D Analog Output D/ADigital I/O DIO General SpecificationsProgrammable Counter Programming Library Software SupportingPCIS-LVIEW LabVIEW Driver PCIS-VEE HP-VEE Driver DAQBenchTM ActiveX ControlsDASYLabTM PRO PCIS-DDE DDE Server and InTouchTM∙ Installation InstallationWhat You Have Installation ∙ Device Installation for Windows SystemsUnpacking PCB Layout PCI-9112 LayoutConverter PCI -Bus ControllerCPCI-9112 Layout PCB Layout of the PCI-9112Analog Input Channel Configuration Jumper Settings10 ∙ Installation Clock Source Setting D/A Reference Voltage SettingInternal Reference Voltage Setting 12 ∙ InstallationCN 3 Analog Input / Output & Counter/Timer Connectors Pin AssignmentsPin Assignments of PCI-9112 CN 2 Digital Signal Output do 0 CN 1 Digital Signal Input DI 014 ∙ Installation Pin Assignments of cPCI-9112 Hardware Installation Outline 16 ∙ InstallationDaughter Board Connection Connect with ACLD-8125Connect with ACLD-9137 Connect with ACLD-9182Connect with ACLD-9185 18 ∙ InstallationConnect with ACLD-9138 and ACLD-9188 I/O Registers Map G i s t e r s F o r m a tRegisters Format ∙ A/D Data Registers 20 ∙ Registers FormatD/A Output Register Mode A/D control Register22 ∙ Registers Format Auto-Scan Bit MUX Register Bit8 ~ Bit524 ∙ Registers Format A/D Status Register Software Trigger RegisterDigital I/O register 26 ∙ Registers FormatHigh Level Programming Internal Timer/Counter RegisterLow Level Programming Analog Input Signal Connection E r a t i o n T h e o r e mA/D Conversion 28 ∙ Operation TheoremDifferential input mode Single-ended ModeOperation Theorem ∙ 4 Floating source and differential input 30 ∙ Operation Theorem1 A/D Conversion Procedure Timer Pacer Trigger2 A/D Trigger Modes Software trigger3 A/D Data Transfer Modes External TriggerSoftware Data Transfer Drdy Interrupt Transfer IntxD/A Conversion DMA Transfer DmaxDigital Input and Output 34 ∙ Operation TheoremTimer/Counter Operation CounterGeneral Purpose Timer/ Counter Pacer Trigger SourceAddress 36 ∙ Operation TheoremControl Byte Mode Definitions 38 ∙ Operation Theorem+ + L i b r a r y Libraries Installation++ Library ∙ Programming Guide Naming ConventionData Types 40 ∙ C/C++ Library9112Initial SyntaxArgument Return Code9112DI 9112DI ChannelDescription 42 ∙ C/C++ Library9112DO 9112DA 44 ∙ C/C++ Library9112ADSetChannel 9112ADSetRange 46 ∙ C/C++ Library10 9112ADSetMode Cardnumber the card number of PCI-911211 9112ADSetAutoscan 48 ∙ C/C++ Library12 9112ADSoftTrig 13 9112ADAquire 50 ∙ C/C++ Library14 9112ADDMAStart 52 ∙ C/C++ Library 15 9112ADDMAStatus 16 9112ADDMAStop 54 ∙ C/C++ Library17 9112ContDmaStart 18 9112CheckHalfReady 56 ∙ C/C++ Library19 9112DblBufferTransfer 20 9112GetOverrunStatus21 9112ContDmaStop 58 ∙ C/C++ Library22 9112ADINTStart 23 9112ADINTStatus 60 ∙ C/C++ Library25 9112ADTimer 24 9112ADINTStop2MHz / c1 * c2 62 ∙ C/C++ Library26 9112TIMERStart 27 9112TIMERRead28 9112TIMERStop 29 9112AllocDMAMemArgument cardnumber countervalue 64 ∙ C/C++ Library30 9112FreeDMAMem 32 9112GetSample66 ∙ C/C++ Library What do you need CalibrationCalibration ∙ A/D Adjustment VR AssignmentBipolar Calibration Unipolar CalibrationReference Voltage Calibration D/A Adjustment2 D/A Channel Calibration Software Utility Software Utilities70 ∙ Software Utility System Configuration Running the UtilityCalibration Software Utility ∙PCI Scan Utility Functional Testing72 ∙ Software Utility P e n d i x a . D e m o O g r a m s DOS SoftwareWindows 95 DLL Appendix a Demo Programs ∙74 ∙ Appendix a Demo Programs Product Warranty/Service Product Warranty/Service ∙