Letar du efter ett sätt att komma igång med Rust?  Så här bygger du ett grundläggande hårdvaruprogram med Rust på Raspberry Pi.

Hur man kommer igång med rost på hallonpi

Annons Om du är intresserad av programmering har du antagligen hört talas om Rust 7 Reasons Rust är det mest spännande nya programmeringsspråket 7 Reasons Rust är det mest spännande nya programmeringsspråket Vill du komma igång med programmering? Här är varför Rust är det mest spännande och tillgängliga nya programmeringsspråket. Läs mer . Språ

Annons

Om du är intresserad av programmering har du antagligen hört talas om Rust 7 Reasons Rust är det mest spännande nya programmeringsspråket 7 Reasons Rust är det mest spännande nya programmeringsspråket Vill du komma igång med programmering? Här är varför Rust är det mest spännande och tillgängliga nya programmeringsspråket. Läs mer . Språket, designat av Mozilla, är mycket älskat av utvecklare och fortsätter att växa hos hängivna.

Raspberry Pi är den schweiziska armékniven på små datorer, och den är perfekt för att lära sig kod. Låt oss kombinera de två och installera Rust på en Raspberry Pi.

Ställa in din hallonpi

För detta projekt behöver du:

  • Raspberry Pi.
  • LED.
  • 220-1k Ohm-motstånd.
  • Breadboard- och anslutningskablar.

Ett kretsschema som visar en LED och motstånd som är fäst vid GPIO 18 och GND-stiften på en Raspberry Pi

Ställ in din krets med GPIO 18 ansluten till den positiva benen på lysdioden, och den negativa benen på lysdioden till motståndet, och tillbaka till en GND-stift på Pi.

Denna handledning gjordes med en Raspberry Pi 3B + med Raspbian Stretch i skrivbordsläge. Det skulle fungera perfekt bra via en fjärr SSH-anslutning, även om olika modeller av Pi och olika operativsystem kan ha olika resultat.

Hur man installerar rost på Raspberry Pi

Terminalkommandot krävs för att installera Rust

För att installera rost, gå till rost-lang installationssidan och kopiera installationskommandot till din terminal. När du uppmanas väljer du en standardinstallation.

De tre val som presenteras av Rust-installatören.

Installatören meddelar dig när den är klar, men installationen kan ta lite tid beroende på din anslutning.

Efter installationen

Rustc och Cargo är installerade, men för närvarande inte i PATH

Installationen är framgångsrik, men du kan inte börja använda den ännu. Om du försöker kontrollera om Rust and Cargo per version får du ett fel. Vanligtvis måste du lägga till ett språk i din PATH för att använda dem på kommandoraden.

Lyckligtvis gör Rust detta för dig, och allt du behöver göra är att starta om din Pi, eller logga ut och in igen. Kontrollera nu efter rost och last bör fungera.

Testa rost och last i PATH med deras versionnummer.

Du kommer att sammanställa och bygga alla dina skript från terminalen, men du behöver också en kodredigerare. I det här projektet kommer jag att använda Code-OSS, en samhällsbyggnad av VS-kod som du kan installera på Pi, men det är inte nödvändigt. Alla kodredigerare gör det.

Skapa ett rostprojekt

För att skapa ett Rust-projekt, skapa en ny katalog och ange den genom att skriva

 mkdir YourFolder cd YourFolder 

Använd Cargo för att skapa ett nytt Rust-projekt.

 cargo new YourProject 

Du får en bekräftelse på att det nya projektet har skapats.
Skapa en ny katalog i terminalen och lägga ett tomt rostprojekt i den

Gå in i den nya projektmappen och lista innehållet.

 cd YourProject ls 

Du ser en mapp med namnet src och en fil som heter Cargo.toml . Dessa två element utgör grunden för varje Rust-projekt.

Ett enkelt rostprojekt, förklarat

Ett exempel på hejvärldsrostskrift

Låt oss först öppna src-katalogen och öppna main.rs i en kodredigerare . Du kommer att se att det nya projektet kommer med ett "Hello World" -skript för att komma igång.

Rostsyntax kommer att vara bekant för dem som tidigare har använt C-språk eller Java. Detta skiljer sig från Python som använder vitrum, halvkolon och hängslen för att beteckna kodblock. Rostkoden måste sammanställas och byggas innan den körs.

En tom Cargo.toml-fil

