mirror of
https://salsa.debian.org/gnuk-team/gnuk/gnuk.git
synced 2024-09-21 11:20:08 +00:00
133 lines
7.7 KiB
HTML
133 lines
7.7 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
|
|
<title>ChibiOS/RT: HAL</title>
|
|
<link href="custom.css" rel="stylesheet" type="text/css">
|
|
<link href="tabs.css" rel="stylesheet" type="text/css">
|
|
</head><body>
|
|
<table style="text-align: center; width: 100%;" border="0"
|
|
cellpadding="2" cellspacing="2">
|
|
<tbody>
|
|
<tr>
|
|
<td style="width: 80px;"><img alt="ChibiOS/RT Logo" src="logo_small.png"></td>
|
|
<td><big><big>ChibiOS/RT</big></big><br><br>Architecture - Reference Manual - Guides</td>
|
|
<td style="width: 80px;"></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<hr size="1">
|
|
<!-- Generated by Doxygen 1.7.1 -->
|
|
<div class="navigation" id="top">
|
|
<div class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="main.html"><span>Main Page</span></a></li>
|
|
<li><a href="modules.html"><span>Modules</span></a></li>
|
|
<li><a href="annotated.html"><span>Data Structures</span></a></li>
|
|
<li><a href="files.html"><span>Files</span></a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#groups">Modules</a> </div>
|
|
<div class="headertitle">
|
|
<h1>HAL</h1> </div>
|
|
</div>
|
|
<div class="contents">
|
|
|
|
<p>Hardware Abstraction Layer.
|
|
<a href="#_details">More...</a></p>
|
|
|
|
<p><div class="dynheader">
|
|
Collaboration diagram for HAL:</div>
|
|
<div class="dyncontent">
|
|
<center><table><tr><td><img src="group___i_o.png" border="0" alt="" usemap="#group______i__o"/>
|
|
<map name="group______i__o" id="group______i__o">
|
|
<area shape="rect" id="node1" href="group___c_a_n.html" title="Generic CAN Driver." alt="" coords="119,5,193,32"/>
|
|
<area shape="rect" id="node2" href="group___m_m_c___s_p_i.html" title="Generic MMC driver." alt="" coords="96,56,216,83"/>
|
|
<area shape="rect" id="node4" href="group___h_a_l.html" title="Hardware Abstraction Layer." alt="" coords="119,107,193,133"/>
|
|
<area shape="rect" id="node5" href="group___s_p_i.html" title="Generic SPI Driver." alt="" coords="121,157,191,184"/>
|
|
<area shape="rect" id="node6" href="group___p_a_l.html" title="I/O Ports Abstraction Layer." alt="" coords="119,208,193,235"/>
|
|
<area shape="rect" id="node7" href="group___m_a_c.html" title="Generic MAC driver." alt="" coords="117,259,195,285"/>
|
|
<area shape="rect" id="node8" href="group___a_d_c.html" title="Generic ADC Driver." alt="" coords="119,309,193,336"/>
|
|
<area shape="rect" id="node9" href="group___s_e_r_i_a_l.html" title="Generic Serial Driver." alt="" coords="116,360,196,387"/>
|
|
<area shape="rect" id="node10" href="group___p_w_m.html" title="Generic PWM Driver." alt="" coords="117,411,195,437"/>
|
|
</map>
|
|
</td></tr></table></center>
|
|
</div>
|
|
</p>
|
|
<hr/><a name="_details"></a><h2>Description</h2>
|
|
<p>Hardware Abstraction Layer. </p>
|
|
<p>Under ChibiOS/RT the set of the various device driver interfaces is called the HAL subsystem: Hardware Abstraction Layer.<br/>
|
|
A device driver is usually split in two layers:</p>
|
|
<ul>
|
|
<li>High Level Device Driver (<b>HLD</b>). This layer contains the definitions of the driver's APIs and the platform independent part of the driver.<br/>
|
|
An HLD is composed by two files:<ul>
|
|
<li><driver>.c, the HLD implementation file. This file must be included in the Makefile in order to use the driver.</li>
|
|
<li><driver>.h, the HLD header file. This file is implicitly included by the HAL header file <code><a class="el" href="hal_8h.html" title="HAL subsystem header.">hal.h</a></code>.</li>
|
|
</ul>
|
|
</li>
|
|
<li>Low Level Device Driver (<b>LLD</b>). This layer contains the platform dependent part of the driver.<br/>
|
|
A LLD is composed by two files:<ul>
|
|
<li><driver>_lld.c, the LLD implementation file. This file must be included in the Makefile in order to use the driver.</li>
|
|
<li><driver>_lld.h, the LLD header file. This file is implicitly included by the HLD header file.</li>
|
|
</ul>
|
|
The LLD may be not present in those drivers that do not access the hardware directly but through other device drivers, as example the <a class="el" href="group___m_m_c___s_p_i.html">MMC over SPI Driver</a> driver uses the <a class="el" href="group___s_p_i.html">SPI Driver</a> and <a class="el" href="group___p_a_l.html">PAL Driver</a> drivers in order to implement its functionalities.</li>
|
|
</ul>
|
|
<h2>Available Device Drivers</h2>
|
|
<p>The I/O subsystem currently includes support for:</p>
|
|
<ul>
|
|
<li><a class="el" href="group___h_a_l.html">HAL Driver</a>.</li>
|
|
<li><a class="el" href="group___p_a_l.html">PAL Driver</a>.</li>
|
|
<li><a class="el" href="group___s_e_r_i_a_l.html">Serial Driver</a>.</li>
|
|
<li><a class="el" href="group___a_d_c.html">ADC Driver</a>.</li>
|
|
<li><a class="el" href="group___c_a_n.html">CAN Driver</a>.</li>
|
|
<li><a class="el" href="group___m_a_c.html">MAC Driver</a>.</li>
|
|
<li><a class="el" href="group___m_m_c___s_p_i.html">MMC over SPI Driver</a>.</li>
|
|
<li><a class="el" href="group___s_p_i.html">SPI Driver</a>.</li>
|
|
</ul>
|
|
<table class="memberdecls">
|
|
<tr><td colspan="2"><h2><a name="groups"></a>
|
|
Modules</h2></td></tr>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___h_a_l.html">HAL Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Hardware Abstraction Layer. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___p_a_l.html">PAL Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>I/O Ports Abstraction Layer. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_e_r_i_a_l.html">Serial Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Generic Serial Driver. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_p_i.html">SPI Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Generic SPI Driver. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_d_c.html">ADC Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Generic ADC Driver. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___c_a_n.html">CAN Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Generic CAN Driver. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___p_w_m.html">PWM Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Generic PWM Driver. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_a_c.html">MAC Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Generic MAC driver. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_m_c___s_p_i.html">MMC over SPI Driver</a></td></tr>
|
|
|
|
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>Generic MMC driver. </p>
|
|
<br/></td></tr>
|
|
</p>
|
|
</table>
|
|
</div>
|
|
<hr size="1"><address style="text-align: right;"><small>
|
|
Generated on Sun Oct 24 2010 09:40:46 for ChibiOS/RT by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.7.1</small></address>
|
|
</body>
|
|
</html>
|