root / trunk / docs / libdragonfly / group__encoders.html @ 1398
History | View | Annotate | Download (14.5 KB)
1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
---|---|
2 |
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> |
3 |
<title>libdragonfly: Encoders</title> |
4 |
<link href="tabs.css" rel="stylesheet" type="text/css"> |
5 |
<link href="doxygen.css" rel="stylesheet" type="text/css"> |
6 |
</head><body> |
7 |
<!-- Generated by Doxygen 1.5.9 -->
|
8 |
<div class="navigation" id="top"> |
9 |
<div class="tabs"> |
10 |
<ul>
|
11 |
<li><a href="index.html"><span>Main Page</span></a></li> |
12 |
<li><a href="pages.html"><span>Related Pages</span></a></li> |
13 |
<li><a href="modules.html"><span>Modules</span></a></li> |
14 |
<li><a href="annotated.html"><span>Data Structures</span></a></li> |
15 |
<li><a href="files.html"><span>Files</span></a></li> |
16 |
</ul>
|
17 |
</div>
|
18 |
</div>
|
19 |
<div class="contents"> |
20 |
<h1>Encoders</h1><table border="0" cellpadding="0" cellspacing="0"> |
21 |
<tr><td></td></tr> |
22 |
<tr><td colspan="2"><br><h2>Defines</h2></td></tr> |
23 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g437ef08681e7210d6678427030446a54"></a><!-- doxytag: member="encoders::LEFT" ref="g437ef08681e7210d6678427030446a54" args="" --> |
24 |
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g437ef08681e7210d6678427030446a54">LEFT</a> 0</td></tr> |
25 |
|
26 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Left wheel. <br></td></tr> |
27 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g80fb826a684cf3f0d306b22aa100ddac"></a><!-- doxytag: member="encoders::RIGHT" ref="g80fb826a684cf3f0d306b22aa100ddac" args="" --> |
28 |
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g80fb826a684cf3f0d306b22aa100ddac">RIGHT</a> 1</td></tr> |
29 |
|
30 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Right wheel. <br></td></tr> |
31 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga7c882763d1877f0000be3e73f93d08a"></a><!-- doxytag: member="encoders::ENCODER_MAGNET_FAILURE" ref="ga7c882763d1877f0000be3e73f93d08a" args="" --> |
32 |
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#ga7c882763d1877f0000be3e73f93d08a">ENCODER_MAGNET_FAILURE</a> 1025</td></tr> |
33 |
|
34 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Magnet misaligned - likely distance from encoder problem. <br></td></tr> |
35 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g461113043ab113b6dc7d56619a1a15f4"></a><!-- doxytag: member="encoders::ENCODER_MISALIGNED" ref="g461113043ab113b6dc7d56619a1a15f4" args="" --> |
36 |
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g461113043ab113b6dc7d56619a1a15f4">ENCODER_MISALIGNED</a> 1027</td></tr> |
37 |
|
38 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Encoder misaligned - likely on XY plane. <br></td></tr> |
39 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g0a5cb25278a57b19a46264d134033f7b"></a><!-- doxytag: member="encoders::ENCODER_DATA_NOT_READY" ref="g0a5cb25278a57b19a46264d134033f7b" args="" --> |
40 |
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g0a5cb25278a57b19a46264d134033f7b">ENCODER_DATA_NOT_READY</a> 1026</td></tr> |
41 |
|
42 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Not enough time has passed - encoders not initialized in hardware. <br></td></tr> |
43 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g5ff35c79ce306ac5c3580b96dea4e653"></a><!-- doxytag: member="encoders::ENCODER_DELAY" ref="g5ff35c79ce306ac5c3580b96dea4e653" args="" --> |
44 |
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g5ff35c79ce306ac5c3580b96dea4e653">ENCODER_DELAY</a> 20</td></tr> |
45 |
|
46 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">delay_ms argument after a full read is complete <br></td></tr> |
47 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g9173b4a556a38fffd9336138830ebfa0"></a><!-- doxytag: member="encoders::OCF" ref="g9173b4a556a38fffd9336138830ebfa0" args="" --> |
48 |
#define </td><td class="memItemRight" valign="bottom"><b>OCF</b> _BV(4)</td></tr> |
49 |
|
50 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdfb416b9855f4d6cc2153044a681509e"></a><!-- doxytag: member="encoders::COF" ref="gdfb416b9855f4d6cc2153044a681509e" args="" --> |
51 |
#define </td><td class="memItemRight" valign="bottom"><b>COF</b> _BV(3)</td></tr> |
52 |
|
53 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gfbb57dfc13455b39716c3bb5c55eaa06"></a><!-- doxytag: member="encoders::LIN" ref="gfbb57dfc13455b39716c3bb5c55eaa06" args="" --> |
54 |
#define </td><td class="memItemRight" valign="bottom"><b>LIN</b> _BV(2)</td></tr> |
55 |
|
56 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdc67b4ce01de99b63b3639f03c03a05b"></a><!-- doxytag: member="encoders::MagINCn" ref="gdc67b4ce01de99b63b3639f03c03a05b" args="" --> |
57 |
#define </td><td class="memItemRight" valign="bottom"><b>MagINCn</b> _BV(1)</td></tr> |
58 |
|
59 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdc7fd147cd970830e275f0ed9ebff00a"></a><!-- doxytag: member="encoders::MagDECn" ref="gdc7fd147cd970830e275f0ed9ebff00a" args="" --> |
60 |
#define </td><td class="memItemRight" valign="bottom"><b>MagDECn</b> _BV(0)</td></tr> |
61 |
|
62 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g6b20d41d6252e9871430c242cb1a56e7"></a><!-- doxytag: member="encoders::BUFFER_SIZE" ref="g6b20d41d6252e9871430c242cb1a56e7" args="" --> |
63 |
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g6b20d41d6252e9871430c242cb1a56e7">BUFFER_SIZE</a> 23</td></tr> |
64 |
|
65 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Buffer size. <br></td></tr> |
66 |
<tr><td colspan="2"><br><h2>Functions</h2></td></tr> |
67 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gf02e2149caeb6116f256783348031c86"></a><!-- doxytag: member="encoders::encoders_init" ref="gf02e2149caeb6116f256783348031c86" args="(void)" --> |
68 |
void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#gf02e2149caeb6116f256783348031c86">encoders_init</a> (void)</td></tr> |
69 |
|
70 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Initialize encoders. <br></td></tr> |
71 |
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g9abc8e86fe64bcf4c3862ed12d913530">encoder_read</a> (char encoder)</td></tr> |
72 |
|
73 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Read instantaneous encoder value. <a href="#g9abc8e86fe64bcf4c3862ed12d913530"></a><br></td></tr> |
74 |
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#gd73643bd46dbc459cc0dfa8dd90b4992">encoder_get_dx</a> (char encoder)</td></tr> |
75 |
|
76 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get total distance traveled. <a href="#gd73643bd46dbc459cc0dfa8dd90b4992"></a><br></td></tr> |
77 |
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g7bef9844241df2154df77d10e5bf47c4">encoder_rst_dx</a> (char encoder)</td></tr> |
78 |
|
79 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Reset distance counter. <a href="#g7bef9844241df2154df77d10e5bf47c4"></a><br></td></tr> |
80 |
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g8ad080c3e41790edd7e7ccbc91060fec">encoder_get_tc</a> (void)</td></tr> |
81 |
|
82 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get time count: The number of encoder reads that have occurred. <a href="#g8ad080c3e41790edd7e7ccbc91060fec"></a><br></td></tr> |
83 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga410e62db3c6fdc317130a8d5a238655"></a><!-- doxytag: member="encoders::encoder_rst_tc" ref="ga410e62db3c6fdc317130a8d5a238655" args="(void)" --> |
84 |
void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#ga410e62db3c6fdc317130a8d5a238655">encoder_rst_tc</a> (void)</td></tr> |
85 |
|
86 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Reset the time count. <br></td></tr> |
87 |
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#gd89387a19e48bee58885735099eabeed">encoder_wait</a> (int nReadings)</td></tr> |
88 |
|
89 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Waits for the next n encoder reading, then returns. <a href="#gd89387a19e48bee58885735099eabeed"></a><br></td></tr> |
90 |
</table>
|
91 |
<hr><h2>Function Documentation</h2> |
92 |
<a class="anchor" name="gd73643bd46dbc459cc0dfa8dd90b4992"></a><!-- doxytag: member="encoders.h::encoder_get_dx" ref="gd73643bd46dbc459cc0dfa8dd90b4992" args="(char encoder)" --> |
93 |
<div class="memitem"> |
94 |
<div class="memproto"> |
95 |
<table class="memname"> |
96 |
<tr>
|
97 |
<td class="memname">int encoder_get_dx </td> |
98 |
<td>(</td> |
99 |
<td class="paramtype">char </td> |
100 |
<td class="paramname"> <em>encoder</em> </td> |
101 |
<td> ) </td> |
102 |
<td></td> |
103 |
</tr>
|
104 |
</table>
|
105 |
</div>
|
106 |
<div class="memdoc"> |
107 |
|
108 |
<p>
|
109 |
Get total distance traveled. |
110 |
<p>
|
111 |
Gets the total distance covered by the specified encoder (in encoder clicks)<p>
|
112 |
<dl compact><dt><b>Parameters:</b></dt><dd> |
113 |
<table border="0" cellspacing="2" cellpadding="0"> |
114 |
<tr><td valign="top"></td><td valign="top"><em>encoder</em> </td><td>the encoder that you want to read, use LEFT or RIGHT</td></tr> |
115 |
</table>
|
116 |
</dl>
|
117 |
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The distance covered by the specified encoder. </dd></dl> |
118 |
|
119 |
<p>References <a class="el" href="encoders_8h_source.html#l00024">LEFT</a>, and <a class="el" href="encoders_8h_source.html#l00028">RIGHT</a>.</p> |
120 |
|
121 |
</div>
|
122 |
</div><p> |
123 |
<a class="anchor" name="g8ad080c3e41790edd7e7ccbc91060fec"></a><!-- doxytag: member="encoders.h::encoder_get_tc" ref="g8ad080c3e41790edd7e7ccbc91060fec" args="(void)" --> |
124 |
<div class="memitem"> |
125 |
<div class="memproto"> |
126 |
<table class="memname"> |
127 |
<tr>
|
128 |
<td class="memname">int encoder_get_tc </td> |
129 |
<td>(</td> |
130 |
<td class="paramtype">void </td> |
131 |
<td class="paramname"> </td> |
132 |
<td> ) </td> |
133 |
<td></td> |
134 |
</tr>
|
135 |
</table>
|
136 |
</div>
|
137 |
<div class="memdoc"> |
138 |
|
139 |
<p>
|
140 |
Get time count: The number of encoder reads that have occurred. |
141 |
<p>
|
142 |
Get time count: The number of encoder reads that have occurred.<p>
|
143 |
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The time count. </dd></dl> |
144 |
|
145 |
</div>
|
146 |
</div><p> |
147 |
<a class="anchor" name="g9abc8e86fe64bcf4c3862ed12d913530"></a><!-- doxytag: member="encoders.h::encoder_read" ref="g9abc8e86fe64bcf4c3862ed12d913530" args="(char encoder)" --> |
148 |
<div class="memitem"> |
149 |
<div class="memproto"> |
150 |
<table class="memname"> |
151 |
<tr>
|
152 |
<td class="memname">int encoder_read </td> |
153 |
<td>(</td> |
154 |
<td class="paramtype">char </td> |
155 |
<td class="paramname"> <em>encoder</em> </td> |
156 |
<td> ) </td> |
157 |
<td></td> |
158 |
</tr>
|
159 |
</table>
|
160 |
</div>
|
161 |
<div class="memdoc"> |
162 |
|
163 |
<p>
|
164 |
Read instantaneous encoder value. |
165 |
<p>
|
166 |
Read instantaneous encoder value.<p>
|
167 |
<dl compact><dt><b>Parameters:</b></dt><dd> |
168 |
<table border="0" cellspacing="2" cellpadding="0"> |
169 |
<tr><td valign="top"></td><td valign="top"><em>encoder</em> </td><td>this is the encoder that you want to read. Valid arguments are LEFT and RIGHT</td></tr> |
170 |
</table>
|
171 |
</dl>
|
172 |
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the value of the specified encoder </dd></dl> |
173 |
|
174 |
<p>References <a class="el" href="encoders_8h_source.html#l00024">LEFT</a>, and <a class="el" href="encoders_8h_source.html#l00028">RIGHT</a>.</p> |
175 |
|
176 |
<p>Referenced by <a class="el" href="odometry_8c_source.html#l00069">odometry_reset()</a>.</p> |
177 |
|
178 |
</div>
|
179 |
</div><p> |
180 |
<a class="anchor" name="g7bef9844241df2154df77d10e5bf47c4"></a><!-- doxytag: member="encoders.h::encoder_rst_dx" ref="g7bef9844241df2154df77d10e5bf47c4" args="(char encoder)" --> |
181 |
<div class="memitem"> |
182 |
<div class="memproto"> |
183 |
<table class="memname"> |
184 |
<tr>
|
185 |
<td class="memname">void encoder_rst_dx </td> |
186 |
<td>(</td> |
187 |
<td class="paramtype">char </td> |
188 |
<td class="paramname"> <em>encoder</em> </td> |
189 |
<td> ) </td> |
190 |
<td></td> |
191 |
</tr>
|
192 |
</table>
|
193 |
</div>
|
194 |
<div class="memdoc"> |
195 |
|
196 |
<p>
|
197 |
Reset distance counter. |
198 |
<p>
|
199 |
Resets the distance accumulator for the specified encoder.<p>
|
200 |
<dl compact><dt><b>Parameters:</b></dt><dd> |
201 |
<table border="0" cellspacing="2" cellpadding="0"> |
202 |
<tr><td valign="top"></td><td valign="top"><em>encoder</em> </td><td>the encoder that you want to reset distance for </td></tr> |
203 |
</table>
|
204 |
</dl>
|
205 |
|
206 |
<p>References <a class="el" href="encoders_8h_source.html#l00024">LEFT</a>, and <a class="el" href="encoders_8h_source.html#l00028">RIGHT</a>.</p> |
207 |
|
208 |
</div>
|
209 |
</div><p> |
210 |
<a class="anchor" name="gd89387a19e48bee58885735099eabeed"></a><!-- doxytag: member="encoders.h::encoder_wait" ref="gd89387a19e48bee58885735099eabeed" args="(int nReadings)" --> |
211 |
<div class="memitem"> |
212 |
<div class="memproto"> |
213 |
<table class="memname"> |
214 |
<tr>
|
215 |
<td class="memname">void encoder_wait </td> |
216 |
<td>(</td> |
217 |
<td class="paramtype">int </td> |
218 |
<td class="paramname"> <em>n</em> </td> |
219 |
<td> ) </td> |
220 |
<td></td> |
221 |
</tr>
|
222 |
</table>
|
223 |
</div>
|
224 |
<div class="memdoc"> |
225 |
|
226 |
<p>
|
227 |
Waits for the next n encoder reading, then returns. |
228 |
<p>
|
229 |
Waits for the next n encoder reading, then returns.<p>
|
230 |
<dl compact><dt><b>Parameters:</b></dt><dd> |
231 |
<table border="0" cellspacing="2" cellpadding="0"> |
232 |
<tr><td valign="top"></td><td valign="top"><em>n</em> </td><td></td></tr> |
233 |
</table>
|
234 |
</dl>
|
235 |
|
236 |
</div>
|
237 |
</div><p> |
238 |
</div>
|
239 |
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Sep 7 19:07:28 2009 for libdragonfly by |
240 |
<a href="http://www.doxygen.org/index.html"> |
241 |
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address> |
242 |
</body>
|
243 |
</html>
|