?lang_form? ?lang_select? ?lang_submit? ?lang_endform?
{HEADER END}
{BLAME START}

library

?curdirlinks? -

Blame information for rev 6

Line No. Rev Author Line
1 6 kaklik <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3 <title>Procyon AVRlib: UART Driver/Function Library (uart.c)</title>
4 <link href="dox.css" rel="stylesheet" type="text/css">
5 </head><body>
6 <!-- Generated by Doxygen 1.4.2 -->
7 <div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
8 <h1>UART Driver/Function Library (uart.c)<br>
9 <small>
10 [<a class="el" href="group__driver__avr.html">Drivers (for AVR peripherals)</a>]</small>
11 </h1><hr><a name="_details"></a><h2>Detailed Description</h2>
12 <div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "<a class="code" href="uart_8h.html">uart.h</a>"</span>
13 </pre></div> <dl compact><dt><b>Overview</b></dt><dd>This library provides both buffered and unbuffered transmit and receive functions for the AVR processor UART.  Buffered access means that the UART can transmit and receive data in the "background", while your code continues executing.  Also included are functions to initialize the UART, set the baud rate, flush the buffers, and check buffer status.</dd></dl>
14 <dl compact><dt><b>Note:</b></dt><dd>For full text output functionality, you may wish to use the rprintf functions along with this driver.</dd></dl>
15 <dl compact><dt><b>About UART operations</b></dt><dd>Most Atmel AVR-series processors contain one or more hardware UARTs (aka, serial ports). UART serial ports can communicate with other serial ports of the same type, like those used on PCs. In general, UARTs are used to communicate with devices that are RS-232 compatible (RS-232 is a certain kind of serial port). </dd></dl>
16 <dl compact><dt><b></b></dt><dd>By far, the most common use for serial communications on AVR processors is for sending information and data to a PC running a terminal program. Here is an exmaple: <div class="fragment"><pre class="fragment"> <a class="code" href="group__uart.html#ga0">uartInit</a>(); <span class="comment">// initialize UART (serial port)</span>
17 <a class="code" href="group__uart.html#ga3">uartSetBaudRate</a>(9600); <span class="comment">// set UART speed to 9600 baud</span>
18 <a class="code" href="group__rprintf.html#ga0">rprintfInit</a>(<a class="code" href="group__uart.html#ga6">uartSendByte</a>); <span class="comment">// configure rprintf to use UART for output</span>
19 rprintf(<span class="stringliteral">"Hello World\r\n"</span>); <span class="comment">// send "hello world" message via serial port</span>
20 </pre></div></dd></dl>
21 <dl compact><dt><b>Warning:</b></dt><dd>The CPU frequency (F_CPU) must be set correctly in <code><a class="el" href="global_8h.html">global.h</a></code> for the UART library to calculate correct baud rates. Furthermore, certain CPU frequencies will not produce exact baud rates due to integer frequency division round-off. See your AVR processor's datasheet for full details. </dd></dl>
22  
23 <p>
24 <table border="0" cellpadding="0" cellspacing="0">
25 <tr><td></td></tr>
26 <tr><td colspan="2"><br><h2>Defines</h2></td></tr>
27 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga14">UART_DEFAULT_BAUD_RATE</a>&nbsp;&nbsp;&nbsp;9600</td></tr>
28  
29 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga15">UART_TX_BUFFER_SIZE</a>&nbsp;&nbsp;&nbsp;0x0040</td></tr>
30  
31 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga16">UART_RX_BUFFER_SIZE</a>&nbsp;&nbsp;&nbsp;0x0040</td></tr>
32  
33 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga17">UART_INTERRUPT_HANDLER</a>&nbsp;&nbsp;&nbsp;SIGNAL</td></tr>
34  
35 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
36 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga0">uartInit</a> (void)</td></tr>
37  
38 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga1">uartInitBuffers</a> (void)</td></tr>
39  
40 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga2">uartSetRxHandler</a> (void(*rx_func)(unsigned char c))</td></tr>
41  
42 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga3">uartSetBaudRate</a> (u32 baudrate)</td></tr>
43  
44 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structstruct__cBuffer.html">cBuffer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga4">uartGetRxBuffer</a> (void)</td></tr>
45  
46 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structstruct__cBuffer.html">cBuffer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga5">uartGetTxBuffer</a> (void)</td></tr>
47  
48 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga6">uartSendByte</a> (u08 data)</td></tr>
49  
50 <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga7">uartGetByte</a> (void)</td></tr>
51  
52 <tr><td class="memItemLeft" nowrap align="right" valign="top">u08&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga8">uartReceiveByte</a> (u08 *data)</td></tr>
53  
54 <tr><td class="memItemLeft" nowrap align="right" valign="top">u08&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga9">uartReceiveBufferIsEmpty</a> (void)</td></tr>
55  
56 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga10">uartFlushReceiveBuffer</a> (void)</td></tr>
57  
58 <tr><td class="memItemLeft" nowrap align="right" valign="top">u08&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga11">uartAddToTxBuffer</a> (u08 data)</td></tr>
59  
60 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga12">uartSendTxBuffer</a> (void)</td></tr>
61  
62 <tr><td class="memItemLeft" nowrap align="right" valign="top">u08&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart.html#ga13">uartSendBuffer</a> (char *buffer, u16 nBytes)</td></tr>
63  
64 </table>
65 <hr><h2>Define Documentation</h2>
66 <a class="anchor" name="ga14" doxytag="uart.h::UART_DEFAULT_BAUD_RATE"></a><p>
67 <table class="mdTable" cellpadding="2" cellspacing="0">
68 <tr>
69 <td class="mdRow">
70 <table cellpadding="0" cellspacing="0" border="0">
71 <tr>
72 <td class="md" nowrap valign="top">#define UART_DEFAULT_BAUD_RATE&nbsp;&nbsp;&nbsp;9600 </td>
73 </tr>
74 </table>
75 </td>
76 </tr>
77 </table>
78 <table cellspacing="5" cellpadding="0" border="0">
79 <tr>
80 <td>
81 &nbsp;
82 </td>
83 <td>
84  
85 <p>
86 Default uart baud rate. This is the default speed after a <a class="el" href="group__uart.html#ga0">uartInit()</a> command, and can be changed by using <a class="el" href="group__uart.html#ga3">uartSetBaudRate()</a>.
87 <p>
88 Definition at line <a class="el" href="uart_8h-source.html#l00064">64</a> of file <a class="el" href="uart_8h-source.html">uart.h</a>. </td>
89 </tr>
90 </table>
91 <a class="anchor" name="ga17" doxytag="uart.h::UART_INTERRUPT_HANDLER"></a><p>
92 <table class="mdTable" cellpadding="2" cellspacing="0">
93 <tr>
94 <td class="mdRow">
95 <table cellpadding="0" cellspacing="0" border="0">
96 <tr>
97 <td class="md" nowrap valign="top">#define UART_INTERRUPT_HANDLER&nbsp;&nbsp;&nbsp;SIGNAL </td>
98 </tr>
99 </table>
100 </td>
101 </tr>
102 </table>
103 <table cellspacing="5" cellpadding="0" border="0">
104 <tr>
105 <td>
106 &nbsp;
107 </td>
108 <td>
109  
110 <p>
111 Type of interrupt handler to use for uart interrupts. Value may be SIGNAL or INTERRUPT. <dl compact><dt><b>Warning:</b></dt><dd>Do not change unless you know what you're doing. </dd></dl>
112  
113 <p>
114 Definition at line <a class="el" href="uart_8h-source.html#l00094">94</a> of file <a class="el" href="uart_8h-source.html">uart.h</a>. </td>
115 </tr>
116 </table>
117 <a class="anchor" name="ga16" doxytag="uart.h::UART_RX_BUFFER_SIZE"></a><p>
118 <table class="mdTable" cellpadding="2" cellspacing="0">
119 <tr>
120 <td class="mdRow">
121 <table cellpadding="0" cellspacing="0" border="0">
122 <tr>
123 <td class="md" nowrap valign="top">#define UART_RX_BUFFER_SIZE&nbsp;&nbsp;&nbsp;0x0040 </td>
124 </tr>
125 </table>
126 </td>
127 </tr>
128 </table>
129 <table cellspacing="5" cellpadding="0" border="0">
130 <tr>
131 <td>
132 &nbsp;
133 </td>
134 <td>
135  
136 <p>
137 Number of bytes for uart receive buffer. Do not change this value in <a class="el" href="uart_8h.html">uart.h</a>, but rather override it with the desired value defined in your project's <a class="el" href="global_8h.html">global.h</a>
138 <p>
139 Definition at line <a class="el" href="uart_8h-source.html#l00078">78</a> of file <a class="el" href="uart_8h-source.html">uart.h</a>. </td>
140 </tr>
141 </table>
142 <a class="anchor" name="ga15" doxytag="uart.h::UART_TX_BUFFER_SIZE"></a><p>
143 <table class="mdTable" cellpadding="2" cellspacing="0">
144 <tr>
145 <td class="mdRow">
146 <table cellpadding="0" cellspacing="0" border="0">
147 <tr>
148 <td class="md" nowrap valign="top">#define UART_TX_BUFFER_SIZE&nbsp;&nbsp;&nbsp;0x0040 </td>
149 </tr>
150 </table>
151 </td>
152 </tr>
153 </table>
154 <table cellspacing="5" cellpadding="0" border="0">
155 <tr>
156 <td>
157 &nbsp;
158 </td>
159 <td>
160  
161 <p>
162 Number of bytes for uart transmit buffer. Do not change this value in <a class="el" href="uart_8h.html">uart.h</a>, but rather override it with the desired value defined in your project's <a class="el" href="global_8h.html">global.h</a>
163 <p>
164 Definition at line <a class="el" href="uart_8h-source.html#l00072">72</a> of file <a class="el" href="uart_8h-source.html">uart.h</a>. </td>
165 </tr>
166 </table>
167 <hr><h2>Function Documentation</h2>
168 <a class="anchor" name="ga11" doxytag="uart.h::uartAddToTxBuffer"></a><p>
169 <table class="mdTable" cellpadding="2" cellspacing="0">
170 <tr>
171 <td class="mdRow">
172 <table cellpadding="0" cellspacing="0" border="0">
173 <tr>
174 <td class="md" nowrap valign="top">u08 uartAddToTxBuffer </td>
175 <td class="md" valign="top">(&nbsp;</td>
176 <td class="md" nowrap valign="top">u08&nbsp;</td>
177 <td class="mdname1" valign="top" nowrap> <em>data</em> </td>
178 <td class="md" valign="top">&nbsp;)&nbsp;</td>
179 <td class="md" nowrap></td>
180 </tr>
181 </table>
182 </td>
183 </tr>
184 </table>
185 <table cellspacing="5" cellpadding="0" border="0">
186 <tr>
187 <td>
188 &nbsp;
189 </td>
190 <td>
191  
192 <p>
193 Add byte to end of uart Tx buffer. Returns TRUE if successful, FALSE if failed (no room left in buffer).
194 <p>
195 Definition at line <a class="el" href="uart_8c-source.html#l00183">183</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
196 </tr>
197 </table>
198 <a class="anchor" name="ga10" doxytag="uart.h::uartFlushReceiveBuffer"></a><p>
199 <table class="mdTable" cellpadding="2" cellspacing="0">
200 <tr>
201 <td class="mdRow">
202 <table cellpadding="0" cellspacing="0" border="0">
203 <tr>
204 <td class="md" nowrap valign="top">void uartFlushReceiveBuffer </td>
205 <td class="md" valign="top">(&nbsp;</td>
206 <td class="md" nowrap valign="top">void&nbsp;</td>
207 <td class="mdname1" valign="top" nowrap> </td>
208 <td class="md" valign="top">&nbsp;)&nbsp;</td>
209 <td class="md" nowrap></td>
210 </tr>
211 </table>
212 </td>
213 </tr>
214 </table>
215 <table cellspacing="5" cellpadding="0" border="0">
216 <tr>
217 <td>
218 &nbsp;
219 </td>
220 <td>
221  
222 <p>
223 Flushes (deletes) all data from receive buffer.
224 <p>
225 Definition at line <a class="el" href="uart_8c-source.html#l00161">161</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
226 </tr>
227 </table>
228 <a class="anchor" name="ga7" doxytag="uart.h::uartGetByte"></a><p>
229 <table class="mdTable" cellpadding="2" cellspacing="0">
230 <tr>
231 <td class="mdRow">
232 <table cellpadding="0" cellspacing="0" border="0">
233 <tr>
234 <td class="md" nowrap valign="top">int uartGetByte </td>
235 <td class="md" valign="top">(&nbsp;</td>
236 <td class="md" nowrap valign="top">void&nbsp;</td>
237 <td class="mdname1" valign="top" nowrap> </td>
238 <td class="md" valign="top">&nbsp;)&nbsp;</td>
239 <td class="md" nowrap></td>
240 </tr>
241 </table>
242 </td>
243 </tr>
244 </table>
245 <table cellspacing="5" cellpadding="0" border="0">
246 <tr>
247 <td>
248 &nbsp;
249 </td>
250 <td>
251  
252 <p>
253 Gets a single byte from the uart receive buffer. Returns the byte, or -1 if no byte is available (getchar-style).
254 <p>
255 Definition at line <a class="el" href="uart_8c-source.html#l00125">125</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
256 </tr>
257 </table>
258 <a class="anchor" name="ga4" doxytag="uart.h::uartGetRxBuffer"></a><p>
259 <table class="mdTable" cellpadding="2" cellspacing="0">
260 <tr>
261 <td class="mdRow">
262 <table cellpadding="0" cellspacing="0" border="0">
263 <tr>
264 <td class="md" nowrap valign="top"><a class="el" href="structstruct__cBuffer.html">cBuffer</a>* uartGetRxBuffer </td>
265 <td class="md" valign="top">(&nbsp;</td>
266 <td class="md" nowrap valign="top">void&nbsp;</td>
267 <td class="mdname1" valign="top" nowrap> </td>
268 <td class="md" valign="top">&nbsp;)&nbsp;</td>
269 <td class="md" nowrap></td>
270 </tr>
271 </table>
272 </td>
273 </tr>
274 </table>
275 <table cellspacing="5" cellpadding="0" border="0">
276 <tr>
277 <td>
278 &nbsp;
279 </td>
280 <td>
281  
282 <p>
283 Returns pointer to the receive buffer structure.
284 <p>
285 Definition at line <a class="el" href="uart_8c-source.html#l00100">100</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
286 </tr>
287 </table>
288 <a class="anchor" name="ga5" doxytag="uart.h::uartGetTxBuffer"></a><p>
289 <table class="mdTable" cellpadding="2" cellspacing="0">
290 <tr>
291 <td class="mdRow">
292 <table cellpadding="0" cellspacing="0" border="0">
293 <tr>
294 <td class="md" nowrap valign="top"><a class="el" href="structstruct__cBuffer.html">cBuffer</a>* uartGetTxBuffer </td>
295 <td class="md" valign="top">(&nbsp;</td>
296 <td class="md" nowrap valign="top">void&nbsp;</td>
297 <td class="mdname1" valign="top" nowrap> </td>
298 <td class="md" valign="top">&nbsp;)&nbsp;</td>
299 <td class="md" nowrap></td>
300 </tr>
301 </table>
302 </td>
303 </tr>
304 </table>
305 <table cellspacing="5" cellpadding="0" border="0">
306 <tr>
307 <td>
308 &nbsp;
309 </td>
310 <td>
311  
312 <p>
313 Returns pointer to the transmit buffer structure.
314 <p>
315 Definition at line <a class="el" href="uart_8c-source.html#l00107">107</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
316 </tr>
317 </table>
318 <a class="anchor" name="ga0" doxytag="uart.h::uartInit"></a><p>
319 <table class="mdTable" cellpadding="2" cellspacing="0">
320 <tr>
321 <td class="mdRow">
322 <table cellpadding="0" cellspacing="0" border="0">
323 <tr>
324 <td class="md" nowrap valign="top">void uartInit </td>
325 <td class="md" valign="top">(&nbsp;</td>
326 <td class="md" nowrap valign="top">void&nbsp;</td>
327 <td class="mdname1" valign="top" nowrap> </td>
328 <td class="md" valign="top">&nbsp;)&nbsp;</td>
329 <td class="md" nowrap></td>
330 </tr>
331 </table>
332 </td>
333 </tr>
334 </table>
335 <table cellspacing="5" cellpadding="0" border="0">
336 <tr>
337 <td>
338 &nbsp;
339 </td>
340 <td>
341  
342 <p>
343 Initializes uart. <dl compact><dt><b>Note:</b></dt><dd>After running this init function, the processor I/O pins that used for uart communications (RXD, TXD) are no long available for general purpose I/O. </dd></dl>
344  
345 <p>
346 Definition at line <a class="el" href="uart_8c-source.html#l00044">44</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
347 </tr>
348 </table>
349 <a class="anchor" name="ga1" doxytag="uart.h::uartInitBuffers"></a><p>
350 <table class="mdTable" cellpadding="2" cellspacing="0">
351 <tr>
352 <td class="mdRow">
353 <table cellpadding="0" cellspacing="0" border="0">
354 <tr>
355 <td class="md" nowrap valign="top">void uartInitBuffers </td>
356 <td class="md" valign="top">(&nbsp;</td>
357 <td class="md" nowrap valign="top">void&nbsp;</td>
358 <td class="mdname1" valign="top" nowrap> </td>
359 <td class="md" valign="top">&nbsp;)&nbsp;</td>
360 <td class="md" nowrap></td>
361 </tr>
362 </table>
363 </td>
364 </tr>
365 </table>
366 <table cellspacing="5" cellpadding="0" border="0">
367 <tr>
368 <td>
369 &nbsp;
370 </td>
371 <td>
372  
373 <p>
374 Initializes transmit and receive buffers. Automatically called from <a class="el" href="group__uart.html#ga0">uartInit()</a>
375 <p>
376 Definition at line <a class="el" href="uart_8c-source.html#l00066">66</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
377 </tr>
378 </table>
379 <a class="anchor" name="ga9" doxytag="uart.h::uartReceiveBufferIsEmpty"></a><p>
380 <table class="mdTable" cellpadding="2" cellspacing="0">
381 <tr>
382 <td class="mdRow">
383 <table cellpadding="0" cellspacing="0" border="0">
384 <tr>
385 <td class="md" nowrap valign="top">u08 uartReceiveBufferIsEmpty </td>
386 <td class="md" valign="top">(&nbsp;</td>
387 <td class="md" nowrap valign="top">void&nbsp;</td>
388 <td class="mdname1" valign="top" nowrap> </td>
389 <td class="md" valign="top">&nbsp;)&nbsp;</td>
390 <td class="md" nowrap></td>
391 </tr>
392 </table>
393 </td>
394 </tr>
395 </table>
396 <table cellspacing="5" cellpadding="0" border="0">
397 <tr>
398 <td>
399 &nbsp;
400 </td>
401 <td>
402  
403 <p>
404 Returns TRUE/FALSE if receive buffer is empty/not-empty.
405 <p>
406 Definition at line <a class="el" href="uart_8c-source.html#l00170">170</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
407 </tr>
408 </table>
409 <a class="anchor" name="ga8" doxytag="uart.h::uartReceiveByte"></a><p>
410 <table class="mdTable" cellpadding="2" cellspacing="0">
411 <tr>
412 <td class="mdRow">
413 <table cellpadding="0" cellspacing="0" border="0">
414 <tr>
415 <td class="md" nowrap valign="top">u08 uartReceiveByte </td>
416 <td class="md" valign="top">(&nbsp;</td>
417 <td class="md" nowrap valign="top">u08 *&nbsp;</td>
418 <td class="mdname1" valign="top" nowrap> <em>data</em> </td>
419 <td class="md" valign="top">&nbsp;)&nbsp;</td>
420 <td class="md" nowrap></td>
421 </tr>
422 </table>
423 </td>
424 </tr>
425 </table>
426 <table cellspacing="5" cellpadding="0" border="0">
427 <tr>
428 <td>
429 &nbsp;
430 </td>
431 <td>
432  
433 <p>
434 Gets a single byte from the uart receive buffer. Function returns TRUE if data was available, FALSE if not. Actual data is returned in variable pointed to by "data". Example usage: <div class="fragment"><pre class="fragment"> <span class="keywordtype">char</span> myReceivedByte;
435 <a class="code" href="group__uart.html#ga8">uartReceiveByte</a>( &amp;myReceivedByte );
436 </pre></div>
437 <p>
438 Definition at line <a class="el" href="uart_8c-source.html#l00135">135</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
439 </tr>
440 </table>
441 <a class="anchor" name="ga13" doxytag="uart.h::uartSendBuffer"></a><p>
442 <table class="mdTable" cellpadding="2" cellspacing="0">
443 <tr>
444 <td class="mdRow">
445 <table cellpadding="0" cellspacing="0" border="0">
446 <tr>
447 <td class="md" nowrap valign="top">u08 uartSendBuffer </td>
448 <td class="md" valign="top">(&nbsp;</td>
449 <td class="md" nowrap valign="top">char *&nbsp;</td>
450 <td class="mdname" nowrap> <em>buffer</em>, </td>
451 </tr>
452 <tr>
453 <td class="md" nowrap align="right"></td>
454 <td class="md"></td>
455 <td class="md" nowrap>u16&nbsp;</td>
456 <td class="mdname" nowrap> <em>nBytes</em></td>
457 </tr>
458 <tr>
459 <td class="md"></td>
460 <td class="md">)&nbsp;</td>
461 <td class="md" colspan="2"></td>
462 </tr>
463 </table>
464 </td>
465 </tr>
466 </table>
467 <table cellspacing="5" cellpadding="0" border="0">
468 <tr>
469 <td>
470 &nbsp;
471 </td>
472 <td>
473  
474 <p>
475 Sends a block of data via the uart using interrupt control. <dl compact><dt><b>Parameters:</b></dt><dd>
476 <table border="0" cellspacing="2" cellpadding="0">
477 <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>pointer to data to be sent </td></tr>
478 <tr><td valign="top"></td><td valign="top"><em>nBytes</em>&nbsp;</td><td>length of data (number of bytes to sent) </td></tr>
479 </table>
480 </dl>
481 </td>
482 </tr>
483 </table>
484 <a class="anchor" name="ga6" doxytag="uart.h::uartSendByte"></a><p>
485 <table class="mdTable" cellpadding="2" cellspacing="0">
486 <tr>
487 <td class="mdRow">
488 <table cellpadding="0" cellspacing="0" border="0">
489 <tr>
490 <td class="md" nowrap valign="top">void uartSendByte </td>
491 <td class="md" valign="top">(&nbsp;</td>
492 <td class="md" nowrap valign="top">u08&nbsp;</td>
493 <td class="mdname1" valign="top" nowrap> <em>data</em> </td>
494 <td class="md" valign="top">&nbsp;)&nbsp;</td>
495 <td class="md" nowrap></td>
496 </tr>
497 </table>
498 </td>
499 </tr>
500 </table>
501 <table cellspacing="5" cellpadding="0" border="0">
502 <tr>
503 <td>
504 &nbsp;
505 </td>
506 <td>
507  
508 <p>
509 Sends a single byte over the uart. <dl compact><dt><b>Note:</b></dt><dd>This function waits for the uart to be ready, therefore, consecutive calls to <a class="el" href="group__uart.html#ga6">uartSendByte()</a> will go only as fast as the data can be sent over the serial port. </dd></dl>
510  
511 <p>
512 Definition at line <a class="el" href="uart_8c-source.html#l00114">114</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
513 </tr>
514 </table>
515 <a class="anchor" name="ga12" doxytag="uart.h::uartSendTxBuffer"></a><p>
516 <table class="mdTable" cellpadding="2" cellspacing="0">
517 <tr>
518 <td class="mdRow">
519 <table cellpadding="0" cellspacing="0" border="0">
520 <tr>
521 <td class="md" nowrap valign="top">void uartSendTxBuffer </td>
522 <td class="md" valign="top">(&nbsp;</td>
523 <td class="md" nowrap valign="top">void&nbsp;</td>
524 <td class="mdname1" valign="top" nowrap> </td>
525 <td class="md" valign="top">&nbsp;)&nbsp;</td>
526 <td class="md" nowrap></td>
527 </tr>
528 </table>
529 </td>
530 </tr>
531 </table>
532 <table cellspacing="5" cellpadding="0" border="0">
533 <tr>
534 <td>
535 &nbsp;
536 </td>
537 <td>
538  
539 <p>
540 Begins transmission of the transmit buffer under interrupt control.
541 <p>
542 Definition at line <a class="el" href="uart_8c-source.html#l00190">190</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
543 </tr>
544 </table>
545 <a class="anchor" name="ga3" doxytag="uart.h::uartSetBaudRate"></a><p>
546 <table class="mdTable" cellpadding="2" cellspacing="0">
547 <tr>
548 <td class="mdRow">
549 <table cellpadding="0" cellspacing="0" border="0">
550 <tr>
551 <td class="md" nowrap valign="top">void uartSetBaudRate </td>
552 <td class="md" valign="top">(&nbsp;</td>
553 <td class="md" nowrap valign="top">u32&nbsp;</td>
554 <td class="mdname1" valign="top" nowrap> <em>baudrate</em> </td>
555 <td class="md" valign="top">&nbsp;)&nbsp;</td>
556 <td class="md" nowrap></td>
557 </tr>
558 </table>
559 </td>
560 </tr>
561 </table>
562 <table cellspacing="5" cellpadding="0" border="0">
563 <tr>
564 <td>
565 &nbsp;
566 </td>
567 <td>
568  
569 <p>
570 Sets the uart baud rate. Argument should be in bits-per-second, like <code>uartSetBaudRate(9600)</code>;
571 <p>
572 Definition at line <a class="el" href="uart_8c-source.html#l00089">89</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
573 </tr>
574 </table>
575 <a class="anchor" name="ga2" doxytag="uart.h::uartSetRxHandler"></a><p>
576 <table class="mdTable" cellpadding="2" cellspacing="0">
577 <tr>
578 <td class="mdRow">
579 <table cellpadding="0" cellspacing="0" border="0">
580 <tr>
581 <td class="md" nowrap valign="top">void uartSetRxHandler </td>
582 <td class="md" valign="top">(&nbsp;</td>
583 <td class="md" nowrap valign="top">void(*)(unsigned char c)&nbsp;</td>
584 <td class="mdname1" valign="top" nowrap> <em>rx_func</em> </td>
585 <td class="md" valign="top">&nbsp;)&nbsp;</td>
586 <td class="md" nowrap></td>
587 </tr>
588 </table>
589 </td>
590 </tr>
591 </table>
592 <table cellspacing="5" cellpadding="0" border="0">
593 <tr>
594 <td>
595 &nbsp;
596 </td>
597 <td>
598  
599 <p>
600 Redirects received data to a user function.
601 <p>
602 Definition at line <a class="el" href="uart_8c-source.html#l00082">82</a> of file <a class="el" href="uart_8c-source.html">uart.c</a>. </td>
603 </tr>
604 </table>
605 <hr size="1"><address style="align: right;"><small>Generated on Sun Oct 29 03:41:09 2006 for Procyon AVRlib by&nbsp;
606 <a href="http://www.doxygen.org/index.html">
607 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.2 </small></address>
608 </body>
609 </html>
{BLAME END}
{FOOTER START}

Powered by WebSVN v2.8.3