Πώς να ξεκινήσετε με τη σκουριά στο Raspberry Pi
Διαφήμιση
Αν ενδιαφέρεστε για τον προγραμματισμό, ίσως έχετε ακούσει για Rust 7 Λόγοι Rust είναι η πιο συναρπαστική νέα γλώσσα προγραμματισμού 7 λόγοι Rust είναι η πιο συναρπαστική νέα γλώσσα προγραμματισμού Θέλετε να ξεκινήσετε με τον προγραμματισμό; Εδώ είναι γιατί η Rust είναι η πιο συναρπαστική και προσιτή νέα γλώσσα προγραμματισμού. Διαβάστε περισσότερα . Η γλώσσα, που έχει σχεδιαστεί από την Mozilla, αγαπήθηκε ευρέως από τους προγραμματιστές και συνεχίζει να αυξάνεται στους αφοσιωμένους.
Το Raspberry Pi είναι το σουηδικό μαχαίρι στρατού των μικρών υπολογιστών και είναι ιδανικό για την εκμάθηση κώδικα. Ας συνδυάσουμε τα δύο και εγκαταστήσουμε το Rust σε ένα Raspberry Pi.
Ρύθμιση του σμέουρου Pi
Για αυτό το έργο θα χρειαστείτε:
- Raspberry Pi.
- LED.
- 220-1k Ohm αντίσταση.
- Συρματόπλεγμα και καλώδια σύνδεσης.
Ρυθμίστε το κύκλωμά σας με το GPIO 18 που είναι συνδεδεμένο στο θετικό πόδι της λυχνίας LED και το αρνητικό σκέλος της λυχνίας LED στην αντίσταση και πίσω σε μια πείρο GND στο Pi.
Αυτό το σεμινάριο έγινε χρησιμοποιώντας ένα Raspberry Pi 3B + με Raspbian Stretch σε λειτουργία επιφάνειας εργασίας. Θα λειτουργούσε πολύ καλά μέσω μιας απομακρυσμένης σύνδεσης SSH, αν και διαφορετικά μοντέλα της Pi και διαφορετικά λειτουργικά συστήματα μπορεί να έχουν διαφορετικά αποτελέσματα.
Πώς να εγκαταστήσετε τη σκουριά στο Raspberry Pi
Για να εγκαταστήσετε σκουριά, κατευθυνθείτε στη σελίδα εγκατάστασης σκουριάς και αντιγράψτε την εντολή εγκατάστασης στο τερματικό σας. Όταν σας ζητηθεί, επιλέξτε μια προεπιλεγμένη εγκατάσταση.
Το πρόγραμμα εγκατάστασης θα σας ειδοποιήσει όταν ολοκληρωθεί, αν και η εγκατάσταση μπορεί να διαρκέσει αρκετό χρόνο, ανάλογα με τη σύνδεσή σας.
Μετά την εγκατάσταση
Η εγκατάσταση είναι επιτυχής, αλλά δεν μπορείτε να την χρησιμοποιήσετε ακόμα. Εάν προσπαθήσετε να ελέγξετε για το Rust and Cargo by version, θα λάβετε ένα λάθος. Συνήθως, πρέπει να προσθέσετε μια γλώσσα στο PATH για να τα χρησιμοποιήσετε στη γραμμή εντολών.
Ευτυχώς η σκουριά κάνει αυτό για εσάς και το μόνο που χρειάζεται να κάνετε είναι να επανεκκινήσετε το Pi σας ή να αποσυνδεθείτε ξανά. Τώρα ο έλεγχος για το Rust and Cargo θα πρέπει να λειτουργήσει.
Θα καταρτίζετε και δημιουργείτε όλα τα σενάρια σας από το τερματικό, αλλά θα χρειαστείτε επίσης ένα πρόγραμμα επεξεργασίας κώδικα. Σε αυτό το έργο θα χρησιμοποιήσω το Code-OSS, μια κοινότητα που δημιουργεί κώδικα VS που μπορείτε να εγκαταστήσετε στο Pi, αλλά δεν είναι απαραίτητο. Οποιοσδήποτε επεξεργαστής κώδικα θα κάνει.
Δημιουργία Έργου Σκουριάς
Για να δημιουργήσετε ένα έργο Rust, δημιουργήστε έναν νέο κατάλογο και πληκτρολογήστε τον
mkdir YourFolder cd YourFolder
Χρησιμοποιήστε το Cargo για να δημιουργήσετε ένα νέο έργο Rust.
cargo new YourProject
Θα λάβετε μια επιβεβαίωση ότι το νέο έργο έχει δημιουργηθεί.
Εισαγάγετε το νέο φάκελο του έργου και καταγράψτε τα περιεχόμενά του
cd YourProject ls
Θα δείτε ένα φάκελο με όνομα src και ένα αρχείο που ονομάζεται Cargo.toml . Αυτά τα δύο στοιχεία αποτελούν τη βάση κάθε έργου Rust.
Ένα έργο απλού σκουριάς, εξηγείται
Πρώτα, αφήνετε να ανοίξετε τον κατάλογο src και ανοίξτε το main.rs σε έναν επεξεργαστή κώδικα. Θα δείτε ότι το νέο έργο συνοδεύεται από ένα σενάριο "Hello World" για να ξεκινήσετε.
Η σύνταξη σκουριάς θα είναι γνωστή σε όσους έχουν χρησιμοποιήσει C γλώσσες ή Java πριν. Αυτό διαφέρει από το Python το οποίο χρησιμοποιεί κενό διάστημα, ημιδιαφανείς και τιράντες για να υποδηλώνει μπλοκ κώδικα. Ο κώδικας σκουριάς πρέπει να μεταγλωττιστεί και να κατασκευαστεί πριν εκτελεστεί.
Επιστροφή στον γονικό φάκελο του έργου, ανοίξτε το Cargo.toml σε ένα πρόγραμμα επεξεργασίας κώδικα. Όποιος έχει κωδικοποιήσει το JavaScript ή το Ruby θα βρει πιθανώς αυτό το γνωστό. Οι πληροφορίες έργου, οι οδηγίες κατασκευής και οι εξαρτήσεις είναι όλες αναφερόμενες σε αυτό το αρχείο. Τα πακέτα ονομάζονται Κιβώτια στη Rust και θα χρησιμοποιήσουμε ένα αργότερα για να αποκτήσετε πρόσβαση στις ακίδες GPIO του Raspberry Pi.
Δημιουργία του έργου δείγματος
Πίσω στο παράθυρο τερματικού, βεβαιωθείτε ότι βρίσκεστε στον κατάλογο του έργου σας και δημιουργήστε το έργο.
cargo build
Αυτό δημιουργεί έναν άλλο φάκελο στο έργο σας που ονομάζεται στόχος . Θα παρατηρήσετε επίσης ένα νέο αρχείο που ονομάζεται Cargo.lock . Όταν εργάζεστε με μια ομάδα ή κωδικοποιείτε κάτι για να αναπτύξετε σε ένα διακομιστή, αυτό το αρχείο κλειδώνει το έργο σε μια έκδοση που έχει προηγουμένως καταρτιστεί και κατασκευαστεί με επιτυχία. Κατά τη διάρκεια της μάθησης, μπορείτε με ασφάλεια να αγνοήσετε αυτό το αρχείο.
Μέσα στον φάκελο προορισμού υπάρχει ένας υποφάκελος που ονομάζεται εντοπισμός σφαλμάτων και αυτό είναι όπου θα εκτελεστεί το εκτελέσιμο αρχείο σας. Σε Mac και Linux, εκτελέστε το έργο σας πληκτρολογώντας:
./YourProject
Στα Windows, θα έχετε ένα νέο αρχείο EXE το οποίο μπορείτε να εκτελέσετε κάνοντας διπλό κλικ.
Επιτυχία! Ας μετατρέψουμε αυτό το έργο σε κάτι που χρησιμοποιεί τους ακροδέκτες GPIO.
Ρύθμιση ακίδων GPIO
Θα χρησιμοποιήσουμε το κιβώτιο rust_gpiozero από τον Rahul Thakdoor για αυτό το έργο. Παρόλο που δεν είναι ο μόνος τρόπος πρόσβασης στις καρφίτσες GPIO, αυτό το κλουβί σχεδιάστηκε για να είναι παρόμοιο με τη βιβλιοθήκη Python GPIO Zero.
Αντί να κατεβάσετε το κιβώτιο με το χέρι, επικολλήστε το όνομα του υπό τις εξαρτήσεις στο αρχείο Cargo.toml.
[dependencies] rust_gpiozero = "0.2.0"
Αποθηκεύστε το και ανοίξτε το τερματικό σας. Σε αυτό το στάδιο, δεν έχει νόημα η ανακατασκευή του έργου καθώς δεν έχει αλλάξει κανένας κώδικας. Το Cargo παρέχει μια λειτουργία που θα ελέγξει ότι ο κώδικας θα μεταγλωττιστεί και ότι υπάρχουν όλες οι εξαρτήσεις.
cargo check
Ανάλογα με τη σύνδεσή σας, αυτό μπορεί να διαρκέσει μερικά λεπτά, αλλά χρειάζεται να το κάνετε μόνο μία φορά, όταν προσθέτετε ή αλλάζετε στοιχεία στο αρχείο Cargo.toml.
Γεια σας
Τώρα θα αλλάξετε το σενάριο hello world σε ένα σενάριο που αναβοσβήνει. Ξεκινήστε ανοίγοντας το main.rs στον επεξεργαστή σας. Αν θέλετε να παραλείψετε την κωδικοποίηση, μπορείτε να βρείτε το ολοκληρωμένο σενάριο στο Github Gist.
Θα πρέπει να αφήσετε τον μεταγλωττιστή να γνωρίζει ότι χρησιμοποιείτε τη βιβλιοθήκη rust_gpiozero, έτσι ώστε στην κορυφή του σεναρίου να προσθέσετε μια αναφορά στη βιβλιοθήκη.
use rust_gpiozero::*;
Όπως η κανονική σκίτσο αναβοσβήνει με βάση το Python, χρειαζόμαστε έναν τρόπο να προσθέσουμε μια καθυστέρηση μεταξύ της ενεργοποίησης και απενεργοποίησης της λυχνίας LED. Στη Rust, χρησιμοποιούμε δύο στοιχεία της συνηθισμένης βιβλιοθήκης για να το κάνουμε αυτό:
use std::thread::sleep; use std::time::Duration; // note the capital D!
Τώρα στην κύρια λειτουργία σας, προσθέστε μια μεταβλητή για τον ακροδέκτη LED σας και ένα βρόχο για να περιέχει τις οδηγίες που αναβοσβήνουν.
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)); }
Αυτό είναι! Αποθηκεύστε το σενάριο σας και επιστρέψτε στο τερματικό.
Δοκιμάστε το
Δημιουργήστε ξανά το έργο για να ενημερώσετε το εκτελέσιμο αρχείο. Εναλλακτικά, η εντολή εκτέλεσης δημιουργεί και εκτελεί το σενάριο σε ένα μόνο βήμα:
cargo run
Θα πρέπει να δείτε ένα LED που αναβοσβήνει. Μπράβο! Μόλις κάνατε το πρώτο σας υλικό με το Rust. Πατήστε Ctrl-C για έξοδο πίσω στο τερματικό. Αν έχετε λάθη, ελέγξτε προσεκτικά τον κωδικό σας για τυχόν χαμένες στήλες, ημίξηνα ή παρενθέσεις.
Ένα συναρπαστικό μέλλον με σκουριά στο σμέουρο Pi
Επί του παρόντος, η Python δεν κινδυνεύει να αντικατασταθεί από την Rust. Είναι εύκολο να μάθει και η Python θα έχει πολλές εφαρμογές για τα επόμενα χρόνια.
Αυτός ο λόγος, Rust έχει αρκετά buzz γύρω από αυτό, και υπάρχουν πολλοί λόγοι για τους οποίους θα πρέπει να μάθετε τη γλώσσα 7 Λόγοι Rust είναι η πιο συναρπαστική νέα γλώσσα προγραμματισμού 7 λόγοι Rust είναι η πιο συναρπαστική νέα γλώσσα προγραμματισμού Θέλετε να ξεκινήσετε με τον προγραμματισμό; Εδώ είναι γιατί η Rust είναι η πιο συναρπαστική και προσιτή νέα γλώσσα προγραμματισμού. Διαβάστε περισσότερα !
Εξερευνήστε περισσότερα σχετικά με: Raspberry Pi, Rust.