Project

General

Profile

Statistics
| Revision:

root / branches / wireless / docs / libdragonfly / html / encoders_8h.html @ 1578

History | View | Annotate | Download (12.7 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>Colony: encoders.h File Reference</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.8 -->
8
<div class="navigation" id="top">
9
  <div class="tabs">
10
    <ul>
11
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
12
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
13
      <li><a href="modules.html"><span>Modules</span></a></li>
14
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
15
      <li class="current"><a href="files.html"><span>Files</span></a></li>
16
    </ul>
17
  </div>
18
  <div class="tabs">
19
    <ul>
20
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
21
      <li><a href="globals.html"><span>Globals</span></a></li>
22
    </ul>
23
  </div>
24
</div>
25
<div class="contents">
26
<h1>encoders.h File Reference</h1>Contains functions for reading encoder values.  
27
<a href="#_details">More...</a>
28
<p>
29

    
30
<p>
31
<a href="encoders_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
32
<tr><td></td></tr>
33
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
34
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g437ef08681e7210d6678427030446a54"></a><!-- doxytag: member="encoders.h::LEFT" ref="g437ef08681e7210d6678427030446a54" args="" -->
35
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g437ef08681e7210d6678427030446a54">LEFT</a>&nbsp;&nbsp;&nbsp;0</td></tr>
36

    
37
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Left wheel. <br></td></tr>
38
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g80fb826a684cf3f0d306b22aa100ddac"></a><!-- doxytag: member="encoders.h::RIGHT" ref="g80fb826a684cf3f0d306b22aa100ddac" args="" -->
39
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g80fb826a684cf3f0d306b22aa100ddac">RIGHT</a>&nbsp;&nbsp;&nbsp;1</td></tr>
40

    
41
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Right wheel. <br></td></tr>
42
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g1f12cd2d377e62c56999d46dc6bb7cfc"></a><!-- doxytag: member="encoders.h::ENCODER_MAX" ref="g1f12cd2d377e62c56999d46dc6bb7cfc" args="" -->
43
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g1f12cd2d377e62c56999d46dc6bb7cfc">ENCODER_MAX</a>&nbsp;&nbsp;&nbsp;1024</td></tr>
44

    
45
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Max value of valid encoder reading. <br></td></tr>
46
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga7c882763d1877f0000be3e73f93d08a"></a><!-- doxytag: member="encoders.h::ENCODER_MAGNET_FAILURE" ref="ga7c882763d1877f0000be3e73f93d08a" args="" -->
47
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#ga7c882763d1877f0000be3e73f93d08a">ENCODER_MAGNET_FAILURE</a>&nbsp;&nbsp;&nbsp;1025</td></tr>
48

    
49
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Magnet misaligned - likely distance from encoder problem. <br></td></tr>
50
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g461113043ab113b6dc7d56619a1a15f4"></a><!-- doxytag: member="encoders.h::ENCODER_MISALIGNED" ref="g461113043ab113b6dc7d56619a1a15f4" args="" -->
51
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g461113043ab113b6dc7d56619a1a15f4">ENCODER_MISALIGNED</a>&nbsp;&nbsp;&nbsp;1027</td></tr>
52

    
53
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Encoder misaligned - likely on XY plane. <br></td></tr>
54
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g0a5cb25278a57b19a46264d134033f7b"></a><!-- doxytag: member="encoders.h::ENCODER_DATA_NOT_READY" ref="g0a5cb25278a57b19a46264d134033f7b" args="" -->
55
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g0a5cb25278a57b19a46264d134033f7b">ENCODER_DATA_NOT_READY</a>&nbsp;&nbsp;&nbsp;1026</td></tr>
56

    
57
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Not enough time has passed - encoders not initialized in hardware. <br></td></tr>
58
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g5ff35c79ce306ac5c3580b96dea4e653"></a><!-- doxytag: member="encoders.h::ENCODER_DELAY" ref="g5ff35c79ce306ac5c3580b96dea4e653" args="" -->
59
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g5ff35c79ce306ac5c3580b96dea4e653">ENCODER_DELAY</a>&nbsp;&nbsp;&nbsp;20</td></tr>
60

    
61
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">delay_ms argument after a full read is complete <br></td></tr>
62
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g9173b4a556a38fffd9336138830ebfa0"></a><!-- doxytag: member="encoders.h::OCF" ref="g9173b4a556a38fffd9336138830ebfa0" args="" -->
63
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>OCF</b>&nbsp;&nbsp;&nbsp;_BV(4)</td></tr>
64

    
65
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdfb416b9855f4d6cc2153044a681509e"></a><!-- doxytag: member="encoders.h::COF" ref="gdfb416b9855f4d6cc2153044a681509e" args="" -->
66
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>COF</b>&nbsp;&nbsp;&nbsp;_BV(3)</td></tr>
67

    
68
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gfbb57dfc13455b39716c3bb5c55eaa06"></a><!-- doxytag: member="encoders.h::LIN" ref="gfbb57dfc13455b39716c3bb5c55eaa06" args="" -->
69
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>LIN</b>&nbsp;&nbsp;&nbsp;_BV(2)</td></tr>
70

    
71
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdc67b4ce01de99b63b3639f03c03a05b"></a><!-- doxytag: member="encoders.h::MagINCn" ref="gdc67b4ce01de99b63b3639f03c03a05b" args="" -->
72
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>MagINCn</b>&nbsp;&nbsp;&nbsp;_BV(1)</td></tr>
73

    
74
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdc7fd147cd970830e275f0ed9ebff00a"></a><!-- doxytag: member="encoders.h::MagDECn" ref="gdc7fd147cd970830e275f0ed9ebff00a" args="" -->
75
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>MagDECn</b>&nbsp;&nbsp;&nbsp;_BV(0)</td></tr>
76

    
77
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g6b20d41d6252e9871430c242cb1a56e7"></a><!-- doxytag: member="encoders.h::BUFFER_SIZE" ref="g6b20d41d6252e9871430c242cb1a56e7" args="" -->
78
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g6b20d41d6252e9871430c242cb1a56e7">BUFFER_SIZE</a>&nbsp;&nbsp;&nbsp;46</td></tr>
79

    
80
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Buffer size. <br></td></tr>
81
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g4bd797b3c049b5b2b8653b7a59b29e0d"></a><!-- doxytag: member="encoders.h::ERR_VEL" ref="g4bd797b3c049b5b2b8653b7a59b29e0d" args="" -->
82
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ERR_VEL</b>&nbsp;&nbsp;&nbsp;1024</td></tr>
83

    
84
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
85
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g517df1c739bb887e39630553f3f10951"></a><!-- doxytag: member="encoders.h::encoders_init" ref="g517df1c739bb887e39630553f3f10951" args="(void)" -->
86
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g517df1c739bb887e39630553f3f10951">encoders_init</a> (void)</td></tr>
87

    
88
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize encoders. <br></td></tr>
89
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g9abc8e86fe64bcf4c3862ed12d913530">encoder_read</a> (char encoder)</td></tr>
90

    
91
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read instantaneous encoder value.  <a href="group__encoders.html#g9abc8e86fe64bcf4c3862ed12d913530"></a><br></td></tr>
92
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g68d8fd95c78ac910e6a62940451088d4">encoder_get_x</a> (char encoder)</td></tr>
93

    
94
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get total distance traveled.  <a href="group__encoders.html#g68d8fd95c78ac910e6a62940451088d4"></a><br></td></tr>
95
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#gdfa15a962856217c49d8a7eb326867d2">encoder_get_v</a> (char encoder)</td></tr>
96

    
97
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get instantaneous velocity.  <a href="group__encoders.html#gdfa15a962856217c49d8a7eb326867d2"></a><br></td></tr>
98
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#gd73643bd46dbc459cc0dfa8dd90b4992">encoder_get_dx</a> (char encoder)</td></tr>
99

    
100
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get total distance traveled.  <a href="group__encoders.html#gd73643bd46dbc459cc0dfa8dd90b4992"></a><br></td></tr>
101
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g2f00a2c3cc26610bdd80aeca032845bf">encoder_rst_dx</a> (char encoder)</td></tr>
102

    
103
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset distance counter.  <a href="group__encoders.html#g2f00a2c3cc26610bdd80aeca032845bf"></a><br></td></tr>
104
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g8ad080c3e41790edd7e7ccbc91060fec">encoder_get_tc</a> (void)</td></tr>
105

    
106
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get time count: The number of encoder reads that have occurred.  <a href="group__encoders.html#g8ad080c3e41790edd7e7ccbc91060fec"></a><br></td></tr>
107
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g28710b1699c65f3bb0ceac2cb456113f">encoder_rst_tc</a> (void)</td></tr>
108

    
109
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset the time count.  <a href="group__encoders.html#g28710b1699c65f3bb0ceac2cb456113f"></a><br></td></tr>
110
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__encoders.html#g858be4d7af3a488e9cbd630a4c9bc7cd">encoder_wait</a> (int nReadings)</td></tr>
111

    
112
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Waits for the next n encoder reading, then returns.  <a href="group__encoders.html#g858be4d7af3a488e9cbd630a4c9bc7cd"></a><br></td></tr>
113
</table>
114
<hr><a name="_details"></a><h2>Detailed Description</h2>
115
Contains functions for reading encoder values. 
116
<p>
117
Copyright (c) 2007 Colony Project<p>
118
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:<p>
119
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<p>
120
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.<p>
121
Contains high and low level functions for reading encoders including reading out total distance covered, and eventually velocity.<p>
122
<dl class="author" compact><dt><b>Author:</b></dt><dd>Colony Project, CMU Robotics Club </dd></dl>
123
</div>
124
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Nov 20 21:51:59 2009 for Colony by&nbsp;
125
<a href="http://www.doxygen.org/index.html">
126
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
127
</body>
128
</html>