sync with comedi
This commit is contained in:
parent
051314ac61
commit
17b0ebbf7d
1 changed files with 248 additions and 68 deletions
316
doc/drivers.txt
316
doc/drivers.txt
|
@ -31,9 +31,34 @@ I/O port base address can be found in the output of 'lspci -v'.
|
|||
|
||||
|
||||
|
||||
Driver: acl7225b.o
|
||||
Description: Adlink NuDAQ ACL-7225b (& compatibles as ICP P16R16DIO)
|
||||
Author: José Luis Sánchez (jsanchezv@teleline.es)
|
||||
Status: testing
|
||||
Devices: [Adlink] ACL-7225b (acl7225b), [ICP] P16R16DIO (p16r16dio)
|
||||
|
||||
|
||||
|
||||
Driver: adl_pci6208.o
|
||||
Description: Driver for ADLink PCI-6208A
|
||||
Devices: [ADLink] PCI-6208A (adl_pci6208)
|
||||
Author: nsyeow <nsyeow@pd.jaring.my>
|
||||
Updated: Fri, 30 Jan 2004 14:44:27 +0800
|
||||
Status: untested
|
||||
|
||||
Configuration Options:
|
||||
none
|
||||
|
||||
References:
|
||||
- ni_660x.c
|
||||
- adl_pci9111.c copied the entire pci setup section
|
||||
- adl_pci9118.c
|
||||
|
||||
|
||||
|
||||
Driver: adl_pci9111.o
|
||||
Description: Driver for the Adlink PCI-9111HR card.
|
||||
Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr>
|
||||
Author: Emmanuel Pacaud <emmanuel.pacaud@univ-poitiers.fr>
|
||||
Devices: [ADLink] PCI-9111HR (adl_pci9111)
|
||||
Status: experimental
|
||||
|
||||
|
@ -168,6 +193,102 @@ Configuration options:
|
|||
|
||||
|
||||
|
||||
Driver: amplc_dio200.o
|
||||
Description: Amplicon PC272E, PCI272
|
||||
Author: Ian Abbott <abbotti@mev.co.uk>
|
||||
Devices: [Amplicon] PC272E (pc272e), PCI272 (pci272)
|
||||
Updated: Fri, 11 Feb 2005 13:13:13 +0000
|
||||
Status: works
|
||||
|
||||
Configuration options - PC272E:
|
||||
[0] - I/O port base address
|
||||
[1] - IRQ (optional, but commands won't work without it)
|
||||
|
||||
Configuration options - PCI272:
|
||||
[0] - PCI bus of device (optional)
|
||||
[1] - PCI slot of device (optional)
|
||||
If bus/slot is not specified, the first available PCI device will
|
||||
be used.
|
||||
|
||||
Passing a zero for an option is the same as leaving it unspecified.
|
||||
|
||||
|
||||
SUBDEVICES
|
||||
|
||||
PC272E/PCI272
|
||||
-------------
|
||||
Subdevices 4
|
||||
0 PPI-X
|
||||
1 PPI-Y
|
||||
2 PPI-Z
|
||||
3 INTERRUPT
|
||||
|
||||
|
||||
Each PPI is a 8255 chip providing 24 DIO channels. The DIO channels
|
||||
are configurable as inputs or outputs in four groups:
|
||||
|
||||
Port A - channels 0 to 7
|
||||
Port B - channels 8 to 15
|
||||
Port CL - channels 16 to 19
|
||||
Port CH - channels 20 to 23
|
||||
|
||||
Only mode 0 of the 8255 chips is supported.
|
||||
|
||||
The 'INTERRUPT' subdevice pretends to be a digital input subdevice.
|
||||
The digital inputs come from the interrupt status register. The number
|
||||
of channels matches the number of interrupt sources.
|
||||
|
||||
|
||||
INTERRUPT SOURCES
|
||||
|
||||
PC272E/PCI272
|
||||
-------------
|
||||
Sources 6
|
||||
0 PPI-X-C0
|
||||
1 PPI-X-C3
|
||||
2 PPI-Y-C0
|
||||
3 PPI-Y-C3
|
||||
4 PPI-Z-C0
|
||||
5 PPI-Z-C3
|
||||
|
||||
When an interrupt source is enabled in the interrupt source enable
|
||||
register, a rising edge on the source signal latches the corresponding
|
||||
bit to 1 in the interrupt status register.
|
||||
|
||||
When the interrupt status register value as a whole (actually, just the
|
||||
6 least significant bits) goes from zero to non-zero, the board will
|
||||
generate an interrupt. For level-triggered hardware interrupts (PCI
|
||||
card), the interrupt will remain asserted until the interrupt status
|
||||
register is cleared to zero. For edge-triggered hardware interrupts
|
||||
(ISA card), no further interrupts will occur until the interrupt status
|
||||
register is cleared to zero. To clear a bit to zero in the interrupt
|
||||
status register, the corresponding interrupt source must be disabled
|
||||
in the interrupt source enable register (there is no separate interrupt
|
||||
clear register).
|
||||
|
||||
|
||||
COMMANDS
|
||||
|
||||
The driver supports a read streaming acquisition command on the
|
||||
'INTERRUPT' subdevice. The channel list selects the interrupt sources
|
||||
to be enabled. All channels will be sampled together (convert_src ==
|
||||
TRIG_NOW). The scan begins a short time after the hardware interrupt
|
||||
occurs, subject to interrupt latencies (scan_begin_src == TRIG_EXT,
|
||||
scan_begin_arg == 0). The value read from the interrupt status register
|
||||
is packed into a sampl_t value, one bit per requested channel, in the
|
||||
order they appear in the channel list.
|
||||
|
||||
|
||||
TODO LIST
|
||||
|
||||
Support for PC212E, PC215E, PCI215 and possibly PC218E should be added.
|
||||
Apart from the PC218E, these consist of a mixture of 8255 DIO chips and
|
||||
8254 counter chips with software configuration of the clock and gate
|
||||
sources for the 8254 chips. (The PC218E has 6 8254 counter chips but
|
||||
no 8255 DIO chips.)
|
||||
|
||||
|
||||
|
||||
Driver: amplc_pc236.o
|
||||
Description: Driver for Amplicon PC36AT and PCI236 DIO boards
|
||||
Author: Ian Abbott <abbotti@mev.co.uk>
|
||||
|
@ -220,6 +341,86 @@ The state of the outputs can be read.
|
|||
|
||||
|
||||
|
||||
Driver: amplc_pci224.o
|
||||
Description: Amplicon PCI224, PCI234
|
||||
Author: Ian Abbott <abbotti@mev.co.uk>
|
||||
Devices: [Amplicon] PCI224 (pci224), PCI234 (pci234)
|
||||
Updated: Thu, 24 Feb 2005 12:29:26 +0000
|
||||
Status: works, but see caveats
|
||||
|
||||
Supports:
|
||||
|
||||
- ao_insn read/write
|
||||
- ao_do_cmd mode with the following sources:
|
||||
|
||||
- start_src TRIG_INT TRIG_EXT
|
||||
- scan_begin_src TRIG_TIMER TRIG_EXT
|
||||
- convert_src TRIG_NOW
|
||||
- scan_end_src TRIG_COUNT
|
||||
- stop_src TRIG_COUNT TRIG_EXT TRIG_NONE
|
||||
|
||||
The channel list must contain at least one channel with no repeated
|
||||
channels. The scan end count must equal the number of channels in
|
||||
the channel list.
|
||||
|
||||
There is only one external trigger source so only one of start_src,
|
||||
scan_begin_src or stop_src may use TRIG_EXT.
|
||||
|
||||
Configuration options - PCI224:
|
||||
[0] - PCI bus of device (optional).
|
||||
[1] - PCI slot of device (optional).
|
||||
If bus/slot is not specified, the first available PCI device
|
||||
will be used.
|
||||
[2] - Select available ranges according to jumper LK1. All channels
|
||||
are set to the same range:
|
||||
0=Jumper position 1-2 (factory default), 4 software-selectable
|
||||
internal voltage references, giving 4 bipolar and 4 unipolar
|
||||
ranges:
|
||||
[-10V,+10V], [-5V,+5V], [-2.5V,+2.5V], [-1.25V,+1.25V],
|
||||
[0,+10V], [0,+5V], [0,+2.5V], [0,1.25V].
|
||||
1=Jumper position 2-3, 1 external voltage reference, giving
|
||||
1 bipolar and 1 unipolar range:
|
||||
[-Vext,+Vext], [0,+Vext].
|
||||
|
||||
Configuration options - PCI234:
|
||||
[0] - PCI bus of device (optional).
|
||||
[1] - PCI slot of device (optional).
|
||||
If bus/slot is not specified, the first available PCI device
|
||||
will be used.
|
||||
[2] - Select internal or external voltage reference according to
|
||||
jumper LK1. This affects all channels:
|
||||
0=Jumper position 1-2 (factory default), Vref=5V internal.
|
||||
1=Jumper position 2-3, Vref=Vext external.
|
||||
[3] - Select channel 0 range according to jumper LK2:
|
||||
0=Jumper position 2-3 (factory default), range [-2*Vref,+2*Vref]
|
||||
(10V bipolar when options[2]=0).
|
||||
1=Jumper position 1-2, range [-Vref,+Vref]
|
||||
(5V bipolar when options[2]=0).
|
||||
[4] - Select channel 1 range according to jumper LK3: cf. options[3].
|
||||
[5] - Select channel 2 range according to jumper LK4: cf. options[3].
|
||||
[6] - Select channel 3 range according to jumper LK5: cf. options[3].
|
||||
|
||||
Passing a zero for an option is the same as leaving it unspecified.
|
||||
|
||||
Caveats:
|
||||
|
||||
1) All channels on the PCI224 share the same range. Any change to the
|
||||
range as a result of insn_write or a streaming command will affect
|
||||
the output voltages of all channels, including those not specified
|
||||
by the instruction or command.
|
||||
|
||||
2) For the analog output command, the first scan may be triggered
|
||||
falsely at the start of acquisition. This occurs when the DAC scan
|
||||
trigger source is switched from 'none' to 'timer' (scan_begin_src =
|
||||
TRIG_TIMER) or 'external' (scan_begin_src == TRIG_EXT) at the start
|
||||
of acquisition and the trigger source is at logic level 1 at the
|
||||
time of the switch. This is very likely for TRIG_TIMER. For
|
||||
TRIG_EXT, it depends on the state of the external line and whether
|
||||
the CR_INVERT flag has been set. The remaining scans are triggered
|
||||
correctly.
|
||||
|
||||
|
||||
|
||||
Driver: amplc_pci230.o
|
||||
Description: Driver for Amplicom PCI230 and PCI260 Multifunction I/O boards
|
||||
Author: Allan Willcox <allanwillcox@ozemail.com.au>, Steve D Sharples <steve.sharples@nottingham.ac.uk>
|
||||
|
@ -230,30 +431,6 @@ Status: works
|
|||
|
||||
|
||||
|
||||
Driver: ni_pcidio.o
|
||||
Description: National Instruments PCI-DIO32HS, PCI-DIO96, PCI-6533, PCI-6503
|
||||
Author: ds
|
||||
Status: works
|
||||
Devices: [National Instruments] PCI-DIO-32HS (ni_pcidio), PXI-6533,
|
||||
PCI-DIO-96, PCI-DIO-96B, PXI-6508, PCI-6503, PCI-6503B, PCI-6503X,
|
||||
PXI-6503, PCI-6534, PCI-6533
|
||||
Updated: Sun, 21 Apr 2002 21:03:38 -0700
|
||||
|
||||
The DIO-96 appears as four 8255 subdevices. See the 8255
|
||||
driver notes for details.
|
||||
|
||||
The DIO32HS board appears as one subdevice, with 32 channels.
|
||||
Each channel is individually I/O configurable. The channel order
|
||||
is 0=A0, 1=A1, 2=A2, ... 8=B0, 16=C0, 24=D0. The driver only
|
||||
supports simple digital I/O; no handshaking is supported.
|
||||
|
||||
DMA mostly works for the PCI-DIO32HS, but only in timed input mode.
|
||||
|
||||
This driver could be easily modified to support AT-MIO32HS and
|
||||
AT-MIO96.
|
||||
|
||||
|
||||
|
||||
Driver: cb_das16_cs.o
|
||||
Description: Computer Boards PC-CARD DAS16/16
|
||||
Devices: [ComputerBoards] PC-CARD DAS16/16 (cb_das16_cs), PC-CARD DAS16/16-AO
|
||||
|
@ -540,10 +717,10 @@ Devices: [IOTech] DAQBoard/2000 (daqboard2000)
|
|||
Much of the functionality of this driver was determined from reading
|
||||
the source code for the Windows driver.
|
||||
|
||||
The FPGA on the board requires initialization code, which can either
|
||||
be compiled into the driver or loaded by comedi_config using the -i
|
||||
option. The latter is recommended, in order to save a bit of kernel
|
||||
memory.
|
||||
The FPGA on the board requires initialization code, which can
|
||||
be loaded by comedi_config using the -i
|
||||
option. The initialization code is available from http://www.comedi.org
|
||||
in the comedi_nonfree_firmware tarball.
|
||||
|
||||
Configuration options:
|
||||
none
|
||||
|
@ -1040,6 +1217,13 @@ Configuration Options:
|
|||
If bus/slot is not specified, the first available PCI
|
||||
device will be used.
|
||||
|
||||
The firmware required by these boards is available in the
|
||||
comedi_nonfree_firmware tarball available from
|
||||
http://www.comedi.org. However, the driver's support for
|
||||
loading the firmware through comedi_config is currently
|
||||
broken.
|
||||
|
||||
|
||||
|
||||
|
||||
Driver: me_daq.o
|
||||
|
@ -1060,6 +1244,13 @@ Configuration options:
|
|||
If bus/slot is not specified, the first available PCI
|
||||
device will be used.
|
||||
|
||||
The 2600 requires a firmware upload, which can be accomplished
|
||||
using the -i or --init-data option of comedi_config.
|
||||
The firmware can be
|
||||
found in the comedi_nonfree_firmware tarball available
|
||||
from http://www.comedi.org
|
||||
|
||||
|
||||
|
||||
|
||||
Driver: mpc8260cpm.o
|
||||
|
@ -1156,11 +1347,15 @@ Configuration options:
|
|||
Driver: ni_at_ao.o
|
||||
Description: National Instruments AT-AO-6/10
|
||||
Devices: [National Instruments] AT-AO-6 (at-ao-6), AT-AO-10 (at-ao-10)
|
||||
Status: untested
|
||||
Status: should work
|
||||
Author: ds
|
||||
Updated: Fri, 7 Jun 2002 13:20:30 -0700
|
||||
Updated: Sun Dec 26 12:26:28 EST 2004
|
||||
|
||||
This driver has not been tested, but should work.
|
||||
Configuration options:
|
||||
[0] - I/O port base address
|
||||
[1] - IRQ (unused)
|
||||
[2] - DMA (unused)
|
||||
[3] - analog output range, set by jumpers on hardware (0 for -10 to 10V bipolar, 1 for 0V to 10V unipolar)
|
||||
|
||||
|
||||
|
||||
|
@ -1317,7 +1512,7 @@ Author: ds
|
|||
Status: works
|
||||
Devices: [National Instruments] PCI-DIO-32HS (ni_pcidio), PXI-6533,
|
||||
PCI-DIO-96, PCI-DIO-96B, PXI-6508, PCI-6503, PCI-6503B, PCI-6503X,
|
||||
PXI-6503, PCI-6534, PCI-6533
|
||||
PXI-6503, PCI-6533, PCI-6534
|
||||
Updated: Sun, 21 Apr 2002 21:03:38 -0700
|
||||
|
||||
The DIO-96 appears as four 8255 subdevices. See the 8255
|
||||
|
@ -1333,6 +1528,11 @@ DMA mostly works for the PCI-DIO32HS, but only in timed input mode.
|
|||
This driver could be easily modified to support AT-MIO32HS and
|
||||
AT-MIO96.
|
||||
|
||||
The PCI-6534 requires a firmware upload after power-up to work, the
|
||||
firmware data and instructions for loading it with comedi_config
|
||||
it are contained in the
|
||||
comedi_nonfree_firmware tarball available from http://www.comedi.org
|
||||
|
||||
|
||||
|
||||
Driver: ni_pcimio.o
|
||||
|
@ -1447,6 +1647,18 @@ Interrupts are not supported.
|
|||
|
||||
|
||||
|
||||
Driver: pcl730.o
|
||||
Description: Advantech PCL-730 (& compatibles)
|
||||
Author: José Luis Sánchez (jsanchezv@teleline.es)
|
||||
Status: untested
|
||||
Devices: [Advantech] PCL-730 (pcl730), [ICP] ISO-730 (iso730),
|
||||
[Adlink] ACL-7130 (acl7130)
|
||||
|
||||
Interrupts are not supported.
|
||||
The ACL-7130 card have an 8254 timer/counter not supported by this driver.
|
||||
|
||||
|
||||
|
||||
Driver: pcl812.o
|
||||
Description: Advantech PCL-812/PG, PCL-813/B,
|
||||
ADLink ACL-8112DG/HG/PG, ACL-8113, ACL-8216,
|
||||
|
@ -1691,37 +1903,6 @@ Configuration options:
|
|||
|
||||
|
||||
|
||||
Driver: rti800.o
|
||||
Description: Analog Devices RTI-800/815
|
||||
Author: ds
|
||||
Status: unknown
|
||||
Devices: [Analog Devices] RTI-800 (rti800), RTI-815 (rti815)
|
||||
|
||||
Configuration options:
|
||||
[0] - I/O port base address
|
||||
[1] - IRQ
|
||||
[2] - A/D reference
|
||||
0 = differential
|
||||
1 = pseudodifferential (common)
|
||||
2 = single-ended
|
||||
[3] - A/D range
|
||||
0 = [-10,10]
|
||||
1 = [-5,5]
|
||||
2 = [0,10]
|
||||
[4] - A/D encoding
|
||||
0 = two's complement
|
||||
1 = straight binary
|
||||
[5] - DAC 0 range
|
||||
0 = [-10,10]
|
||||
1 = [0,10]
|
||||
[5] - DAC 0 encoding
|
||||
0 = two's complement
|
||||
1 = straight binary
|
||||
[6] - DAC 1 range (same as DAC 0)
|
||||
[7] - DAC 1 encoding (same as DAC 0)
|
||||
|
||||
|
||||
|
||||
Driver: rti802.o
|
||||
Description: Analog Devices RTI-802
|
||||
Author: Anders Blomdell <anders.blomdell@control.lth.se>
|
||||
|
@ -1776,7 +1957,7 @@ Driver: usbdux.c
|
|||
Description: University of Stirling USB DAQ & INCITE Technology Limited
|
||||
Devices: [ITL] USB-DUX (usbdux.o)
|
||||
Author: Bernd Porr <BerndPorr@f2s.com>
|
||||
Updated: 05 Sept 2004
|
||||
Updated: 04 Jan 2005
|
||||
Status: Stable
|
||||
Configuration options:
|
||||
You have to upload firmware with the -i option. The
|
||||
|
@ -1796,10 +1977,9 @@ sampling rate. If you sample two channels you get 4kHz and so on.
|
|||
Driver: usbduxfast.c
|
||||
Description: ITL USB-DUXfast
|
||||
Devices: [ITL] USB-DUX (usbduxfast.o)
|
||||
Author: Bernd Porr <Bernd.Porr@cn.stir.ac.uk>
|
||||
Updated: 31 Oct 2004
|
||||
Author: Bernd Porr <BerndPorr@f2s.com>
|
||||
Updated: 07 Feb 2005
|
||||
Status: testing
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue