Project

General

Profile

Statistics
| Revision:

root / trunk / docs / libdragonfly / dragonfly__lib_8h-source.html @ 1371

History | View | Annotate | Download (9.09 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: dragonfly_lib.h Source File</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
<h1>dragonfly_lib.h</h1><a href="dragonfly__lib_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 
19
<a name="l00036"></a>00036 <span class="preprocessor">#ifndef _DRAGONFLY_LIB_H_</span>
20
<a name="l00037"></a>00037 <span class="preprocessor"></span><span class="preprocessor">#define _DRAGONFLY_LIB_H_</span>
21
<a name="l00038"></a>00038 <span class="preprocessor"></span>
22
<a name="l00044"></a>00044 <span class="comment">// Configuration definitions</span>
23
<a name="l00046"></a><a class="code" href="group__dragonfly.html#gd42aa2404559d4a465d5d45e857f2881">00046</a> <span class="comment"></span><span class="preprocessor">#define ANALOG 0x01</span>
24
<a name="l00047"></a>00047 <span class="preprocessor"></span>
25
<a name="l00048"></a><a class="code" href="group__dragonfly.html#gae3f0b4211ba45d265973d40ccbb5fd1">00048</a> <span class="preprocessor">#define SERIAL 0x02</span>
26
<a name="l00049"></a>00049 <span class="preprocessor"></span>
27
<a name="l00050"></a><a class="code" href="group__dragonfly.html#g779bf099075a999d1074357fccbd466b">00050</a> <span class="preprocessor">#define USB    0x02</span>
28
<a name="l00051"></a>00051 <span class="preprocessor"></span>
29
<a name="l00052"></a><a class="code" href="group__dragonfly.html#g46fff4184b5d787de1ed367b97cb6091">00052</a> <span class="preprocessor">#define COMM   0x02</span>
30
<a name="l00053"></a>00053 <span class="preprocessor"></span>
31
<a name="l00054"></a><a class="code" href="group__dragonfly.html#g24a9b050b733edb162cbeb44b1a417b1">00054</a> <span class="preprocessor">#define ORB    0x04</span>
32
<a name="l00055"></a>00055 <span class="preprocessor"></span>
33
<a name="l00056"></a><a class="code" href="group__dragonfly.html#g9bb31bba359fbb679910df0a6efde5a3">00056</a> <span class="preprocessor">#define MOTORS 0x08</span>
34
<a name="l00057"></a>00057 <span class="preprocessor"></span>
35
<a name="l00058"></a><a class="code" href="group__dragonfly.html#g457a9aa93dbb216459873a30bdb4d84a">00058</a> <span class="preprocessor">#define I2C    0x20</span>
36
<a name="l00059"></a>00059 <span class="preprocessor"></span>
37
<a name="l00060"></a><a class="code" href="group__dragonfly.html#g145103118f6d9d1129aa4509cf214a13">00060</a> <span class="preprocessor">#define BUZZER 0x40</span>
38
<a name="l00061"></a>00061 <span class="preprocessor"></span>
39
<a name="l00062"></a><a class="code" href="group__dragonfly.html#gbf2d80992dcfabfd1668184c3dff2733">00062</a> <span class="preprocessor">#define LCD    0x80</span>
40
<a name="l00063"></a>00063 <span class="preprocessor"></span>
41
<a name="l00064"></a><a class="code" href="group__dragonfly.html#gc04dd0afaf7ea3eb2ade2544d2d5f907">00064</a> <span class="preprocessor">#define RANGE  0x0100</span>
42
<a name="l00065"></a>00065 <span class="preprocessor"></span>
43
<a name="l00066"></a><a class="code" href="group__dragonfly.html#gd555cfe7a1fcf16c3639f797120478eb">00066</a> <span class="preprocessor">#define BOM  0x0200</span>
44
<a name="l00067"></a>00067 <span class="preprocessor"></span>
45
<a name="l00068"></a><a class="code" href="group__dragonfly.html#g1252cf7a07df96ed2561ae605eaca197">00068</a> <span class="preprocessor">#define ALL_ON 0x03FF</span>
46
<a name="l00069"></a>00069 <span class="preprocessor"></span>
47
<a name="l00071"></a>00071 <span class="keywordtype">void</span> <a class="code" href="group__dragonfly.html#g8124e2c32bf25208586d500e45ba5fe3" title="Initialize the board.">dragonfly_init</a>(<span class="keywordtype">int</span> config);
48
<a name="l00072"></a>00072  <span class="comment">//end addtogroup</span>
49
<a name="l00074"></a>00074 
50
<a name="l00075"></a>00075 <span class="preprocessor">#include &lt;inttypes.h&gt;</span>
51
<a name="l00076"></a>00076 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
52
<a name="l00077"></a>00077 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
53
<a name="l00078"></a>00078 <span class="preprocessor">#include &lt;avr/io.h&gt;</span>
54
<a name="l00079"></a>00079 <span class="preprocessor">#include &lt;avr/interrupt.h&gt;</span>
55
<a name="l00080"></a>00080 <span class="preprocessor">#include &lt;util/delay.h&gt;</span>
56
<a name="l00081"></a>00081 <span class="preprocessor">#include &lt;util/twi.h&gt;</span>
57
<a name="l00082"></a>00082 
58
<a name="l00083"></a>00083 <span class="comment">// This file is included from the libdragonfly directory because it seems to be</span>
59
<a name="l00084"></a>00084 <span class="comment">// missing from the AVR libc distribution.</span>
60
<a name="l00085"></a>00085 <span class="preprocessor">#include "<a class="code" href="atomic_8h.html">atomic.h</a>"</span>
61
<a name="l00086"></a>00086 
62
<a name="l00087"></a>00087 <span class="preprocessor">#include &lt;<a class="code" href="analog_8h.html" title="Contains functions and definitions for using the ADC.">analog.h</a>&gt;</span>
63
<a name="l00088"></a>00088 <span class="preprocessor">#include &lt;<a class="code" href="dio_8h.html" title="Definitions for digital input / output.">dio.h</a>&gt;</span>
64
<a name="l00089"></a>00089 <span class="preprocessor">#include &lt;<a class="code" href="time_8h.html" title="Contains time-related functions and definitions.">time.h</a>&gt;</span>
65
<a name="l00090"></a>00090 <span class="preprocessor">#include &lt;<a class="code" href="lcd_8h.html" title="Contains definitions for dealing with the LCD screen.">lcd.h</a>&gt;</span>
66
<a name="l00091"></a>00091 <span class="preprocessor">#include &lt;<a class="code" href="lights_8h.html" title="Contains declarations for managing the orbs.">lights.h</a>&gt;</span>
67
<a name="l00092"></a>00092 <span class="preprocessor">#include &lt;<a class="code" href="motor_8h.html" title="Contains definitions for controlling the motors.">motor.h</a>&gt;</span>
68
<a name="l00093"></a>00093 <span class="preprocessor">#include &lt;<a class="code" href="serial_8h.html" title="Contains declarations for serial input and output.">serial.h</a>&gt;</span>
69
<a name="l00094"></a>00094 <span class="preprocessor">#include &lt;<a class="code" href="buzzer_8h.html" title="Contains definitions for using the buzzer.">buzzer.h</a>&gt;</span>
70
<a name="l00095"></a>00095 <span class="preprocessor">#include &lt;<a class="code" href="rangefinder_8h.html" title="Contains rangefinder declarations and functions.">rangefinder.h</a>&gt;</span>
71
<a name="l00096"></a>00096 <span class="preprocessor">#include &lt;<a class="code" href="bom_8h.html" title="Definitions for using the BOM.">bom.h</a>&gt;</span>
72
<a name="l00097"></a>00097 <span class="preprocessor">#include &lt;<a class="code" href="move_8h.html" title="Contains definitions for controlling robot motion.">move.h</a>&gt;</span>
73
<a name="l00098"></a>00098 <span class="preprocessor">#include &lt;<a class="code" href="reset_8h.html" title="Contains function(s) for resetting the robots.">reset.h</a>&gt;</span>
74
<a name="l00099"></a>00099 <span class="preprocessor">#include &lt;math.h&gt;</span>
75
<a name="l00100"></a>00100 <span class="preprocessor">#include &lt;<a class="code" href="eeprom_8h.html" title="handles eeprom storage for persistent data">eeprom.h</a>&gt;</span>
76
<a name="l00101"></a>00101 <span class="preprocessor">#include &lt;stdbool.h&gt;</span>
77
<a name="l00102"></a>00102 
78
<a name="l00104"></a><a class="code" href="dragonfly__lib_8h.html#9ac82e856c7683e23553431e5224d5f4">00104</a> <span class="preprocessor">#define SYNC ATOMIC_BLOCK(ATOMIC_RESTORESTATE)</span>
79
<a name="l00105"></a>00105 <span class="preprocessor"></span>
80
<a name="l00107"></a><a class="code" href="dragonfly__lib_8h.html#63040a270fd14fe3286e2b67e5927eb9">00107</a> <span class="preprocessor">#define REQUIRE_LOCK_OR_RETURN(LOCK) do { SYNC { if (LOCK) return; LOCK=1; } } while (0)</span>
81
<a name="l00108"></a>00108 <span class="preprocessor"></span>
82
<a name="l00110"></a><a class="code" href="dragonfly__lib_8h.html#c25d1a234d2aa700c3d5cce7ecff803a">00110</a> <span class="preprocessor">#define RELEASE_LOCK(LOCK) do { LOCK=0; } while (0)</span>
83
<a name="l00111"></a>00111 <span class="preprocessor"></span>
84
<a name="l00112"></a>00112 
85
<a name="l00113"></a>00113 
86
<a name="l00114"></a>00114 <span class="preprocessor">#endif</span>
87
<a name="l00115"></a>00115 <span class="preprocessor"></span>
88
</pre></div></div>
89
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Sep 2 23:20:08 2009 for libdragonfly by&nbsp;
90
<a href="http://www.doxygen.org/index.html">
91
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
92
</body>
93
</html>