Environnement de travail à distance » Historique » Révision 24
Révision 23 (Patrice Nadeau, 2020-07-05 09:16) → Révision 24/28 (Patrice Nadeau, 2020-07-05 09:16)
# Environnement de travail à distance
{{TOC}}
----
## 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)
### Mode « slave »
* Câble USB A - Mini-B (fournis avec le BBB)
### 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
## Branchement
Peux importe la méthode, le BBB seras disponible à l'adresse *192.168.7.2* avec l'utilisateur *root*.
> Il n'y a pas de mot de passe
### Mode « slave »
Brancher le BBB à l'ordinateur en utilisant le port Micro-B.
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
```bash
chmod +x mkudevrule.sh
sudo ./mkudevrule.sh
```
### Mode « stand-alone »
Au minimum, brancher les câbles d'alimentation et Ethernet.
Un clavier, souris et écran peuvent aussi être branchés.
## Logiciel requis
### Développement local
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.
### 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.
#### Poste GNU/Linux
J'utilise ici une station de travail sous openSUSE Leap 15.2.
Télécharger les fichier suivants:
* Compilateur (gcc)
* test <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>
<https://github.com/VegetableAvenger/BBBIOlib>
En tant que *root* :
```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
```
Créer le fichier */etc/profile.d/arm.sh*
```bash
#!/bin/bash
# Export path for ARM tollchain
export PATH=/usr/local/arm:${PATH}
export MANPATH=/opt/cross/share/man:${MANPATH}
```
### Utilisation
#### GNU/Linux
En tant qu'utilisateur, se relogguer OU dans la session _courante_, exécuter
```bash
source /etc/profile.d/arm.sh
```
## Création du code
Créer un fichier *test.c*
```c
#include <stdio.h>
void (main)(void)
{
printf("Allo la terre !\n");
int x;
}
```
### Compilation
Compiler avec
```bash
arm-linux-gnueabi-gcc test.c -o test
```
### Téléchargement
Copier l’exécutable dans le BBB
```bash
scp test root@192.168.7.2:
```
Ouvrir une session et exécuter le programme directement dans sur le BBB
```bash
ssh root@192.168.7.2
./test
```