Comment démarrer avec Rust sur le Raspberry Pi
Si vous êtes intéressé par la programmation, vous avez probablement entendu parler de Rust. Conçu par Mozilla, le langage est largement apprécié des développeurs et continue de croître parmi ses adhérents.
Le Raspberry Pi est le couteau suisse des petits ordinateurs et est idéal pour apprendre à coder. Combinons les deux et installons Rust sur le Raspberry Pi.
Configurer votre Raspberry Pi
Pour ce projet, vous aurez besoin de :
- tarte aux framboises.
- mener.
- Résistance 220-1k ohms.
- Planche à pain et fils de branchement.
Configurez votre circuit pour connecter GPIO 18 au côté positif de la LED et le côté négatif de la LED à une résistance et retour à la broche GND sur le Pi.
Ce tutoriel a été réalisé avec un Raspberry Pi 3B+ avec Raspbian Stretch en mode bureau. Cela fonctionne également très bien sur une connexion SSH distante, bien que différents modèles de Pi et différents systèmes d’exploitation puissent donner des résultats différents.
Comment installer Rust sur un Raspberry Pi
Pour installer Rust, rendez-vous sur la page d’installation de Rust-lang et copiez la commande d’installation sur votre terminal. Lorsque vous y êtes invité, choisissez l’installation par défaut.
Le programme d’installation vous avertira lorsqu’il sera terminé, mais l’installation peut prendre un certain temps en fonction de votre connexion.
Après l’installation
L’installation a réussi, mais vous ne pouvez pas encore l’utiliser. Si vous essayez de vérifier Rust et Cargo par version, vous obtiendrez une erreur. En règle générale, vous devez ajouter une langue à votre PATH pour les utiliser sur la ligne de commande.
Faire une vidéo du jour
Heureusement, Rust le fait pour vous, tout ce que vous avez à faire est de redémarrer votre Pi, ou de vous déconnecter et de vous reconnecter. La vérification de Rust et Cargo devrait maintenant fonctionner.
Vous compilerez et construirez tous vos scripts depuis le terminal, mais vous aurez également besoin d’un éditeur de code. Dans ce projet, j’utiliserai Code-OSS, une version communautaire de VS Code que vous pouvez installer sur le Pi, mais ce n’est pas obligatoire. N’importe quel éditeur de code fera l’affaire.
Créer un projet Rust
Pour créer un projet Rust, créez un nouveau répertoire et entrez
mkdir votre dossier
cd votre dossier
Créez un nouveau projet Rust en utilisant Cargo.
Marchandises Nouveau VotreProjet
Vous recevrez une confirmation que le nouveau projet a été créé.
Entrez un nouveau dossier de projet et répertoriez son contenu.
cd ton projet
ls
vous verrez un code source et un nommé fret.tomlCes deux éléments constituent la base de chaque projet Rust.
Un projet Rust simple qui explique
D’abord, ouvrons le répertoire src, puis ouvrons main.rs dans l’éditeur de code. Vous verrez que le nouveau projet est livré avec un script « Hello World » pour vous aider à démarrer.
Ceux qui ont déjà utilisé C ou Java seront familiarisés avec la syntaxe Rust. Ceci est différent de Python, qui utilise des espaces, des points-virgules et des accolades pour désigner les blocs de code. Le code Rust doit être compilé et construit avant d’être exécuté.
Revenez au dossier parent du projet et ouvrez fret.toml dans l’éditeur de code. Quiconque a déjà codé en JavaScript ou Ruby trouvera probablement cela familier. Les informations sur le projet, les instructions de génération et les dépendances sont répertoriées dans ce fichier.le paquet s’appelle Caisse Dans Rust, nous en utiliserons un plus tard pour accéder aux broches GPIO du Raspberry Pi.
Créer l’exemple de projet
De retour dans la fenêtre du terminal, assurez-vous d’être dans le répertoire du projet et créez le projet.
construction de fret
Cela créera un autre dossier dans votre projet appelé Cibler. Vous remarquerez également un nouveau fichier appelé serrure de cargaisonLorsque vous travaillez avec une équipe ou que vous écrivez du code à déployer sur un serveur, ce fichier verrouille le projet sur une version qui a été précédemment compilée et construite avec succès. Pendant vos études, vous pouvez ignorer ce fichier en toute sécurité.
Dans le dossier de destination, il y a un sous-dossier appelé débogage, c’est là que se trouve votre exécutable. Sur Mac et Linux, exécutez votre projet en tapant :
./votre projet
Sous Windows, vous aurez un nouveau EXE Vous pouvez double-cliquer pour exécuter le fichier.
Succès! Convertissons ce projet en un projet utilisant des broches GPIO.
Définir les broches GPIO
Nous utiliserons la caisse rust_gpiozero de Rahul Thakdoor pour ce projet. Bien que ce ne soit pas le seul moyen d’accéder aux broches GPIO, cette caisse est conçue pour être similaire à la bibliothèque Python GPIO Zero.
Au lieu de télécharger la caisse manuellement, collez son nom sous les dépendances dans le fichier Cargo.toml.
[dependencies]
rust_gpiozero = « 0.2.0 »
Enregistrez-le, puis ouvrez votre terminal. À ce stade, il n’est pas logique de reconstruire le projet car aucun code n’a été modifié. Cargo fournit une fonction pour vérifier si le code compile et si toutes les dépendances existent.
inspection de la cargaison
Selon votre connexion, cela peut prendre quelques minutes, mais vous ne devez le faire qu’une seule fois lors de l’ajout ou de la modification d’éléments dans le fichier Cargo.toml.
bonjour clin d’oeil
Maintenant, vous allez changer votre script hello world en un script de lumière clignotante. Commencez par ouvrir main.rs dans un éditeur. Si vous souhaitez ignorer le codage, vous pouvez trouver le script terminé sur le Github Gist.
Vous devez informer le compilateur que vous utilisez la bibliothèque rust_gpiozero, ajoutez donc une référence à cette bibliothèque tout en haut de votre script.
utilisez rust_gpiozero ::*;
Tout comme le croquis de clignotement basé sur Python, nous avons besoin d’un moyen d’ajouter un délai entre l’allumage et l’extinction des LED. Dans Rust, nous faisons cela en utilisant deux éléments de la bibliothèque standard :
utilisez std::thread::sleep ;
Utilisez std::time::Duration; // Notez le D majuscule !
maintenant dans votre principale fonction, ajoutez une variable pour votre broche LED et une boucle avec l’instruction de clignotement.
soit led = LED :: new(18);
anneau {
mener();
sleep(duration::from_secs(1));
led.off();
sleep(duration::from_secs(1));
}
C’est ça! Enregistrez votre script et revenez au terminal.
passer un test
Générez à nouveau le projet pour mettre à jour l’exécutable. Vous pouvez également exécuter la commande pour créer et exécuter le script en une seule étape :
course de fret
Vous devriez voir une LED clignotante. bon travail! Vous venez d’écrire votre premier programme matériel en Rust.selon Ctrl-C Revenez au terminal. Si vous avez des erreurs, vérifiez soigneusement votre code pour les deux-points, les points-virgules ou les parenthèses manquants.
L’avenir passionnant de Rust sur le Raspberry Pi
Actuellement, Python ne risque pas d’être remplacé par Rust. C’est facile à apprendre et Python aura de nombreuses applications pour les années à venir.
Cela dit, Rust est très populaire et il existe de nombreuses raisons pour lesquelles vous devriez apprendre la langue !
A propos de l’auteur