Wiki » Historique » Révision 24
Révision 23 (Patrice Nadeau, 2014-07-24 21:09) → Révision 24/52 (Patrice Nadeau, 2014-07-24 21:12)
%{font-size:18pt}Utilisation d'un BeagleBone Black% Guide de démarrage pour la programmation sur la plateforme BeagleBone Black. > Les étapes sont pour un poste de travail sous openSUSE. --- {{toc}} Dans ce document, l'appellation BeagleBone Black sera remplacé par BBB. h1. Matériel requis * BeagleBone Black (Digikey #"BB-BBLK-000-REVC-ND":http://www.digikey.ca/product-detail/en/BB-BBLK-000/BB-BBLK-000-REVC-ND/4842211) h2. Mode « slave » * Câble USB A - Mini-B (fournis avec le BBB) h2. Mode « stand-alone » Dans ce mode le BBB se comporte comme un ordinateur complet. * Bloc d’alimentation 5V, 1A, 2.1mm, centre positif (DigiKey #"T139-P5P-ND":http://www.digikey.ca/product-search/en?vendor=0&keywords=T1139-P5P-ND) * Câble Ethernet > Facultatif > * Concentrateur USB > * Clavier/souris > * Adaptateur vidéo h1. Branchement Peux importe la méthode, le BBB seras disponible a l'adresse *192.168.7.2* avec l'utilisateur *root*. h2. Mode « slave » Brancher le BBB à l'ordinateur en utilisant le BeagleBone Black au port Micro-B. USB de l'ordinateur. Un nouveau média apparaitra ainsi qu'une nouvelle carte réseau. > Optionnellement > A partir du nouveau media, copier localement le fichier *boot/Drivers/Linux/FTDI/mkudevrule.sh*. > A partir d'une session terminal, exécuter le script ><pre><code class="bash"> chmod +x mkudevrule.sh sudo ./mkudevrule.sh </code></pre> h2. Mode « master » Au minimum, brancher les câbles d'alimentation Ethernet. Un clavier, souris et écran peuvent aussi être branchés. h1. Logiciel requis h2. Développement local Comme la compilation seras longue sur un processeur de cette vitesse et le outils dépendant de la version installé sur le BBB, je ne documenterai pas cette section. h2. Développement à partir d'un autre poste Comme pour les AVR d'ATMEL, l’écriture du code source et sa compilation peut être faite à partir d'un autre poste. Télécharger les fichier suivants * Compilateur (gcc) ** http://software.opensuse.org/package/cross-arm-linux-gnueabi-binutils ** http://software.opensuse.org/package/cross-arm-linux-gnueabi-gcc * Librairies ** http://software.opensuse.org/package/cross-arm-linux-gnueabi-kernel-headers ** http://software.opensuse.org/package/cross-arm-linux-gnueabi-glibc ** http://software.opensuse.org/package/cross-arm-linux-gnueabi-libffi En tant que *root* : <pre><code class="bash"> # Installer les packages rpm -Uhv cross-arm-linux-gnueabi*.rpm # Créer le lien vers les exécutable ln -s /opt/cross/bin /usr/local/arm </code></pre> Créer le fichier */etc/profile.d/arm.sh* <pre><code class="bash"> #!/bin/bash # Export path for ARM tollchain export PATH=/usr/local/arm:${PATH} export MANPATH=/opt/cross/share/man:${MANPATH} </code></pre> h1. Utilisation En tant qu'utilisateur, se relogguer OU dans la session _courante_ <pre><code class="bash"> source /etc/profile.d/arm.sh </code></pre> h2. Création du code Créer un fichier *test.c* <pre><code class="c"> #include <stdio.h> void (main)(void) { printf("Allo la terre !\n"); int x; } </code></pre> h2. Compilation Compiler avec <pre><code class="bash"> arm-linux-gnueabi-gcc test.c -o test </code></pre> h2. Téléchargement Copier l’exécutable dans le BBB <pre><code class="bash"> scp test root@192.168.7.2: </code></pre> Ouvrir une session dans et exécuter le programme directement dans le BBB <pre><code class="bash"> ssh root@192.168.7.2 ./test </code></pre>