File: pcimio_8c.html

package info (click to toggle)
xenomai 2.5.4-3squeeze1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 36,140 kB
  • ctags: 35,509
  • sloc: ansic: 109,084; sh: 11,745; makefile: 2,205; xml: 1,356; asm: 613; php: 316; perl: 155
file content (66 lines) | stat: -rw-r--r-- 6,703 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Xenomai API: ksrc/drivers/analogy/national_instruments/pcimio.c File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    <li>
      <form action="search.php" method="get">
        <table cellspacing="0" cellpadding="0" border="0">
          <tr>
            <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
            <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
          </tr>
        </table>
      </form>
    </li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>ksrc/drivers/analogy/national_instruments/pcimio.c File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2>
Hardware driver for NI PCI-MIO E series cards. 
<p>
Copyright (C) 1997-8 David A. Schleef &lt;<a href="mailto:ds@schleef.org">ds@schleef.org</a>&gt;<p>
This code is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.<p>
This code is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.<p>
You should have received a copy of the GNU General Public License along with Xenomai; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.<p>
Description: National Instruments PCI-MIO-E series and M series (all boards)<p>
Author: ds, John Hallen, Frank Mori Hess, Rolf Mueller, Herbert Peremans, Herman Bruyninckx, Terry Barnaby Status: works Devices: [National Instruments] PCI-MIO-16XE-50 (ni_pcimio), PCI-MIO-16XE-10, PXI-6030E, PCI-MIO-16E-1, PCI-MIO-16E-4, PCI-6014, PCI-6040E,PXI-6040E, PCI-6030E, PCI-6031E, PCI-6032E, PCI-6033E, PCI-6071E, PCI-6023E, PCI-6024E, PCI-6025E, PXI-6025E, PCI-6034E, PCI-6035E, PCI-6052E, PCI-6110, PCI-6111, PCI-6220, PCI-6221, PCI-6224, PCI-6225, PCI-6229, PCI-6250, PCI-6251, PCIe-6251, PCI-6254, PCI-6259, PCIe-6259, PCI-6280, PCI-6281, PXI-6281, PCI-6284, PCI-6289, PCI-6711, PXI-6711, PCI-6713, PXI-6713, PXI-6071E, PCI-6070E, PXI-6070E, PXI-6052E, PCI-6036E, PCI-6731, PCI-6733, PXI-6733, PCI-6143, PXI-6143<p>
These boards are almost identical to the AT-MIO E series, except that they use the PCI bus instead of ISA (i.e., AT). See the notes for the ni_atmio.o driver for additional information about these boards.<p>
By default, the driver uses DMA to transfer analog input data to memory. When DMA is enabled, not all triggering features are supported.<p>
Note that the PCI-6143 is a simultaneous sampling device with 8 convertors. With this board all of the convertors perform one simultaneous sample during a scan interval. The period for a scan is used for the convert time in an Analgoy cmd. The convert trigger source is normally set to TRIG_NOW by default.<p>
The RTSI trigger bus is supported on these cards on subdevice 10. See the Analogy library documentation for details.<p>
References: 341079b.pdf PCI E Series Register-Level Programmer Manual 340934b.pdf DAQ-STC reference manual 322080b.pdf 6711/6713/6715 User Manual 320945c.pdf PCI E Series User Manual 322138a.pdf PCI-6052E and DAQPad-6052E User Manual<p>
ISSUES:<ul>
<li>When DMA is enabled, XXX_EV_CONVERT does not work correctly.</li><li>Calibration is not fully implemented</li><li>SCXI is probably broken for m-series boards</li><li>Digital I/O may not work on 673x.</li><li>Information (number of channels, bits, etc.) for some devices may be incorrect. Please check this and submit a bug if there are problems for your device.</li><li>Need to deal with external reference for DAC, and other DAC properties in board properties</li><li>Deal with at-mio-16de-10 revision D to N changes, etc.</li><li>Need to add other CALDAC type</li><li>Need to slow down DAC loading. I don't trust NI's claim that two writes to the PCI bus slows IO enough. I would prefer to use a4l_udelay(). Timing specs: (clock) AD8522 30ns DAC8043 120ns DAC8800 60ns MB88341 ? </li></ul>

<p>

<p>
<div class="dynheader">
Include dependency graph for pcimio.c:</div>
<div class="dynsection">
<p><center><img src="pcimio_8c__incl.png" border="0" usemap="#ksrc/drivers/analogy/national_instruments/pcimio.c_map" alt=""></center>
<map name="ksrc/drivers/analogy/national_instruments/pcimio.c_map">
<area shape="rect" href="analogy__driver_8h.html" title="Analogy for Linux, driver facilities." alt="" coords="213,239,392,265"><area shape="rect" href="8255_8h.html" title="Hardware driver for 8255 chip." alt="" coords="195,161,301,188"><area shape="rect" href="ni__stc_8h.html" title="Register descriptions for NI DAQ&#45;STC chip." alt="" coords="265,84,335,111"><area shape="rect" href="ni__mio_8h.html" title="Hardware driver for NI Mite PCI interface chip." alt="" coords="359,84,433,111"><area shape="rect" href="mite_8h.html" title="Hardware driver for NI Mite PCI interface chip." alt="" coords="457,84,519,111"><area shape="rect" href="os__facilities_8h.html" title="Analogy for Linux, Operation system facilities." alt="" coords="51,316,211,343"><area shape="rect" href="context_8h.html" title="Analogy for Linux, context structure / macros declarations." alt="" coords="235,316,371,343"><area shape="rect" href="device_8h.html" title="Analogy for Linux, device related features." alt="" coords="395,316,523,343"><area shape="rect" href="ni__tio_8h.html" title="Hardware driver for NI general purpose counter." alt="" coords="325,161,392,188"></map>
</div>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
</table>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Aug 2 12:48:37 2010 for Xenomai API by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>