[AX5216 - 5 Channels Counter/Timer Board] Function: ax5216Init Description: Initialize the device. int ax5216Init(int base_addr, int function); base_addr: I/O base address of the device. function: Function ID. Remarks: This function should be called once before the device performming any data I/O functions. The function ID could be either of the constants listing below or any combinition of them: ID_FUNC_DI ID_FUNC_DO ID_FUNC_EVCNT ID_FUNC_FOUT ID_FUNC_ALL Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216Term Description: Terminate the device driver. int ax5216Term(int base_addr); base_addr: I/O base address of the device. Remarks: This function should be called once if the device will no longer performming any data I/O functions. Usually at the end of you data acquisition/control processes. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216GetDevAtbu Description: Retrieve the device attribute. int ax5216GetDevAtbu(LPDEVATBU lpDevAtbu); lpDevAtbu: Pointer to the DEVATBU struct, which stores the device attribute. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216IRQSetting Description: Setting up the interrupt service routine for digital input via interrupt. int ax5216IRQSetting(int base_addr, void ISR(*isr)()); base_addr: I/O base address of the device. *isr: The user specified interrupt service routine. Remarks: Use this function to specified the interrupt service routine. Each time the interrupt was generated, the *isr will be called. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216IRQRestore Description: Restore the old interrupt service routine. int ax5216IRQRestore(int IRQNo); IRQNo: IRQ number specified in the ax5216IRQSetting function. Remarks: Use this function to restore the interrupt service routine. Call this function everytime if ax5216IRQSetting was called, and before the ax5216Term was called. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216DI Description: Digital input function for specified channel. int ax5216DI(int base_addr, int chan, int* data); base_addr: I/O base address of the device. chan: Channel to perform DI function. data: Pointer to storage of digital input status. Remarks: This function will retrieve the one and only specified channel for it's digital input status. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216DI_P Description: Digital input function for specified port(8-bit). int ax5216DI_P(int base_addr, int* data); base_addr: I/O base address of the device. data: Pointer to storage of digital input status. Remarks: This function will retrieve all the digital input status of channels in the same port. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216DO Description: Digital output function for specified channel. int ax5216DO(int base_addr, int chan, int data); base_addr: I/O base address of the device. chan: channel to proform digital output function. data: Digital output status.0:LOW, 1:HIGH. Remarks: Use this function to output a LOW/HIGH signal to specified channel. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216DO_P Description: Digital output function for specified port(8-bit). int ax5216DO_P(int base_addr, int data); base_addr: I/O base address of the device. data: Digital output status for a port(8-channel). Remarks: Use this function to output signals(LOW/HIGH) at once for channels in the same port. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216SetCntMode Description: Setup up Am9513A counter mode register(CMR) of AX5216. int ax5216SetCntMode(int base_addr, int CntNo, WORD Mode); base_addr: I/O base address of the device. CntNo: Counter number. CNT#1,2,3,4,5.... Mode: CMR of Am9513A. Please refer to Am9513A data book for detailed info. Return Values: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216GetCntSts Description: Retrieve the status of the specified counter. int ax5216GetCntSts(int base_addr, int CntNo, int* pStatus); base_addr: I/O base address of the device. CntNo: Counter number. CNT#1,2,3,4,5.... pStatus: Pointer to storage of counter status. Return Value: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216ReadCnt, ax5216ReadCntA Description: read the 'current' count of the specified counter. int ax5216ReadCnt(int base_addr, int CntNo, WORD* pdata); int ax5216ReadCntA(int base_addr, int CntNo, WORD* pdata, int ReadMode); base_addr: I/O base address of the device. CntNo: Counter number. CNT#1,2,3,4,5.... pdata: Pointer to storage of current count. ReadMode: (Advanced Function) Specify the reading of 'current' count. The value will be ID_MANUAL, for manual reading, or ID_AUTOREAD, for automatic reading. Remarks: The only difference between ax5216ReadCnt() and ax5216ReadCntA() is that how the counter will be latched for reading. You can latch the counter manually, and read the counter by calling ax5216ReadCntA(), as well as calling another function, ax5216ReadCnt(), to latch and read the counter automatically. Return Value: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216WriteCnt, ax5216WriteCntA Description: Write data to the specified counter. int ax5216WriteCnt(int base_addr, int CntNo, WORD data); int ax5216WriteCntA(int base_addr, int CntNo, WORD data, int WriteMode); base_addr: I/O base address of the device. CntNo: Counter number. CNT#1,2,3,4,5.... data: Data that will be loaded onto the counter's LOAD register. WriteMode: (Advanced Function) Specify the LOAD/ARM method of the data. The value will be ID_MANUAL, for manual ARM data, or ID_AUTOWRITE, for auto- matically ARM data. Remarks: The only difference between these two functions is that how the counter will being ARMed. You can call ax5216WriteCntA(ID_MANUAL) to LOAD counter and then ARM counter by yourself. Or call ax5216WriteCnt() to LOAD and ARM counter automatically. Return Value: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216EventCount Description: Event counting function. int ax5216EventCount(int base_addr, int CntNo, WORD ConvNo); base_addr: I/O base address of the device. CntNo: Counter number. CNT#1,2,3,4,5.... ConvNo: Specify the initial value to count down. Remarks: The default counting direction is count down. You can change the counting direction by setting up the CMR via ax5126SetCntMode(). Refer to Am9513A data book for detailed information. Return Value: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216Frequency Description: Frequency measurement function. int ax5216Frequency(int base_addr, int* pCntNo, WORD delay, float* pFreq); base_addr: I/O base address of the device. pCntNo: Pointer to buffer of counter used. For example, if you use cascaded counters, CNT#1 and CNT2, to measure frequency. The buffer CntUse[] will be CntUse[0]=1, CntUse[1]=CntUse[2]=2. (pFreq=CntUse). delay: Specify the sampling period for frequency measurement. pFreq: Pointer to storage of measured frequency. Remarks: There are plenty of frequency measument methods. This function shows how to measure frequency in software gating method, which may loss data in some non-realtime system, but makes the most use of all channels. It is your own freedom to implement any other measuring method as long as it works, with functions described above. Return Value: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST. Function: ax5216WaveGen Description: Generate square wave through OUT pin. int ax5216WaveGen(int base_addr, int CntNo, DWORD base_freq, DWORD out_freq); base_addr: I/O base address of the device. CntNo: Counter number. CNT#1,2,3,4,5.... base_freq: Base frequency of the counter CLK source. out_freq: Value of the output frequency. Return Value: This function will return an error code defined in the ERROR CODE LIST of AXDDR include file(axddr.h). Please be sure to check this returned value to determine whether the function call succeed or not. If there're no any error occured, the return value should be ERR_NOERR. Otherwise, the value will be the one defined in ERROR CODE LIST.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.