2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5 <html xmlns="http://www.w3.org/1999/xhtml">
7 <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
8 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
9 <title>Buttons — Freedom Metal v201905 documentation</title>
10 <link rel="stylesheet" href="../_static/alabaster.css" type="text/css" />
11 <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
12 <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
13 <script type="text/javascript" src="../_static/jquery.js"></script>
14 <script type="text/javascript" src="../_static/underscore.js"></script>
15 <script type="text/javascript" src="../_static/doctools.js"></script>
16 <link rel="index" title="Index" href="../genindex.html" />
17 <link rel="search" title="Search" href="../search.html" />
18 <link rel="next" title="Caches" href="cache.html" />
19 <link rel="prev" title="API Reference" href="../api.html" />
21 <link rel="stylesheet" href="../_static/custom.css" type="text/css" />
24 <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
29 <div class="document">
30 <div class="documentwrapper">
31 <div class="bodywrapper">
34 <div class="body" role="main">
36 <div class="section" id="buttons">
37 <h1>Buttons<a class="headerlink" href="#buttons" title="Permalink to this headline">¶</a></h1>
38 <p>API for interfacing with physical buttons </p>
39 <div class="breathe-sectiondef docutils container">
40 <p class="breathe-sectiondef-title rubric">Functions</p>
42 <dt id="_CPPv316metal_button_getPc">
43 <span id="_CPPv216metal_button_getPc"></span><span id="metal_button_get__cP"></span><span class="target" id="button_8h_1a37c968fa31653486de183be46f9dee19"></span><em class="property">struct</em> <a class="reference internal" href="#_CPPv312metal_button" title="metal_button">metal_button</a> *<code class="descname">metal_button_get</code><span class="sig-paren">(</span>char *<em>label</em><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv316metal_button_getPc" title="Permalink to this definition">¶</a><br /></dt>
44 <dd><p>Get a reference to a button. </p>
45 <p><dl class="docutils">
46 <dt><strong>Return</strong></dt>
47 <dd>A handle for the button </dd>
48 <dt><strong>Parameters</strong></dt>
49 <dd><ul class="breatheparameterlist first last simple">
50 <li><code class="docutils literal notranslate"><span class="pre">label</span></code>: The DeviceTree label for the button </li>
58 <dt id="_CPPv333metal_button_interrupt_controllerP12metal_button">
59 <span id="_CPPv233metal_button_interrupt_controllerP12metal_button"></span><span id="metal_button_interrupt_controller__metal_buttonP"></span><span class="target" id="button_8h_1a83d841df3634add5be7fbe0d68b7fd36"></span><em class="property">struct</em> <a class="reference internal" href="interrupt.html#_CPPv315metal_interrupt" title="metal_interrupt">metal_interrupt</a> *<code class="descname">metal_button_interrupt_controller</code><span class="sig-paren">(</span><em class="property">struct</em> <a class="reference internal" href="#_CPPv312metal_button" title="metal_button">metal_button</a> *<em>button</em><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv333metal_button_interrupt_controllerP12metal_button" title="Permalink to this definition">¶</a><br /></dt>
60 <dd><p>Get the interrupt controller for a button. </p>
61 <p><dl class="docutils">
62 <dt><strong>Return</strong></dt>
63 <dd>A pointer to the interrupt controller responsible for handling button interrupts. </dd>
64 <dt><strong>Parameters</strong></dt>
65 <dd><ul class="breatheparameterlist first last simple">
66 <li><code class="docutils literal notranslate"><span class="pre">button</span></code>: The handle for the button </li>
74 <dt id="_CPPv329metal_button_get_interrupt_idP12metal_button">
75 <span id="_CPPv229metal_button_get_interrupt_idP12metal_button"></span><span id="metal_button_get_interrupt_id__metal_buttonP"></span><span class="target" id="button_8h_1a700573b08686ea6099f4b6d99fb0d3b5"></span>int <code class="descname">metal_button_get_interrupt_id</code><span class="sig-paren">(</span><em class="property">struct</em> <a class="reference internal" href="#_CPPv312metal_button" title="metal_button">metal_button</a> *<em>button</em><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv329metal_button_get_interrupt_idP12metal_button" title="Permalink to this definition">¶</a><br /></dt>
76 <dd><p>Get the interrupt id for a button. </p>
77 <p><dl class="docutils">
78 <dt><strong>Return</strong></dt>
79 <dd>The interrupt id corresponding to a button. </dd>
80 <dt><strong>Parameters</strong></dt>
81 <dd><ul class="breatheparameterlist first last simple">
82 <li><code class="docutils literal notranslate"><span class="pre">button</span></code>: The handle for the button </li>
91 <dt id="_CPPv312metal_button">
92 <span id="_CPPv212metal_button"></span><span id="metal_button"></span><span class="target" id="structmetal__button"></span><em class="property">struct </em><code class="descname">metal_button</code><a class="headerlink" href="#_CPPv312metal_button" title="Permalink to this definition">¶</a><br /></dt>
93 <dd><em>#include <button.h></em><p>A button device handle. </p>
94 <p>A <code class="docutils literal notranslate"><span class="pre">struct</span> <a class="reference internal" href="#structmetal__button"><span class="std std-ref"><span class="pre">metal_button</span></span></a></code> is an implementation-defined object which represents a button on a development board. </p>
104 <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
105 <div class="sphinxsidebarwrapper">
106 <h1 class="logo"><a href="../index.html">Freedom Metal</a></h1>
117 <li class="toctree-l1"><a class="reference internal" href="../introduction.html">Introduction to Freedom Metal</a></li>
118 <li class="toctree-l1"><a class="reference internal" href="../devguide.html">Developer Guide</a></li>
119 <li class="toctree-l1 current"><a class="reference internal" href="../api.html">API Reference</a><ul class="current">
120 <li class="toctree-l2 current"><a class="current reference internal" href="#">Buttons</a></li>
121 <li class="toctree-l2"><a class="reference internal" href="cache.html">Caches</a></li>
122 <li class="toctree-l2"><a class="reference internal" href="clock.html">Clocks</a></li>
123 <li class="toctree-l2"><a class="reference internal" href="cpu.html">CPU</a></li>
124 <li class="toctree-l2"><a class="reference internal" href="gpio.html">GPIO</a></li>
125 <li class="toctree-l2"><a class="reference internal" href="interrupt.html">Interrupts</a></li>
126 <li class="toctree-l2"><a class="reference internal" href="itim.html">ITIM</a></li>
127 <li class="toctree-l2"><a class="reference internal" href="led.html">LEDs</a></li>
128 <li class="toctree-l2"><a class="reference internal" href="lock.html">Locks</a></li>
129 <li class="toctree-l2"><a class="reference internal" href="memory.html">Memory Enumeration</a></li>
130 <li class="toctree-l2"><a class="reference internal" href="pmp.html">PMPs</a></li>
131 <li class="toctree-l2"><a class="reference internal" href="shutdown.html">Shutdown</a></li>
132 <li class="toctree-l2"><a class="reference internal" href="spi.html">SPIs</a></li>
133 <li class="toctree-l2"><a class="reference internal" href="switch.html">Switches</a></li>
134 <li class="toctree-l2"><a class="reference internal" href="timer.html">Timer API</a></li>
135 <li class="toctree-l2"><a class="reference internal" href="tty.html">TTY</a></li>
136 <li class="toctree-l2"><a class="reference internal" href="uart.html">UARTs</a></li>
141 <div class="relations">
142 <h3>Related Topics</h3>
144 <li><a href="../index.html">Documentation overview</a><ul>
145 <li><a href="../api.html">API Reference</a><ul>
146 <li>Previous: <a href="../api.html" title="previous chapter">API Reference</a></li>
147 <li>Next: <a href="cache.html" title="next chapter">Caches</a></li>
152 <div id="searchbox" style="display: none" role="search">
153 <h3>Quick search</h3>
154 <div class="searchformwrapper">
155 <form class="search" action="../search.html" method="get">
156 <input type="text" name="q" />
157 <input type="submit" value="Go" />
158 <input type="hidden" name="check_keywords" value="yes" />
159 <input type="hidden" name="area" value="default" />
163 <script type="text/javascript">$('#searchbox').show(0);</script>
166 <div class="clearer"></div>
169 ©2019, SiFive Inc..
172 Powered by <a href="http://sphinx-doc.org/">Sphinx 1.7.5</a>
173 & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.11</a>
176 <a href="../_sources/apiref/button.rst.txt"
177 rel="nofollow">Page source</a>