Projet

Général

Profil

Environnement de travail à distance » Historique » Version 6

Patrice Nadeau, 2015-01-01 09:53

1 3 Patrice Nadeau
h1. Environnement de travail à distance
2 1 Patrice Nadeau
3 2 Patrice Nadeau
{{TOC}}
4
5
----
6
7 3 Patrice Nadeau
h2. Matériel requis
8 1 Patrice Nadeau
9
* BeagleBone Black (Digikey #"BB-BBLK-000-REVC-ND":http://www.digikey.ca/product-detail/en/BB-BBLK-000/BB-BBLK-000-REVC-ND/4842211)
10
11 3 Patrice Nadeau
h3. Mode « slave »
12 1 Patrice Nadeau
13
* Câble USB A - Mini-B (fournis avec le BBB)
14
15 4 Patrice Nadeau
h3. Mode « stand-alone »
16 1 Patrice Nadeau
17
Dans ce mode le BBB se comporte comme un ordinateur complet.
18
19
* 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)
20
* Câble Ethernet
21
> Facultatif
22
> * Concentrateur USB
23
> * Clavier/souris
24
> * Adaptateur vidéo
25
26 3 Patrice Nadeau
h2. Branchement 
27 1 Patrice Nadeau
28
Peux importe la méthode, le BBB seras disponible à l'adresse *192.168.7.2* avec l'utilisateur *root*.
29
30 3 Patrice Nadeau
h3. Mode « slave »
31 1 Patrice Nadeau
32
Brancher le BBB à l'ordinateur en utilisant le port Micro-B.
33
Un nouveau média apparaitra ainsi qu'une nouvelle carte réseau.
34
35
> Optionnellement
36
> A partir du nouveau media, copier localement le fichier *boot/Drivers/Linux/FTDI/mkudevrule.sh*.
37
> A partir d'une session terminal, exécuter le script
38
><pre><code class="bash">
39
chmod +x mkudevrule.sh
40
sudo ./mkudevrule.sh
41
</code></pre>
42
43 6 Patrice Nadeau
h3. Mode « stand-alone »
44 1 Patrice Nadeau
45
Au minimum, brancher les câbles d'alimentation Ethernet.
46
Un clavier, souris et écran peuvent aussi être branchés.
47
48 3 Patrice Nadeau
h2. Logiciel requis
49 1 Patrice Nadeau
50 3 Patrice Nadeau
h3. Développement local
51 1 Patrice Nadeau
52
Comme la compilation seras longue sur un processeur de cette vitesse et les outils dépendant de la version installé sur le BBB, je ne documenterai pas cette section.
53
54 3 Patrice Nadeau
h3. Développement à partir d'un autre poste
55 1 Patrice Nadeau
56
Comme pour les AVR d'ATMEL, l’écriture du code source et sa compilation peut être faite à partir d'un autre poste.
57
58
Télécharger les fichier suivants
59
* Compilateur (gcc) 
60
** http://software.opensuse.org/package/cross-arm-linux-gnueabi-binutils
61
** http://software.opensuse.org/package/cross-arm-linux-gnueabi-gcc
62
* Librairies
63
** http://software.opensuse.org/package/cross-arm-linux-gnueabi-kernel-headers
64
** http://software.opensuse.org/package/cross-arm-linux-gnueabi-glibc
65
** http://software.opensuse.org/package/cross-arm-linux-gnueabi-libffi
66
67
https://github.com/VegetableAvenger/BBBIOlib
68
69
En tant que *root* :
70
<pre><code class="bash">
71
# Installer les packages
72
rpm -Uhv cross-arm-linux-gnueabi*.rpm
73
# Créer le lien vers les exécutable
74
ln -s /opt/cross/bin /usr/local/arm
75
</code></pre>
76
77
Créer le fichier */etc/profile.d/arm.sh*
78
<pre><code class="bash">
79
#!/bin/bash
80
# Export path for ARM tollchain
81
export PATH=/usr/local/arm:${PATH}
82
export MANPATH=/opt/cross/share/man:${MANPATH}
83
</code></pre>
84
85 3 Patrice Nadeau
h3. Utilisation
86 1 Patrice Nadeau
87
En tant qu'utilisateur, se relogguer OU dans la session _courante_
88
<pre><code class="bash">
89
source /etc/profile.d/arm.sh
90
</code></pre>
91
92 3 Patrice Nadeau
h2. Création du code
93 1 Patrice Nadeau
94
Créer un fichier *test.c*
95
<pre><code class="c">
96
#include <stdio.h>
97
void (main)(void)
98
{
99
    printf("Allo la terre !\n");
100
    int x;
101
}
102
</code></pre>
103
104 3 Patrice Nadeau
h3. Compilation 
105 1 Patrice Nadeau
106
Compiler avec 
107
<pre><code class="bash">
108
arm-linux-gnueabi-gcc test.c -o test
109
</code></pre>
110
111 3 Patrice Nadeau
h3. Téléchargement
112 1 Patrice Nadeau
113
Copier l’exécutable dans le BBB
114
115
<pre><code class="bash">
116
scp test root@192.168.7.2:
117
</code></pre>
118
119
Ouvrir une session dans et exécuter le programme directement dans le BBB
120
121
<pre><code class="bash">
122
ssh root@192.168.7.2
123
./test
124
</code></pre>