doc/doxygen/html/appli_8c-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.
215
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     3
<title>CanFestival: examples/gene_SYNC_HCS12/appli.c Source File</title>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     4
<link href="doxygen.css" rel="stylesheet" type="text/css">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     5
<link href="tabs.css" rel="stylesheet" type="text/css">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     6
</head><body>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     7
<!-- Generated by Doxygen 1.5.1 -->
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     8
<div class="tabs">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
     9
  <ul>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    10
    <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    11
    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    12
    <li id="current"><a href="files.html"><span>Files</span></a></li>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    13
    <li><a href="dirs.html"><span>Directories</span></a></li>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    14
  </ul></div>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    15
<div class="tabs">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    16
  <ul>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    17
    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    18
    <li><a href="globals.html"><span>Globals</span></a></li>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    19
  </ul></div>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    20
<div class="nav">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    21
<a class="el" href="dir_fc8d77725c328f9de5a130dceab5a508.html">examples</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_41bf73311d8b7aeee9ef2a2b73ffd4dc.html">gene_SYNC_HCS12</a></div>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    22
<h1>appli.c</h1><a href="appli_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    23
<a name="l00002"></a>00002 <span class="comment">This file is part of CanFestival, a library implementing CanOpen Stack. </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    24
<a name="l00003"></a>00003 <span class="comment"></span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    25
<a name="l00004"></a>00004 <span class="comment">Copyright (C): Edouard TISSERANT and Francis DUPIN</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    26
<a name="l00005"></a>00005 <span class="comment"></span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    27
<a name="l00006"></a>00006 <span class="comment">See COPYING file for copyrights details.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    28
<a name="l00007"></a>00007 <span class="comment"></span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    29
<a name="l00008"></a>00008 <span class="comment">This library is free software; you can redistribute it and/or</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    30
<a name="l00009"></a>00009 <span class="comment">modify it under the terms of the GNU Lesser General Public</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    31
<a name="l00010"></a>00010 <span class="comment">License as published by the Free Software Foundation; either</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    32
<a name="l00011"></a>00011 <span class="comment">version 2.1 of the License, or (at your option) any later version.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    33
<a name="l00012"></a>00012 <span class="comment"></span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    34
<a name="l00013"></a>00013 <span class="comment">This library is distributed in the hope that it will be useful,</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    35
<a name="l00014"></a>00014 <span class="comment">but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    36
<a name="l00015"></a>00015 <span class="comment">MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    37
<a name="l00016"></a>00016 <span class="comment">Lesser General Public License for more details.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    38
<a name="l00017"></a>00017 <span class="comment"></span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    39
<a name="l00018"></a>00018 <span class="comment">You should have received a copy of the GNU Lesser General Public</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    40
<a name="l00019"></a>00019 <span class="comment">License along with this library; if not, write to the Free Software</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    41
<a name="l00020"></a>00020 <span class="comment">Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    42
<a name="l00021"></a>00021 <span class="comment">*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    43
<a name="l00022"></a>00022 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    44
<a name="l00023"></a>00023 <span class="comment">// Uncomment if you don't need console informations.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    45
<a name="l00024"></a><a class="code" href="appli_8c.html#4f52c00ab0d519e2965ebaa533975904">00024</a> <span class="preprocessor">#define DEBUG_WAR_CONSOLE_ON</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    46
<a name="l00025"></a><a class="code" href="appli_8c.html#bb416887a32f7e4333e095356774f07f">00025</a> <span class="preprocessor"></span><span class="preprocessor">#define DEBUG_ERR_CONSOLE_ON</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    47
<a name="l00026"></a>00026 <span class="preprocessor"></span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    48
<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;stddef.h&gt;</span> <span class="comment">/* for NULL */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    49
<a name="l00028"></a>00028 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    50
<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;<a class="code" href="portsaccess_8h.html">asm-m68hc12/portsaccess.h</a>&gt;</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    51
<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;<a class="code" href="ports__def_8h.html">asm-m68hc12/ports_def.h</a>&gt;</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    52
<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;<a class="code" href="ports_8h.html">asm-m68hc12/ports.h</a>&gt;</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    53
<a name="l00032"></a>00032 <span class="preprocessor">#include  &lt;<a class="code" href="interrupt_8h.html">interrupt.h</a>&gt;</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    54
<a name="l00033"></a>00033 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    55
<a name="l00034"></a>00034 <span class="preprocessor">#include "../include/data.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    56
<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;<a class="code" href="win32_2applicfg_8h.html">applicfg.h</a>&gt;</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    57
<a name="l00036"></a>00036 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    58
<a name="l00037"></a>00037 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    59
<a name="l00038"></a>00038 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    60
<a name="l00039"></a>00039 <span class="preprocessor">#include "../include/hcs12/candriver.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    61
<a name="l00040"></a>00040 <span class="preprocessor">#include "../include/hcs12/canOpenDriver.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    62
<a name="l00041"></a>00041 <span class="preprocessor">#include "../include/def.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    63
<a name="l00042"></a>00042 <span class="preprocessor">#include "../include/can.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    64
<a name="l00043"></a>00043 <span class="preprocessor">#include "../include/objdictdef.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    65
<a name="l00044"></a>00044 <span class="preprocessor">#include "../include/objacces.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    66
<a name="l00045"></a>00045 <span class="preprocessor">#include "../include/sdo.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    67
<a name="l00046"></a>00046 <span class="preprocessor">#include "../include/pdo.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    68
<a name="l00047"></a>00047 <span class="preprocessor">#include "../include/timer.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    69
<a name="l00048"></a>00048 <span class="preprocessor">#include "../include/lifegrd.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    70
<a name="l00049"></a>00049 <span class="preprocessor">#include "../include/sync.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    71
<a name="l00050"></a>00050 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    72
<a name="l00051"></a>00051 <span class="preprocessor">#include "../include/nmtSlave.h"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    73
<a name="l00052"></a>00052 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    74
<a name="l00053"></a>00053 <span class="comment">// File created by the GUI </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    75
<a name="l00054"></a>00054 <span class="preprocessor">#include "<a class="code" href="objdict_8h.html">objdict.h</a>"</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    76
<a name="l00055"></a>00055 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    77
<a name="l00056"></a>00056 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    78
<a name="l00057"></a>00057 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    79
<a name="l00058"></a>00058 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    80
<a name="l00059"></a>00059 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    81
<a name="l00060"></a>00060 <span class="comment">// HCS12 configuration</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    82
<a name="l00061"></a>00061 <span class="comment">// -----------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    83
<a name="l00062"></a>00062 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    84
<a name="l00063"></a><a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f">00063</a> <span class="keyword">enum</span> <a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f">E_CanBaudrate</a> 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    85
<a name="l00064"></a>00064 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    86
<a name="l00065"></a>00065    <a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f8d90575842d76640697deb1398f7023c">CAN_BAUDRATE_250K</a>,
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    87
<a name="l00066"></a>00066    <a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f07239165beed5e840aed12e7f46af89b">CAN_BAUDRATE_500K</a>,
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    88
<a name="l00067"></a>00067    <a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430ff84d248d0fb707925b35c9ec18624809">CAN_BAUDRATE_1M</a>,
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    89
<a name="l00068"></a>00068 };
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    90
<a name="l00069"></a>00069 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    91
<a name="l00070"></a>00070 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    92
<a name="l00071"></a><a class="code" href="appli_8c.html#43fd1d8fc333eddd19554acb6cc2baf8">00071</a> <span class="keyword">const</span> <a class="code" href="structcanBusTime.html">canBusTime</a> <a class="code" href="appli_8c.html#43fd1d8fc333eddd19554acb6cc2baf8">CAN_Baudrates</a>[] =
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    93
<a name="l00072"></a>00072 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    94
<a name="l00073"></a>00073    {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    95
<a name="l00074"></a>00074       1,  <span class="comment">/* clksrc: Use the bus clock : 16 MHz, the freq. of the quartz's board        */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    96
<a name="l00075"></a>00075       3,  <span class="comment">/* brp :  chose btw 0 and 63 (6 bits).  freq time quantum = 16MHz / (brp + 1) */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    97
<a name="l00076"></a>00076       0,  <span class="comment">/* sjw : chose btw 0 and 3 (2 bits). Sync on (sjw + 1 ) time quantum          */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    98
<a name="l00077"></a>00077       0,  <span class="comment">/* samp : chose btw 0 and 3 (2 bits) (samp + 1 ) samples per bit              */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
    99
<a name="l00078"></a>00078       1,  <span class="comment">/* tseg2 : chose btw 0 and 7 (3 bits) Segment 2 width = (tseg2 + 1)  tq       */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   100
<a name="l00079"></a>00079      12,  <span class="comment">/* tseg1 : chose btw 0 and 15 (4 bits) Segment 1 width = (tseg1 + 1)  tq      */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   101
<a name="l00080"></a>00080 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   102
<a name="l00081"></a>00081       <span class="comment">/*</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   103
<a name="l00082"></a>00082 <span class="comment">      With these values, </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   104
<a name="l00083"></a>00083 <span class="comment">      - The width of the bit time is 16 time quantum :</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   105
<a name="l00084"></a>00084 <span class="comment">          - 1 tq for the SYNC segment (could not be modified)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   106
<a name="l00085"></a>00085 <span class="comment">          - 13 tq for the TIME 1 segment (tseg1 = 12)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   107
<a name="l00086"></a>00086 <span class="comment">          - 2 tq for the TIME 2 segment (tseg2 = 1)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   108
<a name="l00087"></a>00087 <span class="comment">      - Because the bus clock of the MSCAN is 16 MHZ, and the </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   109
<a name="l00088"></a>00088 <span class="comment">        freq of the time quantum is 4 MHZ (brp = 3+1), and  there are 16 tq in the bit time,</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   110
<a name="l00089"></a>00089 <span class="comment">        so the freq of the bit time is 250 kHz.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   111
<a name="l00090"></a>00090 <span class="comment">      */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   112
<a name="l00091"></a>00091    },
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   113
<a name="l00092"></a>00092 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   114
<a name="l00093"></a>00093    {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   115
<a name="l00094"></a>00094       1,  <span class="comment">/* clksrc: Use the bus clock : 16 MHz, the freq. of the quartz's board        */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   116
<a name="l00095"></a>00095       1,  <span class="comment">/* brp :  chose btw 0 and 63 (6 bits).  freq time quantum = 16MHz / (brp + 1) */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   117
<a name="l00096"></a>00096       0,  <span class="comment">/* sjw : chose btw 0 and 3 (2 bits). Sync on (sjw + 1 ) time quantum          */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   118
<a name="l00097"></a>00097       0,  <span class="comment">/* samp : chose btw 0 and 3 (2 bits) (samp + 1 ) samples per bit              */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   119
<a name="l00098"></a>00098       1,  <span class="comment">/* tseg2 : chose btw 0 and 7 (3 bits) Segment 2 width = (tseg2 + 1)  tq       */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   120
<a name="l00099"></a>00099      12,  <span class="comment">/* tseg1 : chose btw 0 and 15 (4 bits) Segment 1 width = (tseg1 + 1)  tq      */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   121
<a name="l00100"></a>00100 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   122
<a name="l00101"></a>00101       <span class="comment">/*</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   123
<a name="l00102"></a>00102 <span class="comment">      With these values, </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   124
<a name="l00103"></a>00103 <span class="comment">      - The width of the bit time is 16 time quantum :</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   125
<a name="l00104"></a>00104 <span class="comment">          - 1 tq for the SYNC segment (could not be modified)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   126
<a name="l00105"></a>00105 <span class="comment">          - 13 tq for the TIME 1 segment (tseg1 = 12)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   127
<a name="l00106"></a>00106 <span class="comment">          - 2 tq for the TIME 2 segment (tseg2 = 1)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   128
<a name="l00107"></a>00107 <span class="comment">      - Because the bus clock of the MSCAN is 16 MHZ, and the </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   129
<a name="l00108"></a>00108 <span class="comment">        freq of the time quantum is 8 MHZ (brp = 1+1), and  there are 16 tq in the bit time,</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   130
<a name="l00109"></a>00109 <span class="comment">        so the freq of the bit time is 500 kHz.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   131
<a name="l00110"></a>00110 <span class="comment">      */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   132
<a name="l00111"></a>00111     },
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   133
<a name="l00112"></a>00112 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   134
<a name="l00113"></a>00113         {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   135
<a name="l00114"></a>00114       1,  <span class="comment">/* clksrc: Use the bus clock : 16 MHz, the freq. of the quartz's board        */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   136
<a name="l00115"></a>00115       1,  <span class="comment">/* brp :  chose btw 0 and 63 (6 bits).  freq time quantum = 16MHz / (brp + 1) */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   137
<a name="l00116"></a>00116       0,  <span class="comment">/* sjw : chose btw 0 and 3 (2 bits). Sync on (sjw + 1 ) time quantum          */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   138
<a name="l00117"></a>00117       0,  <span class="comment">/* samp : chose btw 0 and 3 (2 bits) (samp +MSG_WAR(0x3F33, "Je suis le noeud ", getNodeId());    1 ) samples per bit              */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   139
<a name="l00118"></a>00118       1,  <span class="comment">/* tseg2 : chose btw 0 and 7 (3 bits) Segment 2 width = (tseg2 + 1)  tq       */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   140
<a name="l00119"></a>00119       4,  <span class="comment">/* tseg1 : chose btw 0 and 15 (4 bits) Segment 1 width = (tseg1 + 1)  tq      */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   141
<a name="l00120"></a>00120 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   142
<a name="l00121"></a>00121       <span class="comment">/*</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   143
<a name="l00122"></a>00122 <span class="comment">      With these values, </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   144
<a name="l00123"></a>00123 <span class="comment">      - The width of the bit time is 16 time quantum :</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   145
<a name="l00124"></a>00124 <span class="comment">          - 1 tq for the SYNC segment (could not be modified)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   146
<a name="l00125"></a>00125 <span class="comment">          - 5 tq for the TIME 1 segment (tseg1 = 4)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   147
<a name="l00126"></a>00126 <span class="comment">          - 2 tq for the TIME 2 segment (tseg2 = 1)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   148
<a name="l00127"></a>00127 <span class="comment">      - Because the bus clock of the MSCAN is 16 MHZ, and the </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   149
<a name="l00128"></a>00128 <span class="comment">        freq of the time quantum is 8 MHZ (brp = 1+1), and  there are 8 tq in the bit time,</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   150
<a name="l00129"></a>00129 <span class="comment">        so the freq of the bit time is 1 MHz.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   151
<a name="l00130"></a>00130 <span class="comment">      */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   152
<a name="l00131"></a>00131     }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   153
<a name="l00132"></a>00132 };
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   154
<a name="l00133"></a>00133 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   155
<a name="l00134"></a>00134 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   156
<a name="l00135"></a>00135 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   157
<a name="l00136"></a>00136 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   158
<a name="l00137"></a>00137 <span class="comment">/**************************prototypes*****************************************/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   159
<a name="l00138"></a>00138 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   160
<a name="l00139"></a>00139 <span class="comment">//Init can bus and Canopen</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   161
<a name="l00140"></a>00140 <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#8d772d897083e5a5c5f41878cfea50b8">initCanopencapteur</a> (<span class="keywordtype">void</span>);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   162
<a name="l00141"></a>00141 <span class="comment">// Init the sensor</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   163
<a name="l00142"></a>00142 <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#ff8c2bab7ede63d3529f62b4fa3aca8c">initSensor</a>(<span class="keywordtype">void</span>);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   164
<a name="l00143"></a>00143 <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#c17a18fa3b7965bf6e850effaba7179a">initPortB</a>(<span class="keywordtype">void</span>);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   165
<a name="l00144"></a>00144 <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#b7c33a91e5101b8d7371482fcfd6111d">initPortH</a>(<span class="keywordtype">void</span>);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   166
<a name="l00145"></a>00145 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   167
<a name="l00146"></a>00146 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   168
<a name="l00147"></a>00147 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   169
<a name="l00148"></a>00148 <span class="comment">//Initialisation of the port B for the leds.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   170
<a name="l00149"></a><a class="code" href="appli_8c.html#c17a18fa3b7965bf6e850effaba7179a">00149</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#c17a18fa3b7965bf6e850effaba7179a">initPortB</a>(<span class="keywordtype">void</span>)
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   171
<a name="l00150"></a>00150 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   172
<a name="l00151"></a>00151   <span class="comment">// Port B is output</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   173
<a name="l00152"></a>00152   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#924a54df722121bc98383bdec5ae1898">DDRB</a>)= 0XFF;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   174
<a name="l00153"></a>00153   <span class="comment">// RAZ</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   175
<a name="l00154"></a>00154   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) = 0xFF;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   176
<a name="l00155"></a>00155 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   177
<a name="l00156"></a>00156 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   178
<a name="l00157"></a>00157 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   179
<a name="l00158"></a>00158 <span class="comment">// Init of port H to choose the CAN rate by switch, and the nodeId</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   180
<a name="l00159"></a><a class="code" href="appli_8c.html#b7c33a91e5101b8d7371482fcfd6111d">00159</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#b7c33a91e5101b8d7371482fcfd6111d">initPortH</a>(<span class="keywordtype">void</span>)
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   181
<a name="l00160"></a>00160 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   182
<a name="l00161"></a>00161   <span class="comment">// Port H is input</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   183
<a name="l00162"></a>00162   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#1522fe4fdbaf2658e713ab782de9c3aa">DDRH</a>)= 0X00;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   184
<a name="l00163"></a>00163   <span class="comment">// Enable pull device</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   185
<a name="l00164"></a>00164   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#580827b8a3a5753e681acc0a31dd24d1">PERH</a>) = 0XFF;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   186
<a name="l00165"></a>00165   <span class="comment">// Choose the pull-up device</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   187
<a name="l00166"></a>00166   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#dee7f267a39162b3b98ad8c89fd3c9ab">PPSH</a>) = 0X00;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   188
<a name="l00167"></a>00167 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   189
<a name="l00168"></a>00168 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   190
<a name="l00169"></a>00169 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   191
<a name="l00170"></a><a class="code" href="appli_8c.html#ff8c2bab7ede63d3529f62b4fa3aca8c">00170</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#ff8c2bab7ede63d3529f62b4fa3aca8c">initSensor</a>(<span class="keywordtype">void</span>)
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   192
<a name="l00171"></a>00171 { 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   193
<a name="l00172"></a>00172   <a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a> baudrate = 0; 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   194
<a name="l00173"></a>00173   <a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a> nodeId = 0; 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   195
<a name="l00174"></a>00174   <span class="comment">// Init led control</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   196
<a name="l00175"></a>00175   <a class="code" href="appli_8c.html#c17a18fa3b7965bf6e850effaba7179a">initPortB</a>(); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   197
<a name="l00176"></a>00176   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) &amp;= ~ 0x01; <span class="comment">//One led ON</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   198
<a name="l00177"></a>00177   <a class="code" href="appli_8c.html#b7c33a91e5101b8d7371482fcfd6111d">initPortH</a>();
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   199
<a name="l00178"></a>00178   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   200
<a name="l00179"></a>00179     <span class="comment">/* Defining the node Id */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   201
<a name="l00180"></a>00180   <span class="comment">// Uncomment to have a fixed nodeId</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   202
<a name="l00181"></a>00181   <span class="comment">//setNodeId(&amp;gene_SYNC_Data, 0x03);</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   203
<a name="l00182"></a>00182   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   204
<a name="l00183"></a>00183   <span class="comment">// Comment below to have a fixed nodeId</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   205
<a name="l00184"></a>00184   nodeId = ~(<a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#e195e4b974f64e9b64a49fdab0d4aa72">PTH</a>)) &amp; 0x3F;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   206
<a name="l00185"></a>00185   <span class="keywordflow">if</span> (nodeId == 0) {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   207
<a name="l00186"></a>00186         <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F33, <span class="stringliteral">"Using default nodeId :  "</span>, <a class="code" href="states_8c.html#3020f2e5762f6e389a21382ec827b6a6">getNodeId</a>(&amp;<a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>));
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   208
<a name="l00187"></a>00187   }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   209
<a name="l00188"></a>00188   <span class="keywordflow">else</span>  
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   210
<a name="l00189"></a>00189     <a class="code" href="states_8c.html#d47a53979b9311a374d029f7923abbe1">setNodeId</a>(&amp;<a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>, nodeId);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   211
<a name="l00190"></a>00190   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   212
<a name="l00191"></a>00191   <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F33, <span class="stringliteral">"My nodeId is :  "</span>, <a class="code" href="states_8c.html#3020f2e5762f6e389a21382ec827b6a6">getNodeId</a>(&amp;<a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>));
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   213
<a name="l00192"></a>00192   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   214
<a name="l00193"></a>00193   <a class="code" href="structcanBusInit.html">canBusInit</a> bi0 = {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   215
<a name="l00194"></a>00194     0,    <span class="comment">/* no low power                 */</span> 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   216
<a name="l00195"></a>00195     0,    <span class="comment">/* no time stamp                */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   217
<a name="l00196"></a>00196     1,    <span class="comment">/* enable MSCAN                 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   218
<a name="l00197"></a>00197     0,    <span class="comment">/* clock source : oscillator (In fact, it is not used)   */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   219
<a name="l00198"></a>00198     0,    <span class="comment">/* no loop back                 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   220
<a name="l00199"></a>00199     0,    <span class="comment">/* no listen only               */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   221
<a name="l00200"></a>00200     0,    <span class="comment">/* no low pass filter for wk up */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   222
<a name="l00201"></a>00201         <a class="code" href="appli_8c.html#43fd1d8fc333eddd19554acb6cc2baf8">CAN_Baudrates</a>[<a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f8d90575842d76640697deb1398f7023c">CAN_BAUDRATE_250K</a>],
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   223
<a name="l00202"></a>00202     {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   224
<a name="l00203"></a>00203       0x00,    <span class="comment">/* Filter on 16 bits. See Motorola Block Guide V02.14 fig 4-3 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   225
<a name="l00204"></a>00204       0x00, 0xFF, <span class="comment">/* filter 0 hight accept all msg      */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   226
<a name="l00205"></a>00205       0x00, 0xFF, <span class="comment">/* filter 0 low accept all msg        */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   227
<a name="l00206"></a>00206       0x00, 0xFF, <span class="comment">/* filter 1 hight filter all of  msg  */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   228
<a name="l00207"></a>00207       0x00, 0xFF, <span class="comment">/* filter 1 low filter all of  msg    */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   229
<a name="l00208"></a>00208       0x00, 0xFF, <span class="comment">/* filter 2 hight filter most of  msg */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   230
<a name="l00209"></a>00209       0x00, 0xFF, <span class="comment">/* filter 2 low filter most of  msg   */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   231
<a name="l00210"></a>00210       0x00, 0xFF, <span class="comment">/* filter 3 hight filter most of  msg */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   232
<a name="l00211"></a>00211       0x00, 0xFF, <span class="comment">/* filter 3 low filter most of  msg   */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   233
<a name="l00212"></a>00212     }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   234
<a name="l00213"></a>00213   };
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   235
<a name="l00214"></a>00214   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   236
<a name="l00215"></a>00215   <span class="comment">//Init the HCS12 microcontroler for CanOpen </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   237
<a name="l00216"></a>00216   <a class="code" href="canOpenDriver_8c.html#c71399958d35a7f703416f025603ee26">initHCS12</a>();
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   238
<a name="l00217"></a>00217    
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   239
<a name="l00218"></a>00218   <span class="comment">// Chose the CAN rate (On our board, whe have switch for all purpose)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   240
<a name="l00219"></a>00219   <span class="comment">//  7    8</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   241
<a name="l00220"></a>00220   <span class="comment">//  ON   ON   =&gt; 1000 kpbs</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   242
<a name="l00221"></a>00221   <span class="comment">//  OFF  ON   =&gt;  500 kpbs</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   243
<a name="l00222"></a>00222   <span class="comment">//  ON   OFF  =&gt;  250 kpbs</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   244
<a name="l00223"></a>00223   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   245
<a name="l00224"></a>00224   baudrate = ~(<a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#e195e4b974f64e9b64a49fdab0d4aa72">PTH</a>)) &amp; 0xC0;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   246
<a name="l00225"></a>00225   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   247
<a name="l00226"></a>00226   <span class="comment">// Uncomment to have a fixed baudrate of 250 kbps</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   248
<a name="l00227"></a>00227   <span class="comment">//baudrate = 1;</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   249
<a name="l00228"></a>00228   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   250
<a name="l00229"></a>00229   <span class="keywordflow">switch</span> (baudrate) {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   251
<a name="l00230"></a>00230   <span class="keywordflow">case</span> 0x40:
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   252
<a name="l00231"></a>00231     bi0.<a class="code" href="structcanBusInit.html#fc9eb7ca2f89001dca552e3f956beb73">clk</a> = <a class="code" href="appli_8c.html#43fd1d8fc333eddd19554acb6cc2baf8">CAN_Baudrates</a>[<a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f8d90575842d76640697deb1398f7023c">CAN_BAUDRATE_250K</a>];
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   253
<a name="l00232"></a>00232     <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F30, <span class="stringliteral">"CAN 250 kbps "</span>, 0);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   254
<a name="l00233"></a>00233     <span class="keywordflow">break</span>;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   255
<a name="l00234"></a>00234   <span class="keywordflow">case</span> 0x80:
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   256
<a name="l00235"></a>00235     bi0.<a class="code" href="structcanBusInit.html#fc9eb7ca2f89001dca552e3f956beb73">clk</a> = <a class="code" href="appli_8c.html#43fd1d8fc333eddd19554acb6cc2baf8">CAN_Baudrates</a>[<a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f07239165beed5e840aed12e7f46af89b">CAN_BAUDRATE_500K</a>];
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   257
<a name="l00236"></a>00236     <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F31, <span class="stringliteral">"CAN 500 kbps "</span>, 0);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   258
<a name="l00237"></a>00237     <span class="keywordflow">break</span>;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   259
<a name="l00238"></a>00238   <span class="keywordflow">case</span> 0xC0:
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   260
<a name="l00239"></a>00239     bi0.<a class="code" href="structcanBusInit.html#fc9eb7ca2f89001dca552e3f956beb73">clk</a> = <a class="code" href="appli_8c.html#43fd1d8fc333eddd19554acb6cc2baf8">CAN_Baudrates</a>[<a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430ff84d248d0fb707925b35c9ec18624809">CAN_BAUDRATE_1M</a>];
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   261
<a name="l00240"></a>00240     <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F31, <span class="stringliteral">"CAN 1000 kbps "</span>, 0);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   262
<a name="l00241"></a>00241     <span class="keywordflow">break</span>;   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   263
<a name="l00242"></a>00242   <span class="keywordflow">default</span>:
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   264
<a name="l00243"></a>00243     bi0.<a class="code" href="structcanBusInit.html#fc9eb7ca2f89001dca552e3f956beb73">clk</a> = <a class="code" href="appli_8c.html#43fd1d8fc333eddd19554acb6cc2baf8">CAN_Baudrates</a>[<a class="code" href="appli_8c.html#a5385c49943465978358d459b4fc430f8d90575842d76640697deb1398f7023c">CAN_BAUDRATE_250K</a>];
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   265
<a name="l00244"></a>00244     <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x2F32, <span class="stringliteral">"CAN BAUD RATE NOT DEFINED =&gt; 250 kbps "</span>, 0);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   266
<a name="l00245"></a>00245   }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   267
<a name="l00246"></a>00246 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   268
<a name="l00247"></a>00247    
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   269
<a name="l00248"></a>00248 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   270
<a name="l00249"></a>00249   <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F33, <span class="stringliteral">"SYNC signal generator "</span>, 0);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   271
<a name="l00250"></a>00250 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   272
<a name="l00251"></a>00251   <a class="code" href="can__peak__win32_8c.html#9f623ce2d3a68e90dfdb1ff0d54a9b57">canInit</a>(<a class="code" href="candriver_8h.html#aec12501ba547723b21fd74636ea045a">CANOPEN_LINE_NUMBER_USED</a>, bi0);  <span class="comment">//initialize filters...</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   273
<a name="l00252"></a>00252   <a class="code" href="canOpenDriver_8c.html#02922529b60419a94afe8f369dda070b">initTimer</a>(); <span class="comment">// Init hcs12 timer used by CanFestival. (see timerhw.c)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   274
<a name="l00253"></a>00253   <a class="code" href="interrupt_8c.html#987ce601d6d4c8eedd68b58db3b7811a">unlock</a>(); <span class="comment">// Allow interruptions  </span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   275
<a name="l00254"></a>00254 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   276
<a name="l00255"></a>00255 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   277
<a name="l00256"></a>00256 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   278
<a name="l00257"></a>00257 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   279
<a name="l00258"></a>00258 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   280
<a name="l00259"></a>00259 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   281
<a name="l00260"></a>00260 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   282
<a name="l00261"></a>00261 <span class="comment">//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   283
<a name="l00262"></a>00262 <span class="comment">// FUNCTIONS WHICH ARE PART OF CANFESTIVAL and *must* be implemented here.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   284
<a name="l00263"></a>00263 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   285
<a name="l00264"></a>00264 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   286
<a name="l00265"></a><a class="code" href="objdict_8h.html#ec227d00c96cd255df85389fdae21f8f">00265</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#07f58b5c2d6a07142f3e6e695798646b">gene_SYNC_heartbeatError</a>( <a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a> heartbeatID )
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   287
<a name="l00266"></a>00266 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   288
<a name="l00267"></a>00267   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   289
<a name="l00268"></a>00268   <a class="code" href="hcs12_2applicfg_8h.html#99178e2619db849578b20df5aa241844">MSG_ERR</a>(0x1F00, <span class="stringliteral">"HeartBeat not received from node : "</span>, heartbeatID);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   290
<a name="l00269"></a>00269 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   291
<a name="l00270"></a>00270 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   292
<a name="l00271"></a>00271 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   293
<a name="l00272"></a><a class="code" href="objdict_8h.html#7b7bf51feb35fc1d708cf5cde9f1f5a7">00272</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#5249682c125c7e4ad9583bf63c20b5fa">gene_SYNC_initialisation</a>()
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   294
<a name="l00273"></a>00273 {  
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   295
<a name="l00274"></a>00274   <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a> (0x3F00, <span class="stringliteral">"Entering in INIT "</span>, 0); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   296
<a name="l00275"></a>00275   <a class="code" href="appli_8c.html#ff8c2bab7ede63d3529f62b4fa3aca8c">initSensor</a>();  
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   297
<a name="l00276"></a>00276 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   298
<a name="l00277"></a>00277   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) &amp;= ~ 0x01; <span class="comment">// led  0         : ON</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   299
<a name="l00278"></a>00278   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) |=   0x0E; <span class="comment">// leds 1, 2, 3   : OFF</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   300
<a name="l00279"></a>00279   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   301
<a name="l00280"></a>00280 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   302
<a name="l00281"></a>00281 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   303
<a name="l00282"></a>00282 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   304
<a name="l00283"></a>00283 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   305
<a name="l00284"></a><a class="code" href="objdict_8h.html#398570bf126805099a8b551500c34f40">00284</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#ccd49c1b2614c38aeac93733ede6cd91">gene_SYNC_preOperational</a>()
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   306
<a name="l00285"></a>00285 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   307
<a name="l00286"></a>00286   <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a> (0x3F01, <span class="stringliteral">"Entering in PRE-OPERATIONAL "</span>, 0); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   308
<a name="l00287"></a>00287   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) &amp;= ~ 0x03; <span class="comment">// leds 0, 1      : ON</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   309
<a name="l00288"></a>00288   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) |=   0x0C; <span class="comment">// leds 2, 3      : OFF</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   310
<a name="l00289"></a>00289     <span class="comment">/* default values for the msg CAN filters */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   311
<a name="l00290"></a>00290   <span class="comment">/* Accept all */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   312
<a name="l00291"></a>00291     {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   313
<a name="l00292"></a>00292           <a class="code" href="structcanBusFilterInit.html">canBusFilterInit</a> filterConfiguration = 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   314
<a name="l00293"></a>00293           {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   315
<a name="l00294"></a>00294           0x01,  <span class="comment">/* Filter on 16 bits. See Motorola Block Guide V02.14 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   316
<a name="l00295"></a>00295       <span class="comment">/*canidarx, canidmrx */</span>                        
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   317
<a name="l00296"></a>00296       0x00, 0xFF,          <span class="comment">/* filter 0 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   318
<a name="l00297"></a>00297       0x00, 0xFF,                  <span class="comment">/* filter 0 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   319
<a name="l00298"></a>00298       0x00, 0xFF,          <span class="comment">/* filter 1 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   320
<a name="l00299"></a>00299       0x00, 0xFF,                  <span class="comment">/* filter 1 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   321
<a name="l00300"></a>00300       0x00, 0xFF,          <span class="comment">/* filter 2 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   322
<a name="l00301"></a>00301       0x00, 0xFF,                  <span class="comment">/* filter 2 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   323
<a name="l00302"></a>00302       0x00, 0xFF,          <span class="comment">/* filter 3 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   324
<a name="l00303"></a>00303       0x00, 0xFF,              <span class="comment">/* filter 3 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   325
<a name="l00304"></a>00304          };
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   326
<a name="l00305"></a>00305          <a class="code" href="canOpenDriver_8c.html#751a41c9747b96ab400b5599370cea83">canChangeFilter</a>(<a class="code" href="candriver_8h.html#aec12501ba547723b21fd74636ea045a">CANOPEN_LINE_NUMBER_USED</a>, filterConfiguration);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   327
<a name="l00306"></a>00306    } 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   328
<a name="l00307"></a>00307    <span class="comment">// Reset the automatic change by SDO</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   329
<a name="l00308"></a>00308    <a class="code" href="objdict_8c.html#c6a202de14ed5a1ba3f7bef3c1408ee0">applyDownloadedFilters</a> = 0;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   330
<a name="l00309"></a>00309    
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   331
<a name="l00310"></a>00310 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   332
<a name="l00311"></a>00311 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   333
<a name="l00312"></a>00312 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   334
<a name="l00313"></a>00313 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   335
<a name="l00314"></a><a class="code" href="objdict_8h.html#0c4a1f975f361d0a6f744c3254743594">00314</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#688e52d5ec8da35ad5c61b4337df495d">gene_SYNC_operational</a>()
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   336
<a name="l00315"></a>00315 { 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   337
<a name="l00316"></a>00316    <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a> (0x3F02, <span class="stringliteral">"Entering in OPERATIONAL "</span>, 0); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   338
<a name="l00317"></a>00317    <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) &amp;= ~ 0x07; <span class="comment">// leds 0, 1, 2   : ON</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   339
<a name="l00318"></a>00318    <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) |=   0x08; <span class="comment">// leds 3         : OFF</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   340
<a name="l00319"></a>00319    
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   341
<a name="l00320"></a>00320    <span class="comment">// Filtering the CAN received msgs.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   342
<a name="l00321"></a>00321    <span class="comment">// 2 ways</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   343
<a name="l00322"></a>00322    <span class="comment">// First :applying an automatic filter</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   344
<a name="l00323"></a>00323    <span class="comment">// Second : The values of the filtering registers are mapped in the object dictionary,</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   345
<a name="l00324"></a>00324    <span class="comment">// So that a filtering configuration can be downloaded by SDO in pre-operational mode</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   346
<a name="l00325"></a>00325         
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   347
<a name="l00326"></a>00326         <span class="keywordflow">if</span> (<a class="code" href="objdict_8c.html#c6a202de14ed5a1ba3f7bef3c1408ee0">applyDownloadedFilters</a> == 0) {<span class="comment">// No downloaded configuration to apply</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   348
<a name="l00327"></a>00327                 <a class="code" href="hcs12_2applicfg_8h.html#5528eeccf214bfe021532622d78c6a96">UNS16</a> accept1 = 0x0000; <span class="comment">// Accept NMT</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   349
<a name="l00328"></a>00328                 <a class="code" href="hcs12_2applicfg_8h.html#5528eeccf214bfe021532622d78c6a96">UNS16</a> <a class="code" href="objdict_8c.html#c917a1516c699e38ca1335671fed3ccb">mask1</a> = 0x0FFF;   <span class="comment">// Mask NMT</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   350
<a name="l00329"></a>00329                 <a class="code" href="hcs12_2applicfg_8h.html#5528eeccf214bfe021532622d78c6a96">UNS16</a> accept2 = 0xE000; <span class="comment">// Accept NMT error control (heartbeat, nodeguard)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   351
<a name="l00330"></a>00330                 <a class="code" href="hcs12_2applicfg_8h.html#5528eeccf214bfe021532622d78c6a96">UNS16</a> <a class="code" href="objdict_8c.html#7dc98c2ef9a08148e275949b376282cb">mask2</a> = 0x0FFF;   <span class="comment">// Mask NMT error control (heartbeat, nodeguard)</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   352
<a name="l00331"></a>00331                 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   353
<a name="l00332"></a>00332                 <a class="code" href="structcanBusFilterInit.html">canBusFilterInit</a> filterConfiguration = 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   354
<a name="l00333"></a>00333                                 {<span class="comment">// filters 3 and 4 not used, so configured like filter 1.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   355
<a name="l00334"></a>00334                         0x01,  <span class="comment">/* Filter on 16 bits. See Motorola Block Guide V02.14 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   356
<a name="l00335"></a>00335             <span class="comment">/*canidarx, canidmrx */</span>                        
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   357
<a name="l00336"></a>00336                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(accept1 &gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(mask1 &gt;&gt; 8),    <span class="comment">/* filter 1 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   358
<a name="l00337"></a>00337                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)accept1       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)mask1,                     <span class="comment">/* filter 1 id2 ... */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   359
<a name="l00338"></a>00338                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(accept2 &gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(mask2 &gt;&gt; 8),    <span class="comment">/* filter 2 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   360
<a name="l00339"></a>00339                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)accept2       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)mask2,                     <span class="comment">/* filter 2 id2 ... */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   361
<a name="l00340"></a>00340                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(accept1 &gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(mask1 &gt;&gt; 8),    <span class="comment">/* filter 3 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   362
<a name="l00341"></a>00341                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)accept1       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)mask1,                     <span class="comment">/* filter 3 id2 ... */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   363
<a name="l00342"></a>00342                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(accept1 &gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(mask1 &gt;&gt; 8),    <span class="comment">/* filter 4 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   364
<a name="l00343"></a>00343                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)accept1       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)mask1                      <span class="comment">/* filter 4 id2 ... */</span>           
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   365
<a name="l00344"></a>00344                         };
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   366
<a name="l00345"></a>00345                         <a class="code" href="canOpenDriver_8c.html#751a41c9747b96ab400b5599370cea83">canChangeFilter</a>(<a class="code" href="candriver_8h.html#aec12501ba547723b21fd74636ea045a">CANOPEN_LINE_NUMBER_USED</a>, filterConfiguration);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   367
<a name="l00346"></a>00346                         <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a> (0x3F03, <span class="stringliteral">"Internal CAN Rcv filter applied "</span>, 0); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   368
<a name="l00347"></a>00347         } 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   369
<a name="l00348"></a>00348           <span class="keywordflow">else</span> { <span class="comment">// Apply filters downnloaded</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   370
<a name="l00349"></a>00349                         <a class="code" href="structcanBusFilterInit.html">canBusFilterInit</a> filterConfiguration = 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   371
<a name="l00350"></a>00350                                 {<span class="comment">// filters 3 and 4 not used, so configured like filter 1.</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   372
<a name="l00351"></a>00351                         0x01,  <span class="comment">/* Filter on 16 bits. See Motorola Block Guide V02.14 */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   373
<a name="l00352"></a>00352             <span class="comment">/*canidarx, canidmrx */</span>                        
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   374
<a name="l00353"></a>00353                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)( <a class="code" href="objdict_8c.html#254f99d099ca6f0a734e77c0226eb46c">acceptanceFilter1</a>&gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(<a class="code" href="objdict_8c.html#c917a1516c699e38ca1335671fed3ccb">mask1</a> &gt;&gt; 8),    <span class="comment">/* filter 1 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   375
<a name="l00354"></a>00354                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#254f99d099ca6f0a734e77c0226eb46c">acceptanceFilter1</a>       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#c917a1516c699e38ca1335671fed3ccb">mask1</a>,                   <span class="comment">/* filter 1 id2 ... */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   376
<a name="l00355"></a>00355                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(<a class="code" href="objdict_8c.html#f6ce36bd51988682a6c1c6b6bb48d358">acceptanceFilter2</a> &gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(<a class="code" href="objdict_8c.html#7dc98c2ef9a08148e275949b376282cb">mask2</a> &gt;&gt; 8),     <span class="comment">/* filter 2 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   377
<a name="l00356"></a>00356                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#f6ce36bd51988682a6c1c6b6bb48d358">acceptanceFilter2</a>       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#7dc98c2ef9a08148e275949b376282cb">mask2</a>,                   <span class="comment">/* filter 2 id2 ... */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   378
<a name="l00357"></a>00357                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(<a class="code" href="objdict_8c.html#f6b4d7c56fb80e2b64b649b89b2ed9ca">acceptanceFilter3</a> &gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(<a class="code" href="objdict_8c.html#017e60df8f7a5ae5e2dddaf458045e8d">mask3</a> &gt;&gt; 8),    <span class="comment">/* filter 3 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   379
<a name="l00358"></a>00358                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#f6b4d7c56fb80e2b64b649b89b2ed9ca">acceptanceFilter3</a>       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#017e60df8f7a5ae5e2dddaf458045e8d">mask3</a>,                   <span class="comment">/* filter 3 id2 ... */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   380
<a name="l00359"></a>00359                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(<a class="code" href="objdict_8c.html#58c4e3e229107296a48ea47a91afea95">acceptanceFilter4</a> &gt;&gt; 8), (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)(<a class="code" href="objdict_8c.html#e0007c46695fc121ef6c2a6e6a511d17">mask4</a> &gt;&gt; 8),    <span class="comment">/* filter 4 id10...3*/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   381
<a name="l00360"></a>00360                 (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#58c4e3e229107296a48ea47a91afea95">acceptanceFilter4</a>       , (<a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a>)<a class="code" href="objdict_8c.html#e0007c46695fc121ef6c2a6e6a511d17">mask4</a>                    <span class="comment">/* filter 4 id2 ... */</span>           
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   382
<a name="l00361"></a>00361                         };
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   383
<a name="l00362"></a>00362                         <a class="code" href="canOpenDriver_8c.html#751a41c9747b96ab400b5599370cea83">canChangeFilter</a>(<a class="code" href="candriver_8h.html#aec12501ba547723b21fd74636ea045a">CANOPEN_LINE_NUMBER_USED</a>, filterConfiguration);                 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   384
<a name="l00363"></a>00363                         <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a> (0x3F04, <span class="stringliteral">"Downloaded CAN Rcv filter applied "</span>, 0); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   385
<a name="l00364"></a>00364         }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   386
<a name="l00365"></a>00365 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   387
<a name="l00366"></a>00366 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   388
<a name="l00367"></a>00367 <span class="comment">//------------------------------------------------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   389
<a name="l00368"></a><a class="code" href="objdict_8h.html#22a7ae3e04ad4cccdbee597ce4a31843">00368</a> <span class="keywordtype">void</span> <a class="code" href="appli_8c.html#00e6a6d0f2186f329263023a7f1de155">gene_SYNC_stopped</a>()
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   390
<a name="l00369"></a>00369 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   391
<a name="l00370"></a>00370   <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a> (0x3F02, <span class="stringliteral">"Entering in STOPPED "</span>, 0); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   392
<a name="l00371"></a>00371   <a class="code" href="portsaccess_8h.html#cdf97ea78c88c125dbbe6f2409de6ec1">IO_PORTS_8</a>(<a class="code" href="ports__def_8h.html#09a0c85cd3da09d9cdf63a5ac4c39f77">PORTB</a>) |=   0x0E; <span class="comment">// leds 1, 2, 3, 4   : OFF</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   393
<a name="l00372"></a>00372 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   394
<a name="l00373"></a>00373 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   395
<a name="l00374"></a>00374 <span class="comment">// End functions which are part of Canfestival</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   396
<a name="l00375"></a>00375 <span class="comment">//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   397
<a name="l00376"></a>00376 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   398
<a name="l00377"></a>00377 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   399
<a name="l00378"></a>00378 <span class="comment">/******************************************************************************/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   400
<a name="l00379"></a>00379 <span class="comment">/********************************* MAIN ***************************************/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   401
<a name="l00380"></a>00380 <span class="comment">/******************************************************************************/</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   402
<a name="l00381"></a>00381 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   403
<a name="l00382"></a>00382  
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   404
<a name="l00383"></a><a class="code" href="appli_8c.html#ef83014be811ae964a5ef7f0af7b46a2">00383</a> <a class="code" href="hcs12_2applicfg_8h.html#539234687760592d01a8b0d3357bc00e">UNS8</a> <a class="code" href="appli_8c.html#ef83014be811ae964a5ef7f0af7b46a2">main</a> (<span class="keywordtype">void</span>)
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   405
<a name="l00384"></a>00384 {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   406
<a name="l00385"></a>00385 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   407
<a name="l00386"></a>00386   <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F34, <span class="stringliteral">"Entering in the main "</span>, 0);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   408
<a name="l00387"></a>00387   <span class="comment">//----------------------------- INITIALISATION --------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   409
<a name="l00388"></a>00388   <a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>.<a class="code" href="structstruct__CO__Data.html#2ec2bc87656945d2c7dda7ebe662b245">heartbeatError</a> = <a class="code" href="appli_8c.html#07f58b5c2d6a07142f3e6e695798646b">gene_SYNC_heartbeatError</a>;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   410
<a name="l00389"></a>00389   <a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>.<a class="code" href="structstruct__CO__Data.html#b45e9ca46cffe7924c35ae136db6a2b6">initialisation</a> = <a class="code" href="appli_8c.html#5249682c125c7e4ad9583bf63c20b5fa">gene_SYNC_initialisation</a>;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   411
<a name="l00390"></a>00390   <a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>.<a class="code" href="structstruct__CO__Data.html#d7c66fb721e3f6279a6ff03bf91d82e2">preOperational</a> = <a class="code" href="appli_8c.html#ccd49c1b2614c38aeac93733ede6cd91">gene_SYNC_preOperational</a>;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   412
<a name="l00391"></a>00391   <a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>.<a class="code" href="structstruct__CO__Data.html#d7c66fb721e3f6279a6ff03bf91d82e2">preOperational</a> = <a class="code" href="appli_8c.html#688e52d5ec8da35ad5c61b4337df495d">gene_SYNC_operational</a>;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   413
<a name="l00392"></a>00392   <a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>.<a class="code" href="structstruct__CO__Data.html#89dd7dd17f9dd16b7a06c3cf30c2ca02">stopped</a> = <a class="code" href="appli_8c.html#00e6a6d0f2186f329263023a7f1de155">gene_SYNC_stopped</a>;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   414
<a name="l00393"></a>00393 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   415
<a name="l00394"></a>00394   
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   416
<a name="l00395"></a>00395   <span class="comment">/* Put the node in Initialisation mode */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   417
<a name="l00396"></a>00396   <a class="code" href="hcs12_2applicfg_8h.html#5f4e5133c4c3113931684d3aba518bba">MSG_WAR</a>(0x3F35, <span class="stringliteral">"Will entering in INIT "</span>, 0);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   418
<a name="l00397"></a>00397   <a class="code" href="states_8c.html#0a5004efd1dedbee82a4f21ec5c44fb5">setState</a>(&amp;<a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>, <a class="code" href="states_8h.html#3136d2815abe9d284f985e0a7ec68646eb3ae26d7a1629aa0fc6c83f46306cf5">Initialisation</a>);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   419
<a name="l00398"></a>00398 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   420
<a name="l00399"></a>00399   <span class="comment">//----------------------------- START -----------------------------------------</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   421
<a name="l00400"></a>00400   <span class="comment">/* Put the node in pre-operational mode */</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   422
<a name="l00401"></a>00401   <span class="comment">//MSG_WAR(0x3F36, "va passer en pre-op", 0);</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   423
<a name="l00402"></a>00402   <span class="comment">//setState(&amp;gene_SYNC_Data, Pre_operational);</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   424
<a name="l00403"></a>00403 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   425
<a name="l00404"></a>00404         <span class="comment">// Loop of receiving messages</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   426
<a name="l00405"></a>00405   <span class="keywordflow">while</span> (1) {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   427
<a name="l00406"></a>00406         <a class="code" href="structMessage.html">Message</a> m;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   428
<a name="l00407"></a>00407         <span class="keywordflow">if</span> (<a class="code" href="canOpenDriver_8c.html#0bf58f014d47581c9ffd1b2db9a858d7">f_can_receive</a>(0, &amp;m)) {
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   429
<a name="l00408"></a>00408           <span class="comment">//MSG_WAR(0x3F36, "Msg received", m.cob_id.w);</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   430
<a name="l00409"></a>00409           <a class="code" href="interrupt_8c.html#eb99ff49b4a6d5157416f9b5bd0d9c2c">lock</a>(); <span class="comment">// Not to have interruptions by timer, which can corrupt the data</span>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   431
<a name="l00410"></a>00410           <a class="code" href="states_8c.html#3f8975650604cc23582f19a43fd4e518">canDispatch</a>(&amp;<a class="code" href="objdict_8c.html#f8bdf9fcfcd90a3000da3036277bcd39">gene_SYNC_Data</a>, &amp;m);
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   432
<a name="l00411"></a>00411           <a class="code" href="interrupt_8c.html#987ce601d6d4c8eedd68b58db3b7811a">unlock</a>();
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   433
<a name="l00412"></a>00412         }  
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   434
<a name="l00413"></a>00413         }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   435
<a name="l00414"></a>00414 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   436
<a name="l00415"></a>00415   <span class="keywordflow">return</span> (0); 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   437
<a name="l00416"></a>00416 }
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   438
<a name="l00417"></a>00417 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   439
<a name="l00418"></a>00418 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   440
<a name="l00419"></a>00419 
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   441
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Jun 8 08:51:39 2007 for CanFestival by&nbsp;
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   442
<a href="http://www.doxygen.org/index.html">
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   443
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   444
</body>
f49e5a6b7804 Manual and Documentation finish
nico
parents:
diff changeset
   445
</html>