Project

General

Profile

Revision 1823

new doxygen for libwireless

View differences:

xbee_8c.html
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: xbee.c 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 -->
1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
<html xmlns="http://www.w3.org/1999/xhtml">
3
<head>
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
<title>libwireless: xbee.c File Reference</title>
6
<link href="tabs.css" rel="stylesheet" type="text/css"/>
7
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
8
</head>
9
<body>
10
<!-- Generated by Doxygen 1.6.3 -->
8 11
<div class="navigation" id="top">
9 12
  <div class="tabs">
10 13
    <ul>
11 14
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
12 15
      <li><a href="modules.html"><span>Modules</span></a></li>
16
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
13 17
      <li class="current"><a href="files.html"><span>Files</span></a></li>
14 18
    </ul>
15 19
  </div>
......
21 25
  </div>
22 26
</div>
23 27
<div class="contents">
24
<h1>xbee.c File Reference</h1>XBee Interface.  
25
<a href="#_details">More...</a>
26
<p>
27
<code>#include &quot;<a class="el" href="xbee_8h.html">xbee.h</a>&quot;</code><br>
28
<code>#include &quot;<a class="el" href="wl__defs_8h.html">wl_defs.h</a>&quot;</code><br>
29
<code>#include &lt;time.h&gt;</code><br>
30
<code>#include &lt;fcntl.h&gt;</code><br>
31
<code>#include &lt;unistd.h&gt;</code><br>
32
<code>#include &lt;pthread.h&gt;</code><br>
33
<code>#include &lt;errno.h&gt;</code><br>
34
<code>#include &lt;termios.h&gt;</code><br>
35
<code>#include &lt;stdio.h&gt;</code><br>
36
<code>#include &lt;stdlib.h&gt;</code><br>
37
<code>#include &lt;string.h&gt;</code><br>
28
<h1>xbee.c File Reference</h1>
29
<p>XBee Interface.  
30
<a href="#_details">More...</a></p>
31
<code>#include &lt;lights.h&gt;</code><br/>
32
<code>#include &lt;string.h&gt;</code><br/>
33
<code>#include &lt;avr/io.h&gt;</code><br/>
34
<code>#include &lt;avr/interrupt.h&gt;</code><br/>
35
<code>#include &lt;time.h&gt;</code><br/>
36
<code>#include &lt;<a class="el" href="wl__defs_8h_source.html">wl_defs.h</a>&gt;</code><br/>
37
<code>#include &lt;<a class="el" href="wireless_8h_source.html">wireless.h</a>&gt;</code><br/>
38
<code>#include &lt;eeprom.h&gt;</code><br/>
39
<code>#include &quot;<a class="el" href="xbee_8h_source.html">xbee.h</a>&quot;</code><br/>
38 40
<table border="0" cellpadding="0" cellspacing="0">
39
<tr><td></td></tr>
40
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
41
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gfd0466c206d7e1f82ee407d114468e96"></a><!-- doxytag: member="xbee.c::XBEE_PORT_DEFAULT" ref="gfd0466c206d7e1f82ee407d114468e96" args="" -->
42
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#gfd0466c206d7e1f82ee407d114468e96">XBEE_PORT_DEFAULT</a>&nbsp;&nbsp;&nbsp;&quot;/dev/ttyUSB1&quot;</td></tr>
41
<tr><td colspan="2"><h2>Defines</h2></td></tr>
42
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18c660886e331ecfbfba5c5ce86e356a"></a><!-- doxytag: member="xbee.c::NUM_LAST_PACKETS" ref="a18c660886e331ecfbfba5c5ce86e356a" args="" -->
43
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>NUM_LAST_PACKETS</b>&nbsp;&nbsp;&nbsp;10</td></tr>
44
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0cd9b23acdf4ae51a7f0aa91bf0673b6"></a><!-- doxytag: member="xbee.c::XBEE_API_OFF" ref="a0cd9b23acdf4ae51a7f0aa91bf0673b6" args="" -->
45
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_API_OFF</b>&nbsp;&nbsp;&nbsp;0x00</td></tr>
46
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b840e5f5eeb4c61bc364d567dc583fe"></a><!-- doxytag: member="xbee.c::XBEE_API_ON" ref="a1b840e5f5eeb4c61bc364d567dc583fe" args="" -->
47
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_API_ON</b>&nbsp;&nbsp;&nbsp;0x10</td></tr>
48
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aabe1d60ad71cd3a9135ab8ee66aafe2f"></a><!-- doxytag: member="xbee.c::XBEE_API_ESCAPE" ref="aabe1d60ad71cd3a9135ab8ee66aafe2f" args="" -->
49
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_API_ESCAPE</b>&nbsp;&nbsp;&nbsp;0x20</td></tr>
50
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80baa30bed665f697031f0d664b47b8f"></a><!-- doxytag: member="xbee.c::XBEE_API_MASK" ref="a80baa30bed665f697031f0d664b47b8f" args="" -->
51
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_API_MASK</b>&nbsp;&nbsp;&nbsp;0x30</td></tr>
52
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a571366b409acc3cf88b11f4517b5035d"></a><!-- doxytag: member="xbee.c::XBEE_COMMAND_WAIT" ref="a571366b409acc3cf88b11f4517b5035d" args="" -->
53
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_COMMAND_WAIT</b>&nbsp;&nbsp;&nbsp;0x80</td></tr>
54
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac18872e6011029aaee5086907d68d5f6"></a><!-- doxytag: member="xbee.c::XBEE_COMMAND_RESPONSE" ref="ac18872e6011029aaee5086907d68d5f6" args="" -->
55
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_COMMAND_RESPONSE</b>&nbsp;&nbsp;&nbsp;0xC0</td></tr>
56
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63b294491a5ccb1dc043846c94598bf8"></a><!-- doxytag: member="xbee.c::XBEE_COMMAND_NONE" ref="a63b294491a5ccb1dc043846c94598bf8" args="" -->
57
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_COMMAND_NONE</b>&nbsp;&nbsp;&nbsp;0x00</td></tr>
58
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05c1d6c59ecaa5429bf5274f02537598"></a><!-- doxytag: member="xbee.c::XBEE_COMMAND_MASK" ref="a05c1d6c59ecaa5429bf5274f02537598" args="" -->
59
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_COMMAND_MASK</b>&nbsp;&nbsp;&nbsp;0xC0</td></tr>
60
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a771f7792d83c2b783abadf05c92850a7"></a><!-- doxytag: member="xbee.c::XBEE_NOT_INITD" ref="a771f7792d83c2b783abadf05c92850a7" args="" -->
61
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_NOT_INITD</b>&nbsp;&nbsp;&nbsp;0xF0</td></tr>
62
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e3174b3441c7b675c371c708443a42a"></a><!-- doxytag: member="xbee.c::LAST_PACKET_MASK" ref="a4e3174b3441c7b675c371c708443a42a" args="" -->
63
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>LAST_PACKET_MASK</b>&nbsp;&nbsp;&nbsp;0x0F</td></tr>
64
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a584031babb534b94a63848b43bf88ee5"></a><!-- doxytag: member="xbee.c::ESCAPE_MARKER" ref="a584031babb534b94a63848b43bf88ee5" args="" -->
65
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ESCAPE_MARKER</b>&nbsp;&nbsp;&nbsp;0x7D</td></tr>
66
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7f51719fbf2274af9266c15543b26eca"></a><!-- doxytag: member="xbee.c::ESCAPE_XOR" ref="a7f51719fbf2274af9266c15543b26eca" args="" -->
67
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ESCAPE_XOR</b>&nbsp;&nbsp;&nbsp;0x20</td></tr>
68
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab854bf5a3cd6698b70ba613576046e47"></a><!-- doxytag: member="xbee.c::ESCAPE1" ref="ab854bf5a3cd6698b70ba613576046e47" args="" -->
69
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ESCAPE1</b>&nbsp;&nbsp;&nbsp;0x7E</td></tr>
70
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02c370da64328420e0f878ad074959d5"></a><!-- doxytag: member="xbee.c::ESCAPE2" ref="a02c370da64328420e0f878ad074959d5" args="" -->
71
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ESCAPE2</b>&nbsp;&nbsp;&nbsp;0x7D</td></tr>
72
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6650a1844aa3fc6292f7c06d9b69634f"></a><!-- doxytag: member="xbee.c::ESCAPE3" ref="a6650a1844aa3fc6292f7c06d9b69634f" args="" -->
73
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ESCAPE3</b>&nbsp;&nbsp;&nbsp;0x11</td></tr>
74
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade56248d1f61075bfd7cccb45fe00dec"></a><!-- doxytag: member="xbee.c::ESCAPE4" ref="ade56248d1f61075bfd7cccb45fe00dec" args="" -->
75
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>ESCAPE4</b>&nbsp;&nbsp;&nbsp;0x13</td></tr>
76
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga614217d263be1fb1a5f76e2ff7be19a2">PORT</a>&nbsp;&nbsp;&nbsp;UDR1</td></tr>
77
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf8bfae90c5d6853fcfb487e05b9f50c8"></a><!-- doxytag: member="xbee.c::FLAG" ref="gaf8bfae90c5d6853fcfb487e05b9f50c8" args="" -->
78
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>FLAG</b>&nbsp;&nbsp;&nbsp;(UCSR1A &amp; (1&lt;&lt;RXC1))</td></tr>
79
<tr><td colspan="2"><h2>Functions</h2></td></tr>
80
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gaf29617dd4988f4b056f9476004ae5cbf">xbee_putc</a> (uint8_t c)</td></tr>
81
<tr><td class="memItemLeft" align="right" valign="top">int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga409ff62ddd9e22eaf745a50f688263fd">xbee_getc</a> (void)</td></tr>
82
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gae564a6f5453934b0234a054fbc238fd3">xbee_getc_nb</a> (uint8_t *c)</td></tr>
83
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga2694f3530e4cf256ff9e96600aea753c">xbee_send_read_at_command</a> (uint8_t *command)</td></tr>
84
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafe6b2efc8b84d41b224b65fe9a9b0f70"></a><!-- doxytag: member="xbee.c::xbee_basic_buf_add" ref="gafe6b2efc8b84d41b224b65fe9a9b0f70" args="(uint8_t *ptr, uint8_t byte)" -->
85
int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>xbee_basic_buf_add</b> (uint8_t *ptr, uint8_t byte)</td></tr>
86
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3aa01c87cec1f5836297de808c82a405"></a><!-- doxytag: member="xbee.c::xbee_basic_buf_get" ref="ga3aa01c87cec1f5836297de808c82a405" args="(uint8_t *ptr)" -->
87
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>xbee_basic_buf_get</b> (uint8_t *ptr)</td></tr>
88
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga344c1c7c8bbd9bdb4903d3e9443edbbd"></a><!-- doxytag: member="xbee.c::xbee_other_buf_add" ref="ga344c1c7c8bbd9bdb4903d3e9443edbbd" args="(uint8_t *ptr, uint8_t byte)" -->
89
int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>xbee_other_buf_add</b> (uint8_t *ptr, uint8_t byte)</td></tr>
90
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga335b40b15f89a8a0d26db9226812914e">check_last_receive</a> (uint16_t source, uint8_t framenum)</td></tr>
91
<tr><td class="memItemLeft" align="right" valign="top">uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga8a4c7ae8201a7ca230fdb47bfa13d044">getStatus</a> (uint8_t mask)</td></tr>
92
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaff39fc829e5307a35a062bcc6fac616f"></a><!-- doxytag: member="xbee.c::setStatus" ref="gaff39fc829e5307a35a062bcc6fac616f" args="(uint8_t mask, uint8_t value)" -->
93
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>setStatus</b> (uint8_t mask, uint8_t value)</td></tr>
94
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a22c53350028fb65a39b098fa56f3d5e4"></a><!-- doxytag: member="xbee.c::ackhandle" ref="a22c53350028fb65a39b098fa56f3d5e4" args="(uint8_t num, uint8_t val)" -->
95
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>ackhandle</b> (uint8_t num, uint8_t val)</td></tr>
96
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae6e8a8009a9ae0c59f25a496d1cf5a84"></a><!-- doxytag: member="xbee.c::ISR" ref="gae6e8a8009a9ae0c59f25a496d1cf5a84" args="(USART1_RX_vect)" -->
97
&nbsp;</td><td class="memItemRight" valign="bottom"><b>ISR</b> (USART1_RX_vect)</td></tr>
98
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac4c5f6ba46371313200945e6456a9942"></a><!-- doxytag: member="xbee.c::xbee_other_buf_get" ref="gac4c5f6ba46371313200945e6456a9942" args="(uint8_t *ptr)" -->
99
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>xbee_other_buf_get</b> (uint8_t *ptr)</td></tr>
100
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga31a4df97d6865a40123337045109b9f1">xbee_init</a> ()</td></tr>
101
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the XBee library.  <a href="group__xbee.html#ga31a4df97d6865a40123337045109b9f1"></a><br/></td></tr>
102
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga3fe446135ba896e6438a4fcd67154119">xbee_terminate</a> ()</td></tr>
103
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Uninitialize the XBee library.  <a href="group__xbee.html#ga3fe446135ba896e6438a4fcd67154119"></a><br/></td></tr>
104
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gae75ee9a54a5811b8bc302dc2d70f0215">xbee_sendc</a> (uint8_t byte)</td></tr>
105
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send byte to the xbee in API mode.  <a href="group__xbee.html#gae75ee9a54a5811b8bc302dc2d70f0215"></a><br/></td></tr>
106
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga5805e267e3b6f4b7bdad7aa6dc65ee04">xbee_send</a> (uint8_t *buf, uint16_t size)</td></tr>
107
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send an array of bytes to the xbee in API mode.  <a href="group__xbee.html#ga5805e267e3b6f4b7bdad7aa6dc65ee04"></a><br/></td></tr>
108
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga2eb96c49811a1d9f2ccd1e1186915077">xbee_checksum_add</a> (uint8_t *buf, uint8_t len, uint8_t *sum)</td></tr>
109
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a buffer to the checksum value.  <a href="group__xbee.html#ga2eb96c49811a1d9f2ccd1e1186915077"></a><br/></td></tr>
110
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga2a39ffce83d65d22aeefb41dfce2112f">xbee_send_header</a> (uint16_t len)</td></tr>
111
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send a frame header to the xbee.  <a href="group__xbee.html#ga2a39ffce83d65d22aeefb41dfce2112f"></a><br/></td></tr>
112
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gaae54f7208cfa786cb56d4d78ab3ceffe">xbee_send_packet</a> (uint8_t *packet, uint8_t len, uint16_t dest, uint8_t options, uint8_t frame)</td></tr>
113
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send a packet to the XBee.  <a href="group__xbee.html#gaae54f7208cfa786cb56d4d78ab3ceffe"></a><br/></td></tr>
114
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gadbcb9cc8cf6afa28e6de8defb33f8196">xbee_set_pan</a> (uint16_t id)</td></tr>
115
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the PAN ID for the XBee.  <a href="group__xbee.html#gadbcb9cc8cf6afa28e6de8defb33f8196"></a><br/></td></tr>
116
<tr><td class="memItemLeft" align="right" valign="top">uint16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gaa740c59073c6db9e00a2a2de10a95091">xbee_get_pan</a> ()</td></tr>
117
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the XBee's PAN ID.  <a href="group__xbee.html#gaa740c59073c6db9e00a2a2de10a95091"></a><br/></td></tr>
118
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga4f67630ca81e5eae064bb58c3818d3fd">xbee_set_channel</a> (uint8_t channel)</td></tr>
119
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the channel the XBee is currently using.  <a href="group__xbee.html#ga4f67630ca81e5eae064bb58c3818d3fd"></a><br/></td></tr>
120
<tr><td class="memItemLeft" align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga319d4bccd5e6b09d2f377d2170104817">xbee_get_channel</a> (void)</td></tr>
121
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the channel the XBee is currently using.  <a href="group__xbee.html#ga319d4bccd5e6b09d2f377d2170104817"></a><br/></td></tr>
122
<tr><td class="memItemLeft" align="right" valign="top">uint16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#ga24d751120f5cded06a70d156c29261fc">xbee_get_address</a> (void)</td></tr>
123
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the XBee's 16-bit address.  <a href="group__xbee.html#ga24d751120f5cded06a70d156c29261fc"></a><br/></td></tr>
124
<tr><td colspan="2"><h2>Variables</h2></td></tr>
125
<tr><td class="memItemLeft" align="right" valign="top">uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xbee_8c.html#a94652d65b245bd874ff76bac4e0a2b23">xbee_basic_buf</a> [PACKET_BUFFER_SIZE]</td></tr>
126
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4162f367889b477c35cdefdd72d67c1b"></a><!-- doxytag: member="xbee.c::basic_buf_first" ref="a4162f367889b477c35cdefdd72d67c1b" args="" -->
127
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>basic_buf_first</b> = (PACKET_BUFFER_SIZE-1)</td></tr>
128
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a645b109e07dad69b8314f773e0978399"></a><!-- doxytag: member="xbee.c::basic_buf_last" ref="a645b109e07dad69b8314f773e0978399" args="" -->
129
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>basic_buf_last</b> = 0</td></tr>
130
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44888b88606af1d1c22c73f65d880313"></a><!-- doxytag: member="xbee.c::xbee_other_buf" ref="a44888b88606af1d1c22c73f65d880313" args="[PACKET_BUFFER_SIZE]" -->
131
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>xbee_other_buf</b> [PACKET_BUFFER_SIZE]</td></tr>
132
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab75ab53d4df1cb0af09e6d2e4e7cd75b"></a><!-- doxytag: member="xbee.c::other_buf_first" ref="ab75ab53d4df1cb0af09e6d2e4e7cd75b" args="" -->
133
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>other_buf_first</b> = (PACKET_BUFFER_SIZE-1)</td></tr>
134
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6bf335c9fa259e2e3531ea37370d3801"></a><!-- doxytag: member="xbee.c::other_buf_last" ref="a6bf335c9fa259e2e3531ea37370d3801" args="" -->
135
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>other_buf_last</b> = 0</td></tr>
136
<tr><td class="memItemLeft" ><a class="anchor" id="a18ed68029e795b2c38b97f6f1be1ab78"></a><!-- doxytag: member="xbee.c::lastPacket" ref="a18ed68029e795b2c38b97f6f1be1ab78" args="[NUM_LAST_PACKETS]" -->
137
struct {</td></tr>
138
<tr><td class="memItemLeft" >&nbsp;&nbsp;&nbsp;uint16_t&nbsp;&nbsp;&nbsp;<b>source</b></td></tr>
139
<tr><td class="memItemLeft" >&nbsp;&nbsp;&nbsp;uint8_t&nbsp;&nbsp;&nbsp;<b>framenum</b></td></tr>
140
<tr><td class="memItemLeft" valign="top">}&nbsp;</td><td class="memItemRight" valign="bottom"><b>lastPacket</b> [NUM_LAST_PACKETS]</td></tr>
141
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35a1327ee0fb8fabee9d7e4ddac1eccd"></a><!-- doxytag: member="xbee.c::xbee_status" ref="a35a1327ee0fb8fabee9d7e4ddac1eccd" args="" -->
142
uint8_t&nbsp;</td><td class="memItemRight" valign="bottom"><b>xbee_status</b> = XBEE_NOT_INITD</td></tr>
143
</table>
144
<hr/><a name="_details"></a><h2>Detailed Description</h2>
145
<p>XBee Interface. </p>
146
<p>Copyright (c) 2009 Colony Project</p>
147
<p>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>
148
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
149
<p>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>
150
<p>Implementation of low level communication with the XBee in API mode.</p>
151
<dl class="author"><dt><b>Author:</b></dt><dd>Colony Project, CMU Robotics Club </dd></dl>
152
<hr/><h2>Variable Documentation</h2>
153
<a class="anchor" id="a94652d65b245bd874ff76bac4e0a2b23"></a><!-- doxytag: member="xbee.c::xbee_basic_buf" ref="a94652d65b245bd874ff76bac4e0a2b23" args="[PACKET_BUFFER_SIZE]" -->
154
<div class="memitem">
155
<div class="memproto">
156
      <table class="memname">
