Accueil

Comment démarrer avec Rust sur Raspberry Pi

Added 2019-04-09


Si vous êtes intéressé par la programmation, vous avez probablement 7 raisons pour lesquelles Rust est le nouveau langage de programmation le plus excitant entendu parler de rouille                                                                                                                                      Voulez-vous commencer avec la programmation? Voici pourquoi Rust est le nouveau langage de programmation le plus excitant et le plus accessible.                7 raisons pour lesquelles Rust est le nouveau langage de programmation le plus excitant 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, idéal 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.

Un schéma de circuit montrant une LED et une résistance attachées aux broches GPIO 18 et GND d'un Raspberry Pi

Configurez votre circuit avec GPIO 18 connecté au bras positif du voyant et au bras négatif du voyant à 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

La commande de terminal requise pour installer Rust

Pour installer la rouille, dirigez-vous vers le 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.

Les trois choix présentés par l’installateur Rust.

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

Rustc et Cargo sont installés, mais pas actuellement dans PATH

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.

Tester Rust et Cargo dans PATH avec leurs numéros de version.

Vous allez compiler et créer tous vos scripts à partir du terminal, mais vous aurez également besoin d’un éditeur de code. Dans ce projet, je vais utiliser Code-OSS, une version communautaire de VS Code que vous pouvez 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.


nouvelle cargaison YourProject

Vous recevrez une confirmation que le nouveau projet a été créé.
Créer un nouveau répertoire dans le terminal et y insérer un projet de rouille vierge

Entrez le nouveau dossier de projet et listez son contenu.


cd votre projet
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é

Un exemple de script hello world rust

Tout d’abord, ouvrons le répertoire src et ouvrons 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é.

Un fichier vierge Cargo.toml

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 sont appelés  Caisses  Rust et nous en utiliserons une 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.


construction de la cargaison

Utilisation de la commande Cargo Build pour générer le projet exemple

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é déboguer , et c’est là que se trouvera votre fichier exécutable. Sur Mac et Linux, exécutez votre projet en tapant:


./Votre projet

Sous Windows, vous aurez un nouveau EXE  fichier que vous pouvez exécuter en double-cliquant.

La structure de fichier du projet de rouille construite avec le programme hello world en cours d'exécution.

Succès! Convertissons ce projet en quelque chose utilisant les broches GPIO.

Configuration des broches GPIO

Ajout de la caisse Rust GPIO Zero au fichier Cargo.toml

Nous allons utiliser le caisse de rust_gpiozero par 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.


[dépendances]
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.


vérification du fret

Le contrôle du fret vérifie le code pour détecter les erreurs et installe des dépendances

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

Un Raspberry Pi avec une LED attachée

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.


utilisez 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:


utilisez std :: thread :: sleep;
utilisez std :: time :: duration; // remarque la capitale D!

Maintenant dans votre principale  fonction, ajoutez une variable pour votre broche DEL et une boucle contenant les instructions de clignotement.


let led = LED :: new (18); // définit une variable pour la broche led

loop {// démarre une boucle
  conduit sur();
  sleep (Duration :: from_secs (1)); // crée une pause d'une seconde
  led.off ();
  sleep (Duration :: from_secs (1));
}

C'est tout! Enregistrez votre script et revenez au terminal.

Testez-le

Une image montrant l'allumage de la LED

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:


parcours de fret

Vous devriez voir une LED clignotante. Bien joué! Vous venez de créer votre premier programme matériel avec Rust. presse 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 d'apprendre et 6 raisons pour lesquelles Python est le langage de programmation du futur Python aura de nombreuses applications pour les années à venir .






Nuage de tags

Choix de L'éditeur


Thomas Becket

Je suis un écrivain indépendant qui couvre la programmation et les logiciels.
Je suis étudiant en informatique et je m'intéresse à la programmation, aux logiciels et à la technologie
Gadgets technologiques et critiques 2019