|
research @ wolfgang-reinelt.de |
Linux drivers for the Keithley K575 box |
|---|
In the control engineering
laboratory in Paderborn
we used to have the Keithley K575
Measurement and Control System on Linux PCs. Therefore we wrote
some driver, tested from Linux 1.2.13 to Linux 2.0.x. I keep this site
up because there are some requests every now and the from people who
intend to use this old Keihtley box. However, there will be no real
"coding" support for the driver, but drop me a note if you need to
discuss some issues.
Obviously, all the drivers here are "beta"-versions and
BECAUSE THE PROGRAMME IS LICENSED FREE OF CHARGE, THERE IS ABSOLUTLY
NO WARRANTY FOR THE PROGRAMME .
The K575 driver uses memory-mapped-I/O. The driver is written as a
module which you can be 'insmod' and 'rmmod' anytime -- as long as you
are root. We install the module when booting the system.
[/etc/rc.d/rc.local:]
The module comes with a Makefile. A make K575 compiles the kernel-module for you and a make k575lib makes the library you will need to use the new functions. The Makefile has a few options, one of these is a make install which, if run as root, sees to everything you need. The documentation in the source-code is near to nothing, so I hope there are no really serious problems. To install the module you have to enable modules and version-control when compiling your kernel. Thus the module has to be compiled on a system with the same kernel-version as the one you want to use it on. You are on the safe side if you compile the module on the system you are planning to use it on.
As timing is important when trying to measure something non-static, the library has quite a nice timing-function in it, of which I think it is simple to use.
The difference in the two versions can be found in the usage of the kernel-functions for the handling of interrupts. They seem to have changed sometime between Linux 1.2.13 und Linux 2.0.x. Sadly we have not yet got the evaluation of the interrupts to work, so this part of code is superfluous anyway.
With the source-code you will find a demonstration-programme with the usage of the major functions in it and its Makefile. They are located in the user directory.
Download the driver here: (Use "Save Link As ..." button of your browser)