Project

General

Profile

Statistics
| Revision:

root / branches / wireless / docs / libwireless / html / group__xbee.html @ 1578

History | View | Annotate | Download (16.1 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: XBee</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="modules.html"><span>Modules</span></a></li>
13
      <li><a href="files.html"><span>Files</span></a></li>
14
    </ul>
15
  </div>
16
</div>
17
<div class="contents">
18
<h1>XBee</h1>Interface with the XBee module.  
19
<a href="#_details">More...</a>
20
<p>
21
<table border="0" cellpadding="0" cellspacing="0">
22
<tr><td></td></tr>
23
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
24
<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>
25

    
26
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the XBee library.  <a href="#g3d5fbb6aae8dda99240ec38108a645af"></a><br></td></tr>
27
<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>
28

    
29
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Uninitialize the XBee library.  <a href="#g9334ac71dca1ddd697b1a35a361ade6a"></a><br></td></tr>
30
<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>
31

    
32
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a packet from the XBee.  <a href="#g00fbdd9d849171588df736f8b608589d"></a><br></td></tr>
33
<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>
34

    
35
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send a packet to the XBee.  <a href="#g7c44bc25fda954efde574ee8d735073c"></a><br></td></tr>
36
<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>
37

    
38
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the PAN ID for the XBee.  <a href="#gde50cbefd7ba8d7361ce2654a298748b"></a><br></td></tr>
39
<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>
40

    
41
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the XBee's PAN ID.  <a href="#g7755cd8db87703c9e9943153660b8052"></a><br></td></tr>
42
<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>
43

    
44
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the channel the XBee is currently using.  <a href="#gb93170c493c5cdfd43a7b640c6ed1d14"></a><br></td></tr>
45
<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>
46

    
47
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the channel the XBee is currently using.  <a href="#g133706db81f69ba0a3c169b7a3f42d2a"></a><br></td></tr>
48
<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>
49

    
50
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the XBee's 16-bit address.  <a href="#g7c53e8a8492494a61ca306875d633309"></a><br></td></tr>
51
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g1e9e3c2abf0ff683ca8e591c3851cf0a"></a><!-- doxytag: member="xbee::xbee_set_com_port" ref="g1e9e3c2abf0ff683ca8e591c3851cf0a" args="(char *port)" -->
52
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>
53

    
54
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the com port on a computer, undefined on the robot. <br></td></tr>
55
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gfcfccfa7323041108202275eba913be7"></a><!-- doxytag: member="xbee::xbee_reset" ref="gfcfccfa7323041108202275eba913be7" args="(void)" -->
56
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xbee.html#gfcfccfa7323041108202275eba913be7">xbee_reset</a> (void)</td></tr>
57

    
58
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset XBee. <br></td></tr>
59
</table>
60
<hr><a name="_details"></a><h2>Detailed Description</h2>
61
Interface with the XBee module. 
62
<p>
63
Interface with the XBee module. <hr><h2>Function Documentation</h2>
64
<a class="anchor" name="g7c53e8a8492494a61ca306875d633309"></a><!-- doxytag: member="xbee.h::xbee_get_address" ref="g7c53e8a8492494a61ca306875d633309" args="(void)" -->
65
<div class="memitem">
66
<div class="memproto">
67
      <table class="memname">
68
        <tr>
69
          <td class="memname">unsigned int xbee_get_address           </td>
70
          <td>(</td>
71
          <td class="paramtype">void&nbsp;</td>
72
          <td class="paramname">          </td>
73
          <td>&nbsp;)&nbsp;</td>
74
          <td></td>
75
        </tr>
76
      </table>
77
</div>
78
<div class="memdoc">
79

    
80
<p>
81
Get the XBee's 16-bit address. 
82
<p>
83
Get the 16-bit address of the XBee. This is used to specify who to send messages to and who messages are from.<p>
84
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the 16-bit address of the XBee. </dd></dl>
85

    
86
</div>
87
</div><p>
88
<a class="anchor" name="g133706db81f69ba0a3c169b7a3f42d2a"></a><!-- doxytag: member="xbee.h::xbee_get_channel" ref="g133706db81f69ba0a3c169b7a3f42d2a" args="(void)" -->
89
<div class="memitem">
90
<div class="memproto">
91
      <table class="memname">
92
        <tr>
93
          <td class="memname">int xbee_get_channel           </td>
94
          <td>(</td>
95
          <td class="paramtype">void&nbsp;</td>
96
          <td class="paramname">          </td>
97
          <td>&nbsp;)&nbsp;</td>
98
          <td></td>
99
        </tr>
100
      </table>
101
</div>
102
<div class="memdoc">
103

    
104
<p>
105
Get the channel the XBee is currently using. 
106
<p>
107
Returns the channel which the XBee is currently using.<p>
108
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the channel the XBee is using</dd></dl>
109
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__xbee.html#gb93170c493c5cdfd43a7b640c6ed1d14" title="Set the channel the XBee is currently using.">xbee_set_channel</a> </dd></dl>
110

    
111
</div>
112
</div><p>
113
<a class="anchor" name="g00fbdd9d849171588df736f8b608589d"></a><!-- doxytag: member="xbee.h::xbee_get_packet" ref="g00fbdd9d849171588df736f8b608589d" args="(unsigned char *packet)" -->
114
<div class="memitem">
115
<div class="memproto">
116
      <table class="memname">
117
        <tr>
118
          <td class="memname">int xbee_get_packet           </td>
119
          <td>(</td>
120
          <td class="paramtype">unsigned char *&nbsp;</td>
121
          <td class="paramname"> <em>dest</em>          </td>
122
          <td>&nbsp;)&nbsp;</td>
123
          <td></td>
124
        </tr>
125
      </table>
126
</div>
127
<div class="memdoc">
128

    
129
<p>
130
Get a packet from the XBee. 
131
<p>
132
Reads a packet received from the XBee. This function is non-blocking. The resulting packet is stored in dest. Only returns transmission response packets and received packets. The returned packet does not include header information or the checksum. This method also handles special packets dealt with by the XBee library, and so should be called frequently while the XBee is in use.<br>
133
<br>
134
<p>
135
The first byte of the packet will be either XBEE_TX_STATUS or XBEE_RX to indicated a response to a sent message or a received message, respectively.<br>
136
<br>
137
<p>
138
For a status response packet:<br>
139
 The first byte will be XBEE_TX_STATUS.<br>
140
 The second byte will be the frame number.<br>
141
 The third byte will be the result. 0 indicates success, and nonzero indicates that an error ocurred in transmitting the packet.<br>
142
<br>
143
<p>
144
For a received packet:<br>
145
 The first byte will be XBEE_RX.<br>
146
 The second and third bytes will be the 16-bit address of the packet's sender.<br>
147
 The fourth byte is the signal strength.<br>
148
 The fifth byte is 1 if the packet were sent to a specific address, and 2 if it is a broadcast packet.<br>
149
<br>
150
<p>
151
<dl compact><dt><b>Parameters:</b></dt><dd>
152
  <table border="0" cellspacing="2" cellpadding="0">
153
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>set to the packet data </td></tr>
154
  </table>
155
</dl>
156
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the length of the packet, or -1 if no packet is available </dd></dl>
157

    
158
</div>
159
</div><p>
160
<a class="anchor" name="g7755cd8db87703c9e9943153660b8052"></a><!-- doxytag: member="xbee.h::xbee_get_pan_id" ref="g7755cd8db87703c9e9943153660b8052" args="(void)" -->
161
<div class="memitem">
162
<div class="memproto">
163
      <table class="memname">
164
        <tr>
165
          <td class="memname">unsigned int xbee_get_pan_id           </td>
166
          <td>(</td>
167
          <td class="paramtype">void&nbsp;</td>
168
          <td class="paramname">          </td>
169
          <td>&nbsp;)&nbsp;</td>
170
          <td></td>
171
        </tr>
172
      </table>
173
</div>
174
<div class="memdoc">
175

    
176
<p>
177
Get the XBee's PAN ID. 
178
<p>
179
Get the PAN ID for the XBee.<p>
180
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the personal area network id, or XBEE_PAN_DEFAULT if it has not yet been set. </dd></dl>
181

    
182
</div>
183
</div><p>
184
<a class="anchor" name="g3d5fbb6aae8dda99240ec38108a645af"></a><!-- doxytag: member="xbee.h::xbee_lib_init" ref="g3d5fbb6aae8dda99240ec38108a645af" args="(void)" -->
185
<div class="memitem">
186
<div class="memproto">
187
      <table class="memname">
188
        <tr>
189
          <td class="memname">int xbee_lib_init           </td>
190
          <td>(</td>
191
          <td class="paramtype">void&nbsp;</td>
192
          <td class="paramname">          </td>
193
          <td>&nbsp;)&nbsp;</td>
194
          <td></td>
195
        </tr>
196
      </table>
197
</div>
198
<div class="memdoc">
199

    
200
<p>
201
Initialize the XBee library. 
202
<p>
203
Initializes the XBee library so that other functions may be used. 
204
</div>
205
</div><p>
206
<a class="anchor" name="g7c44bc25fda954efde574ee8d735073c"></a><!-- doxytag: member="xbee.h::xbee_send_packet" ref="g7c44bc25fda954efde574ee8d735073c" args="(char *packet, int len, int dest, char options, char frame)" -->
207
<div class="memitem">
208
<div class="memproto">
209
      <table class="memname">
210
        <tr>
211
          <td class="memname">int xbee_send_packet           </td>
212
          <td>(</td>
213
          <td class="paramtype">char *&nbsp;</td>
214
          <td class="paramname"> <em>packet</em>, </td>
215
        </tr>
216
        <tr>
217
          <td class="paramkey"></td>
218
          <td></td>
219
          <td class="paramtype">int&nbsp;</td>
220
          <td class="paramname"> <em>len</em>, </td>
221
        </tr>
222
        <tr>
223
          <td class="paramkey"></td>
224
          <td></td>
225
          <td class="paramtype">int&nbsp;</td>
226
          <td class="paramname"> <em>dest</em>, </td>
227
        </tr>
228
        <tr>
229
          <td class="paramkey"></td>
230
          <td></td>
231
          <td class="paramtype">char&nbsp;</td>
232
          <td class="paramname"> <em>options</em>, </td>
233
        </tr>
234
        <tr>
235
          <td class="paramkey"></td>
236
          <td></td>
237
          <td class="paramtype">char&nbsp;</td>
238
          <td class="paramname"> <em>frame</em></td><td>&nbsp;</td>
239
        </tr>
240
        <tr>
241
          <td></td>
242
          <td>)</td>
243
          <td></td><td></td><td></td>
244
        </tr>
245
      </table>
246
</div>
247
<div class="memdoc">
248

    
249
<p>
250
Send a packet to the XBee. 
251
<p>
252
Send the specified packet.<p>
253
<dl compact><dt><b>Parameters:</b></dt><dd>
254
  <table border="0" cellspacing="2" cellpadding="0">
255
    <tr><td valign="top"></td><td valign="top"><em>packet</em>&nbsp;</td><td>the packet data to send </td></tr>
256
    <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>the number of bytes in the packet</td></tr>
257
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>the ID of the XBee to send the packet to, or XBEE_BROADCAST to send the message to all robots in the PAN.</td></tr>
258
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>a combination of the flags XBEE_OPTIONS_NONE, XBEE_OPTIONS_DISABLE_RESPONSE and XBEE_OPTIONS_BROADCAST_ALL_PANS</td></tr>
259
    <tr><td valign="top"></td><td valign="top"><em>frame</em>&nbsp;</td><td>the frame number to associate this packet with. This will be used to identify the response when the XBee alerts us as to whether or not our message was received. </td></tr>
260
  </table>
261
</dl>
262

    
263
</div>
264
</div><p>
265
<a class="anchor" name="gb93170c493c5cdfd43a7b640c6ed1d14"></a><!-- doxytag: member="xbee.h::xbee_set_channel" ref="gb93170c493c5cdfd43a7b640c6ed1d14" args="(int channel)" -->
266
<div class="memitem">
267
<div class="memproto">
268
      <table class="memname">
269
        <tr>
270
          <td class="memname">int xbee_set_channel           </td>
271
          <td>(</td>
272
          <td class="paramtype">int&nbsp;</td>
273
          <td class="paramname"> <em>channel</em>          </td>
274
          <td>&nbsp;)&nbsp;</td>
275
          <td></td>
276
        </tr>
277
      </table>
278
</div>
279
<div class="memdoc">
280

    
281
<p>
282
Set the channel the XBee is currently using. 
283
<p>
284
Set the channel the XBee is using.<p>
285
<dl compact><dt><b>Parameters:</b></dt><dd>
286
  <table border="0" cellspacing="2" cellpadding="0">
287
    <tr><td valign="top"></td><td valign="top"><em>channel</em>&nbsp;</td><td>the channel the XBee will not use, between 0x0B and 0x1A</td></tr>
288
  </table>
289
</dl>
290
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__xbee.html#g133706db81f69ba0a3c169b7a3f42d2a" title="Get the channel the XBee is currently using.">xbee_get_channel</a> </dd></dl>
291

    
292
</div>
293
</div><p>
294
<a class="anchor" name="gde50cbefd7ba8d7361ce2654a298748b"></a><!-- doxytag: member="xbee.h::xbee_set_pan_id" ref="gde50cbefd7ba8d7361ce2654a298748b" args="(int id)" -->
295
<div class="memitem">
296
<div class="memproto">
297
      <table class="memname">
298
        <tr>
299
          <td class="memname">int xbee_set_pan_id           </td>
300
          <td>(</td>
301
          <td class="paramtype">int&nbsp;</td>
302
          <td class="paramname"> <em>id</em>          </td>
303
          <td>&nbsp;)&nbsp;</td>
304
          <td></td>
305
        </tr>
306
      </table>
307
</div>
308
<div class="memdoc">
309

    
310
<p>
311
Set the PAN ID for the XBee. 
312
<p>
313
Sets the personal area network id.<p>
314
<dl compact><dt><b>Parameters:</b></dt><dd>
315
  <table border="0" cellspacing="2" cellpadding="0">
316
    <tr><td valign="top"></td><td valign="top"><em>id</em>&nbsp;</td><td>the new personal area network (PAN) id </td></tr>
317
  </table>
318
</dl>
319

    
320
</div>
321
</div><p>
322
<a class="anchor" name="g9334ac71dca1ddd697b1a35a361ade6a"></a><!-- doxytag: member="xbee.h::xbee_terminate" ref="g9334ac71dca1ddd697b1a35a361ade6a" args="(void)" -->
323
<div class="memitem">
324
<div class="memproto">
325
      <table class="memname">
326
        <tr>
327
          <td class="memname">void xbee_terminate           </td>
328
          <td>(</td>
329
          <td class="paramtype">void&nbsp;</td>
330
          <td class="paramname">          </td>
331
          <td>&nbsp;)&nbsp;</td>
332
          <td></td>
333
        </tr>
334
      </table>
335
</div>
336
<div class="memdoc">
337

    
338
<p>
339
Uninitialize the XBee library. 
340
<p>
341
Call when finished using the XBee library. This releases all sued resources. 
342
</div>
343
</div><p>
344
</div>
345
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Nov 20 21:51:16 2009 for Colony by&nbsp;
346
<a href="http://www.doxygen.org/index.html">
347
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
348
</body>
349
</html>