doc/manual/en/manual.tex
author etisserant
Fri, 01 Feb 2008 18:01:36 +0100
changeset 377 bea5a1576cbd
parent 284 24bf3d692993
child 391 7802a7d5584f
permissions -rw-r--r--
Enhanced cleanup of TCP CAN client/server
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
     1
\documentclass[a4paper,12pt]{book}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     2
\usepackage[ascii]{inputenc}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     3
\usepackage[T1]{fontenc}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     4
\usepackage[french,english]{babel}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     5
\usepackage{amsmath,amssymb,amsfonts,textcomp}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     6
\usepackage{color}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     7
\usepackage{calc}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     8
\usepackage{longtable}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
     9
\usepackage{hyperref}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    10
\usepackage{graphics}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    11
\usepackage{graphicx}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    12
\DeclareGraphicsExtensions{.jpg}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    13
\DeclareGraphicsExtensions{.png}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    14
\hypersetup{colorlinks=true, linkcolor=blue, filecolor=blue, pagecolor=blue, urlcolor=blue}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    15
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    16
%%%%\%%%%%%%% titre, auteurs, date, etc...%%%%%%%%%%%%%%%%%%
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
    17
\title{\Huge The CanFestival CANOpen stack manual}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    18
\author{Edouard TISSERANT}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    19
\date{\today}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    20
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    21
% Text styles
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
    22