Tillbaka i projektets överordnade mapp öppnar du Cargo.toml i en kodredigerare . Alla som har kodat i JavaScript eller Ruby kommer sannolikt att hitta detta bekant. Projektinformation, bygginstruktioner och beroenden listas alla i den här filen. Paket kallas Crates in Rust, och vi kommer att använda ett senare för att komma åt Raspberry Pis GPIO-stift.

Bygga provprojektet

Tillbaka i terminalfönstret, se till att du är i din projektkatalog och bygga projektet.

 cargo build 

Använd kommandot Cargo Build för att bygga provprojektet

Detta skapar en annan mapp i ditt projekt som kallas mål . Du kommer också att märka en ny fil som heter Cargo.lock . När du arbetar med ett team eller kodar något för att distribuera till en server, låser den här filen projektet till en version som tidigare har sammanställts och byggts framgångsrikt. När du lär dig kan du säkert ignorera den här filen.

Inom målmappen finns en undermapp som heter debug, och det är här din körbara fil kommer att vara. Kör ditt projekt på Mac och Linux genom att skriva:

 ./YourProject 

På Windows har du en ny EXE- fil som du kan köra genom att dubbelklicka på.

Filstrukturen för det byggda rostprojektet tillsammans med Hej världsprogrammet körs.

Framgång! Låt oss konvertera detta projekt till något som använder GPIO-stiften.

Ställa in GPIO-stift

Lägga till Rust GPIO Zero lådan i Cargo.toml-filen

Vi kommer att använda rust_gpiozero lådan av Rahul Thakdoor för detta projekt. Även om det inte är det enda sättet att få åtkomst till GPIO-stift, är denna låda utformad för att likna Python GPIO Zero-biblioteket.

I stället för att ladda ner lådan manuellt klistra in namnet under beroenden i Cargo.toml-filen.

 [dependencies] rust_gpiozero = "0.2.0" 

Spara det och öppna din terminal. I detta skede är det ingen mening med att bygga om projektet eftersom ingen kod har ändrats. Cargo tillhandahåller en funktion som kontrollerar att koden kommer att kompilera och att alla beroenden finns.

 cargo check 

Lastkontroll kontrollerar koden för fel och installerar beroenden

Beroende på din anslutning kan det ta några minuter, men du behöver bara göra det en gång när du lägger till eller ändrar objekt i filen Cargo.toml.

Hej Blink

Raspberry Pi med en LED-anslutning

Nu kommer du att ändra ditt hej världsskript till ett blinkande lätt manus. Börja med att öppna main.rs i din redaktör. Om du vill hoppa över kodningen kan du hitta det färdiga skriptet på Github Gist.

Du måste låta kompilatorn veta att du använder rust_gpiozero-biblioteket, så längst upp i skriptet lägg till en referens till biblioteket.

 use rust_gpiozero::*; 

I likhet med den vanliga Python-baserade blinkskissen behöver vi ett sätt att lägga till en fördröjning mellan att slå på och stänga av lysdioden. I Rust använder vi två element i standardbiblioteket för att göra detta:

 use std::thread::sleep; use std::time::Duration; // note the capital D! 

I din huvudfunktion, lägg till en variabel för din LED-stift och en slinga för att innehålla blinkande instruktioner.

 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 är allt! Spara ditt skript och gå tillbaka till terminalen.

Testa det

En bild som visar LED-lampan

Bygg projektet igen för att uppdatera körbara. Alternativt bygger och kör skriptkommandot i ett enda steg:

 cargo run 

Du bör se en blinkande LED. Bra gjort! Du har precis gjort ditt första hårdvaruprogram med Rust. Tryck på Ctrl-C för att gå tillbaka till terminalen. Om du har några fel kan du kontrollera din kod noggrant för eventuella missade kolon, halvkolon eller parentes.

En spännande framtid med rost på hallon Pi

För närvarande riskerar inte Python att ersättas av Rust. Det är lätt att lära sig och Python kommer att ha många applikationer under många år framöver.

Som sagt, Rust har ett riktigt liv runt sig, och det finns många skäl till varför du bör lära dig språket 7 skäl Rust är det mest spännande nya programmeringsspråket 7 skäl Rust är det mest spännande nya programmeringsspråket Vill du komma igång med programmering? Här är varför Rust är det mest spännande och tillgängliga nya programmeringsspråket. Läs mer !

Utforska mer om: Raspberry Pi, Rust.