⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usart__example1_8c.html

📁 avr32100.zip Embedded demo
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>AVR321000 Communication with the AVR32 USART: testsuite/bravo_validation/usart/usart_example1.c File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.5.1 --><div class="tabs">  <ul>    <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>    <li id="current"><a href="files.html"><span>Files</span></a></li>    <li><a href="dirs.html"><span>Directories</span></a></li>    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>  </ul></div><div class="tabs">  <ul>    <li><a href="files.html"><span>File&nbsp;List</span></a></li>    <li><a href="globals.html"><span>Globals</span></a></li>  </ul></div><div class="nav"><a class="el" href="dir_ed041fa8052270846d9a0dab17b0d151.html">testsuite</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_18e6971fa792d4606dff45a531675719.html">bravo_validation</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_7f7ec19554deddf0beb795c9218a445b.html">usart</a></div><h1>usart_example1.c File Reference</h1><p><code>#include &quot;<a class="el" href="testsuite_2bravo__validation_2usart_2usart_8h-source.html">usart.h</a>&quot;</code><br><code>#include &quot;<a class="el" href="pio_8h-source.html">../pio/pio.h</a>&quot;</code><br><code>#include &quot;<a class="el" href="print__funcs_8h-source.html">../debug/print_funcs.h</a>&quot;</code><br><code>#include &lt;sys/interrupts.h&gt;</code><br><code>#include &lt;avr32/intc.h&gt;</code><br><p>Include dependency graph for usart_example1.c:<p><a href="usart__example1_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Defines</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usart__example1_8c.html#a65e5f6cbdd70191cfbdcbaa3e7c8b81">USART_ADDR</a>&nbsp;&nbsp;&nbsp;AVR32_USART2_ADDRESS</td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usart__example1_8c.html#840291bc02cba5474a4cb46a9b9566fe">main</a> (void)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">__int_handler *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usart__example1_8c.html#08388dbb7976d29110e12e367cff7076">usart_int_handler</a> ()</td></tr></table><hr><h2>Define Documentation</h2><a class="anchor" name="a65e5f6cbdd70191cfbdcbaa3e7c8b81"></a><!-- doxytag: member="usart_example1.c::USART_ADDR" ref="a65e5f6cbdd70191cfbdcbaa3e7c8b81" args="" --><div class="memitem"><div class="memproto">      <table class="memname">        <tr>          <td class="memname">#define USART_ADDR&nbsp;&nbsp;&nbsp;AVR32_USART2_ADDRESS          </td>        </tr>      </table></div><div class="memdoc"><p><p>Definition at line <a class="el" href="usart__example1_8c-source.html#l00015">15</a> of file <a class="el" href="usart__example1_8c-source.html">usart_example1.c</a>.<p>Referenced by <a class="el" href="usart__example1_8c-source.html#l00030">main()</a>, <a class="el" href="usart__example3_8c-source.html#l00102">tick_delay()</a>, and <a class="el" href="usart__example1_8c-source.html#l00018">usart_int_handler()</a>.</div></div><p><hr><h2>Function Documentation</h2><a class="anchor" name="840291bc02cba5474a4cb46a9b9566fe"></a><!-- doxytag: member="usart_example1.c::main" ref="840291bc02cba5474a4cb46a9b9566fe" args="(void)" --><div class="memitem"><div class="memproto">      <table class="memname">        <tr>          <td class="memname">int main           </td>          <td>(</td>          <td class="paramtype">void&nbsp;</td>          <td class="paramname">          </td>          <td>&nbsp;)&nbsp;</td>          <td width="100%"></td>        </tr>      </table></div><div class="memdoc"><p><p>Definition at line <a class="el" href="usart__example1_8c-source.html#l00030">30</a> of file <a class="el" href="usart__example1_8c-source.html">usart_example1.c</a>.<p>References <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00102">usart_options_t::baudrate</a>, <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00129">usart_options_t::channelmode</a>, <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00107">usart_options_t::charlength</a>, <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00114">usart_options_t::paritytype</a>, <a class="el" href="pio_8c-source.html#l00022">pio_enable_module()</a>, <a class="el" href="print__funcs_8c-source.html#l00043">print()</a>, <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00122">usart_options_t::stopbits</a>, <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00090">USART_1_STOPBIT</a>, <a class="el" href="usart__example1_8c-source.html#l00015">USART_ADDR</a>, <a class="el" href="testsuite_2bravo__validation_2usart_2usart_8c-source.html#l00095">usart_init_rs232()</a>, <a class="el" href="usart__example1_8c-source.html#l00018">usart_int_handler()</a>, <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00059">USART_NO_PARITY</a>, and <a class="el" href="testsuite_2bravo__validation_2pdc_2usart_8h-source.html#l00081">USART_NORMAL_CHMODE</a>.<div class="fragment"><pre class="fragment"><a name="l00031"></a>00031 {<a name="l00032"></a>00032   <span class="keywordtype">int</span> cpu_hz = 20000000;<a name="l00033"></a>00033   <span class="keyword">struct </span><a class="code" href="structusart__options__t.html">usart_options_t</a> opt;<a name="l00034"></a>00034 <a name="l00035"></a>00035   <span class="keyword">volatile</span> avr32_usart_t *usart = (<span class="keywordtype">void</span> *) <a class="code" href="usart__example1_8c.html#a65e5f6cbdd70191cfbdcbaa3e7c8b81">USART_ADDR</a>;<a name="l00036"></a>00036 <a name="l00037"></a>00037   <a class="code" href="pio_8h.html#e3e4e5c4f0784fd66613f9aedffb758a">avr32_piomap_t</a> usart_piomap = {                               \<a name="l00038"></a>00038     {AVR32_USART2_RXD_0_PIN, AVR32_USART2_RXD_0_FUNCTION},      \<a name="l00039"></a>00039     {AVR32_USART2_TXD_0_PIN, AVR32_USART2_TXD_0_FUNCTION},      \<a name="l00040"></a>00040     {AVR32_USART0_CLK_0_PIN, AVR32_USART0_CLK_0_FUNCTION},      \<a name="l00041"></a>00041     {AVR32_USART0_CTS_0_PIN, AVR32_USART0_CTS_0_FUNCTION},      \<a name="l00042"></a>00042     {AVR32_USART0_RTS_0_PIN, AVR32_USART0_RTS_0_FUNCTION}       \<a name="l00043"></a>00043   };<a name="l00044"></a>00044 <a name="l00045"></a>00045   <span class="comment">// Set options for the USART</span><a name="l00046"></a>00046   opt.<a class="code" href="structusart__options__t.html#276ad428776a25b8247762bd2c82b35b">baudrate</a> = 57600;<a name="l00047"></a>00047   opt.<a class="code" href="structusart__options__t.html#a6b77cc05829d2e70ee7f96194c6ce23">charlength</a> = 8;<a name="l00048"></a>00048   opt.<a class="code" href="structusart__options__t.html#85401f7a6f516a5883adc0538dc27f8e">paritytype</a> = <a class="code" href="testsuite_2bravo__validation_2pdc_2usart_8h.html#0b656451a78c0f602ee8855d52c719a8">USART_NO_PARITY</a>;<a name="l00049"></a>00049   opt.<a class="code" href="structusart__options__t.html#433a6ede2186d42b4cf19ef4b370cd61">stopbits</a> = <a class="code" href="testsuite_2bravo__validation_2pdc_2usart_8h.html#f2d819c8836b2d7838ab501d36458969">USART_1_STOPBIT</a>;<a name="l00050"></a>00050   opt.<a class="code" href="structusart__options__t.html#0dc365b8779891743180e9b69116f5ea">channelmode</a> = <a class="code" href="testsuite_2bravo__validation_2pdc_2usart_8h.html#0bd9f61e5232af833543eac9419c2d70">USART_NORMAL_CHMODE</a>;<a name="l00051"></a>00051 <a name="l00052"></a>00052   <span class="comment">// Initialize it in RS232 mode</span><a name="l00053"></a>00053   <a class="code" href="testsuite_2bravo__validation_2usart_2usart_8c.html#093c5ad113e1ab43603c0d815ad8dc54">usart_init_rs232</a>(usart, &amp;opt, cpu_hz);<a name="l00054"></a>00054 <a name="l00055"></a>00055   <span class="comment">// Setup pio for USART</span><a name="l00056"></a>00056   <a class="code" href="pio_8c.html#dff43770b559efc90059e31144738b7e">pio_enable_module</a>(usart_piomap, 2);<a name="l00057"></a>00057 <a name="l00058"></a>00058   <a class="code" href="print__funcs_8c.html#6d8f6870ed871f3fac022cea8ad9240b">print</a>(usart, <span class="stringliteral">"soo many assholes,so few.... bullets.\n"</span>);<a name="l00059"></a>00059 <a name="l00060"></a>00060   <span class="comment">/* Setup interrupts */</span><a name="l00061"></a>00061   set_interrupts_base( (<span class="keywordtype">void</span> *) AVR32_INTC_ADDRESS );<a name="l00062"></a>00062   <a class="code" href="print__funcs_8c.html#6d8f6870ed871f3fac022cea8ad9240b">print</a>(usart, <span class="stringliteral">"\nSetting interrupts base...\n"</span>);<a name="l00063"></a>00063   register_interrupt( (__int_handler) (<a class="code" href="usart__example1_8c.html#08388dbb7976d29110e12e367cff7076">usart_int_handler</a>), AVR32_USART2_IRQ/32, AVR32_USART2_IRQ % 32, INT0);<a name="l00064"></a>00064   <a class="code" href="print__funcs_8c.html#6d8f6870ed871f3fac022cea8ad9240b">print</a>(usart, <span class="stringliteral">"Adding interrupt handler...\n"</span>);<a name="l00065"></a>00065   init_interrupts();<a name="l00066"></a>00066   <a class="code" href="print__funcs_8c.html#6d8f6870ed871f3fac022cea8ad9240b">print</a>(usart, <span class="stringliteral">"Initializing interrupts\n"</span>);<a name="l00067"></a>00067   usart-&gt;ier = 0x000Fffff;<a name="l00068"></a>00068   <span class="comment">// (1&lt;&lt;INT_RXRDY) | (1&lt;&lt;INT_TXRDY) | (1&lt;&lt;INT_RXBRK) | (1&lt;&lt;INT_ENDRX) | (1&lt;&lt;INT_ENDTX) | (1&lt;&lt;INT_TXBUFE) | (1&lt;&lt;INT_RXBUFF)</span><a name="l00069"></a>00069 <a name="l00070"></a>00070   <span class="keywordflow">while</span>(1);<a name="l00071"></a>00071 <a name="l00072"></a>00072   <span class="keywordflow">return</span> 42;<a name="l00073"></a>00073 }</pre></div><p><p>Here is the call graph for this function:</div></div><p><a class="anchor" name="08388dbb7976d29110e12e367cff7076"></a><!-- doxytag: member="usart_example1.c::usart_int_handler" ref="08388dbb7976d29110e12e367cff7076" args="()" --><div class="memitem"><div class="memproto">      <table class="memname">        <tr>          <td class="memname">__int_handler* usart_int_handler           </td>          <td>(</td>          <td class="paramname">          </td>          <td>&nbsp;)&nbsp;</td>          <td width="100%"></td>        </tr>      </table></div><div class="memdoc"><p><p>Definition at line <a class="el" href="usart__example1_8c-source.html#l00018">18</a> of file <a class="el" href="usart__example1_8c-source.html">usart_example1.c</a>.<p>References <a class="el" href="print__funcs_8c-source.html#l00050">print_char()</a>, <a class="el" href="usart__example1_8c-source.html#l00015">USART_ADDR</a>, and <a class="el" href="testsuite_2bravo__validation_2usart_2usart_8c-source.html#l00471">usart_getchar()</a>.<p>Referenced by <a class="el" href="usart__example1_8c-source.html#l00030">main()</a>.<div class="fragment"><pre class="fragment"><a name="l00019"></a>00019 {<a name="l00020"></a>00020   <span class="keyword">volatile</span> avr32_usart_t * usart = (<span class="keywordtype">void</span> *) <a class="code" href="usart__example1_8c.html#a65e5f6cbdd70191cfbdcbaa3e7c8b81">USART_ADDR</a>;<a name="l00021"></a>00021 <span class="comment">/*</span><a name="l00022"></a>00022 <span class="comment">  print_hex( usart, usart-&gt;csr);</span><a name="l00023"></a>00023 <span class="comment">  print(usart, "\n\r");</span><a name="l00024"></a>00024 <span class="comment">*/</span><a name="l00025"></a>00025   <a class="code" href="print__funcs_8c.html#09e40342b7ef8cc74af8200f30e04bb6">print_char</a>( usart, <a class="code" href="testsuite_2bravo__validation_2usart_2usart_8c.html#a751e180b091943b684b48c581aaef3e">usart_getchar</a>(usart) );<a name="l00026"></a>00026 <a name="l00027"></a>00027   <span class="keywordflow">return</span> (<span class="keywordtype">void</span> *) 0;<a name="l00028"></a>00028 }</pre></div><p><p>Here is the call graph for this function:</div></div><p><hr size="1"><address style="align: right;"><small>Generated on Thu May 10 14:14:49 2007 for AVR321000 Communication with the AVR32 USART by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -