SOP 002-Environnement informatique » Historique » Révision 9
Révision 8 (Patrice Nadeau, 2015-09-20 10:35) → Révision 9/158 (Patrice Nadeau, 2015-09-20 10:45)
h1. SOP 002-Environnement informatique 
 Ce SOP explique comment configurer un poste pour 
 * la programmation (C) 
 * le désign de circuits électroniques 
 > Pour l’instant, seulement un environnement GNU\Linux (openSUSE) est documenté. 
 > Certaines sections peuvent avoir de la documentation pour Windows. 
 {{lastupdated_at}} {{lastupdated_by}} 
 --- 
 {{toc}} 
 h2. Matériel 
 h3. Ordinateur 
 * Processeur 
 ** Intel Atom et plus 
 * Mémoire 
 ** 2 Mo 
 * Disque 
 * Port série ou convertisseur USB/série (communication série et programmeur AVR) 
 * Port USB 2.0 ou plus (sonde Logic et programmeur AVR) 
 h3. Écran 
 * Résolution minimal de 1690x900 (VIM 2 x 80 colonnes + taglist) 
 ** 1 minimum, 2 fortement recommandés 
 h3. Programmeur 
 Pour le transfert des programmes vers les uC AVR. 
 Les programmeur suivants ont été testés : 
 * Atmel STK500 
 * Atmel STK600 
 * Atmel Dragon 
 ** Ne seras plus supporté 
 * Atmel AVRISP mkII 
 h2. Logiciels 
 h3. Système d'exploitation 
 Dernière version _openSUSE_ avec interface graphique (_Xfce_ suggéré) 
 h3. Navigateur Web 
 Pour l’accès à Redmine 
 h4. Firefox  
 Dictionnaire français 
 h3. Suite bureautique 
 LibreOffice 
 h3. Autres 
 Document viewer (Evince) 
 h3. Éditeur 
 L’éditeur "VIM":http://www.vim.org est utilisé.  
 Plusieurs compléments sont installés et une personnalisation est appliquée. 
 <pre><code class="bash"> 
 zypper install gvim vim-data vim-plugin-a 
 </code></pre> 
 Plugin de http://www.vim.org/ 
 * puppet_syntax 
 * taglist 
 * NERDTree 
 Ctags 
 <pre><code class="bash"> 
 zypper install ctags 
 </code></pre> 
 h4. Personnalisation 
 Copier les gabarits 
 > TODO : gabarits Vim 
 <pre><code class="bash"> 
 mkdir ~/Documents/projects 
 ... 
 </code></pre> 
 Créer des liens symboliques pour : 
 <pre><code class="bash"> 
 ln -s ~/Documents/projects/vim/vimrc ~/.vimrc 
 ln -s~/Documents/projects/vim/vim ~/.vim 
 ln -s~/Documents/projects/vim/ctags ~/.ctags 
 </code></pre> 
 Créer un raccourci pour l’application 
 <pre><code class="bash"> 
 gvim –cmd:cd /home/repertoire_projets 
 </code></pre> 
 h3. Unison 
 Synchronisation de données 
 <pre><code class="bash"> 
 zypper install unison 
 </code></pre> 
 h3. Minicom 
 Logiciel de terminal sous GNU/Linux 
 Installation 
 <pre><code class="bash"> 
 zypper install minicom 
 </code></pre> 
 Personnalisation 
 Ajouter l’utilisateur dans le groupe *dialout*. 
 <pre><code class="bash"> 
 usermod --groups dialout username 
 </code></pre> 
 L’usager doit se reloguer. 
 h3. XƎTEX 
 Installation 
 <pre><code class="bash"> 
 zypper install texlive-latex texlive-listing texlive-fancyhdr texlive-graphics texlive-todo texlive-siunitx texlive-beamer texlive-context-fullpage texlive-lastpage texlive-polyglosisa 
 </code></pre> 
 h2. Programmation 
 Le langage _C_ est celui utilisé pour les systèmes embarqués. 
 h3. Éditeur 
 Ajouts supplémentaire à VIM 
 h3. Compilateur C 
 h4. gcc 
 <pre><code class="bash"> 
 zypper install gcc make 
 </code></pre> 
 h4. splint 
 Vérificateur de syntaxe C 
 <pre><code class="bash"> 
 zypper install splint 
 </code></pre> 
 h3. Doxygen 
 Outil de documentation (C/C++, java) 
 Installation 
 <pre><code class="bash"> 
 zypper install doxygen texlive-latex 
 </code></pre> 
 h3. Git 
 Système de contrôle de version 
 Installation 
 <pre><code class="bash"> 
 zypper install git 
 </code></pre> 
 h3. Atmel AVR 
 Pour la programmation des micro-controleur AVR 8 bits d’Atmel. 
 h4. Atmel AVR 8-bit toolchain 
 Télécharger du site de Atmel (un compte n’est pas obligatoire) 
 >Choisir la version 32 ou 64 bits selon le système d’exploitation installé. 
 GNU\Linux : http://www.atmel.com/tools/ATMELAVRTOOLCHAINFORLINUX.aspx 
 Windows : http://www.atmel.com/tools/ATMELAVRTOOLCHAINFORWINDOWS.aspx 
 Décompresser le fichier. 
 En tant que root : 
 <pre><code class="bash"> 
 # Créer le dossier (si n’existe pas déjà) 
 mkdir --parents /opt/cross/avr 
 # Copier les fichiers 
 cp --recursive avr8-gnu-toolchain-linux_x86/* /opt/cross/avr 
 # Creer les liens 
 ln --symbolic /opt/cross/avr/ /usr/local/avr 
 </code></pre> 
 Créer le fichier */etc/profile.d/avr.sh* avec le contenu suivant : 
 <pre><code class="bash"> 
 #!/bin/bash 
 # Export path for AVR toolchain 
 export PATH=/usr/local/avr/bin:${PATH} 
 export MANPATH=/usr/local/avr/man:/usr/local/avr/share/man:${MANPATH} 
 </code></pre> 
 Se loguer en tant que l’utilisateur et exécuter 
 <pre><code class="bash"> 
 source /etc/profile.d/avr.sh 
 </code></pre> 
 h4. Avrdude 
 Logiciel de transfert pour AVR. 
 openSUSE inclus la version 5.11.1. 
 >La version 6.0.1 ne DOIT PAS être installée, elle contient le bogue "#40142":https://savannah.nongnu.org/bugs/?40142 
 Installation Les modules suivant sont nécessaire : 
 <pre><code class="bash"> 
 zypper install avrdude libusb-compat-devel 
 </code></pre> 
 Permissions USB (GNU\Linux) 
 Créer le fichier */etc/udev/rules.d/60-avrisp.rules* contenant 
 <pre><code class="bash"> 
 SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end" 
 # Atmel Corp. JTAG ICE mkII 
 ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", MODE="660", GROUP="avr" 
 # Atmel Corp. AVRISP mkII 
 ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="avr" 
 # Atmel Corp. Dragon 
 ATTR{idVendor}=="03eb", ATTR{idProduct}=="2107", MODE="660", GROUP="avr" 
 LABEL="avrisp_end" 
 </code></pre> 
 Rebrancher le programmeur USB pour relire le fichier */etc/udev/rules.d* 
 Créer un groupe *avr* et y ajouter les usagers nécessaires. 
 <pre><code class="bash"> 
 groupadd avr 
 usermod --groups avr username 
 </code></pre> 
 L’usager doit se reloguer. 
 h3. BeagleBone 
 h2. CAD 
 h3. KiCAD 
 h4. Installation 
 <pre><code class="bash"> 
 zypper install kicad 
 </code></pre> 
 h4. Personnalisation 
 Les fichiers gabarit d'un projet sont : 
 > Ne s’applique qu'à la création d'un nouveau projet. 
 * Global (system wide) : */usr/share/kicad/template/kicad.pro*. 
 * Utilisateur courant : *~/noname.pro* 
 Les lignes _LibDir_ (2) sont celles pointant vers les librairies. 
 Comme les libraires fournis proviennent de source divers et que je ne contrôle pas, je ne travaille qu’avec mes propres libraires. 
 J’enlève donc les librairies de KiCad et j'ajoute les miennes. 
 Les lignes _LibDir_ (2) sont celles pointant vers les librairies (_/home/pnadeau/Documents/projects/cad/libraries/kicad/_). miennes 
 Eeschema 
 * Preference 
 ** Librairy 
 *** User search path list : */home/pnadeau/Documents/projects/cad/libraries/kicad/*  
 *** Component library files : Enlever les librairies existantes et ajouter les librairies _SLPN_ 
 ** Save Preferences 
 CvPcb 
 * Preference 
 ** Librairy 
 *** User search path list : */home/pnadeau/Documents/projects/cad/libraries/kicad/* 
 *** Component library files : Enlever les librairies existantes et ajouter les librairies _SLPN_ 
 ** Save Preferences 
 Pcbnew 
 * Preference 
 ** Librairy 
 *** User define search paths : */home/pnadeau/Documents/projects/cad/libraries/kicad/*  
 *** Component library files : Enlever les librairies existantes et ajouter les librairies _SLPN_ 
 ** Save Preferences 
 h3. EAGLE 
 >*Ce logiciel n'est pas "open-source"* 
 > Il ne devrait pas servir pour la création de nouveau projets sauf sur demande du client. 
 Télécharger de http://www.cadsoftusa.com/download-eagle/ 
 Installer les librairies nécessaires  
 <pre><code class="bash"> 
 zypper install libpng12-0-32bit libpng16-16-32bit libjpeg8-32bit libXi6-32bit libXrender1-32bit libXrandr2-32bit libXcursor1-32bit libfreetype6-32bit fontconfig-32bit 
 </code></pre> 
 >nécessaire en mode 64 bits seulement 
 <pre><code class="bash"> 
 zypper install libpng12-0 libpng16-16 libjpeg8 libXi6 libXrender1 libXrandr2 libXcursor1 libfreetype6 fontconfig 
 </code></pre> 
 h4. Configuration des répertoires 
 h2. Autres 
 h3. Logic 
 Analyseur logique 
 Téléchargement à partir de http://www.saleae.com/downloads 
 Décompresser le fichier et placer les fichiers dans *~/Logic* 
 Installer le pilote 
 <pre><code class="bash"> 
 ~/Logic/Drivers/install_driver 
 </code></pre> 
 Débrancher et rebrancher la sonde.