=============================== AXIOM DAS Device Driver for DOS ==========================1.1== I.INTRODUCTION II.PROGRAMMING FLOW CHART III.NAMING CONVENTION IV.TECHNICAL NOTES I.INTRODUCTION -------------- AXIOM DAS Device Driver (AXDDR) provides functions for setting and doing with all AXIOM data acquisition devices. It provides almost every function you will need to use with those devices. The following shows the relationships between your applications and the device. APPLICATION (i.e. DevUtil) | DRIVER (This driver) | HARDWARE (i.e. AX5008, AX5210, AX5621H....) A demo utility - AXIOM Device Utility (DevUtil) - provides illustration on how to use and call the driver(AXDDR) as well as a program for testing the basic functions of the device. All of these tasks were done in C language, popularly known as the premier easy-study and powerful language for programming under DOS. The source code is provided and tested under Turbo C 2.0 compiler and is believed to be okay for Microsoft C 7.0 compiler. Please keep in mind that all these source codes provided here were applied in "demonstrations on coding procedures" with AXIOM data acquisition devices, and confined with the exclusive use of AXIOM data acquisition devices. II.PROGRAMMING FLOW CHART ------------------------- To achieve a proper working condition with AXIOM data acquisition devices, call the driver function in sequence as listed below: [FUNCTION SATRT] axOOOOInit | *axOOOOIRQStart, axOOOODMAStart | axOOOODI, axOOOODO, axOOOOAI,....*axOOOOIRQGetStatus/*axOOOOIRQGetData.... | *axOOOOIRQStop, axOOOODMAStop | axOOOOTerm [FUNCTION TERMINATE] * The function should be called when performing extra functions, such as interrupt or direct memory access. III. NAMING CONVENTION ---------------------- The device driver provides several functions with very simple naming convention. All these functions start with "axOOOO" to determine the device it connects to. The generally used functions are listed below. axOOOOInit Initialize the device and driver. axOOOOTerm Terminate the device driver. axOOOOGetAttr Retrieve the device attribute. axOOOODI Digital input function for one channel. axOOOODI_P Digital input function for one port. axOOOODO Digital output function for one channel. axOOOODO_P Digital output function for one port. axOOOOAI Analog input with software triggered method axOOOOAO Analog output function. axOOOOTemperature Temperature measurement function. axOOOOEventCount Event counting function. axOOOOFrequency Frequency measurement function. axOOOOWaveGen Square wave generation function. axOOOOIRQStart Initiates and starts the analog input function via interrupt. axOOOOIRQGetStatus Monitoring on the driver buffer writing status. axOOOOIRQGetData Retrieve the data from the driver buffer. axOOOOIRQStop Stops and terminate the AI via interrupt function. axOOOODMAStart Initiates and starts the analog input function via DMA. axOOOODMAGetStatus Monitoring on the driver buffer writing status. axOOOODMAGetData Retrieve the data from the driver buffer. axOOOODMAStop Stops and terminate the AI via DMA function. ........ For more details on each function provided for a device, refer to it's own associated driver text file, 'axOOOO.txt', which might be found under the same directory as it's device driver source code. For example, ..\AXDDR\AX5008\AX5008.TXT \AX5032A\AX5032A.TXT .................... IV. TECHNICAL NOTES ------------------- As a part of the DevUtil project, all the associated object code, "*.obj", were added to one device driver library, "AXDDR_L.LIB", which means all the driver function calls will be found here and the library might be too large for user to include into their applications. In such a case, you can build up your own library or just use the object file you needed, refer to your compiler's reference for information about how to build a library. There are still some common functions which might be called inside of some device driver, but might of little use for illustration and demo purpose. These functons are stored in object files, 'MISC*.OBJ', located under the sub-directory '\misc' of '\AXDDR'. Following are lists of these functions: /***** Interrupt vector function *****/ int SetVect(int, void ISR(*isr)()); int RestoreVect(int IRQNo); int SetEOI(int); /***** DMA controller function *****/ void dma_enable(int ch); void dma_disable(int ch); WORD dma_count(int ch); int CalPageInfo(int DMACh, WORD Count, DWORD pBufORSize); int DMASetting(int DMACh, int DMAFlag); void ResetScanChan(int DMACh); /***** DO data function *****/ LPDODATA InitDOData(int,LPDODATA); LPDODATA FreeDOData(int,LPDODATA); LPDODATA GetDOData(int,LPDODATA); /***** Temperature transform function *****/ double CalculateTemp(int,double,double); Don't forget to include this object file when the device driver calls these common functions.Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.