Project

General

Profile

Statistics
| Revision:

root / trunk / docs / libdragonfly / analog_8h.html @ 862

History | View | Annotate | Download (17.4 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: analog.h File Reference</title>
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
5
<link href="tabs.css" rel="stylesheet" type="text/css">
6
</head><body>
7
<!-- Generated by Doxygen 1.5.5 -->
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>
19
<div class="contents">
20
<h1>analog.h File Reference</h1>Contains functions and definitions for using the ADC. <a href="#_details">More...</a>
21
<p>
22
<code>#include &lt;inttypes.h&gt;</code><br>
23

    
24
<p>
25
<a href="analog_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
26
<tr><td></td></tr>
27
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
28
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structadc__t.html">adc_t</a></td></tr>
29

    
30
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Struct to hold the value of a particular analog port.  <a href="structadc__t.html#_details">More...</a><br></td></tr>
31
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
32
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g099995994c74b5fff8f7de4ff3eac550"></a><!-- doxytag: member="analog.h::AN0" ref="g099995994c74b5fff8f7de4ff3eac550" args="" -->
33
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g099995994c74b5fff8f7de4ff3eac550">AN0</a>&nbsp;&nbsp;&nbsp;0x00</td></tr>
34

    
35
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 0. <br></td></tr>
36
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g4903de2a52966c8dc2c20faf565d451d"></a><!-- doxytag: member="analog.h::AN1" ref="g4903de2a52966c8dc2c20faf565d451d" args="" -->
37
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g4903de2a52966c8dc2c20faf565d451d">AN1</a>&nbsp;&nbsp;&nbsp;0x01</td></tr>
38

    
39
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 1. <br></td></tr>
40
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g9b0754e893d69a1e69e856853f70da1f"></a><!-- doxytag: member="analog.h::AN2" ref="g9b0754e893d69a1e69e856853f70da1f" args="" -->
41
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g9b0754e893d69a1e69e856853f70da1f">AN2</a>&nbsp;&nbsp;&nbsp;0x02</td></tr>
42

    
43
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 2. <br></td></tr>
44
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g9f593faa38f1023698d74f03a457abe3"></a><!-- doxytag: member="analog.h::AN3" ref="g9f593faa38f1023698d74f03a457abe3" args="" -->
45
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g9f593faa38f1023698d74f03a457abe3">AN3</a>&nbsp;&nbsp;&nbsp;0x03</td></tr>
46

    
47
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 3. <br></td></tr>
48
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdc95f1e9cdc00268d7bca5885052171f"></a><!-- doxytag: member="analog.h::AN4" ref="gdc95f1e9cdc00268d7bca5885052171f" args="" -->
49
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#gdc95f1e9cdc00268d7bca5885052171f">AN4</a>&nbsp;&nbsp;&nbsp;0x04</td></tr>
50

    
51
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 4. <br></td></tr>
52
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g99ed455a0d536be03f12eba18ccff71b"></a><!-- doxytag: member="analog.h::AN5" ref="g99ed455a0d536be03f12eba18ccff71b" args="" -->
53
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g99ed455a0d536be03f12eba18ccff71b">AN5</a>&nbsp;&nbsp;&nbsp;0x05</td></tr>
54

    
55
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 5. <br></td></tr>
56
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gd63d6861c3fa5e606de5c18ada3b4d10"></a><!-- doxytag: member="analog.h::AN6" ref="gd63d6861c3fa5e606de5c18ada3b4d10" args="" -->
57
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#gd63d6861c3fa5e606de5c18ada3b4d10">AN6</a>&nbsp;&nbsp;&nbsp;0x06</td></tr>
58

    
59
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 6. <br></td></tr>
60
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g277d706ee82bd70459b63e85489c7074"></a><!-- doxytag: member="analog.h::AN7" ref="g277d706ee82bd70459b63e85489c7074" args="" -->
61
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g277d706ee82bd70459b63e85489c7074">AN7</a>&nbsp;&nbsp;&nbsp;0x07</td></tr>
62

    
63
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 7. <br></td></tr>
64
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g28b64348820dbb25c903d24f2e38a8a7"></a><!-- doxytag: member="analog.h::AN8" ref="g28b64348820dbb25c903d24f2e38a8a7" args="" -->
65
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g28b64348820dbb25c903d24f2e38a8a7">AN8</a>&nbsp;&nbsp;&nbsp;0x08</td></tr>
66

    
67
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 8. <br></td></tr>
68
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g2fb7e4f4e0ea1f172eef79ed1f92e15f"></a><!-- doxytag: member="analog.h::AN9" ref="g2fb7e4f4e0ea1f172eef79ed1f92e15f" args="" -->
69
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g2fb7e4f4e0ea1f172eef79ed1f92e15f">AN9</a>&nbsp;&nbsp;&nbsp;0x09</td></tr>
70

    
71
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 9. <br></td></tr>
72
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gc63caaf5f7a06a02522cb7f90d6c1959"></a><!-- doxytag: member="analog.h::AN10" ref="gc63caaf5f7a06a02522cb7f90d6c1959" args="" -->
73
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#gc63caaf5f7a06a02522cb7f90d6c1959">AN10</a>&nbsp;&nbsp;&nbsp;0x0A</td></tr>
74

    
75
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 10. <br></td></tr>
76
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gdfeb79b00aaef4734408a910838f7872"></a><!-- doxytag: member="analog.h::AN11" ref="gdfeb79b00aaef4734408a910838f7872" args="" -->
77
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#gdfeb79b00aaef4734408a910838f7872">AN11</a>&nbsp;&nbsp;&nbsp;0x0B</td></tr>
78

    
79
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 11. <br></td></tr>
80
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g7a50a07e69f38b6674b0494dfbc653f9"></a><!-- doxytag: member="analog.h::AN12" ref="g7a50a07e69f38b6674b0494dfbc653f9" args="" -->
81
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g7a50a07e69f38b6674b0494dfbc653f9">AN12</a>&nbsp;&nbsp;&nbsp;0x0C</td></tr>
82

    
83
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 12. <br></td></tr>
84
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gbf80851ae45ddfe4bfdfc10541c255ad"></a><!-- doxytag: member="analog.h::AN13" ref="gbf80851ae45ddfe4bfdfc10541c255ad" args="" -->
85
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#gbf80851ae45ddfe4bfdfc10541c255ad">AN13</a>&nbsp;&nbsp;&nbsp;0x0D</td></tr>
86

    
87
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 13. <br></td></tr>
88
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g817772a1db513b734dfe4475c3616061"></a><!-- doxytag: member="analog.h::AN14" ref="g817772a1db513b734dfe4475c3616061" args="" -->
89
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g817772a1db513b734dfe4475c3616061">AN14</a>&nbsp;&nbsp;&nbsp;0x0E</td></tr>
90

    
91
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 14. <br></td></tr>
92
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g797adbadae057ff7aa766d84b4f180f9"></a><!-- doxytag: member="analog.h::AN15" ref="g797adbadae057ff7aa766d84b4f180f9" args="" -->
93
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g797adbadae057ff7aa766d84b4f180f9">AN15</a>&nbsp;&nbsp;&nbsp;0x0F</td></tr>
94

    
95
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port 15. <br></td></tr>
96
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga5e4dd5ac995c644e471ed80c706fa0b"></a><!-- doxytag: member="analog.h::BOM_PORT" ref="ga5e4dd5ac995c644e471ed80c706fa0b" args="" -->
97
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#ga5e4dd5ac995c644e471ed80c706fa0b">BOM_PORT</a>&nbsp;&nbsp;&nbsp;AN0</td></tr>
98

    
99
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">BOM_PORT analog port for BOM. <br></td></tr>
100
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g3434ce39eaea22b46a0100b7fd3a6f47"></a><!-- doxytag: member="analog.h::EXT_MUX" ref="g3434ce39eaea22b46a0100b7fd3a6f47" args="" -->
101
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g3434ce39eaea22b46a0100b7fd3a6f47">EXT_MUX</a>&nbsp;&nbsp;&nbsp;AN7</td></tr>
102

    
103
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">EXT_MUX analog port. <br></td></tr>
104
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga6538d2deb002b8441891dc4e15cd104"></a><!-- doxytag: member="analog.h::WHEEL_PORT" ref="ga6538d2deb002b8441891dc4e15cd104" args="" -->
105
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#ga6538d2deb002b8441891dc4e15cd104">WHEEL_PORT</a>&nbsp;&nbsp;&nbsp;AN10</td></tr>
106

    
107
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port for the wheel. <br></td></tr>
108
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gadcd026a2c91fe96c8134619c87bb72a"></a><!-- doxytag: member="analog.h::BATT_PORT" ref="gadcd026a2c91fe96c8134619c87bb72a" args="" -->
109
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#gadcd026a2c91fe96c8134619c87bb72a">BATT_PORT</a>&nbsp;&nbsp;&nbsp;AN11</td></tr>
110

    
111
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Analog port for the battery voltage detector. <br></td></tr>
112
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gcc93f5a70b7081637be3d30cc04cb4dd"></a><!-- doxytag: member="analog.h::ADC_START" ref="gcc93f5a70b7081637be3d30cc04cb4dd" args="" -->
113
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ADC_START</b>&nbsp;&nbsp;&nbsp;1</td></tr>
114

    
115
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g23aeca8ff9a59fe5f63da36004038c86"></a><!-- doxytag: member="analog.h::ADC_STOP" ref="g23aeca8ff9a59fe5f63da36004038c86" args="" -->
116
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ADC_STOP</b>&nbsp;&nbsp;&nbsp;0</td></tr>
117

    
118
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga03e3669bcaf982e6861d3fcb71a9712"></a><!-- doxytag: member="analog.h::ADMUX_OPT" ref="ga03e3669bcaf982e6861d3fcb71a9712" args="" -->
119
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ADMUX_OPT</b>&nbsp;&nbsp;&nbsp;0x60</td></tr>
120

    
121
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
122
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g4be2ba5e4db17e5be950af682f9ad522">analog_init</a> (int start_conversion)</td></tr>
123

    
124
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize analog ports. Will start running a loop if start_conversion is ADC_START.  <a href="group__analog.html#g4be2ba5e4db17e5be950af682f9ad522"></a><br></td></tr>
125
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g715fe1182216a43efe6c1545a76037cc">analog_start_loop</a> (void)</td></tr>
126

    
127
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">starts the analog loop. Doesn't do anything if the loop is already running.  <a href="group__analog.html#g715fe1182216a43efe6c1545a76037cc"></a><br></td></tr>
128
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g7261449d6a0a02d5717d62e9015d38a6">analog_stop_loop</a> (void)</td></tr>
129

    
130
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stops the analog loop. Doesn't do anything if the loop is already stopped.  <a href="group__analog.html#g7261449d6a0a02d5717d62e9015d38a6"></a><br></td></tr>
131
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#gf1211040ce2c54f12f98df7d47a4eb27">analog8</a> (int which)</td></tr>
132

    
133
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns an 8-bit analog value from the look up table. Use this instead of analog_get8.  <a href="group__analog.html#gf1211040ce2c54f12f98df7d47a4eb27"></a><br></td></tr>
134
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g875bf8cb165a3a288eb1aa2ac06be4f3">analog10</a> (int which)</td></tr>
135

    
136
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns an 10-bit analog value from the look up table. Use this instead of analog_get10.  <a href="group__analog.html#g875bf8cb165a3a288eb1aa2ac06be4f3"></a><br></td></tr>
137
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g973e63eb508819a37efe3231b6a39550">wheel</a> (void)</td></tr>
138

    
139
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read the position of the wheel.  <a href="group__analog.html#g973e63eb508819a37efe3231b6a39550"></a><br></td></tr>
140
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g1593f0ee57fea252a5ef0146004d7fa9">analog_get8</a> (int which)</td></tr>
141

    
142
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read an 8-bit number from an analog port. Loop must be stopped for this to work.  <a href="group__analog.html#g1593f0ee57fea252a5ef0146004d7fa9"></a><br></td></tr>
143
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__analog.html#g97e97c6d960441518b2572c42c941719">analog_get10</a> (int which)</td></tr>
144

    
145
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read a 10-bit number from an analog port. Loop must be stopped for this to work.  <a href="group__analog.html#g97e97c6d960441518b2572c42c941719"></a><br></td></tr>
146
</table>
147
<hr><a name="_details"></a><h2>Detailed Description</h2>
148
Contains functions and definitions for using the ADC. 
149
<p>
150
Copyright (c) 2007 Colony Project<p>
151
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>
152
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<p>
153
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>
154
Contains definitions and function prototypes for using the ADC to detect analog signals on pins AN0 - AN7. AN6 and AN7 are used for the wheel and battery.<p>
155
The pins labeled E6 and E7 are external interrupt pins and are not related to analog.<p>
156
<dl class="author" compact><dt><b>Author:</b></dt><dd>Colony Project, CMU Robotics Club, based on firefly code by Tom Lauwers </dd></dl>
157
</div>
158
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Sep 26 13:39:28 2008 for libdragonfly by&nbsp;
159
<a href="http://www.doxygen.org/index.html">
160
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
161
</body>
162
</html>