?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 for dual-UART processors (uart2.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 for dual-UART processors (uart2.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="uart2_8h.html">uart2.h</a>"</span>
13 </pre></div> <dl compact><dt><b>Overview</b></dt><dd>This is a UART driver for AVR-series processors with two hardware UARTs such as the mega161 and mega128. 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 UARTs, 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 UARTs (serial ports)</span>
17 <a class="code" href="group__uart.html#ga3">uartSetBaudRate</a>(0, 9600); <span class="comment">// set UART0 speed to 9600 baud</span>
18 <a class="code" href="group__uart.html#ga3">uartSetBaudRate</a>(1, 115200); <span class="comment">// set UART1 speed to 115200 baud</span>
19  
20 <a class="code" href="group__rprintf.html#ga0">rprintfInit</a>(<a class="code" href="group__uart2.html#ga10">uart0SendByte</a>); <span class="comment">// configure rprintf to use UART0 for output</span>
21 rprintf(<span class="stringliteral">"Hello UART0\r\n"</span>); <span class="comment">// send "hello world" message via UART0</span>
22  
23 <a class="code" href="group__rprintf.html#ga0">rprintfInit</a>(uart1SendByte); <span class="comment">// configure rprintf to use UART1 for output</span>
24 rprintf(<span class="stringliteral">"Hello UART1\r\n"</span>); <span class="comment">// send "hello world" message via UART1</span>
25 </pre></div></dd></dl>
26 <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>
27  
28 <p>
29 <table border="0" cellpadding="0" cellspacing="0">
30 <tr><td></td></tr>
31 <tr><td colspan="2"><br><h2>Defines</h2></td></tr>
32 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga24">UART0_DEFAULT_BAUD_RATE</a>&nbsp;&nbsp;&nbsp;9600</td></tr>
33  
34 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">default baud rate for UART0 <a href="#ga24"></a><br></td></tr>
35 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga25" doxytag="uart2::UART1_DEFAULT_BAUD_RATE"></a>
36 #define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga25">UART1_DEFAULT_BAUD_RATE</a>&nbsp;&nbsp;&nbsp;9600</td></tr>
37  
38 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">default baud rate for UART1 <br></td></tr>
39 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga26" doxytag="uart2::UART0_TX_BUFFER_SIZE"></a>
40 #define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga26">UART0_TX_BUFFER_SIZE</a>&nbsp;&nbsp;&nbsp;0x0010</td></tr>
41  
42 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">number of bytes for uart0 transmit buffer <br></td></tr>
43 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga27" doxytag="uart2::UART0_RX_BUFFER_SIZE"></a>
44 #define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga27">UART0_RX_BUFFER_SIZE</a>&nbsp;&nbsp;&nbsp;0x0080</td></tr>
45  
46 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">number of bytes for uart0 receive buffer <br></td></tr>
47 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga28" doxytag="uart2::UART1_TX_BUFFER_SIZE"></a>
48 #define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga28">UART1_TX_BUFFER_SIZE</a>&nbsp;&nbsp;&nbsp;0x0010</td></tr>
49  
50 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">number of bytes for uart1 transmit buffer <br></td></tr>
51 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga29" doxytag="uart2::UART1_RX_BUFFER_SIZE"></a>
52 #define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga29">UART1_RX_BUFFER_SIZE</a>&nbsp;&nbsp;&nbsp;0x0080</td></tr>
53  
54 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">number of bytes for uart1 receive buffer <br></td></tr>
55 <tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga30">UART_INTERRUPT_HANDLER</a>&nbsp;&nbsp;&nbsp;SIGNAL</td></tr>
56  
57 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga31" doxytag="uart2::RXCIE"></a>
58 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>RXCIE</b>&nbsp;&nbsp;&nbsp;RXCIE0</td></tr>
59  
60 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga32" doxytag="uart2::TXCIE"></a>
61 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>TXCIE</b>&nbsp;&nbsp;&nbsp;TXCIE0</td></tr>
62  
63 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga33" doxytag="uart2::UDRIE"></a>
64 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>UDRIE</b>&nbsp;&nbsp;&nbsp;UDRIE0</td></tr>
65  
66 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga34" doxytag="uart2::RXEN"></a>
67 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>RXEN</b>&nbsp;&nbsp;&nbsp;RXEN0</td></tr>
68  
69 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga35" doxytag="uart2::TXEN"></a>
70 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>TXEN</b>&nbsp;&nbsp;&nbsp;TXEN0</td></tr>
71  
72 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga36" doxytag="uart2::CHR9"></a>
73 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>CHR9</b>&nbsp;&nbsp;&nbsp;CHR90</td></tr>
74  
75 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga37" doxytag="uart2::RXB8"></a>
76 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>RXB8</b>&nbsp;&nbsp;&nbsp;RXB80</td></tr>
77  
78 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga38" doxytag="uart2::TXB8"></a>
79 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>TXB8</b>&nbsp;&nbsp;&nbsp;TXB80</td></tr>
80  
81 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga39" doxytag="uart2::UBRR0L"></a>
82 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>UBRR0L</b>&nbsp;&nbsp;&nbsp;UBRR0</td></tr>
83  
84 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga40" doxytag="uart2::UBRR1L"></a>
85 #define&nbsp;</td><td class="memItemRight" valign="bottom"><b>UBRR1L</b>&nbsp;&nbsp;&nbsp;UBRR1</td></tr>
86  
87 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
88 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga0">uartInit</a> (void)</td></tr>
89  
90 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga1" doxytag="uart2::uart0Init"></a>
91 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga1">uart0Init</a> (void)</td></tr>
92  
93 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initializes UART0 only. <br></td></tr>
94 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="uart2::uart1Init"></a>
95 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga2">uart1Init</a> (void)</td></tr>
96  
97 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initializes UART1 only. <br></td></tr>
98 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga3">uart0InitBuffers</a> (void)</td></tr>
99  
100 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga4" doxytag="uart2::uart1InitBuffers"></a>
101 void&nbsp;</td><td class="memItemRight" valign="bottom"><b>uart1InitBuffers</b> (void)</td></tr>
102  
103 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga5">uartSetRxHandler</a> (u08 nUart, void(*rx_func)(unsigned char c))</td></tr>
104  
105 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga6">uartSetBaudRate</a> (u08 nUart, u32 baudrate)</td></tr>
106  
107 <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__uart2.html#ga7">uartGetRxBuffer</a> (u08 nUart)</td></tr>
108  
109 <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__uart2.html#ga8">uartGetTxBuffer</a> (u08 nUart)</td></tr>
110  
111 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga9">uartSendByte</a> (u08 nUart, u08 data)</td></tr>
112  
113 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga10">uart0SendByte</a> (u08 data)</td></tr>
114  
115 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga11" doxytag="uart2::uart1SendByte"></a>
116 void&nbsp;</td><td class="memItemRight" valign="bottom"><b>uart1SendByte</b> (u08 data)</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__uart2.html#ga12">uart0GetByte</a> (void)</td></tr>
119  
120 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga13" doxytag="uart2::uart1GetByte"></a>
121 int&nbsp;</td><td class="memItemRight" valign="bottom"><b>uart1GetByte</b> (void)</td></tr>
122  
123 <tr><td class="memItemLeft" nowrap align="right" valign="top">u08&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga14">uartReceiveByte</a> (u08 nUart, u08 *data)</td></tr>
124  
125 <tr><td class="memItemLeft" nowrap align="right" valign="top">u08&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga15">uartReceiveBufferIsEmpty</a> (u08 nUart)</td></tr>
126  
127 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga16">uartFlushReceiveBuffer</a> (u08 nUart)</td></tr>
128  
129 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga17">uartAddToTxBuffer</a> (u08 nUart, u08 data)</td></tr>
130  
131 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga18">uart0AddToTxBuffer</a> (u08 data)</td></tr>
132  
133 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga19" doxytag="uart2::uart1AddToTxBuffer"></a>
134 void&nbsp;</td><td class="memItemRight" valign="bottom"><b>uart1AddToTxBuffer</b> (u08 data)</td></tr>
135  
136 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga20">uartSendTxBuffer</a> (u08 nUart)</td></tr>
137  
138 <tr><td class="memItemLeft" nowrap align="right" valign="top">u08&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga21">uartSendBuffer</a> (u08 nUart, char *buffer, u16 nBytes)</td></tr>
139  
140 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga22" doxytag="uart2::uartTransmitService"></a>
141 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__uart2.html#ga22">uartTransmitService</a> (u08 nUart)</td></tr>
142  
143 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">interrupt service handlers <br></td></tr>
144 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga23" doxytag="uart2::uartReceiveService"></a>
145 void&nbsp;</td><td class="memItemRight" valign="bottom"><b>uartReceiveService</b> (u08 nUart)</td></tr>
146  
147 </table>
148 <hr><h2>Define Documentation</h2>
149 <a class="anchor" name="ga24" doxytag="uart2.h::UART0_DEFAULT_BAUD_RATE"></a><p>
150 <table class="mdTable" cellpadding="2" cellspacing="0">
151 <tr>
152 <td class="mdRow">
153 <table cellpadding="0" cellspacing="0" border="0">
154 <tr>
155 <td class="md" nowrap valign="top">#define UART0_DEFAULT_BAUD_RATE&nbsp;&nbsp;&nbsp;9600 </td>
156 </tr>
157 </table>
158 </td>
159 </tr>
160 </table>
161 <table cellspacing="5" cellpadding="0" border="0">
162 <tr>
163 <td>
164 &nbsp;
165 </td>
166 <td>
167  
168 <p>
169 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>.
170 <p>
171 Definition at line <a class="el" href="uart2_8h-source.html#l00071">71</a> of file <a class="el" href="uart2_8h-source.html">uart2.h</a>. </td>
172 </tr>
173 </table>
174 <a class="anchor" name="ga30" doxytag="uart2.h::UART_INTERRUPT_HANDLER"></a><p>
175 <table class="mdTable" cellpadding="2" cellspacing="0">
176 <tr>
177 <td class="mdRow">
178 <table cellpadding="0" cellspacing="0" border="0">
179 <tr>
180 <td class="md" nowrap valign="top">#define UART_INTERRUPT_HANDLER&nbsp;&nbsp;&nbsp;SIGNAL </td>
181 </tr>
182 </table>
183 </td>
184 </tr>
185 </table>
186 <table cellspacing="5" cellpadding="0" border="0">
187 <tr>
188 <td>
189 &nbsp;
190 </td>
191 <td>
192  
193 <p>
194 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>
195  
196 <p>
197 Definition at line <a class="el" href="uart2_8h-source.html#l00105">105</a> of file <a class="el" href="uart2_8h-source.html">uart2.h</a>. </td>
198 </tr>
199 </table>
200 <hr><h2>Function Documentation</h2>
201 <a class="anchor" name="ga18" doxytag="uart2.h::uart0AddToTxBuffer"></a><p>
202 <table class="mdTable" cellpadding="2" cellspacing="0">
203 <tr>
204 <td class="mdRow">
205 <table cellpadding="0" cellspacing="0" border="0">
206 <tr>
207 <td class="md" nowrap valign="top">void uart0AddToTxBuffer </td>
208 <td class="md" valign="top">(&nbsp;</td>
209 <td class="md" nowrap valign="top">u08&nbsp;</td>
210 <td class="mdname1" valign="top" nowrap> <em>data</em> </td>
211 <td class="md" valign="top">&nbsp;)&nbsp;</td>
212 <td class="md" nowrap></td>
213 </tr>
214 </table>
215 </td>
216 </tr>
217 </table>
218 <table cellspacing="5" cellpadding="0" border="0">
219 <tr>
220 <td>
221 &nbsp;
222 </td>
223 <td>
224  
225 <p>
226 AddToTxBuffer commands with the UART number hardcoded Use this with printfInit() - example: <code>printfInit(uart0AddToTxBuffer)</code>;
227 <p>
228 Definition at line <a class="el" href="uart2_8c-source.html#l00248">248</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
229 </tr>
230 </table>
231 <a class="anchor" name="ga12" doxytag="uart2.h::uart0GetByte"></a><p>
232 <table class="mdTable" cellpadding="2" cellspacing="0">
233 <tr>
234 <td class="mdRow">
235 <table cellpadding="0" cellspacing="0" border="0">
236 <tr>
237 <td class="md" nowrap valign="top">int uart0GetByte </td>
238 <td class="md" valign="top">(&nbsp;</td>
239 <td class="md" nowrap valign="top">void&nbsp;</td>
240 <td class="mdname1" valign="top" nowrap> </td>
241 <td class="md" valign="top">&nbsp;)&nbsp;</td>
242 <td class="md" nowrap></td>
243 </tr>
244 </table>
245 </td>
246 </tr>
247 </table>
248 <table cellspacing="5" cellpadding="0" border="0">
249 <tr>
250 <td>
251 &nbsp;
252 </td>
253 <td>
254  
255 <p>
256 Gets a single byte from the uart receive buffer. Returns the byte, or -1 if no byte is available (getchar-style).
257 <p>
258 Definition at line <a class="el" href="uart2_8c-source.html#l00191">191</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
259 </tr>
260 </table>
261 <a class="anchor" name="ga3" doxytag="uart2.h::uart0InitBuffers"></a><p>
262 <table class="mdTable" cellpadding="2" cellspacing="0">
263 <tr>
264 <td class="mdRow">
265 <table cellpadding="0" cellspacing="0" border="0">
266 <tr>
267 <td class="md" nowrap valign="top">void uart0InitBuffers </td>
268 <td class="md" valign="top">(&nbsp;</td>
269 <td class="md" nowrap valign="top">void&nbsp;</td>
270 <td class="mdname1" valign="top" nowrap> </td>
271 <td class="md" valign="top">&nbsp;)&nbsp;</td>
272 <td class="md" nowrap></td>
273 </tr>
274 </table>
275 </td>
276 </tr>
277 </table>
278 <table cellspacing="5" cellpadding="0" border="0">
279 <tr>
280 <td>
281 &nbsp;
282 </td>
283 <td>
284  
285 <p>
286 Initializes transmit and receive buffers. Automatically called from <a class="el" href="group__uart.html#ga0">uartInit()</a>
287 <p>
288 Definition at line <a class="el" href="uart2_8c-source.html#l00092">92</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
289 </tr>
290 </table>
291 <a class="anchor" name="ga10" doxytag="uart2.h::uart0SendByte"></a><p>
292 <table class="mdTable" cellpadding="2" cellspacing="0">
293 <tr>
294 <td class="mdRow">
295 <table cellpadding="0" cellspacing="0" border="0">
296 <tr>
297 <td class="md" nowrap valign="top">void uart0SendByte </td>
298 <td class="md" valign="top">(&nbsp;</td>
299 <td class="md" nowrap valign="top">u08&nbsp;</td>
300 <td class="mdname1" valign="top" nowrap> <em>data</em> </td>
301 <td class="md" valign="top">&nbsp;)&nbsp;</td>
302 <td class="md" nowrap></td>
303 </tr>
304 </table>
305 </td>
306 </tr>
307 </table>
308 <table cellspacing="5" cellpadding="0" border="0">
309 <tr>
310 <td>
311 &nbsp;
312 </td>
313 <td>
314  
315 <p>
316 SendByte commands with the UART number hardcoded Use these with printfInit() - example: <code>printfInit(uart0SendByte)</code>;
317 <p>
318 Definition at line <a class="el" href="uart2_8c-source.html#l00179">179</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
319 </tr>
320 </table>
321 <a class="anchor" name="ga17" doxytag="uart2.h::uartAddToTxBuffer"></a><p>
322 <table class="mdTable" cellpadding="2" cellspacing="0">
323 <tr>
324 <td class="mdRow">
325 <table cellpadding="0" cellspacing="0" border="0">
326 <tr>
327 <td class="md" nowrap valign="top">void uartAddToTxBuffer </td>
328 <td class="md" valign="top">(&nbsp;</td>
329 <td class="md" nowrap valign="top">u08&nbsp;</td>
330 <td class="mdname" nowrap> <em>nUart</em>, </td>
331 </tr>
332 <tr>
333 <td class="md" nowrap align="right"></td>
334 <td class="md"></td>
335 <td class="md" nowrap>u08&nbsp;</td>
336 <td class="mdname" nowrap> <em>data</em></td>
337 </tr>
338 <tr>
339 <td class="md"></td>
340 <td class="md">)&nbsp;</td>
341 <td class="md" colspan="2"></td>
342 </tr>
343 </table>
344 </td>
345 </tr>
346 </table>
347 <table cellspacing="5" cellpadding="0" border="0">
348 <tr>
349 <td>
350 &nbsp;
351 </td>
352 <td>
353  
354 <p>
355 Add byte to end of uart Tx buffer.
356 <p>
357 Definition at line <a class="el" href="uart2_8c-source.html#l00242">242</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
358 </tr>
359 </table>
360 <a class="anchor" name="ga16" doxytag="uart2.h::uartFlushReceiveBuffer"></a><p>
361 <table class="mdTable" cellpadding="2" cellspacing="0">
362 <tr>
363 <td class="mdRow">
364 <table cellpadding="0" cellspacing="0" border="0">
365 <tr>
366 <td class="md" nowrap valign="top">void uartFlushReceiveBuffer </td>
367 <td class="md" valign="top">(&nbsp;</td>
368 <td class="md" nowrap valign="top">u08&nbsp;</td>
369 <td class="mdname1" valign="top" nowrap> <em>nUart</em> </td>
370 <td class="md" valign="top">&nbsp;)&nbsp;</td>
371 <td class="md" nowrap></td>
372 </tr>
373 </table>
374 </td>
375 </tr>
376 </table>
377 <table cellspacing="5" cellpadding="0" border="0">
378 <tr>
379 <td>
380 &nbsp;
381 </td>
382 <td>
383  
384 <p>
385 Flushes (deletes) all data from receive buffer.
386 <p>
387 Definition at line <a class="el" href="uart2_8c-source.html#l00231">231</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
388 </tr>
389 </table>
390 <a class="anchor" name="ga7" doxytag="uart2.h::uartGetRxBuffer"></a><p>
391 <table class="mdTable" cellpadding="2" cellspacing="0">
392 <tr>
393 <td class="mdRow">
394 <table cellpadding="0" cellspacing="0" border="0">
395 <tr>
396 <td class="md" nowrap valign="top"><a class="el" href="structstruct__cBuffer.html">cBuffer</a>* uartGetRxBuffer </td>
397 <td class="md" valign="top">(&nbsp;</td>
398 <td class="md" nowrap valign="top">u08&nbsp;</td>
399 <td class="mdname1" valign="top" nowrap> <em>nUart</em> </td>
400 <td class="md" valign="top">&nbsp;)&nbsp;</td>
401 <td class="md" nowrap></td>
402 </tr>
403 </table>
404 </td>
405 </tr>
406 </table>
407 <table cellspacing="5" cellpadding="0" border="0">
408 <tr>
409 <td>
410 &nbsp;
411 </td>
412 <td>
413  
414 <p>
415 Returns pointer to the receive buffer structure.
416 <p>
417 Definition at line <a class="el" href="uart2_8c-source.html#l00148">148</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
418 </tr>
419 </table>
420 <a class="anchor" name="ga8" doxytag="uart2.h::uartGetTxBuffer"></a><p>
421 <table class="mdTable" cellpadding="2" cellspacing="0">
422 <tr>
423 <td class="mdRow">
424 <table cellpadding="0" cellspacing="0" border="0">
425 <tr>
426 <td class="md" nowrap valign="top"><a class="el" href="structstruct__cBuffer.html">cBuffer</a>* uartGetTxBuffer </td>
427 <td class="md" valign="top">(&nbsp;</td>
428 <td class="md" nowrap valign="top">u08&nbsp;</td>
429 <td class="mdname1" valign="top" nowrap> <em>nUart</em> </td>
430 <td class="md" valign="top">&nbsp;)&nbsp;</td>
431 <td class="md" nowrap></td>
432 </tr>
433 </table>
434 </td>
435 </tr>
436 </table>
437 <table cellspacing="5" cellpadding="0" border="0">
438 <tr>
439 <td>
440 &nbsp;
441 </td>
442 <td>
443  
444 <p>
445 Returns pointer to the transmit buffer structure.
446 <p>
447 Definition at line <a class="el" href="uart2_8c-source.html#l00154">154</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
448 </tr>
449 </table>
450 <a class="anchor" name="ga0" doxytag="uart2.h::uartInit"></a><p>
451 <table class="mdTable" cellpadding="2" cellspacing="0">
452 <tr>
453 <td class="mdRow">
454 <table cellpadding="0" cellspacing="0" border="0">
455 <tr>
456 <td class="md" nowrap valign="top">void uartInit </td>
457 <td class="md" valign="top">(&nbsp;</td>
458 <td class="md" nowrap valign="top">void&nbsp;</td>
459 <td class="mdname1" valign="top" nowrap> </td>
460 <td class="md" valign="top">&nbsp;)&nbsp;</td>
461 <td class="md" nowrap></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 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>
476  
477 <p>
478 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>
479 </tr>
480 </table>
481 <a class="anchor" name="ga15" doxytag="uart2.h::uartReceiveBufferIsEmpty"></a><p>
482 <table class="mdTable" cellpadding="2" cellspacing="0">
483 <tr>
484 <td class="mdRow">
485 <table cellpadding="0" cellspacing="0" border="0">
486 <tr>
487 <td class="md" nowrap valign="top">u08 uartReceiveBufferIsEmpty </td>
488 <td class="md" valign="top">(&nbsp;</td>
489 <td class="md" nowrap valign="top">u08&nbsp;</td>
490 <td class="mdname1" valign="top" nowrap> <em>nUart</em> </td>
491 <td class="md" valign="top">&nbsp;)&nbsp;</td>
492 <td class="md" nowrap></td>
493 </tr>
494 </table>
495 </td>
496 </tr>
497 </table>
498 <table cellspacing="5" cellpadding="0" border="0">
499 <tr>
500 <td>
501 &nbsp;
502 </td>
503 <td>
504  
505 <p>
506 Returns TRUE/FALSE if receive buffer is empty/not-empty.
507 <p>
508 Definition at line <a class="el" href="uart2_8c-source.html#l00237">237</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
509 </tr>
510 </table>
511 <a class="anchor" name="ga14" doxytag="uart2.h::uartReceiveByte"></a><p>
512 <table class="mdTable" cellpadding="2" cellspacing="0">
513 <tr>
514 <td class="mdRow">
515 <table cellpadding="0" cellspacing="0" border="0">
516 <tr>
517 <td class="md" nowrap valign="top">u08 uartReceiveByte </td>
518 <td class="md" valign="top">(&nbsp;</td>
519 <td class="md" nowrap valign="top">u08&nbsp;</td>
520 <td class="mdname" nowrap> <em>nUart</em>, </td>
521 </tr>
522 <tr>
523 <td class="md" nowrap align="right"></td>
524 <td class="md"></td>
525 <td class="md" nowrap>u08 *&nbsp;</td>
526 <td class="mdname" nowrap> <em>data</em></td>
527 </tr>
528 <tr>
529 <td class="md"></td>
530 <td class="md">)&nbsp;</td>
531 <td class="md" colspan="2"></td>
532 </tr>
533 </table>
534 </td>
535 </tr>
536 </table>
537 <table cellspacing="5" cellpadding="0" border="0">
538 <tr>
539 <td>
540 &nbsp;
541 </td>
542 <td>
543  
544 <p>
545 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;
546 <a class="code" href="group__uart.html#ga8">uartReceiveByte</a>(0, &amp;myReceivedByte );
547 </pre></div>
548 <p>
549 Definition at line <a class="el" href="uart2_8c-source.html#l00212">212</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
550 </tr>
551 </table>
552 <a class="anchor" name="ga21" doxytag="uart2.h::uartSendBuffer"></a><p>
553 <table class="mdTable" cellpadding="2" cellspacing="0">
554 <tr>
555 <td class="mdRow">
556 <table cellpadding="0" cellspacing="0" border="0">
557 <tr>
558 <td class="md" nowrap valign="top">u08 uartSendBuffer </td>
559 <td class="md" valign="top">(&nbsp;</td>
560 <td class="md" nowrap valign="top">u08&nbsp;</td>
561 <td class="mdname" nowrap> <em>nUart</em>, </td>
562 </tr>
563 <tr>
564 <td class="md" nowrap align="right"></td>
565 <td class="md"></td>
566 <td class="md" nowrap>char *&nbsp;</td>
567 <td class="mdname" nowrap> <em>buffer</em>, </td>
568 </tr>
569 <tr>
570 <td class="md" nowrap align="right"></td>
571 <td class="md"></td>
572 <td class="md" nowrap>u16&nbsp;</td>
573 <td class="mdname" nowrap> <em>nBytes</em></td>
574 </tr>
575 <tr>
576 <td class="md"></td>
577 <td class="md">)&nbsp;</td>
578 <td class="md" colspan="2"></td>
579 </tr>
580 </table>
581 </td>
582 </tr>
583 </table>
584 <table cellspacing="5" cellpadding="0" border="0">
585 <tr>
586 <td>
587 &nbsp;
588 </td>
589 <td>
590  
591 <p>
592 sends a buffer of length nBytes via the uart using interrupt control.
593 <p>
594 Definition at line <a class="el" href="uart2_8c-source.html#l00266">266</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
595 </tr>
596 </table>
597 <a class="anchor" name="ga9" doxytag="uart2.h::uartSendByte"></a><p>
598 <table class="mdTable" cellpadding="2" cellspacing="0">
599 <tr>
600 <td class="mdRow">
601 <table cellpadding="0" cellspacing="0" border="0">
602 <tr>
603 <td class="md" nowrap valign="top">void uartSendByte </td>
604 <td class="md" valign="top">(&nbsp;</td>
605 <td class="md" nowrap valign="top">u08&nbsp;</td>
606 <td class="mdname" nowrap> <em>nUart</em>, </td>
607 </tr>
608 <tr>
609 <td class="md" nowrap align="right"></td>
610 <td class="md"></td>
611 <td class="md" nowrap>u08&nbsp;</td>
612 <td class="mdname" nowrap> <em>data</em></td>
613 </tr>
614 <tr>
615 <td class="md"></td>
616 <td class="md">)&nbsp;</td>
617 <td class="md" colspan="2"></td>
618 </tr>
619 </table>
620 </td>
621 </tr>
622 </table>
623 <table cellspacing="5" cellpadding="0" border="0">
624 <tr>
625 <td>
626 &nbsp;
627 </td>
628 <td>
629  
630 <p>
631 Sends a single byte over the uart.
632 <p>
633 Definition at line <a class="el" href="uart2_8c-source.html#l00160">160</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
634 </tr>
635 </table>
636 <a class="anchor" name="ga20" doxytag="uart2.h::uartSendTxBuffer"></a><p>
637 <table class="mdTable" cellpadding="2" cellspacing="0">
638 <tr>
639 <td class="mdRow">
640 <table cellpadding="0" cellspacing="0" border="0">
641 <tr>
642 <td class="md" nowrap valign="top">void uartSendTxBuffer </td>
643 <td class="md" valign="top">(&nbsp;</td>
644 <td class="md" nowrap valign="top">u08&nbsp;</td>
645 <td class="mdname1" valign="top" nowrap> <em>nUart</em> </td>
646 <td class="md" valign="top">&nbsp;)&nbsp;</td>
647 <td class="md" nowrap></td>
648 </tr>
649 </table>
650 </td>
651 </tr>
652 </table>
653 <table cellspacing="5" cellpadding="0" border="0">
654 <tr>
655 <td>
656 &nbsp;
657 </td>
658 <td>
659  
660 <p>
661 Begins transmission of the transmit buffer under interrupt control.
662 <p>
663 Definition at line <a class="el" href="uart2_8c-source.html#l00258">258</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
664 </tr>
665 </table>
666 <a class="anchor" name="ga6" doxytag="uart2.h::uartSetBaudRate"></a><p>
667 <table class="mdTable" cellpadding="2" cellspacing="0">
668 <tr>
669 <td class="mdRow">
670 <table cellpadding="0" cellspacing="0" border="0">
671 <tr>
672 <td class="md" nowrap valign="top">void uartSetBaudRate </td>
673 <td class="md" valign="top">(&nbsp;</td>
674 <td class="md" nowrap valign="top">u08&nbsp;</td>
675 <td class="mdname" nowrap> <em>nUart</em>, </td>
676 </tr>
677 <tr>
678 <td class="md" nowrap align="right"></td>
679 <td class="md"></td>
680 <td class="md" nowrap>u32&nbsp;</td>
681 <td class="mdname" nowrap> <em>baudrate</em></td>
682 </tr>
683 <tr>
684 <td class="md"></td>
685 <td class="md">)&nbsp;</td>
686 <td class="md" colspan="2"></td>
687 </tr>
688 </table>
689 </td>
690 </tr>
691 </table>
692 <table cellspacing="5" cellpadding="0" border="0">
693 <tr>
694 <td>
695 &nbsp;
696 </td>
697 <td>
698  
699 <p>
700 Sets the uart baud rate. Argument should be in bits-per-second, like <code>uartSetBaudRate(9600)</code>;
701 <p>
702 Definition at line <a class="el" href="uart2_8c-source.html#l00128">128</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
703 </tr>
704 </table>
705 <a class="anchor" name="ga5" doxytag="uart2.h::uartSetRxHandler"></a><p>
706 <table class="mdTable" cellpadding="2" cellspacing="0">
707 <tr>
708 <td class="mdRow">
709 <table cellpadding="0" cellspacing="0" border="0">
710 <tr>
711 <td class="md" nowrap valign="top">void uartSetRxHandler </td>
712 <td class="md" valign="top">(&nbsp;</td>
713 <td class="md" nowrap valign="top">u08&nbsp;</td>
714 <td class="mdname" nowrap> <em>nUart</em>, </td>
715 </tr>
716 <tr>
717 <td class="md" nowrap align="right"></td>
718 <td class="md"></td>
719 <td class="md" nowrap>void(*)(unsigned char c)&nbsp;</td>
720 <td class="mdname" nowrap> <em>rx_func</em></td>
721 </tr>
722 <tr>
723 <td class="md"></td>
724 <td class="md">)&nbsp;</td>
725 <td class="md" colspan="2"></td>
726 </tr>
727 </table>
728 </td>
729 </tr>
730 </table>
731 <table cellspacing="5" cellpadding="0" border="0">
732 <tr>
733 <td>
734 &nbsp;
735 </td>
736 <td>
737  
738 <p>
739 Redirects received data to a user function.
740 <p>
741 Definition at line <a class="el" href="uart2_8c-source.html#l00118">118</a> of file <a class="el" href="uart2_8c-source.html">uart2.c</a>. </td>
742 </tr>
743 </table>
744 <hr size="1"><address style="align: right;"><small>Generated on Sun Oct 29 03:41:09 2006 for Procyon AVRlib by&nbsp;
745 <a href="http://www.doxygen.org/index.html">
746 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.2 </small></address>
747 </body>
748 </html>
{BLAME END}
{FOOTER START}

Powered by WebSVN v2.8.3