doc/manual/en/html/node20.html
author etisserant
Tue, 17 Jul 2007 18:20:50 +0200
changeset 241 4ecc2f3690f4
parent 215 f49e5a6b7804
permissions -rw-r--r--
Fixed mutex typo in win32
210
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     2
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     3
<!--Converted with LaTeX2HTML 2002-2-1 (1.71)
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     4
original version by:  Nikos Drakos, CBLU, University of Leeds
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     5
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     6
* with significant contributions from:
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     7
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     8
<HTML>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
     9
<HEAD>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    10
<TITLE>CanFestival events scheduling</TITLE>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    11
<META NAME="description" CONTENT="CanFestival events scheduling">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    12
<META NAME="keywords" CONTENT="manual">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    13
<META NAME="resource-type" CONTENT="document">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    14
<META NAME="distribution" CONTENT="global">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    15
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    16
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    17
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    18
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    19
<LINK REL="STYLESHEET" HREF="manual.css">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    20
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    21
<LINK REL="previous" HREF="node19.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    22
<LINK REL="up" HREF="node16.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    23
<LINK REL="next" HREF="node21.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    24
</HEAD>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    25
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    26
<BODY >
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    27
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    28
<DIV CLASS="navigation"><!--Navigation Panel-->
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    29
<A NAME="tex2html394"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    30
  HREF="node21.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    31
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    32
 SRC="/usr/share/latex2html/icons/next.png"></A> 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    33
<A NAME="tex2html390"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    34
  HREF="node16.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    35
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    36
 SRC="/usr/share/latex2html/icons/up.png"></A> 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    37
<A NAME="tex2html386"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    38
  HREF="node19.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    39
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    40
 SRC="/usr/share/latex2html/icons/prev.png"></A> 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    41
<A NAME="tex2html392"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    42
  HREF="node1.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    43
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    44
 SRC="/usr/share/latex2html/icons/contents.png"></A>  
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    45
<BR>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    46
<B> Next:</B> <A NAME="tex2html395"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    47
  HREF="node21.html">Linux Target</A>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    48
<B> Up:</B> <A NAME="tex2html391"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    49
  HREF="node16.html">Understanding Canfestival</A>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    50
<B> Previous:</B> <A NAME="tex2html387"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    51
  HREF="node19.html">CanFestival CAN interfaces</A>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    52
 &nbsp; <B>  <A NAME="tex2html393"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    53
  HREF="node1.html">Contents</A></B> 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    54
<BR>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    55
<BR></DIV>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    56
<!--End of Navigation Panel-->
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    57
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    58
<H2><A NAME="SECTION00054000000000000000">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    59
CanFestival events scheduling</A>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    60
</H2>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    61
A CanOpen node must be able to take delayed actions.
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    62
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    63
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    64
As exemples, periodic sync emission, heartbeat production or SDO timeout
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    65
need to set some alarms that will be called later and do the job.
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    66
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    67
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    68
&#181;C generaly do not have enough free timers to handle all the
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    69
CanOpen needs directly. Moreover, CanFestival internal data may be
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    70
corrupt by reentrant calls. 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    71
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    72
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    73
CanFestival implement a micro-scheduler (timer.c). It uses only one
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    74
timer to mimic many timers. It manage an alarm table, and call alarms
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    75
at desired time.
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    76
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    77
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    78
<DIV ALIGN="CENTER">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    79
<IMG
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 210
diff changeset
    80
  WIDTH="512" HEIGHT="205" ALIGN="BOTTOM" BORDER="0"
210
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    81
 SRC="./100000000000022C000000DEDAD2140C.png"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    82
 ALT="Image 100000000000022C000000DEDAD2140C">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    83
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    84
</DIV>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    85
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    86
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    87
Scheduler can handle short clock value ranges limitation found on some
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    88
&#181;C. As an example, value range for a 16bit clock counter with
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    89
4&#181;s tick is crossed within 0.26 seconds... Long alarms must be
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    90
segmented.
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    91
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    92
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    93
Chronogram illustrate a long alarm (A) and a short periodic alarm (B),
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    94
with a A value &gt; clock range &gt; B value.
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    95
Values t0...t8 are successive setTimer call parameter values. t1
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    96
illustrates an intermediate call to TimeDispatch, caused by a delay
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    97
longer than clock range. Because of long alarm segmentation, at the end
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    98
of t1, TimeDispatch call will not trig any alarm callback.
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
    99
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   100
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   101
<DIV ALIGN="CENTER">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   102
<IMG
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 210
diff changeset
   103
  WIDTH="709" HEIGHT="197" ALIGN="BOTTOM" BORDER="0"
210
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   104
 SRC="./1000000000000396000000FFC42573DA.png"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   105
 ALT="Image 1000000000000396000000FFC42573DA">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   106
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   107
</DIV>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   108
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   109
<P>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   110
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   111
<DIV CLASS="navigation"><HR>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   112
<!--Navigation Panel-->
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   113
<A NAME="tex2html394"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   114
  HREF="node21.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   115
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   116
 SRC="/usr/share/latex2html/icons/next.png"></A> 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   117
<A NAME="tex2html390"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   118
  HREF="node16.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   119
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   120
 SRC="/usr/share/latex2html/icons/up.png"></A> 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   121
<A NAME="tex2html386"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   122
  HREF="node19.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   123
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   124
 SRC="/usr/share/latex2html/icons/prev.png"></A> 
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   125
<A NAME="tex2html392"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   126
  HREF="node1.html">
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   127
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   128
 SRC="/usr/share/latex2html/icons/contents.png"></A>  
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   129
<BR>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   130
<B> Next:</B> <A NAME="tex2html395"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   131
  HREF="node21.html">Linux Target</A>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   132
<B> Up:</B> <A NAME="tex2html391"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   133
  HREF="node16.html">Understanding Canfestival</A>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   134
<B> Previous:</B> <A NAME="tex2html387"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   135
  HREF="node19.html">CanFestival CAN interfaces</A>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   136
 &nbsp; <B>  <A NAME="tex2html393"
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   137
  HREF="node1.html">Contents</A></B> </DIV>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   138
<!--End of Navigation Panel-->
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   139
<ADDRESS>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   140
epimerde
215
f49e5a6b7804 Manual and Documentation finish
nico
parents: 211
diff changeset
   141
2007-06-08
210
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   142
</ADDRESS>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   143
</BODY>
6b5a4c21e061 Manual and Documentation finish
nico
parents:
diff changeset
   144
</HTML>