doc/doxygen/html/ports_8h-source.html
author etisserant
Mon, 02 Jul 2007 18:22:58 +0200
changeset 236 905677ed00f3
parent 215 f49e5a6b7804
child 240 34654679f262
permissions -rw-r--r--
Full preliminary implementation of TPDO transmit type:
- SYNC (N) (1-240)
- RTR only + SYNC (252)
- RTR only (253)
- EVENT, with timer and inhibit time (254 and 255)

User app have to call sendPDOevent(d) to eventually signal mapped data changes.
Callbacks added to 0x140N, TPDO comm parameters for on the fly timers values change.
TestMasterSlave updated.
<!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>CanFestival: include/hcs12/asm-m68hc12/ports.h Source File</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>
  </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_2209bfb26110ae52d50da4cefad5e72f.html">include</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_9b4fbd1818b4be2ef59811982235911e.html">hcs12</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_0bb6a295f3bedefe1e3a430a1a424e0b.html">asm-m68hc12</a></div>
<h1>ports.h</h1><a href="ports_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment">This file is part of CanFestival, a library implementing CanOpen Stack. </span>
<a name="l00003"></a>00003 <span class="comment"></span>
<a name="l00004"></a>00004 <span class="comment">Copyright (C): Edouard TISSERANT and Francis DUPIN</span>
<a name="l00005"></a>00005 <span class="comment"></span>
<a name="l00006"></a>00006 <span class="comment">See COPYING file for copyrights details.</span>
<a name="l00007"></a>00007 <span class="comment"></span>
<a name="l00008"></a>00008 <span class="comment">This library is free software; you can redistribute it and/or</span>
<a name="l00009"></a>00009 <span class="comment">modify it under the terms of the GNU Lesser General Public</span>
<a name="l00010"></a>00010 <span class="comment">License as published by the Free Software Foundation; either</span>
<a name="l00011"></a>00011 <span class="comment">version 2.1 of the License, or (at your option) any later version.</span>
<a name="l00012"></a>00012 <span class="comment"></span>
<a name="l00013"></a>00013 <span class="comment">This library is distributed in the hope that it will be useful,</span>
<a name="l00014"></a>00014 <span class="comment">but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="l00015"></a>00015 <span class="comment">MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span>
<a name="l00016"></a>00016 <span class="comment">Lesser General Public License for more details.</span>
<a name="l00017"></a>00017 <span class="comment"></span>
<a name="l00018"></a>00018 <span class="comment">You should have received a copy of the GNU Lesser General Public</span>
<a name="l00019"></a>00019 <span class="comment">License along with this library; if not, write to the Free Software</span>
<a name="l00020"></a>00020 <span class="comment">Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
<a name="l00021"></a>00021 <span class="comment">*/</span>
<a name="l00022"></a>00022 <span class="comment">/* m68hc11/ports.h -- Definition of 68HC11 ports</span>
<a name="l00023"></a>00023 <span class="comment">   Copyright 1999, 2000 Free Software Foundation, Inc.</span>
<a name="l00024"></a>00024 <span class="comment">   Written by Stephane Carrez (stcarrez@worldnet.fr)</span>
<a name="l00025"></a>00025 <span class="comment"></span>
<a name="l00026"></a>00026 <span class="comment">This file is part of GDB, GAS, and the GNU binutils.</span>
<a name="l00027"></a>00027 <span class="comment"></span>
<a name="l00028"></a>00028 <span class="comment">GDB, GAS, and the GNU binutils are free software; you can redistribute</span>
<a name="l00029"></a>00029 <span class="comment">them and/or modify them under the terms of the GNU General Public</span>
<a name="l00030"></a>00030 <span class="comment">License as published by the Free Software Foundation; either version</span>
<a name="l00031"></a>00031 <span class="comment">1, or (at your option) any later version.</span>
<a name="l00032"></a>00032 <span class="comment"></span>
<a name="l00033"></a>00033 <span class="comment">GDB, GAS, and the GNU binutils are distributed in the hope that they</span>
<a name="l00034"></a>00034 <span class="comment">will be useful, but WITHOUT ANY WARRANTY; without even the implied</span>
<a name="l00035"></a>00035 <span class="comment">warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See</span>
<a name="l00036"></a>00036 <span class="comment">the GNU General Public License for more details.</span>
<a name="l00037"></a>00037 <span class="comment"></span>
<a name="l00038"></a>00038 <span class="comment">You should have received a copy of the GNU General Public License</span>
<a name="l00039"></a>00039 <span class="comment">along with this file; see the file COPYING.  If not, write to the Free</span>
<a name="l00040"></a>00040 <span class="comment">Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */</span>
<a name="l00041"></a>00041 
<a name="l00042"></a>00042 
<a name="l00043"></a>00043 <span class="comment">/* Revised francis.dupin@inrets.fr 2003-07 */</span>
<a name="l00044"></a>00044 
<a name="l00045"></a>00045 <span class="preprocessor">#ifndef _M68HC11_PORTS_H</span>
<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">#define _M68HC11_PORTS_H</span>
<a name="l00047"></a>00047 <span class="preprocessor"></span>
<a name="l00048"></a>00048 
<a name="l00049"></a>00049 
<a name="l00050"></a>00050 <span class="preprocessor">#include &lt;<a class="code" href="ports__def_8h.html">asm-m68hc12/ports_def.h</a>&gt;</span>
<a name="l00051"></a>00051 
<a name="l00052"></a>00052 <span class="comment">/* Prototypes */</span>
<a name="l00053"></a>00053                  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> <a class="code" href="ports_8h.html#0e52a4b1cfab47cef68fa24f47175e8d">get_timer_counter</a> (<span class="keywordtype">void</span>);
<a name="l00054"></a>00054 <span class="keywordtype">void</span>             <a class="code" href="ports_8h.html#e932beed06a4917e3387c24cf8e827eb">set_timer_counter</a> (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value);
<a name="l00055"></a>00055 <span class="keywordtype">void</span>             <a class="code" href="ports_8h.html#a91f7029f6abe99bed4852a32bbe3496">cop_reset</a> (<span class="keywordtype">void</span>);
<a name="l00056"></a>00056 
<a name="l00057"></a>00057 
<a name="l00058"></a>00058 <span class="comment">/* Must me adapted to hc12</span>
<a name="l00059"></a>00059 <span class="comment">void             timer_acknowledge (void);</span>
<a name="l00060"></a>00060 <span class="comment">void             timer_initialize_rate (unsigned char divisor);</span>
<a name="l00061"></a>00061 <span class="comment">void             set_bus_expanded (void);</span>
<a name="l00062"></a>00062 <span class="comment">void             set_bus_single_chip (void);</span>
<a name="l00063"></a>00063 <span class="comment">unsigned short * get_input_capture_1 (void);</span>
<a name="l00064"></a>00064 <span class="comment">void             set_input_capture_1 (unsigned short value);</span>
<a name="l00065"></a>00065 <span class="comment">unsigned short * get_input_capture_2 (void);</span>
<a name="l00066"></a>00066 <span class="comment">void             set_input_capture_2 (unsigned short value);</span>
<a name="l00067"></a>00067 <span class="comment">unsigned short * get_input_capture_3 (void);</span>
<a name="l00068"></a>00068 <span class="comment">void             set_input_capture_3 (unsigned short value);</span>
<a name="l00069"></a>00069 <span class="comment">unsigned short * get_output_compare_1 (void);</span>
<a name="l00070"></a>00070 <span class="comment">void             set_output_compare_1 (unsigned short value);</span>
<a name="l00071"></a>00071 <span class="comment">unsigned short * get_output_compare_2 (void);</span>
<a name="l00072"></a>00072 <span class="comment">void             set_output_compare_2 (unsigned short value);</span>
<a name="l00073"></a>00073 <span class="comment">unsigned short * get_output_compare_3 (void);</span>
<a name="l00074"></a>00074 <span class="comment">void             set_output_compare_3 (unsigned short value);</span>
<a name="l00075"></a>00075 <span class="comment">unsigned short * get_output_compare_4 (void);</span>
<a name="l00076"></a>00076 <span class="comment">void             set_output_compare_4 (unsigned short value);</span>
<a name="l00077"></a>00077 <span class="comment">unsigned short * get_output_compare_5 (void);</span>
<a name="l00078"></a>00078 <span class="comment">void             set_output_compare_5 (unsigned short value);</span>
<a name="l00079"></a>00079 <span class="comment">*/</span>
<a name="l00080"></a>00080 
<a name="l00081"></a>00081 
<a name="l00082"></a>00082 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00083"></a><a class="code" href="ports_8h.html#0e52a4b1cfab47cef68fa24f47175e8d">00083</a> <a class="code" href="ports_8h.html#0e52a4b1cfab47cef68fa24f47175e8d">get_timer_counter</a> (<span class="keywordtype">void</span>)
<a name="l00084"></a>00084 {
<a name="l00085"></a>00085   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;<a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[<a class="code" href="ports__def_8h.html#b37ac48186b7d36d18fdc2ac47773f95">TCNTH</a>])[0];
<a name="l00086"></a>00086 }
<a name="l00087"></a>00087 
<a name="l00088"></a>00088 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00089"></a><a class="code" href="ports_8h.html#e932beed06a4917e3387c24cf8e827eb">00089</a> <a class="code" href="ports_8h.html#e932beed06a4917e3387c24cf8e827eb">set_timer_counter</a> (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00090"></a>00090 {
<a name="l00091"></a>00091   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;<a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[<a class="code" href="ports__def_8h.html#b37ac48186b7d36d18fdc2ac47773f95">TCNTH</a>])[0] = value;
<a name="l00092"></a>00092 }
<a name="l00093"></a>00093 
<a name="l00094"></a>00094 
<a name="l00095"></a>00095 <span class="comment">/* Reset the COP.  */</span>
<a name="l00096"></a>00096 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00097"></a><a class="code" href="ports_8h.html#a91f7029f6abe99bed4852a32bbe3496">00097</a> <a class="code" href="ports_8h.html#a91f7029f6abe99bed4852a32bbe3496">cop_reset</a> (<span class="keywordtype">void</span>)
<a name="l00098"></a>00098 {
<a name="l00099"></a>00099   <a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[<a class="code" href="ports__def_8h.html#7bf7cb62aaf7a62ee735a63b09575cd3">ARMCOP</a>] = 0x55;
<a name="l00100"></a>00100   <a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[<a class="code" href="ports__def_8h.html#7bf7cb62aaf7a62ee735a63b09575cd3">ARMCOP</a>] = 0xAA;
<a name="l00101"></a>00101 }
<a name="l00102"></a>00102 
<a name="l00103"></a>00103 
<a name="l00104"></a>00104 <span class="preprocessor">#if 0</span>
<a name="l00105"></a>00105 <span class="preprocessor"></span><span class="comment">/* Acknowledge the timer interrupt.  */</span>
<a name="l00106"></a>00106 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00107"></a>00107 timer_acknowledge (<span class="keywordtype">void</span>)
<a name="l00108"></a>00108 {
<a name="l00109"></a>00109   <a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[<a class="code" href="ports__def_8h.html#5d31366a1f46029bc8f323b6dde52178">TFLG2</a>] = 0x80;
<a name="l00110"></a>00110 }
<a name="l00111"></a>00111 
<a name="l00112"></a>00112 <span class="comment">/* Initialize the timer.  */</span>
<a name="l00113"></a>00113 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00114"></a>00114 timer_initialize_rate (<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> divisor)
<a name="l00115"></a>00115 {
<a name="l00116"></a>00116   <a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[M6811_TMSK2] = M6811_RTII | divisor;
<a name="l00117"></a>00117 }
<a name="l00118"></a>00118 
<a name="l00119"></a>00119 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00120"></a>00120 cop_optional_reset (<span class="keywordtype">void</span>)
<a name="l00121"></a>00121 {
<a name="l00122"></a>00122 <span class="preprocessor">#if defined(M6811_USE_COP) &amp;&amp; M6811_USE_COP == 1</span>
<a name="l00123"></a>00123 <span class="preprocessor"></span>  <a class="code" href="ports_8h.html#a91f7029f6abe99bed4852a32bbe3496">cop_reset</a> ();
<a name="l00124"></a>00124 <span class="preprocessor">#endif</span>
<a name="l00125"></a>00125 <span class="preprocessor"></span>}
<a name="l00126"></a>00126 
<a name="l00127"></a>00127 <span class="comment">/* Set the board in the expanded mode to get access to external bus.  */</span>
<a name="l00128"></a>00128 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00129"></a>00129 set_bus_expanded (<span class="keywordtype">void</span>)
<a name="l00130"></a>00130 {
<a name="l00131"></a>00131   <a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[M6811_HPRIO] |= M6811_MDA;
<a name="l00132"></a>00132 }
<a name="l00133"></a>00133 
<a name="l00134"></a>00134 
<a name="l00135"></a>00135 <span class="comment">/* Set the board in single chip mode.  */</span>
<a name="l00136"></a>00136 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00137"></a>00137 set_bus_single_chip (<span class="keywordtype">void</span>)
<a name="l00138"></a>00138 {
<a name="l00139"></a>00139   <a class="code" href="portsaccess_8h.html#cb39c27c5b828bb40948690ed0fc9462">_io_ports</a>[M6811_HPRIO] &amp;= ~M6811_MDA;
<a name="l00140"></a>00140 }
<a name="l00141"></a>00141 
<a name="l00142"></a>00142 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00143"></a>00143 get_input_capture_1 (<span class="keywordtype">void</span>)
<a name="l00144"></a>00144 {
<a name="l00145"></a>00145   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TIC1_H])[0];
<a name="l00146"></a>00146 }
<a name="l00147"></a>00147 
<a name="l00148"></a>00148 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00149"></a>00149 set_input_capture_1 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00150"></a>00150 {
<a name="l00151"></a>00151   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TIC1_H])[0] = value;
<a name="l00152"></a>00152 }
<a name="l00153"></a>00153 
<a name="l00154"></a>00154 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00155"></a>00155 get_input_capture_2 (<span class="keywordtype">void</span>)
<a name="l00156"></a>00156 {
<a name="l00157"></a>00157   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TIC2_H])[0];
<a name="l00158"></a>00158 }
<a name="l00159"></a>00159 
<a name="l00160"></a>00160 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00161"></a>00161 set_input_capture_2 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00162"></a>00162 {
<a name="l00163"></a>00163   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TIC2_H])[0] = value;
<a name="l00164"></a>00164 }
<a name="l00165"></a>00165 
<a name="l00166"></a>00166 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00167"></a>00167 get_input_capture_3 (<span class="keywordtype">void</span>)
<a name="l00168"></a>00168 {
<a name="l00169"></a>00169   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TIC3_H])[0];
<a name="l00170"></a>00170 }
<a name="l00171"></a>00171 
<a name="l00172"></a>00172 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00173"></a>00173 set_input_capture_3 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00174"></a>00174 {
<a name="l00175"></a>00175   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TIC3_H])[0] = value;
<a name="l00176"></a>00176 }
<a name="l00177"></a>00177 
<a name="l00178"></a>00178 <span class="comment">/* Get output compare 16-bit register.  */</span>
<a name="l00179"></a>00179 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00180"></a>00180 get_output_compare_1 (<span class="keywordtype">void</span>)
<a name="l00181"></a>00181 {
<a name="l00182"></a>00182   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC1_H])[0];
<a name="l00183"></a>00183 }
<a name="l00184"></a>00184 
<a name="l00185"></a>00185 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00186"></a>00186 set_output_compare_1 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00187"></a>00187 {
<a name="l00188"></a>00188   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC1_H])[0] = value;
<a name="l00189"></a>00189 }
<a name="l00190"></a>00190 
<a name="l00191"></a>00191 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00192"></a>00192 get_output_compare_2 (<span class="keywordtype">void</span>)
<a name="l00193"></a>00193 {
<a name="l00194"></a>00194   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC2_H])[0];
<a name="l00195"></a>00195 }
<a name="l00196"></a>00196 
<a name="l00197"></a>00197 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00198"></a>00198 set_output_compare_2 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00199"></a>00199 {
<a name="l00200"></a>00200   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC2_H])[0] = value;
<a name="l00201"></a>00201 }
<a name="l00202"></a>00202 
<a name="l00203"></a>00203 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00204"></a>00204 get_output_compare_3 (<span class="keywordtype">void</span>)
<a name="l00205"></a>00205 {
<a name="l00206"></a>00206   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC3_H])[0];
<a name="l00207"></a>00207 }
<a name="l00208"></a>00208 
<a name="l00209"></a>00209 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00210"></a>00210 set_output_compare_3 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00211"></a>00211 {
<a name="l00212"></a>00212   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC3_H])[0] = value;
<a name="l00213"></a>00213 }
<a name="l00214"></a>00214 
<a name="l00215"></a>00215 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00216"></a>00216 get_output_compare_4 (<span class="keywordtype">void</span>)
<a name="l00217"></a>00217 {
<a name="l00218"></a>00218   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC4_H])[0];
<a name="l00219"></a>00219 }
<a name="l00220"></a>00220 
<a name="l00221"></a>00221 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00222"></a>00222 set_output_compare_4 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00223"></a>00223 {
<a name="l00224"></a>00224   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC4_H])[0] = value;
<a name="l00225"></a>00225 }
<a name="l00226"></a>00226 
<a name="l00227"></a>00227 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>
<a name="l00228"></a>00228 get_output_compare_5 (<span class="keywordtype">void</span>)
<a name="l00229"></a>00229 {
<a name="l00230"></a>00230   <span class="keywordflow">return</span> ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC5_H])[0];
<a name="l00231"></a>00231 }
<a name="l00232"></a>00232 
<a name="l00233"></a>00233 <span class="keyword">extern</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>
<a name="l00234"></a>00234 set_output_compare_5 (<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> value)
<a name="l00235"></a>00235 {
<a name="l00236"></a>00236   ((<span class="keywordtype">unsigned</span> <span class="keyword">volatile</span> <span class="keywordtype">short</span>*) &amp;_io_ports[M6811_TOC5_H])[0] = value;
<a name="l00237"></a>00237 }
<a name="l00238"></a>00238 
<a name="l00239"></a>00239 <span class="preprocessor">#endif</span>
<a name="l00240"></a>00240 <span class="preprocessor"></span>
<a name="l00241"></a>00241 
<a name="l00242"></a>00242 
<a name="l00243"></a>00243 
<a name="l00244"></a>00244 <span class="preprocessor">#endif </span><span class="comment">/* _M68HC11_PORTS_H */</span>
<a name="l00245"></a>00245 
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Jun 8 08:51:39 2007 for CanFestival 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>