A device driver is neccessary to use Hilscher's CIFX and COMX communication devices under Microsoft Windows operating system.
The CIFX/netX device driver is a kernel-mode driver that runs in Ring 0 of the operating system and supports the Windows plug-and-play mechanisms. ISA, PCI and PCI/e components are supported and can be combined arbitrarily using an unlimited number of components.
The user application uses a Windows API DLL to communicate with the driver. The DLL provides a simple C function interface (CIFX-API) and can be linked statically or dynamically to an application. Both driver and API DLL are avaibable for 32/64Bit Windows systems.
The driver’s function interface is fieldbus system independent and includes functions for the recognition of installed hardware, reading system information, initializing and parametrizing field bus systems, exchanging cyclical and acyclical data and reading status information, as well as time-monitoring and watchdog function.
|Associated products||CIFX / COMX / netPLC / netJACK|
|Network controllers||netX 500, netX 100, netX 50, netX 10, netX 51, netX 52|
|Operating systems||Windows 2000/XP/VISTA, Windows 7 (32/64 bit), Windows 8 (32/64 bit), Windows 10 (32/64 bit)|
|Driver type||32/64-bit kernel-mode driver, based on Microsoft KMDF driver architecture|
Opening and closing the driver
Initializing the PC cards
Accessing process data image
Reading status information
|Operating modes||Polling / Interrupt / DMA|
|Hardware support||ISA, PCI / PCIe|
|Cards per system||Any number|
|Other characteristics||Based on the CIFX toolkit
Support for development boards
|Product name||Part number||Brief description|
|NXDRV-WIN||6211.010||CIFX/netX Device Driver for Windows|
Most operating systems require a device driver to integrate hardware components. Hilscher CIFX/COMX components require such device drivers as well. Hilscher offers a series of device drivers for a wide variety of operating systems. All Hilscher drivers have a standard user interface (CIFX-API) and are based on a C toolkit also usable for independent device driver development. The drivers are fully responsible for managing the communication components, including loading firmware and configuration files. The user interface contains all of the functions needed to initialize, parametrize, exchange I/0 data and acquire status information. Depending on the operating system, the user interface is contained in a DLL or library. As far as possible, the drivers support existing bus connections such as ISA, PCI, PCIe and dual-port memory connections. The C toolkit, and therefore the basis of the driver code, is designed in such a way that an unlimited number of communication components can be used simultaneously. However, the specific characteristics of each operating system must be taken into account.