Erste Schritte mit Rust auf Raspberry Pi
Werbung
Wenn Sie an Programmierung interessiert sind, haben Sie wahrscheinlich schon von Rust 7 Reasons Rust Is die aufregendste neue Programmiersprache gehört. 7 Reasons Rust Is die aufregendste neue Programmiersprache. Möchten Sie mit der Programmierung beginnen? Deshalb ist Rust die aufregendste und am leichtesten zugängliche neue Programmiersprache. Weiterlesen . Die von Mozilla entworfene Sprache ist bei Entwicklern sehr beliebt und erfreut sich immer größerer Beliebtheit bei Anhängern.
Der Raspberry Pi ist das Schweizer Taschenmesser für kleine Computer und perfekt zum Erlernen von Code. Lassen Sie uns beide kombinieren und Rust auf einem Raspberry Pi installieren.
Einrichten Ihres Raspberry Pi
Für dieses Projekt benötigen Sie:
- Himbeer-Pi.
- LED.
- 220-1k Ohm Widerstand.
- Steckbrett und Anschlussdrähte.
Richten Sie Ihre Schaltung ein, indem Sie GPIO 18 an den positiven Zweig der LED und den negativen Zweig der LED an den Widerstand und zurück an einen GND-Pin am Pi anschließen.
Dieses Tutorial wurde mit einem Raspberry Pi 3B + mit Raspbian Stretch im Desktop-Modus erstellt. Es würde auch über eine Remote-SSH-Verbindung einwandfrei funktionieren, obwohl verschiedene Pi-Modelle und verschiedene Betriebssysteme unterschiedliche Ergebnisse haben könnten.
Wie installiert man Rust auf Raspberry Pi
Um Rust zu installieren, rufen Sie die Installationsseite von rust-lang auf und kopieren Sie den Installationsbefehl in Ihr Terminal. Wählen Sie eine Standardinstallation aus, wenn Sie dazu aufgefordert werden.
Das Installationsprogramm benachrichtigt Sie, wenn der Vorgang abgeschlossen ist. Die Installation kann jedoch abhängig von Ihrer Verbindung einige Zeit in Anspruch nehmen.
Nach der Installation
Die Installation ist erfolgreich, Sie können sie jedoch noch nicht verwenden. Wenn Sie versuchen, nach Version nach Rust und Cargo zu suchen, wird eine Fehlermeldung angezeigt. Normalerweise müssen Sie Ihrem PATH eine Sprache hinzufügen, um sie in der Befehlszeile verwenden zu können.
Glücklicherweise erledigt Rust dies für Sie und Sie müssen lediglich Ihren Pi neu starten oder sich abmelden und wieder anmelden. Jetzt sollte die Überprüfung auf Rost und Fracht funktionieren.
Sie werden alle Ihre Skripte vom Terminal aus kompilieren und erstellen, benötigen aber auch einen Code-Editor. In diesem Projekt verwende ich Code-OSS, einen Community-Build von VS-Code, den Sie auf dem Pi installieren können, der jedoch nicht unbedingt erforderlich ist. Jeder Code-Editor wird es tun.
Rust-Projekt erstellen
Um ein Rust-Projekt zu erstellen, erstellen Sie ein neues Verzeichnis und geben Sie es ein
mkdir YourFolder cd YourFolder
Verwenden Sie Cargo, um ein neues Rust-Projekt zu erstellen.
cargo new YourProject
Sie erhalten eine Bestätigung, dass das neue Projekt erstellt wurde.
Geben Sie den neuen Projektordner ein und listen Sie dessen Inhalt auf.
cd YourProject ls
Sie sehen einen Ordner mit dem Namen src und eine Datei mit dem Namen Cargo.toml . Diese beiden Elemente bilden die Grundlage jedes Rust-Projekts.
Ein einfaches Rostprojekt, erklärt
Lassen Sie uns zuerst das src-Verzeichnis öffnen und main.rs in einem Code-Editor öffnen. Sie werden sehen, dass das neue Projekt ein "Hello World" -Skript enthält, mit dem Sie loslegen können.
Die Rust-Syntax ist denjenigen vertraut, die zuvor C-Sprachen oder Java verwendet haben. Dies unterscheidet sich von Python, bei dem Leerzeichen, Semikolons und geschweifte Klammern verwendet werden, um Codeblöcke zu kennzeichnen. Rust-Code muss kompiliert und erstellt werden, bevor er ausgeführt wird.
Öffnen Sie Cargo.toml im übergeordneten Ordner des Projekts in einem Code-Editor. Jeder, der JavaScript oder Ruby verwendet, wird dies wahrscheinlich als vertraut empfinden. In dieser Datei sind Projektinformationen, Anweisungen zum Erstellen und Abhängigkeiten aufgeführt. Pakete heißen Crates in Rust, und wir werden später eines verwenden, um auf die GPIO-Pins des Raspberry Pi zuzugreifen.
Erstellen des Beispielprojekts
Stellen Sie im Terminalfenster sicher, dass Sie sich in Ihrem Projektverzeichnis befinden, und erstellen Sie das Projekt.
cargo build
Dadurch wird in Ihrem Projekt ein weiterer Ordner mit dem Namen target erstellt . Sie werden auch eine neue Datei namens Cargo.lock bemerken . Wenn Sie mit einem Team arbeiten oder etwas für die Bereitstellung auf einem Server codieren, sperrt diese Datei das Projekt auf eine Version, die zuvor kompiliert und erfolgreich erstellt wurde. Während des Lernens können Sie diese Datei ignorieren.
Innerhalb des Zielordners befindet sich ein Unterordner namens debug, in dem sich Ihre ausführbare Datei befindet. Führen Sie Ihr Projekt auf Mac und Linux aus, indem Sie Folgendes eingeben:
./YourProject
Unter Windows haben Sie eine neue EXE- Datei, die Sie per Doppelklick ausführen können.
Erfolg! Lassen Sie uns dieses Projekt in etwas konvertieren, das die GPIO-Pins verwendet.
GPIO-Pins einrichten
Wir werden die rust_gpiozero-Kiste von Rahul Thakdoor für dieses Projekt verwenden. Obwohl dies nicht die einzige Möglichkeit ist, auf GPIO-Pins zuzugreifen, ähnelt diese Kiste der Python GPIO Zero-Bibliothek.
Anstatt die Kiste manuell herunterzuladen, fügen Sie ihren Namen unter Abhängigkeiten in die Datei Cargo.toml ein.
[dependencies] rust_gpiozero = "0.2.0"
Speichern Sie es und öffnen Sie Ihr Terminal. In dieser Phase macht es keinen Sinn, das Projekt neu zu erstellen, da sich kein Code geändert hat. Cargo bietet eine Funktion, die überprüft, ob der Code kompiliert wird und ob alle Abhängigkeiten vorhanden sind.
cargo check
Abhängig von Ihrer Verbindung kann dies einige Minuten dauern, aber Sie müssen dies nur einmal tun, wenn Sie Elemente in der Cargo.toml-Datei hinzufügen oder ändern.
Hallo Blink
Jetzt werden Sie Ihr Hallo-Welt-Skript in ein blinkendes Licht-Skript ändern. Öffnen Sie zunächst main.rs in Ihrem Editor. Wenn Sie die Codierung überspringen möchten, finden Sie das fertige Skript auf Github Gist.
Sie müssen dem Compiler mitteilen, dass Sie die Bibliothek rust_gpiozero verwenden. Fügen Sie daher ganz oben im Skript einen Verweis auf die Bibliothek hinzu.
use rust_gpiozero::*;
Ähnlich wie bei der regulären Python-basierten Blinkskizze müssen wir eine Möglichkeit bieten, eine Verzögerung zwischen dem Ein- und Ausschalten der LED hinzuzufügen. In Rust verwenden wir dazu zwei Elemente der Standardbibliothek:
use std::thread::sleep; use std::time::Duration; // note the capital D!
Fügen Sie nun in Ihrer Hauptfunktion eine Variable für Ihren LED-Pin und eine Schleife hinzu, die die blinkenden Anweisungen enthält.
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)); }
Das ist es! Speichern Sie Ihr Skript und kehren Sie zum Terminal zurück.
Testen Sie es aus
Erstellen Sie das Projekt erneut, um die ausführbare Datei zu aktualisieren. Alternativ wird das Skript mit dem Befehl run in einem einzigen Schritt erstellt und ausgeführt:
cargo run
Sie sollten eine blinkende LED sehen. Gut gemacht! Sie haben gerade Ihr erstes Hardware-Programm mit Rust erstellt. Drücken Sie Strg-C, um zum Terminal zurückzukehren. Wenn Sie Fehler haben, überprüfen Sie Ihren Code gründlich auf fehlende Doppelpunkte, Semikolons oder Klammern.
Eine aufregende Zukunft mit Rost auf Himbeer-PU
Derzeit besteht für Python keine Gefahr, durch Rust ersetzt zu werden. Es ist leicht zu erlernen und Python wird in den kommenden Jahren viele Anwendungen haben.
Das heißt, Rust hat einiges zu bieten, und es gibt viele Gründe, warum Sie die Sprache lernen sollten. 7 Gründe, warum Rust die aufregendste neue Programmiersprache ist 7 Gründe, warum Rust die aufregendste neue Programmiersprache ist Möchten Sie mit dem Programmieren beginnen? Deshalb ist Rust die aufregendste und am leichtesten zugängliche neue Programmiersprache. Weiterlesen !
Erkunde mehr über: Raspberry Pi, Rust.