157
        <tr>
158
          <td class="memname">uint8_t <a class="el" href="xbee_8c.html#a94652d65b245bd874ff76bac4e0a2b23">xbee_basic_buf</a>[PACKET_BUFFER_SIZE]</td>
159
        </tr>
160
      </table>
161
</div>
162
<div class="memdoc">
163
<p>Definition for wireless library receive packet structure</p>
164
<p>Basic Buffer Packet: byte 1: length of source+data bytes 2-3: source bytes 4-n: data</p>
165
<p>Other Buffer Packet: byte 1: length of group+source+data byte 2: group number bytes 3-4: source bytes 5-n: data </p>
43 166

  
44
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The port to use the XBee from on the computer. <br></td></tr>
45
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g63d0ecb125d464ea34524e090648f70f"></a><!-- doxytag: member="xbee.c::XBEE_BUFFER_SIZE" ref="g63d0ecb125d464ea34524e090648f70f" args="" -->
46
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_BUFFER_SIZE</b>&nbsp;&nbsp;&nbsp;128</td></tr>
167
<p>Referenced by <a class="el" href="wireless__receive_8c_source.html#l00100">wl_get_basic()</a>, and <a class="el" href="xbee_8c_source.html#l00729">xbee_init()</a>.</p>
47 168

  
48
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gb30af815d6e9494361629440f14e3716"></a><!-- doxytag: member="xbee.c::PACKET_BUFFER_SIZE" ref="gb30af815d6e9494361629440f14e3716" args="" -->
49
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>PACKET_BUFFER_SIZE</b>&nbsp;&nbsp;&nbsp;108</td></tr>
50

  
51
<tr><td colspan="2"><div class="groupHeader">xbee options</div></td></tr>
52
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ge6bb9bb274d6750f954762454807a5a7"></a><!-- doxytag: member="xbee.c::XBEE_PAN_DEFAULT" ref="ge6bb9bb274d6750f954762454807a5a7" args="" -->
53
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#ge6bb9bb274d6750f954762454807a5a7">XBEE_PAN_DEFAULT</a>&nbsp;&nbsp;&nbsp;0xFFFF</td></tr>
54

  
55
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unset PAN, uses XBee default. <br></td></tr>
56
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g35f8b9d8e01e788f1e29928cba29f215"></a><!-- doxytag: member="xbee.c::XBEE_CHANNEL_DEFAULT" ref="g35f8b9d8e01e788f1e29928cba29f215" args="" -->
57
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#g35f8b9d8e01e788f1e29928cba29f215">XBEE_CHANNEL_DEFAULT</a>&nbsp;&nbsp;&nbsp;0</td></tr>
58

  
59
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unset channel, uses XBee default. <br></td></tr>
60
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g93bbd21f7965e1697350f950cedff5c4"></a><!-- doxytag: member="xbee.c::XBEE_BROADCAST" ref="g93bbd21f7965e1697350f950cedff5c4" args="" -->
61
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#g93bbd21f7965e1697350f950cedff5c4">XBEE_BROADCAST</a>&nbsp;&nbsp;&nbsp;0xFFFF</td></tr>
62

  
63
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Broadcast to all robots in the PAN. <br></td></tr>
64
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gbca7356c2b8183fd41b5ca9a82dd962b"></a><!-- doxytag: member="xbee.c::XBEE_OPTIONS_NONE" ref="gbca7356c2b8183fd41b5ca9a82dd962b" args="" -->
65
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#gbca7356c2b8183fd41b5ca9a82dd962b">XBEE_OPTIONS_NONE</a>&nbsp;&nbsp;&nbsp;0x00</td></tr>
66

  
67
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">No special options. <br></td></tr>
68
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gcf9509013302590dca5ce3db63c64609"></a><!-- doxytag: member="xbee.c::XBEE_OPTIONS_DISABLE_RESPONSE" ref="gcf9509013302590dca5ce3db63c64609" args="" -->
69
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#gcf9509013302590dca5ce3db63c64609">XBEE_OPTIONS_DISABLE_RESPONSE</a>&nbsp;&nbsp;&nbsp;0x01</td></tr>
70

  
71
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Do not receive a TX_STATUS message from this packet. <br></td></tr>
72
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g57382f888360b5b19f0de3b6f1f7c5a3"></a><!-- doxytag: member="xbee.c::XBEE_OPTIONS_BROADCAST_ALL_PANS" ref="g57382f888360b5b19f0de3b6f1f7c5a3" args="" -->
73
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#g57382f888360b5b19f0de3b6f1f7c5a3">XBEE_OPTIONS_BROADCAST_ALL_PANS</a>&nbsp;&nbsp;&nbsp;0x04</td></tr>
74

  
75
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send the packet to all PANS. <br></td></tr>
76
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g7840d8b64c8bec12d8b8d32e845a638a"></a><!-- doxytag: member="xbee.c::XBEE_TX_STATUS" ref="g7840d8b64c8bec12d8b8d32e845a638a" args="" -->
77
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#g7840d8b64c8bec12d8b8d32e845a638a">XBEE_TX_STATUS</a>&nbsp;&nbsp;&nbsp;0x89</td></tr>
78

  
79
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A transmit status packet. <br></td></tr>
80
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gc2b1262a3a1eb4a9f7ead366af71c32c"></a><!-- doxytag: member="xbee.c::XBEE_RX" ref="gc2b1262a3a1eb4a9f7ead366af71c32c" args="" -->
81
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee__const.html#gc2b1262a3a1eb4a9f7ead366af71c32c">XBEE_RX</a>&nbsp;&nbsp;&nbsp;0x81</td></tr>
82

  
83
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A packet received from another XBee. <br></td></tr>
84
<tr><td colspan="2"><div class="groupHeader">xbee frame types</div></td></tr>
85
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g72aa42b35714e06ac26df31b06a8bf39"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_START" ref="g72aa42b35714e06ac26df31b06a8bf39" args="" -->
86
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_START</b>&nbsp;&nbsp;&nbsp;0x7E</td></tr>
87

  
88
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gbe7468473089e3cdd2ed85cac2244d49"></a><!-- doxytag: member="xbee.c::XBEE_GET_PACKET_TIMEOUT" ref="gbe7468473089e3cdd2ed85cac2244d49" args="" -->
89
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_GET_PACKET_TIMEOUT</b>&nbsp;&nbsp;&nbsp;1000</td></tr>
90

  
91
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ge0fc9d7b1078703227c91e1352b708c5"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_STATUS" ref="ge0fc9d7b1078703227c91e1352b708c5" args="" -->
92
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_STATUS</b>&nbsp;&nbsp;&nbsp;0x8A</td></tr>
93

  
94
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g106780ab66c38464e90af25ae3cc73de"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_AT_COMMAND" ref="g106780ab66c38464e90af25ae3cc73de" args="" -->
95
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_AT_COMMAND</b>&nbsp;&nbsp;&nbsp;0x08</td></tr>
96

  
97
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gac9e8cc2d9fdda49b77aed7d9380bfde"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_AT_COMMAND_RESPONSE" ref="gac9e8cc2d9fdda49b77aed7d9380bfde" args="" -->
98
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_AT_COMMAND_RESPONSE</b>&nbsp;&nbsp;&nbsp;0x88</td></tr>
99

  
100
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g31af21123fe9b33803cdf96626776d32"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_TX_REQUEST_64" ref="g31af21123fe9b33803cdf96626776d32" args="" -->
101
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_TX_REQUEST_64</b>&nbsp;&nbsp;&nbsp;0x00</td></tr>
102

  
103
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g30aa14f9ad880c0bdcd15d7b6dfe4e84"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_TX_REQUEST_16" ref="g30aa14f9ad880c0bdcd15d7b6dfe4e84" args="" -->
104
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_TX_REQUEST_16</b>&nbsp;&nbsp;&nbsp;0x01</td></tr>
105

  
106
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g301ee4ce1fc94e5c6ccd160a0bfa83a7"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_TX_STATUS" ref="g301ee4ce1fc94e5c6ccd160a0bfa83a7" args="" -->
107
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_TX_STATUS</b>&nbsp;&nbsp;&nbsp;XBEE_TX_STATUS</td></tr>
108

  
109
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gba621d0a00f41acc7e059b5abf4802ad"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_RX_64" ref="gba621d0a00f41acc7e059b5abf4802ad" args="" -->
110
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_RX_64</b>&nbsp;&nbsp;&nbsp;0x80</td></tr>
111

  
112
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g5b80e57bcad9ccaa20022e8d4968ec66"></a><!-- doxytag: member="xbee.c::XBEE_FRAME_RX_16" ref="g5b80e57bcad9ccaa20022e8d4968ec66" args="" -->
113
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>XBEE_FRAME_RX_16</b>&nbsp;&nbsp;&nbsp;XBEE_RX</td></tr>
114

  
115
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
116
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g2fbd69862a11b6bcc5cfdb9f182bcdb9">xbee_send_read_at_command</a> (char *command)</td></tr>
117

  
118
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g3d5fbb6aae8dda99240ec38108a645af">xbee_lib_init</a> (void)</td></tr>
119

  
120
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the XBee library.  <a href="group__xbee.html#g3d5fbb6aae8dda99240ec38108a645af"></a><br></td></tr>
121
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g9334ac71dca1ddd697b1a35a361ade6a">xbee_terminate</a> (void)</td></tr>
122

  
123
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Uninitialize the XBee library.  <a href="group__xbee.html#g9334ac71dca1ddd697b1a35a361ade6a"></a><br></td></tr>
124
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g7c44bc25fda954efde574ee8d735073c">xbee_send_packet</a> (char *packet, int len, int dest, char options, char frame)</td></tr>
125

  
126
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send a packet to the XBee.  <a href="group__xbee.html#g7c44bc25fda954efde574ee8d735073c"></a><br></td></tr>
127
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g00fbdd9d849171588df736f8b608589d">xbee_get_packet</a> (unsigned char *packet)</td></tr>
128

  
129
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a packet from the XBee.  <a href="group__xbee.html#g00fbdd9d849171588df736f8b608589d"></a><br></td></tr>
130
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gde50cbefd7ba8d7361ce2654a298748b">xbee_set_pan_id</a> (int id)</td></tr>
131

  
132
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the PAN ID for the XBee.  <a href="group__xbee.html#gde50cbefd7ba8d7361ce2654a298748b"></a><br></td></tr>
133
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g7755cd8db87703c9e9943153660b8052">xbee_get_pan_id</a> (void)</td></tr>
134

  
135
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the XBee's PAN ID.  <a href="group__xbee.html#g7755cd8db87703c9e9943153660b8052"></a><br></td></tr>
136
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gb93170c493c5cdfd43a7b640c6ed1d14">xbee_set_channel</a> (int channel)</td></tr>
137

  
138
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the channel the XBee is currently using.  <a href="group__xbee.html#gb93170c493c5cdfd43a7b640c6ed1d14"></a><br></td></tr>
139
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g133706db81f69ba0a3c169b7a3f42d2a">xbee_get_channel</a> (void)</td></tr>
140

  
141
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the channel the XBee is currently using.  <a href="group__xbee.html#g133706db81f69ba0a3c169b7a3f42d2a"></a><br></td></tr>
142
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g7c53e8a8492494a61ca306875d633309">xbee_get_address</a> (void)</td></tr>
143

  
144
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the XBee's 16-bit address.  <a href="group__xbee.html#g7c53e8a8492494a61ca306875d633309"></a><br></td></tr>
145
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g1e9e3c2abf0ff683ca8e591c3851cf0a"></a><!-- doxytag: member="xbee.c::xbee_set_com_port" ref="g1e9e3c2abf0ff683ca8e591c3851cf0a" args="(char *port)" -->
146
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#g1e9e3c2abf0ff683ca8e591c3851cf0a">xbee_set_com_port</a> (char *port)</td></tr>
147

  
148
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the com port on a computer, undefined on the robot. <br></td></tr>
149
<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
150
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g65685824a9cbbc9da05be520d0d80d12"></a><!-- doxytag: member="xbee.c::arrival_buf" ref="g65685824a9cbbc9da05be520d0d80d12" args="[XBEE_BUFFER_SIZE]" -->
151
char&nbsp;</td><td class="memItemRight" valign="bottom"><b>arrival_buf</b> [XBEE_BUFFER_SIZE]</td></tr>
152

  
153
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gb7ae7d59f0f2dabc258c678996b59b22"></a><!-- doxytag: member="xbee.c::buffer_last" ref="gb7ae7d59f0f2dabc258c678996b59b22" args="" -->
154
volatile int&nbsp;</td><td class="memItemRight" valign="bottom"><b>buffer_last</b> = 0</td></tr>
155

  
156
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga38080e2a4d6f0497f3c2faf487a0952"></a><!-- doxytag: member="xbee.c::buffer_first" ref="ga38080e2a4d6f0497f3c2faf487a0952" args="" -->
157
volatile int&nbsp;</td><td class="memItemRight" valign="bottom"><b>buffer_first</b> = 0</td></tr>
158

  
159
</table>
160
<hr><a name="_details"></a><h2>Detailed Description</h2>
161
Copyright (c) 2009 Colony Project<p>
162
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>
163
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<p>
164
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>
165
Implementation of low level communication with the XBee in API mode.<p>
166
<dl class="author" compact><dt><b>Author:</b></dt><dd>Colony Project, CMU Robotics Club </dd></dl>
167 169
</div>
168
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Nov 24 12:45:55 2009 for Colony by&nbsp;
170
</div>
171
</div>
172
<hr class="footer"/><address style="text-align: right;"><small>Generated on Thu May 6 13:17:00 2010 for libwireless by&nbsp;
169 173
<a href="http://www.doxygen.org/index.html">
170
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
174
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
171 175
</body>
172 176
</html>

Also available in: Unified diff