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 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
|
<!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/ni_mio.h Source File</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 Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data 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> <u>S</u>earch for </label></td>
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
</tr>
</table>
</form>
</li>
</ul>
</div>
<h1>ksrc/drivers/analogy/national_instruments/ni_mio.h</h1><a href="ni__mio_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001
<a name="l00021"></a>00021 <span class="preprocessor">#ifndef __ANALOGY_NI_MIO_H__</span>
<a name="l00022"></a>00022 <span class="preprocessor"></span><span class="preprocessor">#define __ANALOGY_NI_MIO_H__</span>
<a name="l00023"></a>00023 <span class="preprocessor"></span>
<a name="l00024"></a>00024 <span class="comment">/* Debug stuff */</span>
<a name="l00025"></a>00025
<a name="l00026"></a>00026 <span class="preprocessor">#ifdef CONFIG_DEBUG_MIO</span>
<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="preprocessor">#define MDPRINTK(fmt, args...) rtdm_printk(format, ##args)</span>
<a name="l00028"></a>00028 <span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* !CONFIG_DEBUG_MIO */</span>
<a name="l00029"></a>00029 <span class="preprocessor">#define MDPRINTK(fmt, args...)</span>
<a name="l00030"></a>00030 <span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* CONFIG_DEBUG_MIO */</span>
<a name="l00031"></a>00031
<a name="l00032"></a>00032 <span class="comment">/* Subdevice related defines */</span>
<a name="l00033"></a>00033
<a name="l00034"></a>00034 <span class="preprocessor">#define AIMODE_NONE 0</span>
<a name="l00035"></a>00035 <span class="preprocessor"></span><span class="preprocessor">#define AIMODE_HALF_FULL 1</span>
<a name="l00036"></a>00036 <span class="preprocessor"></span><span class="preprocessor">#define AIMODE_SCAN 2</span>
<a name="l00037"></a>00037 <span class="preprocessor"></span><span class="preprocessor">#define AIMODE_SAMPLE 3</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span>
<a name="l00039"></a>00039 <span class="preprocessor">#define NI_AI_SUBDEV 0</span>
<a name="l00040"></a>00040 <span class="preprocessor"></span><span class="preprocessor">#define NI_AO_SUBDEV 1</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#define NI_DIO_SUBDEV 2</span>
<a name="l00042"></a>00042 <span class="preprocessor"></span><span class="preprocessor">#define NI_8255_DIO_SUBDEV 3</span>
<a name="l00043"></a>00043 <span class="preprocessor"></span><span class="preprocessor">#define NI_UNUSED_SUBDEV 4</span>
<a name="l00044"></a>00044 <span class="preprocessor"></span><span class="preprocessor">#define NI_CALIBRATION_SUBDEV 5</span>
<a name="l00045"></a>00045 <span class="preprocessor"></span><span class="preprocessor">#define NI_EEPROM_SUBDEV 6</span>
<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_DIO_SUBDEV 7</span>
<a name="l00047"></a>00047 <span class="preprocessor"></span><span class="preprocessor">#define NI_CS5529_CALIBRATION_SUBDEV 8</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#define NI_SERIAL_SUBDEV 9</span>
<a name="l00049"></a>00049 <span class="preprocessor"></span><span class="preprocessor">#define NI_RTSI_SUBDEV 10</span>
<a name="l00050"></a>00050 <span class="preprocessor"></span><span class="preprocessor">#define NI_GPCT0_SUBDEV 11</span>
<a name="l00051"></a>00051 <span class="preprocessor"></span><span class="preprocessor">#define NI_GPCT1_SUBDEV 12</span>
<a name="l00052"></a>00052 <span class="preprocessor"></span><span class="preprocessor">#define NI_FREQ_OUT_SUBDEV 13</span>
<a name="l00053"></a>00053 <span class="preprocessor"></span><span class="preprocessor">#define NI_NUM_SUBDEVICES 14</span>
<a name="l00054"></a>00054 <span class="preprocessor"></span>
<a name="l00055"></a>00055 <span class="preprocessor">#define NI_GPCT_SUBDEV(x) ((x == 1) ? NI_GPCT1_SUBDEV : NI_GPCT0_SUBDEV)</span>
<a name="l00056"></a>00056 <span class="preprocessor"></span>
<a name="l00057"></a>00057 <span class="preprocessor">#define TIMEBASE_1_NS 50</span>
<a name="l00058"></a>00058 <span class="preprocessor"></span><span class="preprocessor">#define TIMEBASE_2_NS 10000</span>
<a name="l00059"></a>00059 <span class="preprocessor"></span>
<a name="l00060"></a>00060 <span class="preprocessor">#define SERIAL_DISABLED 0</span>
<a name="l00061"></a>00061 <span class="preprocessor"></span><span class="preprocessor">#define SERIAL_600NS 600</span>
<a name="l00062"></a>00062 <span class="preprocessor"></span><span class="preprocessor">#define SERIAL_1_2US 1200</span>
<a name="l00063"></a>00063 <span class="preprocessor"></span><span class="preprocessor">#define SERIAL_10US 10000</span>
<a name="l00064"></a>00064 <span class="preprocessor"></span>
<a name="l00065"></a>00065 <span class="comment">/* PFI digital filtering options for ni m-series for use with</span>
<a name="l00066"></a>00066 <span class="comment"> INSN_CONFIG_FILTER. */</span>
<a name="l00067"></a>00067 <span class="preprocessor">#define NI_PFI_FILTER_OFF 0x0</span>
<a name="l00068"></a>00068 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_FILTER_125ns 0x1</span>
<a name="l00069"></a>00069 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_FILTER_6425ns 0x2</span>
<a name="l00070"></a>00070 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_FILTER_2550us 0x3</span>
<a name="l00071"></a>00071 <span class="preprocessor"></span>
<a name="l00072"></a>00072 <span class="comment">/* Signals which can be routed to an NI PFI pin on an m-series board</span>
<a name="l00073"></a>00073 <span class="comment"> with INSN_CONFIG_SET_ROUTING. These numbers are also returned by</span>
<a name="l00074"></a>00074 <span class="comment"> INSN_CONFIG_GET_ROUTING on pre-m-series boards, even though their</span>
<a name="l00075"></a>00075 <span class="comment"> routing cannot be changed. The numbers assigned are not arbitrary,</span>
<a name="l00076"></a>00076 <span class="comment"> they correspond to the bits required to program the board. */</span>
<a name="l00077"></a>00077 <span class="preprocessor">#define NI_PFI_OUTPUT_PFI_DEFAULT 0</span>
<a name="l00078"></a>00078 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_AI_START1 1</span>
<a name="l00079"></a>00079 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_AI_START2 2</span>
<a name="l00080"></a>00080 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_AI_CONVERT 3</span>
<a name="l00081"></a>00081 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_G_SRC1 4</span>
<a name="l00082"></a>00082 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_G_GATE1 5</span>
<a name="l00083"></a>00083 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_AO_UPDATE_N 6</span>
<a name="l00084"></a>00084 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_AO_START1 7</span>
<a name="l00085"></a>00085 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_AI_START_PULSE 8</span>
<a name="l00086"></a>00086 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_G_SRC0 9</span>
<a name="l00087"></a>00087 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_G_GATE0 10</span>
<a name="l00088"></a>00088 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_EXT_STROBE 11</span>
<a name="l00089"></a>00089 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_AI_EXT_MUX_CLK 12</span>
<a name="l00090"></a>00090 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_GOUT0 13</span>
<a name="l00091"></a>00091 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_GOUT1 14</span>
<a name="l00092"></a>00092 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_FREQ_OUT 15</span>
<a name="l00093"></a>00093 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_PFI_DO 16</span>
<a name="l00094"></a>00094 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_I_ATRIG 17</span>
<a name="l00095"></a>00095 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_RTSI0 18</span>
<a name="l00096"></a>00096 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_PXI_STAR_TRIGGER_IN 26</span>
<a name="l00097"></a>00097 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_SCXI_TRIG1 27</span>
<a name="l00098"></a>00098 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_DIO_CHANGE_DETECT_RTSI 28</span>
<a name="l00099"></a>00099 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_CDI_SAMPLE 29</span>
<a name="l00100"></a>00100 <span class="preprocessor"></span><span class="preprocessor">#define NI_PFI_OUTPUT_CDO_UPDATE 30</span>
<a name="l00101"></a>00101 <span class="preprocessor"></span>
<a name="l00102"></a>00102 <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> NI_PFI_OUTPUT_RTSI(<span class="keywordtype">unsigned</span> rtsi_channel) {
<a name="l00103"></a>00103 <span class="keywordflow">return</span> NI_PFI_OUTPUT_RTSI0 + rtsi_channel;
<a name="l00104"></a>00104 }
<a name="l00105"></a>00105
<a name="l00106"></a>00106 <span class="comment">/* Ranges declarations */</span>
<a name="l00107"></a>00107
<a name="l00108"></a>00108 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ai;
<a name="l00109"></a>00109 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ai_limited;
<a name="l00110"></a>00110 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ai_limited14;
<a name="l00111"></a>00111 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ai_bipolar4;
<a name="l00112"></a>00112 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ai_611x;
<a name="l00113"></a>00113 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ai_622x;
<a name="l00114"></a>00114 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ai_628x;
<a name="l00115"></a>00115 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_S_ai_6143;
<a name="l00116"></a>00116 <span class="keyword">extern</span> a4l_rngdesc_t range_ni_E_ao_ext;
<a name="l00117"></a>00117
<a name="l00118"></a>00118 <span class="comment">/* Misc functions declarations */</span>
<a name="l00119"></a>00119
<a name="l00120"></a>00120 <span class="keywordtype">int</span> ni_E_interrupt(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> irq, <span class="keywordtype">void</span> *d);
<a name="l00121"></a>00121 <span class="keywordtype">int</span> ni_E_init(a4l_dev_t *dev);
<a name="l00122"></a>00122
<a name="l00123"></a>00123
<a name="l00124"></a>00124 <span class="preprocessor">#endif </span><span class="comment">/* !__ANALOGY_NI_MIO_H__ */</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Aug 2 12:48:36 2010 for Xenomai API by
<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>
|