📄 macro_8h.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/inc/macro.h 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 Page</span></a></li> <li><a href="annotated.html"><span>Data 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 Pages</span></a></li> </ul></div><div class="tabs"> <ul> <li><a href="files.html"><span>File 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> » <a class="el" href="dir_18e6971fa792d4606dff45a531675719.html">bravo_validation</a> » <a class="el" href="dir_bc52a70d7bb04512651454be1567b075.html">inc</a></div><h1>macro.h File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2>Macro file for AVR32. <p>This file defines macros for accessing system registers on AVR32 devices.<p><ul><li>File: <a class="el" href="macro_8h.html">macro.h</a></li><li>Compiler: All</li><li>Supported devices: All AVR32 devices can be used.</li></ul><p><ul><li>AppNote: AVR32000 - Header files for AVR32</li></ul><p><dl class="author" compact><dt><b>Author:</b></dt><dd>Atmel Corporation: <a href="http://www.atmel.com">http://www.atmel.com</a> <br> Support email: <a href="mailto:avr@atmel.com">avr@atmel.com</a></dd></dl><dl class="rcs" compact><dt><b>Revision</b></dt><dd>43 </dd></dl><dl class="rcs" compact><dt><b>Date</b></dt><dd>2006-03-22 09:10:05 +0100 (Wed, 22 Mar 2006) </dd></dl><p>Definition in file <a class="el" href="macro_8h-source.html">macro.h</a>.<p><p>This graph shows which files directly or indirectly include this file:<p><a href="macro_8h-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 </td><td class="memItemRight" valign="bottom"><a class="el" href="macro_8h.html#c3412ca7b8f416a6930836367ad6d4ef">CLEARBIT</a>(sregister, bitname)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">define which clears a bit in system registers <a href="#c3412ca7b8f416a6930836367ad6d4ef"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="macro_8h.html#ecf32a6a639a99e15e0b3da4132d0ec9">CLRBIT</a>(sregister, bitname) CLEARBIT(sregister, bitname)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="macro_8h.html#2f8d7d5a3546a2b7a905564d592d1e0a">GETBITS</a>(sregister, return_value) READBITS(sregister, return_value)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="macro_8h.html#a286c4d9f5bd579a9067d989c66ef7a3">READBITS</a>(sregister, return_value)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">define to read a given system registers <a href="#a286c4d9f5bd579a9067d989c66ef7a3"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="macro_8h.html#5b04fafb462f678a6573b80cf371048c">SETBIT</a>(sregister, bitname)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">define which sets a bit in system registers <a href="#5b04fafb462f678a6573b80cf371048c"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="macro_8h.html#897e2a604a348ff95049e5b2a478f11d">TGLBIT</a>(sregister, bitname) TOGGLEBIT(sregister, bitname)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="macro_8h.html#3b39fa193fcd808edb19a42858aaa2af">TOGGLEBIT</a>(sregister, bitname)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">define which toggles a bit in system registers <a href="#3b39fa193fcd808edb19a42858aaa2af"></a><br></td></tr></table><hr><h2>Define Documentation</h2><a class="anchor" name="c3412ca7b8f416a6930836367ad6d4ef"></a><!-- doxytag: member="macro.h::CLEARBIT" ref="c3412ca7b8f416a6930836367ad6d4ef" args="(sregister, bitname)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define CLEARBIT </td> <td>(</td> <td class="paramtype">sregister, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bitname </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table></div><div class="memdoc"><p><b>Value:</b><div class="fragment"><pre class="fragment">__asm__( <span class="stringliteral">"st.w sp++, r7\n"</span> \ <span class="stringliteral">"mfsr r7, %0\n"</span> \ <span class="stringliteral">"cbr r7, %1\n"</span> \ <span class="stringliteral">"mtsr %0, r7\n"</span> \ <span class="stringliteral">"ld.w r7, --sp\n"</span> \ : \ :<span class="stringliteral">"X"</span>(sregister), <span class="stringliteral">"g"</span>(bitname) )</pre></div>define which clears a bit in system registers <p>First store the r7 register on the stack and increment the pointer. Then load the system register<dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>sregister,clear</em> </td><td>the bit</td></tr> <tr><td valign="top"></td><td valign="top"><em>bitname,store</em> </td><td>the system register and load value from stack to r7 and deincrement. </td></tr> </table></dl><p>Definition at line <a class="el" href="macro_8h-source.html#l00049">49</a> of file <a class="el" href="macro_8h-source.html">macro.h</a>.</div></div><p><a class="anchor" name="ecf32a6a639a99e15e0b3da4132d0ec9"></a><!-- doxytag: member="macro.h::CLRBIT" ref="ecf32a6a639a99e15e0b3da4132d0ec9" args="(sregister, bitname)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define CLRBIT </td> <td>(</td> <td class="paramtype">sregister, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bitname </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> CLEARBIT(sregister, bitname)</td> </tr> </table></div><div class="memdoc"><p><p>Definition at line <a class="el" href="macro_8h-source.html#l00058">58</a> of file <a class="el" href="macro_8h-source.html">macro.h</a>.</div></div><p><a class="anchor" name="2f8d7d5a3546a2b7a905564d592d1e0a"></a><!-- doxytag: member="macro.h::GETBITS" ref="2f8d7d5a3546a2b7a905564d592d1e0a" args="(sregister, return_value)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">#define GETBITS </td> <td>(</td> <td class="paramtype">sregister, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">return_value </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> READBITS(sregister, return_value)</td> </tr> </table></div><div class="memdoc"><p><p>Definition at line <a class="el" href="macro_8h-source.html#l00100">100</a> of file <a class="el" href="macro_8h-source.html">macro.h</a>.</div>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -