Comment démarrer avec Rust sur Raspberry Pi
Publicité
Si vous êtes intéressé par la programmation, vous avez probablement entendu parler de Rust 7 Reasons Rust est le nouveau langage de programmation le plus intéressant 7 raisons Rust Le nouveau langage de programmation le plus excitant vous intéresse-t-il? Vous souhaitez vous lancer dans la programmation? Voici pourquoi Rust est le nouveau langage de programmation le plus excitant et le plus accessible. Lire la suite . Le langage, conçu par Mozilla, est très apprécié des développeurs et continue de croître chez les passionnés.
Le Raspberry Pi est le couteau suisse des petits ordinateurs, parfait pour apprendre le code. Combinons les deux et installons Rust sur un Raspberry Pi.
Configuration de votre Raspberry Pi
Pour ce projet, vous aurez besoin de:
- Tarte aux framboises.
- LED.
- Résistance 220-1k Ohm.
- Planche à pain et fils de connexion.
Configurez votre circuit avec GPIO 18 connecté au bras positif de la LED et au bras négatif de la LED à la résistance, puis à une broche GND sur le Pi.
Ce tutoriel a été réalisé avec un Raspberry Pi 3B + avec Raspbian Stretch en mode bureau. Cela fonctionnerait parfaitement avec une connexion SSH distante également, bien que différents modèles de Pi et différents systèmes d'exploitation puissent avoir des résultats variables.
Comment installer Rust sur Raspberry Pi
Pour installer Rust, rendez-vous sur la page d’installation de rust-lang et copiez la commande d’installation dans votre terminal. Lorsque vous y êtes invité, choisissez une installation par défaut.
Le programme d'installation vous avertira de la fin de l'installation, bien que l'installation puisse prendre un certain temps en fonction de votre connexion.
Après l'installation
L'installation est réussie, mais vous ne pouvez pas encore l'utiliser. Si vous essayez de vérifier Rust and Cargo par version, vous obtiendrez une erreur. Généralement, vous devez ajouter une langue à votre PATH pour les utiliser sur la ligne de commande.
Heureusement, Rust le fait pour vous, et tout ce que vous avez à faire est de redémarrer votre Pi, ou de vous déconnecter et de vous reconnecter. Rechercher maintenant pour Rust et Cargo devrait fonctionner.
Vous compilerez et construirez tous vos scripts à partir du 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 pourrez installer sur le Pi, mais ce n'est pas essentiel. N'importe quel éditeur de code fera l'affaire.
Création d'un projet de rouille
Pour créer un projet Rust, créez un nouveau répertoire et entrez-le en tapant
mkdir YourFolder cd YourFolder
Utilisez Cargo pour créer un nouveau projet Rust.
cargo new YourProject
Vous recevrez une confirmation que le nouveau projet a été créé.
Entrez le nouveau dossier de projet et listez son contenu.
cd YourProject ls
Vous verrez un dossier nommé src et un fichier appelé Cargo.toml . Ces deux éléments constituent la base de chaque projet Rust.
Un simple projet de rouille, a expliqué
Commençons par ouvrir le répertoire src et ouvrez main.rs dans un éditeur de code. Vous verrez que le nouveau projet est livré avec un script «Hello World» pour vous aider à démarrer.
La syntaxe Rust sera familière à ceux qui ont déjà utilisé les langages C ou Java. Cela diffère de Python qui utilise des espaces, des points-virgules et des accolades pour désigner les blocs de code. Le code Rust doit compiler et compiler avant de pouvoir être exécuté.
De retour dans le dossier parent du projet, ouvrez Cargo.toml dans un éditeur de code. Tous ceux qui ont codé en JavaScript ou Ruby trouveront probablement cela familier. Les informations de projet, les instructions de construction et les dépendances sont toutes répertoriées dans ce fichier. Les paquets s'appellent Crates in Rust, et nous en utiliserons un plus tard pour accéder aux broches GPIO du Raspberry Pi.
Construire le projet exemple
De retour dans la fenêtre du terminal, assurez-vous d'être dans le répertoire de votre projet et construisez le projet.
cargo build
Cela crée un autre dossier dans votre projet appelé cible . Vous remarquerez également un nouveau fichier appelé Cargo.lock . Lorsque vous travaillez avec une équipe ou que vous codez quelque chose à déployer sur un serveur, ce fichier verrouille le projet à une version précédemment compilée et construite avec succès. Tout en apprenant, vous pouvez ignorer ce fichier en toute sécurité.
Dans le dossier cible se trouve un sous-dossier appelé debug, où se trouve votre fichier exécutable. Sur Mac et Linux, exécutez votre projet en tapant:
./YourProject
Sous Windows, vous aurez un nouveau fichier EXE que vous pourrez exécuter en double-cliquant.
Succès! Convertissons ce projet en quelque chose utilisant les broches GPIO.
Configuration des broches GPIO
Nous allons utiliser 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 manuellement la caisse, collez son nom sous des dépendances dans le fichier Cargo.toml.
[dependencies] rust_gpiozero = "0.2.0"
Enregistrez-le et ouvrez votre terminal. À ce stade, il est inutile de reconstruire le projet car aucun code n'a changé. Cargo fournit une fonction qui vérifie que le code sera compilé et que toutes les dépendances sont présentes.
cargo check
En fonction de votre connexion, cela peut prendre quelques minutes, mais vous n’avez besoin de le faire qu’une fois lorsque vous ajoutez ou modifiez des éléments dans le fichier Cargo.toml.
Bonjour Blink
Vous allez maintenant transformer votre script hello world en un script clignotant. Commencez par ouvrir main.rs dans votre éditeur. Si vous voulez ignorer le codage, vous pouvez trouver le script terminé sur Github Gist.
Vous devez faire savoir au compilateur que vous utilisez la bibliothèque rust_gpiozero. Par conséquent, tout en haut du script, ajoutez une référence à la bibliothèque.
use rust_gpiozero::*;
Tout comme le modèle de clignotement standard basé sur Python, nous avons besoin d’un moyen d’ajouter un délai entre l’activation et la désactivation du voyant. Pour ce faire, nous utilisons deux éléments de la bibliothèque standard:
use std::thread::sleep; use std::time::Duration; // note the capital D!
Maintenant, dans votre fonction principale, ajoutez une variable pour votre broche DEL et une boucle contenant les instructions de clignotement.
let led = LED::new(18); // sets a variable for the led pin loop{ // starts a loop led.on(); sleep(Duration::from_secs(1)); // creates a 1 second pause led.off(); sleep(Duration::from_secs(1)); }
C'est ça! Enregistrez votre script et revenez au terminal.
Testez-le
Générez à nouveau le projet pour mettre à jour l'exécutable. Alternativement, la commande run construit et exécute le script en une seule étape:
cargo run
Vous devriez voir une LED clignotante. Bien joué! Vous venez de créer votre premier programme matériel avec Rust. Appuyez sur Ctrl-C pour revenir au terminal. Si vous rencontrez des erreurs, vérifiez soigneusement votre code pour détecter les deux-points, points-virgules ou crochets manqués.
Un avenir passionnant avec la rouille sur Raspberry Pi
Actuellement, Python ne risque pas d'être remplacé par Rust. Il est facile à apprendre et Python aura de nombreuses applications pour les années à venir.
Cela dit, Rust a beaucoup de bruit, et il existe de nombreuses raisons pour apprendre la langue. 7 raisons pour lesquelles Rust est le nouveau langage de programmation le plus excitant 7 raisons pour lesquelles Rust est le nouveau langage de programmation le plus excitant Vous souhaitez vous lancer en programmation? Voici pourquoi Rust est le nouveau langage de programmation le plus excitant et le plus accessible. Lire la suite !
Explorez plus sur: Raspberry Pi, Rust.