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