Projet

Général

Profil

Environnement de travail à distance » Historique » Version 19

Patrice Nadeau, 2020-07-05 09:09

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