doc/manual/en/html/node20.html
author etisserant
Mon, 02 Jul 2007 18:22:58 +0200
changeset 236 905677ed00f3
parent 215 f49e5a6b7804
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.
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>