%\newcommand\textstyleTeletype[1]{\texttt{#1}}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    23
% Outline numbering
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    24
\setcounter{secnumdepth}{5}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    25
\renewcommand\thesection{\arabic{section} -}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    26
\renewcommand\thesubsection{\arabic{section}.\arabic{subsection})}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    27
\renewcommand\thesubsubsection{\arabic{section}.\arabic{subsection}.\arabic{subsubsection})}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    28
\renewcommand\theparagraph{\alph{paragraph})}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    29
\renewcommand\thesubparagraph{\roman{subparagraph})}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    30
% List styles
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    31
\newcommand\liststyleLi{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    32
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    33
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    34
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    35
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    36
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    37
\newcommand\liststyleLii{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    38
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    39
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    40
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    41
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    42
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    43
\newcommand\liststyleLiii{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    44
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    45
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    46
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    47
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    48
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    49
\newcommand\liststyleLiv{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    50
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    51
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    52
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    53
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    54
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    55
\newcommand\liststyleLv{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    56
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    57
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    58
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    59
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    60
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    61
\newcommand\liststyleLvi{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    62
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    63
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    64
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    65
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    66
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    67
\newcommand\liststyleLvii{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    68
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    69
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    70
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    71
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    72
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    73
\newcommand\liststyleLviii{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    74
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    75
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    76
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    77
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    78
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    79
\newcommand\liststyleLix{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    80
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    81
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    82
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    83
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    84
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    85
\newcommand\liststyleLx{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    86
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    87
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    88
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    89
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    90
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    91
\newcommand\liststyleLxi{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    92
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    93
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    94
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    95
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    96
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    97
\newcommand\liststyleLxii{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    98
\renewcommand\labelitemi{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
    99
\renewcommand\labelitemii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   100
\renewcommand\labelitemiii{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   101
\renewcommand\labelitemiv{{--}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   102
}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   103
\newcommand\liststyleLxiii{%
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   104
\renewcommand\labelitemi{{\textbullet}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   105
\renewcommand\labelitemii{{\textbullet}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   106
\renewcommand\labelitemiii{{\textbullet}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   107
\renewcommand\labelitemiv{{\textbullet}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   108
}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   109
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   110
\begin{document}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   111
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   112
{\centering\sffamily\Huge The CanFestival CANOpen stack manual.}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   113
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   114
\renewcommand\contentsname{CanFestival v3.0 Manual}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   115
\setcounter{tocdepth}{2}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   116
\tableofcontents
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   117
\section{Introduction}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   118
CanFestival is an OpenSource (LGPL and GPL) CANOpen framework.
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   119
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   120
\subsection{The CanFestival project}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   121
This project, initiated by Edouard TISSERANT in 2001, as grown thanks to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   122
Francis DUPIN and other contributors.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   123
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   124
Today, CanFestival focuses on providing an ANSI{}-C platform independent
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   125
CANOpen stack that can be implemented as master or slave nodes on PCs,
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   126
Real{}-time IPCs, and Microcontrollers.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   127
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   128
CanFestival is a project supported by Lolitech.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   129
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   130
\subsection{What is CANopen}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   131
CANopen is a CAN based high level protocol. It defines some protocols to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   132
:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   133
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   134
\liststyleLi
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   135
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   136
\item Configure a CAN network.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   137
\item Transmit data to a specific node or in broadcast.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   138
\item Administrate the network. For example detecting a not responding
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   139
node.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   140
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   141
The documentation can be found in the Can in automation website :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   142
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   143
\href{http://www.can-cia.de/canopen}{http://www.can{}-cia.de/canopen}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   144
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   145
The most important document about CANopen is the normative CiA Draft
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   146
Standard 301, version 4.02. You can now download with no cost the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   147
specification in Can in automation website.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   148
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   149
To continue reading this document, let us assume that you have read some
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   150
papers introducing CANopen.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   151
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   152
\section{CanFestival Features}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   153
\subsection{Tools }
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   154
The CANopen library is coming with some tools :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   155
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   156
\liststyleLii
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   157
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   158
\item Object Dictionary editor GUI. WxPython Model{}-View{}-Controler
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   159
based GUI, that help a lot in generating object dictionary source code
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   160
for each node.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   161
\item A configure script, that let you chose compile time options such
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   162
as target CPU/HOST, CAN and TIMER drivers.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   163
This script have not been generated with autoconf, it have been made
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   164
keeping micro{}-controller target in mind.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   165
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   166
\subsection{Standard conformance}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   167
\paragraph{Multi{}-Platform}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   168
\liststyleLiii
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   169
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   170
\item Library source code is C{}-ANSI.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   171
\item Driver and examples coding conventions merely depend on target
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   172
specific contributor/compiler.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   173
\item Unix compatible interfaces and examples should compile and run on
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   174
any Unix system (tested on GNU/Linux and GNU/FreeBSD).
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   175
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   176
\paragraph{CanOpen conformance}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   177
{\bfseries\upshape
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   178
DS{}-301}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   179
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   180
\liststyleLiv
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   181
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   182
\item Should conform to DS301. V.4.02 13 february 2002.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   183
\item Master and Slave functionality implemented.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   184
\item Sending SYNC implemented.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   185
\item 1 SDO server per node. (update: more than one possible. To be more
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   186
tested)
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   187
\item Unlimited SDO client.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   188
\item SDO transmission mode : normal, expedited download and upload.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   189
\item Unlimited PDO receive.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   190
\item Unlimited PDO transmit.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   191
\item Object Data type implemented : 8, 16, 32 bits values, and fixed
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   192
length strings.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   193
\item Slave state full implemented.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   194
\item NMT to change slave{\textquotesingle}s state implemented.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   195
\item PDO transmission mode : on request, every reception of 0 to n
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   196
SYNC, on event.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   197
\item NMT Heartbeat implemented : A node can be either heartbeat
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   198
producer or receiver.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   199
\item NMT NodeGuard implemented : Not fully implemented.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   200
\item TIME (time Stamp) : Not implemented.
284
24bf3d692993 Implemented EMCY objects.
luis
parents: 282
diff changeset
   201
\item EMCY (emergency objects) : Sending and reception of EMCY objectos (without manufacturer specific error field).
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   202
\item PDO Mapping bit per bit implemented.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   203
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   204
{\bfseries\upshape
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   205
DS{}-302}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   206
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   207
\liststyleLiv
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   208
\begin{enumerate}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   209
\item Concise \space DFC : implemented.
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   210
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   211
\section{How to start}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   212
\subsection{Host requirements}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   213
What you need on your development workstation.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   214
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   215
\subsubsection{Object Dictionary Editor GUI}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   216
\liststyleLv
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   217
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   218
\item Python, with 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   219
\item wxPyhon modules installed (at least version 2.6.3). 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   220
\item Gnosis xml tools. (Optional can also be installed locally to the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   221
project automatically will the help of a Makefile. Please see
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   222
\hyperlink{a91UsingDictionaryEditorGUIoutline}{9.1) Using Dictionary
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   223
Editor GUI} )
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   224
\end{enumerate}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   225
\subsubsection[\space Linux and Unix{}-likes]{\space Linux and Unix{}-likes}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   226
\liststyleLv
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   227
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   228
\item Linux, FreeBSD, Cygwin or any Unix environment with GNU toolchain.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   229
\item The GNU C compiler (gcc) or any other ANSI{}-C compiler for your
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   230
target platform.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   231
\item Xpdf, and the official 301\_v04000201.pdf file in order to get GUI
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   232
context sensitive help. Download the ds301 at\newline
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   233
\href{http://www.can-cia.org/downloads/ciaspecifications/?1390}{http://www.can{}-cia.org/downloads/ciaspecifications/?1390}.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   234
\item GNU Make
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   235
\item Bash and sed
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   236
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   237
\subsubsection{Windows (for native win32 target)}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   238
\liststyleLv
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   239
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   240
\item Visual Studio Express 2005 or worst.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   241
\item Microsoft platform SDK (requires Genuine Advantage)
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   242
\item Cygwin (for configuration only)
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   243
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   244
\subsection{How to get CanFestival}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   245
Please always use CVS, this is the best way to get the most reactive
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   246
support from the developer community :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   247
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   248
cvs {}-d:pserver:anonymous@lolitech.dyndns.org:/canfestival
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   249
login\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   250
(type return, without entering a password) 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   251
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   252
Then, enter : \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   253
cvs {}-z3 {}-d:pserver:anonymous@lolitech.dyndns.org:/canfestival co
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   254
{}-P CanFestival{}-3
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   255
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   256
\section{Understanding Canfestival}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   257
\subsection{CanFestival Project tree layout}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   258
Simplified directory structure.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   259
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   260
{\ttfamily\bfseries
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   261
./src ANSI{}-C source of CANOpen stack}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   262
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   263
{\ttfamily\bfseries
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   264
\space /include Exportables Header files}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   265
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   266
{\ttfamily\bfseries
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   267
./drivers Interfaces to specific platforms/HW}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   268
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   269
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   270
./drivers/unix Linux and Cygwin OS interface}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   271
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   272
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   273
./drivers/win32 Native Win32 OS interface}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   274
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   275
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   276
./drivers/timers\_xeno Xenomai timers/threads (Linux only)}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   277
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   278
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   279
./drivers/timers\_unix Posix timers/threads (Linux, Cygwin)}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   280
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   281
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   282
./drivers/can\_peak\_linux PeakSystem CAN library interface}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   283
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   284
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   285
./drivers/can\_peak\_win32 PeakSystem PCAN{}-Light interface}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   286
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   287
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   288
./drivers/can\_uvccm\_win32 Acacetus{\textquotesingle}s RS232
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   289
``CAN{}-uVCCM'' interface}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   290
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   291
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   292
./drivers/can\_virtual Fake CAN network (Linux, Cygwin)}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   293
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   294
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   295
./drivers/hcs12 HCS12 full target interface}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   296
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   297
{\ttfamily\bfseries
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   298
./examples Examples}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   299
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   300
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   301
./examples/TestMasterSlave 2 nodes, NMT SYNC SDO PDO, win32+unix}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   302
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   303
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   304
./examples/TestMasterMicroMod 1 node, control Peak I/O Module, unix}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   305
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   306
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   307
./examples/gene\_SYNC\_HCS12 Just send periodic SYNC on HCS12}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   308
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   309
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   310
./examples/win32test Ask some DS301 infos to a node (\textbf{win32)}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   311
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   312
{\ttfamily\bfseries
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   313
./objdictgen Object Dictionary editor GUI}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   314
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   315
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   316
./objdictgen/config Pre{}-defined OD profiles}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   317
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   318
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   319
./objdictgen/examples Some examples/test OD}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   320
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   321
{\ttfamily\bfseries
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   322
./doc Project and CanOpen doc}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   323
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   324
\subsection{Implement CanFestival in your application}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   325
 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   326
 \begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   327
   \includegraphics[width=12cm]{Pictures/10000201000003F9000002CF880931E7.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   328
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   329
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   330
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   331
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   332
\subsection{CanFestival CAN interfaces}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   333
Because most CAN controllers and drivers implement FIFOs, CanFestival
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   334
consider sending message as a non bloking operation.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   335
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   336
In order to prevent reentrent calls to the stack, messages reception is
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   337
implemented differently on {\textmu}C and OS.:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   338
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   339
\liststyleLvi
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   340
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   341
\item {\textmu}C must provide interuption masking for timer and can
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   342
receive IT\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   343
 \begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   344
   \includegraphics[width=12cm]{Pictures/10000201000003CA0000016604E6A5EF.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   345
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   346
\item OS must provide a receive thread, a timer thread and a mutex. CAN
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   347
reception is a bloking operation.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   348
\begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   349
   \includegraphics[width=12cm]{Pictures/10000201000003F9000002CF8B0CDAEA.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   350
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   351
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   352
\subsection{CanFestival events scheduling}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   353
A CanOpen node must be able to take delayed actions.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   354
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   355
As exemples, periodic sync emission, heartbeat production or SDO timeout
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   356
need to set some alarms that will be called later and do the job.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   357
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   358
{\textmu}C generaly do not have enough free timers to handle all the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   359
CanOpen needs directly. Moreover, CanFestival internal data may be
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   360
corrupt by reentrant calls. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   361
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   362
CanFestival implement a micro{}-scheduler (timer.c). It uses only one
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   363
timer to mimic many timers. It manage an alarm table, and call alarms
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   364
at desired time.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   365
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   366
\begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   367
   \includegraphics[width=12cm]{Pictures/100000000000022C000000DEDAD2140C.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   368
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   369
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   370
Scheduler can handle short clock value ranges limitation found on some
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   371
{\textmu}C. As an example, value range for a 16bit clock counter with
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   372
4{\textmu}s tick is crossed within 0.26 seconds... Long alarms must be
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   373
segmented.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   374
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   375
Chronogram illustrate a long alarm (A) and a short periodic alarm (B),
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   376
with a A value {\textgreater} clock range {\textgreater} B value.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   377
Values t0...t8 are successive setTimer call parameter values. t1
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   378
illustrates an intermediate call to TimeDispatch, caused by a delay
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   379
longer than clock range. Because of long alarm segmentation, at the end
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   380
of t1, TimeDispatch call will not trig any alarm callback.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   381
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   382
\begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   383
   \includegraphics[width=12cm]{Pictures/1000000000000396000000FFC42573DA.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   384
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   385
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   386
\section{Linux Target}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   387
Linux target is default configure target.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   388
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   389
\subsection{Linux Compilation and installation}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   390
Call ./configure {--}help to see all available compile time options.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   391
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   392
After invoking ./configure with your platform specific switches, just
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   393
type make.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   394
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   395
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   396
./configure [options]}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   397
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   398
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   399
make}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   400
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   401
{\ttfamily
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   402
make install}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   403
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   404
\subsubsection{Standard Linux node}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   405
Configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   406
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   407
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   408
 {}-{}-timers=unix}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   409
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   410
To do a CANopen node running on PC{}-Linux, you need :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   411
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   412
\liststyleLvii
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   413
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   414
\item A working linux distribution
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   415
\item One or more Peak system PC CAN interface and the last Peak Linux
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   416
driver installed.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   417
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   418
\subsubsection{Real{}-Time Linux node}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   419
Configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   420
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   421
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   422
 {}-{}-timers=xeno}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   423
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   424
To do a CANopen node running on PC{}-Linux, you need :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   425
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   426
\liststyleLviii
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   427
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   428
\item A working Linux distribution patched with XENOMAI 2.1 or greater.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   429
\item One or more Peak system PC CAN interface and the last Peak Real
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   430
Time Linux driver installed.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   431
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   432
\subsubsection{CAN devices}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   433
Curently supported CAN devices and corresponding configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   434
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   435
\paragraph{Peak systems}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   436
Configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   437
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   438
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   439
{}-{}-can=peak\_linux}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   440
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   441
PeakSystems CAN interface is automatically chosen as default CAN
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   442
interface if libpcan is present in the system.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   443
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   444
Please download driver at
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   445
\href{http://www.peak-system.com/linux}{http://www.peak{}-system.com/linux}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   446
and follow instructions in order to install driver on your system.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   447
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   448
\paragraph{Socket{}-Can (http://socketcan.berlios.de)}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   449
Configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   450
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   451
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   452
{}-{}-can=socket}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   453
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   454
\paragraph{LinCan}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   455
Configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   456
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   457
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   458
{}-{}-can=lincan}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   459
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   460
\paragraph{Virtual CAN interfaces (for test/debug)}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   461
Configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   462
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   463
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   464
{}-{}-can=virtual}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   465
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   466
Virtual CAN interface use Unix pipes to emulate a virtual CAN network.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   467
Each message issued from a node is repeat to all other nodes. Currently
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   468
only works with nodes running in the same process, and does not support
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   469
work with Xenomai.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   470
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   471
\subsection{Testing your CanFestival installation}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   472
Sample provided in /example/TestMasterSlave is installed into your
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   473
system during installation.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   474
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   475
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   476
TestMasterSlave}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   477
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   478
Default can driver library is libcanfestival\_can\_virtual.so., which
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   479
will simply pass CAN messages through Unix pipes between Master and
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   480
Slave. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   481
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   482
You may also want to specify different can interface and define some CAN
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   483
ports. An other example using Peak{\textquotesingle}s dual PCMCIA
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   484
(configure and install with {--}can=peak) :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   485
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   486
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   487
TestMasterSlave {}-l libcanfestival\_can\_peak.so {}-s 40 {}-m 41}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   488
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   489
\section{Windows Targets}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   490
CanFestival can be compiled and run on Windows platform. It is possible
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   491
to use both Cygwin and win32 native runtime environment.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   492
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   493
\subsection{Object Dictionary Editor GUI installation.}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   494
Please refer to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   495
\hyperlink{a821UsingDictionaryEditorGUIoutline}{8.2.1)Using Dictionary
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   496
Editor GUI}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   497
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   498
\subsection{CYGWIN}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   499
\subsubsection{Requirements}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   500
Cygwin have to be installed with those packages :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   501
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   502
\liststyleLix
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   503
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   504
\item gcc
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   505
\item unzip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   506
\item wget
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   507
\item make
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   508
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   509
Currently, the only supported CAN devices are PeakSystems ones, with
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   510
PcanLight driver and library. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   511
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   512
Please download driver at
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   513
\href{http://www.peak-system.com/themen/download_gb.html}{http://www.peak{}-system.com/themen/download\_gb.html}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   514
\space and follow instructions in order to install driver on your system.
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   515
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   516
Install Cygwin as required, and the driver for your Peak CAN device.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   517
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   518
Open a Cygwin terminal, and follow those instructions:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   519
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   520
\subsubsection{Cygwin configuration and compilation}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   521
\paragraph{A single node with PcanLight and Peak CAN{}-USB adapter}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   522
Download the PCAN{}-Light Zip file for your HW ( URL from download page
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   523
): 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   524
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   525
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   526
wget http://www.peak{}-system.com/files/usb.zip}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   527
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   528
Extract its content into your cygwin home (it will create a ``Disk''
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   529
directory):
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   530
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   531
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   532
unzip usb.zip}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   533
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   534
Configure CanFestival3 providing path to the desired PcanLight
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   535
implementation:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   536
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   537
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   538
cd CanFestival{}-3}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   539
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   540
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   541
export PCAN\_INCLUDE=\~{}/Disk/PCAN{}-Light/Api/}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   542
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   543
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   544
export PCAN\_HEADER=Pcan\_usb.h}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   545
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   546
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   547
export PCAN\_LIB=\~{}/Disk/PCAN{}-Light/Lib/Visual{\textbackslash}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   548
C++/Pcan\_usb.lib}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   549
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   550
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   551
./configure {}-{--}can=peak\_win32}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   552
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   553
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   554
make}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   555
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   556
In order to test, you have to use another CanFestival node, connect with
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   557
a CAN cable.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   558
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   559
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   560
cp \~{}/Disk/PCAN{}-Light/Pcan\_usb.dll .}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   561
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   562
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   563
./examples/TestMasterSlave/TestMasterSlave {\textbackslash}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   564
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   565
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   566
  {}-l drivers/can\_peak\_win32/cygcan\_peak\_win32.dll
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   567
{\textbackslash}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   568
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   569
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   570
  {}-S 500K {}-M none}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   571
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   572
Then, on the other node :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   573
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   574
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   575
./TestMasterSlave {}-l my\_driver.so {}-S none {}-M 500K}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   576
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   577
Now messages are beeing exchanged between master and slave node.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   578
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   579
\paragraph{Two nodes with PcanLight and Peak dual PCMCIA{}-CAN adapter}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   580
Download the PCAN{}-Light Zip file for your HW ( URL from download page
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   581
): 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   582
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   583
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   584
wget http://www.peak{}-system.com/files/pccard.zip}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   585
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   586
Extract its content into your cygwin home (it will create a ``Disk''
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   587
directory):
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   588
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   589
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   590
unzip pccard.zip}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   591
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   592
The configure CanFestival3 providing path to the desired PcanLight
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   593
implementation:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   594
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   595
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   596
export PCAN\_INCLUDE=\~{}/Disk/PCAN{}-Light/Api/\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   597
export PCAN\_HEADER=Pcan\_pcc.h\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   598
export PCAN\_LIB=\~{}/Disk/PCAN{}-Light/Lib/Visual{\textbackslash}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   599
C++/Pcan\_pcc.lib\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   600
export PCAN2\_HEADER=Pcan\_2pcc.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   601
export PCAN2\_LIB=\~{}/Disk/PCAN{}-Light/Lib/Visual{\textbackslash}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   602
C++/Pcan\_2pcc.lib}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   603
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   604
In order to test, just connect together both CAN ports of the PCMCIA
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   605
card. Don{\textquotesingle}t forget 120ohms terminator.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   606
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   607
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   608
cp \~{}/Disk/PCAN{}-Light/Pcan\_pcc.dll .}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   609
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   610
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   611
cp \~{}/Disk/PCAN{}-Light/Pcan\_2pcc.dll .}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   612
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   613
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   614
./examples/TestMasterSlave/TestMasterSlave {\textbackslash}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   615
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   616
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   617
  {}-l drivers/can\_peak\_win32/cygcan\_peak\_win32.dll}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   618
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   619
Messages are then exchanged between master and slave node, both inside
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   620
TestMasterSlave{\textquotesingle}s process.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   621
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   622
\subsection{Visual Studio C++}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   623
\subsubsection{Requirements}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   624
Minimal Cygwin installation is required at configuration time in order
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   625
to create specific header files (config.h and cancfg.h). Once this
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   626
files created, cygwin is not necessary any more.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   627
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   628
Project and solution files have been created and tested with Visual
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   629
Studio Express 2005. Be sure to have installed Microsoft Platform SDK,
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   630
as recommended at the end of Visual Studio installation.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   631
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   632
\subsubsection{Configuration with cygwin}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   633
Follow instructions given at 
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   634
\hyperlink{Cygwin configuration and compilation}{Cygwin
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   635
configuration and compilation}, but do neither call make nor do tests,
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   636
just do configuration steps. This will create headers files accordingly
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   637
to your configuration parameters, and the desired CAN hardware.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   638
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   639
\subsubsection{Compilation with Visual Studio}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   640
You can either load independents ``*.vcproj'' project files along your
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   641
own projects in your own solution or load the provided
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   642
``CanFestival{}-3.vc8.sln'' solution files directly.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   643
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   644
Build CanFestival{}-3 project first.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   645
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   646
\paragraph{PcanLight and the can\_peak\_win32 project.}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   647
Chosen Pcan\_xxx.lib and eventually Pcan\_2xxx.lib files must be added
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   648
to can\_peak\_win32 \space \space project before build of the DLL.
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   649
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   650
\subsubsection{Testing}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   651
Copy eventually needed dlls (ie : Pcan\_Nxxx.lib) into Release or Debug
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   652
directory, and run the test program:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   653
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   654
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   655
TestMasterSlave.exe {}-l can\_peak\_win32.dll}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   656
282
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   657
\subsection{MSYS}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   658
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   659
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   660
\subsubsection{Requirements}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   661
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   662
Download from : http://sourceforge.net/project/showfiles.php?group\_id=2435
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   663
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   664
\begin{enumerate}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   665
\item MSYS-1.0.10.exe
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   666
\item MinGW-5.1.3.exe
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   667
\item mingwPORT (which contains wget-1.9.1)
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   668
\end{enumerate}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   669
Please download driver at http://www.peak-system.com/themen/download\_gb.html
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   670
and follow instructions in order to install driver on your system.
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   671
Install MSYS and MingW as required, and the driver for your Peak CAN
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   672
device. Open a MSYS terminal, and follow those instructions:\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   673
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   674
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   675
\begin{itemize}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   676
\item extract wget-1.9.1-mingwPORT.tar.bz2
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   677
\item copy wget.exe in c:\textbackslash{}msys\textbackslash{}1.0\textbackslash{}bin\textbackslash{}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   678
\item start MSYS and check the file /etc/fstab contain the line c:/MinGW
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   679
/mingw
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   680
\end{itemize}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   681
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   682
\subsubsection{MSYS configuration and compilation}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   683
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   684
Instructions for compilation are nearly the same as CYGWIN part. 
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   685
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   686
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   687
\paragraph{A single node with PcanLight and Peak CAN-USB adapter}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   688
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   689
Download the PCAN-Light Zip file for your HW ( URL from download page
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   690
):
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   691
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   692
\texttt{wget http://www.peak-system.com/files/usb.zip}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   693
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   694
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   695
Extract its content into your MSYS's home (it will create a \char`\"{}Disk\char`\"{}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   696
directory):
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   697
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   698
\texttt{unzip usb.zip}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   699
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   700
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   701
Configure CanFestival3 providing path to the desired PcanLight implementation:
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   702
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   703
\texttt{cd CanFestival-3}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   704
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   705
\texttt{export PCAN\_INCLUDE=\~{ }/Disk/PCAN-Light/Api/}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   706
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   707
\texttt{export PCAN\_HEADER=Pcan\_usb.h}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   708
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   709
\texttt{export PCAN\_LIB=\~{ }/Disk/PCAN-Light/Lib/Visual\textbackslash{}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   710
C++/Pcan\_usb.lib}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   711
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   712
\texttt{./configure -{}-can=peak\_win32}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   713
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   714
\texttt{make}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   715
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   716
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   717
In order to test, you have to use another CanFestival node, connect
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   718
with a CAN cable.
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   719
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   720
\texttt{cp \~{ }/Disk/PCAN-Light/Pcan\_usb.dll .}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   721
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   722
\texttt{./examples/TestMasterSlave/TestMasterSlave \textbackslash{}}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   723
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   724
\texttt{-l drivers/can\_peak\_win32/cygcan\_peak\_win32.dll \textbackslash{}}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   725
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   726
\texttt{-S 500K -M none}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   727
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   728
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   729
Then, on the other node :
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   730
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   731
\texttt{./TestMasterSlave -l my\_driver.so -S none -M 500K -m 0}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   732
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   733
Now messages are beeing exchanged between master and slave node.
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   734
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   735
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   736
\paragraph{Two nodes with PcanLight and Peak dual PCMCIA-CAN adapter}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   737
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   738
Download the PCAN-Light Zip file for your HW ( URL from download page
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   739
):
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   740
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   741
\texttt{wget http://www.peak-system.com/files/pccard.zip}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   742
\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   743
Extract its content into your MSYS's home (it will create a \char`\"{}Disk\char`\"{}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   744
directory):
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   745
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   746
\texttt{unzip pccard.zip}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   747
\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   748
The configure CanFestival3 providing path to the desired PcanLight
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   749
implementation:\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   750
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   751
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   752
\texttt{export PCAN\_INCLUDE=\~{ }/Disk/PCAN-Light/Api/}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   753
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   754
\texttt{export PCAN\_HEADER=Pcan\_pcc.h}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   755
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   756
\texttt{export PCAN\_LIB=\~{ }/Disk/PCAN-Light/Lib/Visual\textbackslash{}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   757
C++/Pcan\_pcc.lib}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   758
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   759
\texttt{export PCAN2\_HEADER=Pcan\_2pcc.h}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   760
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   761
\texttt{export PCAN2\_LIB=\~{ }/Disk/PCAN-Light/Lib/Visual\textbackslash{}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   762
C++/Pcan\_2pcc.lib}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   763
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   764
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   765
In order to test, just connect together both CAN ports of the PCMCIA
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   766
card. Don't forget 120ohms terminator.
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   767
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   768
\texttt{cp\~{ }/Disk/PCAN-Light/Pcan\_pcc.dll ~.}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   769
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   770
\texttt{cp \~{ }/Disk/PCAN-Light/Pcan\_2pcc.dll ~.}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   771
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   772
\texttt{./examples/TestMasterSlave/TestMasterSlave \textbackslash{}}
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   773
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   774
\texttt{-l drivers/can\_peak\_win32/cygcan\_peak\_win32.dll -m 0 -s
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   775
1}~\\
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   776
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   777
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   778
Messages are then exchanged between master and slave node, both inside
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   779
TestMasterSlave's process.
6afe145df950 Updated manual for msys/mingw build
greg
parents: 249
diff changeset
   780
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   781
\section{Motorola HCS12}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   782
The examples have been tested on a MC9S12DG255 mounted on a
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   783
Elektronikladen HCS12 T{}-board.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   784
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   785
Beware that there are a few differences in the MSCAN module of the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   786
68HC12 and HCS12 microcontroller. For a HC12, you must adapt the driver
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   787
that we provide for \space the HCS12.
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   788
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   789
For the difference MSCAN HC12/HCS12, see the Motorola application note
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   790
AN2011/D.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   791
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   792
Configure switch:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   793
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   794
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   795
 {}-{}-target=hcs12}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   796
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   797
To do a CANopen node running on a microncontroller Motorola MC9S12DP256,
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   798
you need :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   799
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   800
\liststyleLx
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   801
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   802
\item The compiler GNU gcc for HC11, HC12, HCS12 : m6811{}-elf. \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   803
Download the \textbf{release 3.1} at :
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   804
\space \href{http://m68hc11.serveftp.org/m68hc11_pkg_rpm.php}{http://m68hc11.serveftp.org/m68hc11\_pkg\_rpm.php}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   805
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   806
\item A board with this chip. We are using the T{}-board from
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   807
Electronikladden. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   808
\item At least about 40 kBytes of program memory.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   809
\item A tool to flash the memory. (We are using the hight cost
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   810
Lauterbach debugger).
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   811
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   812
\subsection{Running a HCS12 node}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   813
\subsubsection{Compiling Canfestival:}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   814
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   815
./configure {--}target=hcs12}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   816
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   817
\subsubsection{Compiling and building an example}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   818
Enter in the folder of an HCS12 example, 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   819
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   820
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   821
make all}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   822
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   823
\subsubsection{Flashing the memory :}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   824
Use your prefered loader ! If you are using a debugger Lauterbach, you
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   825
can load the bash file : trace32\_flash\_programmer.cmm. It loads
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   826
directly the elf file.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   827
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   828
\subsubsection{Connecting to a serial RS232 console :}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   829
Connect the portS(TxD0) of the HCS12 to a console configured at 19200
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   830
bauds 8N1, via a Max232 chip to adapt the electricals levels. On Linux,
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   831
you can use minicom. Connecting to a console is usefull to read the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   832
messages, but not required.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   833
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   834
\subsubsection{Connecting to the CAN network :}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   835
Connect the port CAN0 (pin PM0, PM1) to the network via a CAN
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   836
controller. On our board, the CAN controler is a PCA82C250 chip.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   837
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   838
\subsubsection{starting the node :}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   839
Press the reset of your HCS12 board.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   840
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   841
\section{Example and test program:}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   842
The ``examples'' directory contains some test program you can use as
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   843
example for your own developments.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   844
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   845
\subsection{TestMasterSlave}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   846
{\ttfamily
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   847
**************************************************************\space}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   848
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   849
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   850
* \space TestMasterSlave
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   851
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   852
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   853
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   854
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   855
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   856
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   857
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   858
* \space A simple example for PC. It does implement 2 CanOpen \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   859
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   860
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   861
* \space nodes in the same process. A master and a slave. Both \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   862
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   863
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   864
* \space communicate together, exchanging periodically NMT, SYNC, \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   865
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   866
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   867
* \space SDO and PDO. Master configure heartbeat producer time \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   868
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   869
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   870
* \space at 1000 ms for slave node{}-id 0x02 by concise DCF.
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   871
\space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   872
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   873
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   874
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   875
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   876
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   877
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   878
* \space \space Usage:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   879
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   880
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   881
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   882
* \space \space ./TestMasterSlave \space [OPTIONS]
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   883
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   884
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   885
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   886
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   887
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   888
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   889
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   890
* \space \space OPTIONS:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   891
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   892
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   893
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   894
* \space \space \space \space {}-l : Can library
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   895
[{\textquotedbl}libcanfestival\_can\_virtual.so{\textquotedbl}]
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   896
\space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   897
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   898
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   899
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   900
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   901
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   902
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   903
* \space \space \space Slave:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   904
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   905
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   906
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   907
* \space \space \space \space {}-s : bus name [{\textquotedbl}0{\textquotedbl}]
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   908
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   909
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   910
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   911
* \space \space \space \space {}-S : 1M,500K,250K,125K,100K,50K,20K,10K,none(disable) \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   912
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   913
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   914
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   915
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   916
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   917
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   918
* \space \space \space Master:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   919
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   920
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   921
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   922
* \space \space \space \space {}-m : bus name [{\textquotedbl}1{\textquotedbl}]
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   923
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   924
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   925
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   926
* \space \space \space \space {}-M : 1M,500K,250K,125K,100K,50K,20K,10K,none(disable) \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   927
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   928
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   929
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   930
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   931
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   932
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   933
**************************************************************}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   934
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   935
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   936
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   937
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   938
{\sffamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   939
Notes for Concise DCF :}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   940
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   941
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   942
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   943
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   944
{\sffamily
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   945
 In this example, Master configure \space heartbeat producer time at 1000 ms
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   946
for slave node{}-id 0x02 by concise DCF according DS{}-302 profile. }
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   947
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   948
{\sffamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   949
 }
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   950
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   951
{\sffamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   952
 Index 0x1F22 , sub{}-index 0x00 of the master OD, correspond to the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   953
number of entries. This equal to the maximum possible nodeId (127).
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   954
Each sub{}-index points to the Node{}-ID of the device, to which the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   955
configuration belongs. }
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   956
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   957
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   958
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   959
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   960
{\sffamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   961
 To add more parameters configurations to the slave, the value at
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   962
sub{}-index 0x02 must be a binary stream (little{}-endian) following
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   963
this structure :\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   964
\{
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   965
(UNS32) nb of entries\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   966
(UNS16) index parameter 1\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   967
(UNS8) sub{}-index parameter 1\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   968
(UNS32) size data parameter 1\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   969
(DOMAIN) data parameter 1\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   970
(UNS16) index parameter 2\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   971
(UNS8) sub{}-index parameter 2\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   972
(UNS32) size data parameter 2\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   973
(DOMAIN) data parameter 2\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   974
\space \space \space \space \space ....\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   975
(UNS16) index parameter n\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   976
(UNS8) sub{}-index parameter n\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   977
(UNS32) size data parameter n\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   978
(DOMAIN) data parameter n\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   979
\}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   980
}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   981
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   982
{\sffamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   983
 So the binary value stream to configure heartbeat producer time must be
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
   984
:\newline
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   985
    0100000017100002000000e803}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   986
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   987
{\sffamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   988
The slave node is configured just before the Master entering in
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   989
Pre\_operational state.}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   990
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   991
\subsection{gene\_SYNC\_HCS12 :}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   992
This is a simple CanOpen node that only send cyclic SYNC message. It
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   993
demonstrate implementation on HCS12 based board.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   994
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   995
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   996
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   997
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   998
\subsection{TestMasterMicroMod }
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
   999
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1000
**************************************************************}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1001
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1002
{\ttfamily
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1003
* \space TestMasterMicroMod
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1004
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1005
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1006
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1007
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1008
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1009
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1010
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1011
* \space A simple example for PC.
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1012
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1013
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1014
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1015
* \space A CanOpen master that control a MicroMod module:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1016
\space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1017
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1018
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1019
* \space {}- setup module TPDO 1 transmit type
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1020
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1021
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1022
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1023
* \space {}- setup module RPDO 1 transmit type
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1024
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1025
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1026
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1027
* \space {}- setup module hearbeatbeat period
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1028
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1029
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1030
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1031
* \space {}- disable others TPDOs
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1032
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1033
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1034
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1035
* \space {}- set state to operational
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1036
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1037
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1038
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1039
* \space {}- send periodic SYNC
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1040
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1041
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1042
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1043
* \space {}- send periodic RPDO 1 to Micromod (digital output) \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1044
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1045
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1046
* \space {}- listen Micromod{\textquotesingle}s TPDO 1 (digital input)
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1047
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1048
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1049
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1050
* \space {}- Mapping RPDO 1 bit per bit (digital input)
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1051
\space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1052
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1053
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1054
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1055
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1056
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1057
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1058
* \space \space Usage:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1059
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1060
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1061
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1062
* \space \space ./TestMasterMicroMod \space [OPTIONS]
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1063
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1064
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1065
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1066
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1067
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1068
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1069
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1070
* \space \space OPTIONS:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1071
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1072
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1073
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1074
* \space \space \space \space {}-l : Can library
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1075
[{\textquotedbl}libcanfestival\_can\_virtual.so{\textquotedbl}]
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1076
\space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1077
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1078
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1079
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1080
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1081
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1082
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1083
* \space \space \space Slave:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1084
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1085
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1086
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1087
* \space \space \space \space {}-i : Slave Node id format [0x01 , 0x7F]
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1088
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1089
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1090
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1091
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1092
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1093
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1094
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1095
* \space \space \space Master:
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1096
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1097
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1098
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1099
* \space \space \space \space {}-m : bus name [{\textquotedbl}1{\textquotedbl}]
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1100
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1101
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1102
{\ttfamily
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1103
* \space \space \space \space {}-M : 1M,500K,250K,125K,100K,50K,20K,10K
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1104
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1105
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1106
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1107
*
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1108
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space *}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1109
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1110
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1111
**************************************************************}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1112
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1113
\section{Developing a new node}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1114
Using provided examples as a base for your new node is generally a good
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1115
idea. You can also use the provided *.od files as a base for your node
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1116
object dictionary.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1117
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1118
Creating a new CanOpen node implies to define the Object Dictionary of
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1119
this node. For that, developer have to provide a C file. This C file
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1120
contains the definition of all dictionary entries, and some kind of
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1121
index table that helps the stack to access some entries directly.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1122
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1123
\subsection{Using Dictionary Editor GUI}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1124
The Object Dictionary Editor is a WxPython based GUI that is used to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1125
create the C file needed to create a new CanOpen node. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1126
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1127
\subsubsection{Installation and usage on Linux}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1128
You first have to download and install Gnosis XML modules. This is
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1129
automated by a Makefile rule.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1130
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1131
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1132
cd objdictgen}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1133
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1134
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1135
make}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1136
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1137
Now start the editor.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1138
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1139
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1140
python objdictedit.py [od files...]}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1141
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1142
\subsubsection{Installation and usage on Windows}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1143
Install Python (at least version 2.4) and wxPython (at least version
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1144
2.6.3.2).
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1145
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1146
Cygwin users can install Gnosis XML utils the same as Linux use. Just
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1147
call make.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1148
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1149
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1150
cd objdictgen}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1151
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1152
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1153
make}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1154
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1155
Others will have to download and intall Gnosis XML by hand :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1156
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1157
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1158
Gnosis Utils:}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1159
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1160
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1161
http://freshmeat.net/projects/gnosisxml/}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1162
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1163
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1164
http://www.gnosis.cx/download/Gnosis\_Utils.More/Gnosis\_Utils{}-1.2.1.win32{}-py24.exe}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1165
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1166
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1167
Get latest version.}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1168
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1169
Download CanFestival archive and uncompress it. Use windows file
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1170
explorer to go into CanFestival3{\textbackslash}objdicgten, and
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1171
double{}-click on objdictedit.py.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1172
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1173
\subsubsection{About}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1174
The Object Dictionary editor GUI is a python application that use the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1175
Model{}-View{}-Controller design pattern. It depends on WxPython to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1176
display view on any supported platform.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1177
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1178
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1179
   \includegraphics[width=7cm]{Pictures/10000201000001FC000001E5D65E8766.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1180
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1181
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1182
\subsubsection{Main view}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1183
Top list let you choose dictionary section, bottom left list is the
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1184
selected index in that dictionary, and bottom right list are edited
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1185
sub{}-indexes.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1186
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1187
 \begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1188
   \includegraphics[width=12cm]{Pictures/10000201000003E7000001C7B0296577.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1189
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1190
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1191
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1192
   \includegraphics[width=3cm]{Pictures/10000000000000B6000000DF1EDD1E73.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1193
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1194
  \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1195
   \includegraphics[width=3cm]{Pictures/10000000000000AC000000C9C3F53FA6.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1196
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1197
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1198
   \includegraphics[width=3cm]{Pictures/100000000000006D000000A31EC8CB54.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1199
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1200
  \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1201
   \includegraphics[width=3cm]{Pictures/10000000000000AA0000006014F74635.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1202
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1203
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1204
\subsubsection{New node}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1205
Edit your node name, ID and type. Choose your inherited specific
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1206
profile.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1207
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1208
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1209
   \includegraphics[width=11cm]{Pictures/10000201000001CB0000015F4FC09B68.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1210
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1211
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1212
\subsubsection{Node info}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1213
Edit your node name, ID and type.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1214
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1215
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1216
   \includegraphics[width=7cm]{Pictures/10000201000001010000011DA724D25C.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1217
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1218
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1219
\subsubsection{Profile editor}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1220
Chose the used profile to edit.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1221
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1222
   \includegraphics[width=4cm]{Pictures/10000000000000AB000000C88F594413.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1223
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1224
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1225
Pick up optional chosen profile entries.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1226
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1227
   \includegraphics[width=11cm]{Pictures/10000201000002DE000001D82D89C224.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1228
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1229
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1230
\subsubsection{User types}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1231
Use User Types to implement value boundaries, and string lentgth\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1232
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1233
   \includegraphics[width=11cm]{Pictures/10000201000001C40000010766961D7F.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1234
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1235
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1236
\subsubsection{Mapped variable}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1237
Add your own specific dictionary entries and associated mapped
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1238
variables.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1239
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1240
   \includegraphics[width=11cm]{Pictures/10000201000001C4000000DD129D4661.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1241
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1242
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1243
\subsubsection{Integrated help}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1244
Using F1 key, you can get context sensitive help.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1245
 \begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1246
   \includegraphics[width=12cm]{Pictures/10000201000002F30000020B23ED7F67.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1247
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1248
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1249
In order to do that, official 301\_v04000201.pdf file must be placed
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1250
into doc/ directory, and xpdf must be present on your system.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1251
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1252
F2 key open HTML CanFestival help.\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1253
 \begin{center}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1254
   \includegraphics[width=12cm]{Pictures/10000201000003440000025ACC3FD2F1.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1255
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1256
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1257
\subsection{Generating the object Dictionary}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1258
Once object dictionary has been edited and saved, you have to generate
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1259
object dictionary C code for your CanFestival node.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1260
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1261
\subsubsection{With GUI}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1262
Menu entry ``File/Build Dictionary''.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1263
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1264
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1265
   \includegraphics[width=4cm]{Pictures/10000201000000B7000000C66AF89CD5.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1266
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1267
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1268
Choose C file to create or overwrite. Header file will be also created
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1269
with the same prefix as C file.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1270
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1271
\subsubsection{With command line}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1272
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1273
Usage of objdictgen.py :\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1274
python objdictgen.py XMLFilePath CfilePath}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1275
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1276
\section{FAQ}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1277
\subsection{General}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1278
\subsubsection{Does the code compiles on Windows ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1279
Yes, with both Cygwin and Visual Studio C++.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1280
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1281
Because CANopen layer is coded with C, put a compilation option /TC or
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1282
/TP if you plan to mix C++ files. See the MSDN documentation about
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1283
that.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1284
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1285
\subsubsection{How to fit the library to an other microcontr\^oler ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1286
First, be sure that you have at least 40K bytes of program memory, and
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1287
about 2k of RAM. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1288
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1289
You have to create target specific interface to HW resources. Take model
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1290
on bundled interfaces provided in drivers/ and create your own
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1291
interface. You also have to update Makefile.in files for target
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1292
specific cflags and options. Chose {--}targer= configure switch to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1293
compile your specific interface.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1294
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1295
You are welcome to contribute{}-back your own interfaces ! Other
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1296
Canfestival users will use it and provide feedback, tests and
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1297
enhancements.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1298
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1299
\subsubsection{Is CanFestival3 conform to DS301 v.4.02 ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1300
Thanks to Philippe Foureys (IUT of Valence), a slave node have been
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1301
tested with the National Instrument CanOpen Conformance Test. It passed
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1302
the test with success.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1303
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1304
Some very small unconformity have been found in very unusual situations,
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1305
for example in the SDO code response to wrong messages.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1306
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1307
\subsection{LINUX}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1308
\subsubsection{How to use a Peaksystem CAN board ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1309
Just install peak driver and then compile and install Canfestival. Peak
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1310
driver is detected at compile time.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1311
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1312
\subsubsection{How to use an unsupported CAN board ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1313
You have to install the specific driver on your system, with necessary
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1314
libs and headers. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1315
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1316
Use can\_peak.c/h or can\_virtual.c/h as an example, and adapt it to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1317
your driver API.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1318
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1319
Execute configure script and choose {}-{}-can=mydriver
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1320
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1321
\subsection{Win32}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1322
Compatibility:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1323
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1324
\liststyleLxi
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1325
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1326
\item Code was compiled MS VisualStudio 2003.NET and VisualStudio
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1327
2005.NET for WindowsXP \space with ANSI and UNICODE configurations and for
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1328
WindowsCE 5.0. 
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1329
\item Some preliminary testing was done, but not enough to be used in
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1330
mission critical projects.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1331
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1332
Additional Features:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1333
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1334
\liststyleLxii
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1335
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1336
\item Non{}-integral integers support implementation UNS24, UNS40, UNS48
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1337
etc.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1338
\item When enable debug output with DEBUG\_WAR\_CONSOLE\_ON or
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1339
DEBUG\_ERR\_CONSOLE\_ON, you can navigate in CanFestival source code by
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1340
double clicking at diagnostic lines in VisualStudio.NET 200X Debug
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1341
Output Window.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1342
\end{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1343
Custom size integral types such as INTEGER24, UNS40, INTEGER56 etc. have
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1344
been defined as 64 bits integers. You will need to replace sizeof(TYPE)
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1345
operators to sizeof\_TYPE definitions in generated code, i.e. replace
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1346
sizeof(UNS40) with sizeof\_UNS40.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1347
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1348
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1349
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1350
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1351
\subsection{HCS12}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1352
\subsubsection{Which board are you using ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1353
A T{}-board from elektronikladen with a MC9S12DP256 or MC9S12DG256.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1354
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1355
\subsubsection{Does the code compile with an other compiler than GNU gcc
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1356
?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1357
It is known to work with Metrowerks CodeWarrior. Here are some tips from
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1358
Philippe Foureys. :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1359
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1360
\paragraph{Interrupt functions}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1361
\subparagraph{Code for GCC:}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1362
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1363
 // prototype\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1364
 void \_\_attribute\_\_((interrupt))timer3Hdl(void):\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1365
 // function\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1366
 void \_\_attribute\_\_((interrupt))timer3Hdl(void)\{...\}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1367
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1368
\subparagraph{Code for CodeWarrior}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1369
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1370
 // protoype\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1371
 void interrupt timer3Hdl(void);\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1372
 // function\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1373
 pragma CODE\_SEG\_\_NEAR\_SEG\_NON\_BANKED\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1374
 void interrupt timer3Hdl(void)\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1375
 \{...\}\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1376
 pragma CODE\_SEG\_DEFAULT}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1377
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1378
\paragraph{Interrupt lock, unlock}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1379
\subparagraph{Code for GCC}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1380
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1381
 void unlock (void)\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1382
 \{\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1383
  \space \_\_asm\_\_
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1384
\_\_volatile\_\_({\textquotedbl}cli{\textquotedbl});\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1385
 \}\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1386
 void lock (void)\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1387
 \{\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1388
  \space unsigned short mask;\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1389
  \space \_\_asm\_\_
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1390
\_\_volatile\_\_({\textquotedbl}tpa{\textbackslash}n{\textbackslash}tsei{\textquotedbl}:{\textquotedbl}=d{\textquotedbl}(mask));\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1391
 \}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1392
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1393
\subparagraph{Code for CodeWarrior}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1394
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1395
void unlock (void)\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1396
 \{\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1397
  \space \_\_asm({\textquotedbl}cli{\textquotedbl});\newline
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1398
 \}\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1399
 void lock (void)\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1400
 \{\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1401
  \space unsigned short mask;\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1402
  \space \_\_asm\newline
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1403
  \{\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1404
  \space tpa:tsei:{\textquotedbl}=d{\textquotedbl}(mask);\newline
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1405
  \}\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1406
 \}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1407
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1408
\paragraph{Initialize function}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1409
\subparagraph{Code for GCC}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1410
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1411
void initCanHCS12 (void)\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1412
 \{ \space \newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1413
  \space //Init the HCS12 microcontroler for CanOpen \newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1414
  \space initHCS12();\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1415
  \space \space // Init the HCS12 \space CAN driver\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1416
  \space const canBusInit bi0 = \{\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1417
  \space \space \space 0, \space \space \space /* no low power \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1418
\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1419
  \space \space \space 0, \space \space \space /* no time stamp
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1420
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1421
  \space \space \space 1, \space \space \space /* enable MSCAN
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1422
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1423
  \space \space \space 0, \space \space \space /* clock source : oscillator (In fact, it is not used)
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1424
\space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1425
  \space \space \space 0, \space \space \space /* no loop back
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1426
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1427
  \space \space \space 0, \space \space \space /* no listen only
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1428
\space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1429
  \space \space \space 0, \space \space \space /* no low pass filter for wk up */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1430
  \space CAN\_Baudrates[CAN\_BAUDRATE\_250K],\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1431
  \space \space \space \{\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1432
  \space \space \space \space \space 0x00, \space \space \space /* Filter on 16 bits.\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1433
  \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space See Motorola Block Guide V02.14 fig
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1434
4{}-3 */\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1435
  \space \space \space \space \space 0x00, 0xFF, /* filter 0 hight accept all msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1436
\space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1437
  \space \space \space \space \space 0x00, 0xFF, /* filter 0 low accept all msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1438
\space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1439
  \space \space \space \space \space 0x00, 0xFF, /* filter 1 hight filter all of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1440
\space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1441
  \space \space \space \space \space 0x00, 0xFF, /* filter 1 low filter all of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1442
\space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1443
  \space \space \space \space \space 0x00, 0xFF, /* filter 2 hight filter most of \space msg
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1444
*/\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1445
  \space \space \space \space \space 0x00, 0xFF, /* filter 2 low filter most of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1446
\space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1447
  \space \space \space \space \space 0x00, 0xFF, /* filter 3 hight filter most of \space msg
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1448
*/\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1449
  \space \space \space \space \space 0x00, 0xFF, /* filter 3 low filter most of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1450
\space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1451
  \space \space \space \}\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1452
  \space \};}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1453
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1454
\subparagraph{Code for CodeWarrior}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1455
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1456
void initCanHCS12 (void)\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1457
 \{ \space \newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1458
  \space //Init the HCS12 microcontroler for CanOpen \newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1459
  \space initHCS12();\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1460
  \space \space // Init the HCS12 \space CAN driver\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1461
  \space const canBusInit bi0 = \{\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1462
  \space \space \space 0, \space \space \space /* no low power \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1463
\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1464
  \space \space \space 0, \space \space \space /* no time stamp
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1465
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1466
  \space \space \space 1, \space \space \space /* enable MSCAN
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1467
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1468
  \space \space \space 0, \space \space \space /* clock source : oscillator (In fact, it is not used)
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1469
\space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1470
  \space \space \space 0, \space \space \space /* no loop back
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1471
\space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1472
  \space \space \space 0, \space \space \space /* no listen only
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1473
\space \space \space \space \space \space \space \space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1474
  \space \space \space 0, \space \space \space /* no low pass filter for wk up */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1475
  \space \space \space \{\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1476
  \space \space \space \space 1, /* clksrc */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1477
  \space \space \space \space 3, /* brp \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1478
  \space \space \space \space 0, /* sjw \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1479
  \space \space \space \space 0, /* samp \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1480
  \space \space \space \space 1, /* tseg2 \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1481
  \space \space \space \space 12,/* tseg1 \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1482
  \space \space \space \},\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1483
  \space \space \space \{\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1484
  \space \space \space \space \space 0x00, \space \space \space /* Filter on 16 bits.\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1485
  \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space \space See Motorola Block Guide V02.14 fig
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1486
4{}-3 */\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1487
  \space \space \space \space \space 0x00, 0xFF, /* filter 0 hight accept all msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1488
\space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1489
  \space \space \space \space \space 0x00, 0xFF, /* filter 0 low accept all msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1490
\space \space \space \space \space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1491
  \space \space \space \space \space 0x00, 0xFF, /* filter 1 hight filter all of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1492
\space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1493
  \space \space \space \space \space 0x00, 0xFF, /* filter 1 low filter all of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1494
\space \space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1495
  \space \space \space \space \space 0x00, 0xFF, /* filter 2 hight filter most of \space msg
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1496
*/\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1497
  \space \space \space \space \space 0x00, 0xFF, /* filter 2 low filter most of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1498
\space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1499
  \space \space \space \space \space 0x00, 0xFF, /* filter 3 hight filter most of \space msg
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1500
*/\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1501
  \space \space \space \space \space 0x00, 0xFF, /* filter 3 low filter most of \space msg
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1502
\space \space */\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1503
  \space \space \space \}\newline
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1504
  \space \};}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1505
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1506
\subsubsection{Does the code works in banked memory ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1507
No. Today it seems that the port of gcc is bogged for using the banked
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1508
memory. So, unfortunately, we are limited to 48 Kbytes of memory code.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1509
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1510
\subsubsection{What GCC version are you using ?}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1511
We are using the stable RPM release 2.2 :
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1512
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1513
\liststyleLxiii
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1514
\begin{enumerate}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1515
\item GNU Gcc 3.0.4. Build 20030501
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1516
\item Newlib 1.10.0 Build 20030421
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1517
\item GNU Binutils 2.12.1 Build 20030427
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1518
\end{enumerate}
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1519
\section{Documentation resources\newline}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1520
\paragraph{CIA : Can in Automation\newline}
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1521
Many documentation on CANopen.\newline
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1522
\href{http://www.can-cia.de/}{http://www.can{}-cia.de}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1523
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1524
\paragraph{Resources and training in CANopen\newline}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1525
\href{http://www.esacademy.com/}{http://www.esacademy.com}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1526
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1527
\paragraph{Elektronikladen HCS12 T{}-board\newline}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1528
\href{http://www.elektronikladen.de/en_hcs12tb.html}{http://www.elektronikladen.de/en\_hcs12tb.html}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1529
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1530
\paragraph{Gnu gcc compiler for HC12\newline}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1531
\href{http://m68hc11.serveftp.org/m68hc11_port.php}{http://m68hc11.serveftp.org/m68hc11\_port.php}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1532
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1533
\paragraph{Motorola documentation on HC12\newline}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1534
\href{http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC9S12DP256}{http://www.freescale.com/webapp/sps/site/prod\_summary.jsp?code=MC9S12DP256}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1535
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1536
\paragraph{Lauterbach debugger for HC12\newline}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1537
\href{http://www.lauterbach.com/}{http://www.lauterbach.com}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1538
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1539
\paragraph{Python language\newline}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1540
\href{http://www.python.org/}{http://www.python.org}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1541
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1542
\clearpage\section{About the project}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1543
\subsection{Contributors }
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1544
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1545
   \includegraphics[width=10cm]{Pictures/1000020100000258000000832C6FFAB4.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1546
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1547
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1548
Unit\'e mixte de recherche INRETS{}-LCPC
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1549
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1550
sur les Interractions V\'ehicule{}-Infrastructure{}-Conducteur
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1551
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1552
14, route de la mini\`ere
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1553
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1554
78000 Versailles
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1555
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1556
FRANCE
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1557
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1558
Tel : +33 1 40 43 29 01
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1559
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1560
\href{http://www.inrets.fr/ur/livic}{http://www.inrets.fr/ur/livic}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1561
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1562
\textbf{Contributors :} Francis DUPIN
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1563
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1564
   Camille BOSSARD
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1565
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1566
   Laurent ROMIEUX
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1567
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1568
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1569
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1570
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1571
 \begin{center}
211
2a4c2ca03555 Manual and Documentation finish
nico
parents: 208
diff changeset
  1572
   \includegraphics[width=10cm]{Pictures/100002010000013A0000004A96B0C1FF.png}
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1573
\end{center}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1574
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1575
LOLITECH
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1576
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1577
204, rue du Haut du Pin
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1578
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1579
88470 Saint{}-Michel sur Meurthe
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1580
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1581
FRANCE
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1582
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1583
Tel : +33 3 29 52 95 67
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1584
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1585
\href{http://www.lolitech.fr/}{http://www.lolitech.fr}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1586
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1587
{\bfseries
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1588
Contributors : \textmd{Edouard TISSERANT (Original author)}}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1589
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1590
{\mdseries
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1591
   Laurent BESSARD}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1592
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1593
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1594
\bigskip
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1595
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1596
Many thanks to the other contributors for their great work:
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1597
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1598
\textmd{   }Raphael ZULLIGER
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1599
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1600
\textmd{   }David DUMINY (st\'e A6R)
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1601
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1602
\textmd{   }Zakaria BELAMRI
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1603
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1604
\subsection{Getting support}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1605
Send your feedback and bug reports to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1606
\href{mailto:canfestival-devel@lists.sourceforge.net}{canfestival{}-devel@lists.sourceforge.net}.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1607
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1608
For commercial support, \space training and specific integration and
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1609
developments, please ask LOLITECH (see contributors).
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1610
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1611
\subsection{Contributing}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1612
You are free to contribute your specific interfaces back to the project.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1613
This way, you can hope to get support from CanFestival users community.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1614
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1615
Please send your patch to
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1616
\href{mailto:canfestival-devel@lists.sourceforge.net}{canfestival{}-devel@lists.sourceforge.net}.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1617
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1618
Feel free to create some new predefined DS{}-4xx profiles (*.prf) in
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1619
objdictgen/config, as much as possible respectful to the official
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1620
specifications.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1621
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1622
\subsection{License}
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1623
All the project is licensed with LGPL. This mean you can link
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1624
CanFestival with any code without being obliged to publish it.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1625
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1626
{\ttfamily
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1627
\#This file is part of CanFestival, a library implementing CanOpen
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1628
Stack. \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1629
\# \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1630
\#Copyright (C): Edouard TISSERANT, Francis DUPIN and Laurent BESSARD
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1631
\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1632
\# \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1633
\#See COPYING file for copyrights details. \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1634
\# \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1635
\#This library is free software; you can redistribute it and/or \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1636
\#modify it under the terms of the GNU Lesser General Public \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1637
\#License as published by the Free Software Foundation; either \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1638
\#version 2.1 of the License, or (at your option) any later version.
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1639
\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1640
\# \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1641
\#This library is distributed in the hope that it will be useful,
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1642
\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1643
\#but WITHOUT ANY WARRANTY; without even the implied warranty of
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1644
\newline
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1645
\#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. \space See the GNU
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1646
\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1647
\#Lesser General Public License for more details. \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1648
\# \newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1649
\#You should have received a copy of the GNU Lesser General Public
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1650
\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1651
\#License along with this library; if not, write to the Free Software
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1652
\newline
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1653
\#Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1654
\space 02111{}-1307 \space USA }
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1655
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1656
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1657
\bigskip
249
d328d0d9b88e Some cleanup in latex manual
etisserant
parents: 211
diff changeset
  1658
208
05d95c45b388 Manual convertion -> latex -> pdf
nico
parents:
diff changeset
  1659
\end{document}