Hvordan komme i gang med rust på bringebær Pi
Annonse
Hvis du er interessert i programmering, har du sannsynligvis hørt om Rust 7 Reasons Rust Er det mest spennende nye programmeringsspråket 7 Reasons Rust Er det mest spennende nye programmeringsspråket Vil du komme i gang med programmering? Her er grunnen til at Rust er det mest spennende og tilgjengelige nye programmeringsspråket. Les mer . Språket, designet av Mozilla, er mye elsket av utviklere og fortsetter å vokse hos hengivne.
Raspberry Pi er den sveitsiske hærkniven til små datamaskiner, og den er perfekt for å lære seg kode. La oss kombinere de to og installere Rust på en Raspberry Pi.
Sette opp bringebær Pi
For dette prosjektet trenger du:
- Bringebær Pi.
- LED.
- 220-1k Ohm-motstand.
- Breadboard og hookup ledninger.
Sett opp kretsen din med GPIO 18 koblet til den positive bena til LED, og den negative benen til LED til motstanden, og tilbake til en GND-pinne på Pi.
Denne opplæringen ble laget med en Raspberry Pi 3B + med Raspbian Stretch i skrivebordsmodus. Det ville fungere helt greit gjennom en ekstern SSH-tilkobling, selv om forskjellige modeller av Pi og forskjellige operativsystemer kan ha forskjellige resultater.
Hvordan installere rust på bringebær Pi
Hvis du vil installere rust, kan du gå til rust-lang installasjonsside og kopiere installasjonskommandoen til terminalen. Når du blir bedt om det, velger du en standardinstallasjon.
Installasjonsprogrammet vil varsle deg når det er fullført, selv om installasjonen kan ta litt tid avhengig av tilkoblingen din.
Etter installasjon
Installasjonen er vellykket, men du kan ikke begynne å bruke den helt ennå. Hvis du prøver å se etter Rust and Cargo etter versjon, vil du få en feil. Vanligvis må du legge til et språk til PATH for å bruke dem på kommandolinjen.
Heldigvis gjør Rust dette for deg, og alt du trenger å gjøre er å starte Pi-en på nytt, eller logge ut og inn igjen. Nå bør det se etter Rust og Cargo.
Du vil samle og bygge alle skriptene dine fra terminalen, men du trenger også en kodeditor. I dette prosjektet skal jeg bruke Code-OSS, et samfunnsbygg av VS-kode som du kan installere på Pi, men det er ikke viktig. Enhver koderedigerer vil gjøre det.
Lage et rustprosjekt
For å lage et Rust-prosjekt, lag en ny katalog og skriv den inn ved å skrive
mkdir YourFolder cd YourFolder
Bruk Cargo til å lage et nytt Rust-prosjekt.
cargo new YourProject
Du vil få en bekreftelse på at det nye prosjektet er opprettet.
Gå inn i den nye prosjektmappen og liste innholdet.
cd YourProject ls
Du vil se en mappe som heter src og en fil som heter Cargo.toml . Disse to elementene utgjør grunnlaget for hvert Rust-prosjekt.
Et enkelt rustprosjekt, forklart
La oss først åpne src-katalogen og åpne main.rs i en kodeditor . Du vil se at det nye prosjektet kommer med et "Hello World" -skript for å komme i gang.
Rust syntaks vil være kjent for de som har brukt C-språk eller Java før. Dette skiller seg fra Python som bruker hvit mellomrom, halvkolon og seler for å betegne kodeblokker. Rustkoden må settes sammen og bygges før den kjører.
Tilbake i prosjektets overordnede mappe, åpne opp Cargo.toml i en kodeditor . Alle som har kodet i JavaScript eller Ruby vil sannsynligvis finne dette kjent. Prosjektinformasjon, bygginstruksjoner og avhengigheter er alle oppført i denne filen. Pakker kalles Crates in Rust, og vi bruker en senere for å få tilgang til Raspberry Pis GPIO-pinner.
Bygge prøveprosjektet
Tilbake i terminalvinduet, sørg for at du er i prosjektkatalogen din og bygger prosjektet.
cargo build
Dette oppretter en annen mappe i prosjektet som heter mål . Du vil også legge merke til en ny fil som heter Cargo.lock . Når du jobber med et team eller koder noe for å distribuere til en server, låser denne filen prosjektet til en versjon som tidligere har blitt kompilert og bygget vellykket. Mens du lærer, kan du trygt ignorere denne filen.
I målmappen er en undermappe som heter debug, og det er her den kjørbare filen vil være. Kjør prosjektet ditt på Mac og Linux ved å skrive:
./YourProject
På Windows har du en ny EXE- fil som du kan kjøre ved å dobbeltklikke på.
Suksess! La oss konvertere dette prosjektet til noe som bruker GPIO-pinnene.
Sette opp GPIO-pins
Vi bruker rust_gpiozero-kassen av Rahul Thakdoor for dette prosjektet. Selv om det ikke er den eneste måten å få tilgang til GPIO-pinner, er denne kassen designet for å være lik Python GPIO Zero-biblioteket.
I stedet for å laste ned kassen manuelt, lim inn navnet under avhengigheter i Cargo.toml-filen.
[dependencies] rust_gpiozero = "0.2.0"
Lagre den, og åpne terminalen. På dette stadiet er det ingen vits i å gjenoppbygge prosjektet ettersom ingen kode har endret seg. Cargo har en funksjon som vil sjekke at koden vil kompilere og at alle avhengigheter er til stede.
cargo check
Avhengig av tilkoblingen din kan dette ta noen minutter, men du trenger bare å gjøre det en gang når du legger til eller endrer elementer i Cargo.toml-filen.
Hallo Blink
Nå vil du endre hallo-verdensskriptet til et blinkende lett manus. Begynn med å åpne main.rs i redaktøren din. Hvis du vil hoppe over koding, kan du finne det ferdige skriptet på Github Gist.
Du må gi kompilatoren beskjed om at du bruker rust_gpiozero-biblioteket, så helt øverst i skriptet legger du til en referanse til biblioteket.
use rust_gpiozero::*;
På samme måte som den vanlige Python-baserte blinkskissen, trenger vi en måte å legge til en forsinkelse mellom å slå LED av og på. I Rust bruker vi to elementer i standardbiblioteket for å gjøre dette:
use std::thread::sleep; use std::time::Duration; // note the capital D!
Nå i hovedfunksjonen din, legger du til en variabel for LED-pinnen og en sløyfe som inneholder blinkende instruksjoner.
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)); }
Det er det! Lagre skriptet ditt, og gå tilbake til terminalen.
Test det ut
Bygg prosjektet igjen for å oppdatere den kjørbare. Alternativt bygger og kjører run-kommandoen skriptet i et enkelt trinn:
cargo run
Du bør se en blinkende LED. Bra gjort! Du har nettopp laget ditt første maskinvareprogram med Rust. Trykk Ctrl-C for å gå tilbake til terminalen. Hvis du har noen feil, må du sjekke koden grundig for eventuelle tapte tykktarmer, semikolon eller parentes.
En spennende fremtid med rust på bringebær Pi
For øyeblikket er ikke Python i noen fare for å bli erstattet av Rust. Det er enkelt å lære, og Python vil ha mange bruksområder i årene som kommer.
Når det er sagt, har Rust ganske surr rundt seg, og det er mange grunner til at du bør lære språket 7 Grunner Rust er det mest spennende nye programmeringsspråket 7 Grunner Rust Er det mest spennende nye programmeringsspråket Vil du komme i gang med programmering? Her er grunnen til at Rust er det mest spennende og tilgjengelige nye programmeringsspråket. Les mer !
Utforsk mer om: Raspberry Pi, Rust.