91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在樹莓派上開始使用Rust

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2020-01-30 17:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果您對(duì)編程感興趣,那么您可能聽說過Rust。該語言由Mozilla設(shè)計(jì),受到開發(fā)人員的廣泛喜愛,并繼續(xù)在奉獻(xiàn)者中成長(zhǎng)。

Raspberry Pi是小型計(jì)算機(jī)的瑞士軍刀,非常適合學(xué)習(xí)代碼。我們將兩者結(jié)合起來,并在Raspberry Pi上安裝Rust。

設(shè)置Raspberry Pi

對(duì)于此項(xiàng)目,您將需要:

Raspberry Pi

LED

220-1k歐姆電阻。

面包板和接線。

如何在樹莓派上開始使用Rust

使用GPIO 18連接到LED的正極,將LED的負(fù)極連接到電阻,然后再回到Pi的GND引腳,設(shè)置電路。

本教程是使用Raspberry Pi 3B +和Raspbian Stretch在桌面模式下制作的。即使不同型號(hào)的Pi和不同的操作系統(tǒng)可能會(huì)產(chǎn)生不同的結(jié)果,它也可以通過遠(yuǎn)程SSH連接正常運(yùn)行。

如何在Raspberry Pi上安裝Rust

要安裝rust,請(qǐng)轉(zhuǎn)到rust-lang安裝頁面,然后將install命令復(fù)制到您的終端中。出現(xiàn)提示時(shí),選擇默認(rèn)安裝。

安裝程序?qū)⒃谕瓿蓵r(shí)通知您,盡管安裝可能會(huì)花費(fèi)一些時(shí)間,具體取決于您的連接。/p》 安裝后

安裝成功,但是您還不能開始使用它。如果嘗試按版本檢查Rust和Cargo,則會(huì)收到錯(cuò)誤消息。通常,您必須在PATH中添加一種語言才能在命令行上使用它們。

幸運(yùn)的是Rust為您做到了,而您所需要做的就是重新啟動(dòng)Pi或注銷并再次登錄?,F(xiàn)在檢查Rust和Cargo應(yīng)該可以使用。

您將在終端上編譯和構(gòu)建所有腳本,但是您還需要代碼編輯器。在這個(gè)項(xiàng)目中,我將使用Code-OSS,這是VS Code的社區(qū)版本,您可以在Pi上安裝它,但這不是必需的。任何代碼編輯器都可以。

創(chuàng)建Rust項(xiàng)目

要?jiǎng)?chuàng)建Rust項(xiàng)目,請(qǐng)創(chuàng)建一個(gè)新目錄,然后輸入

mkdir YourFolder

cd YourFolder

使用Cargo創(chuàng)建一個(gè)新的Rust項(xiàng)目。

cargo new YourProject

您將確認(rèn)已經(jīng)創(chuàng)建了新項(xiàng)目。

輸入新項(xiàng)目文件夾并列出其內(nèi)容。

cd YourProject

ls

您會(huì)看到一個(gè)名為 src 和名為 Cargo.toml 的文件。這兩個(gè)元素構(gòu)成了每個(gè)Rust項(xiàng)目的基礎(chǔ)。

一個(gè)簡(jiǎn)單的Rust項(xiàng)目,解釋了

首先,讓我們打開src目錄,然后在代碼編輯器中打開 main.rs 。您會(huì)看到新項(xiàng)目隨附了一個(gè)“ Hello World”腳本,可以幫助您入門。

以前使用C語言Java的人都會(huì)熟悉Rust語法。這與使用空白,分號(hào)和花括號(hào)表示代碼塊的Python不同。 Rust代碼必須在運(yùn)行之前進(jìn)行編譯和構(gòu)建。

返回項(xiàng)目的父文件夾,在其中打開 Cargo.toml 代碼編輯器。任何使用JavaScript或Ruby進(jìn)行編碼的人都可能會(huì)發(fā)現(xiàn)這很熟悉。項(xiàng)目信息,構(gòu)建說明和依賴項(xiàng)都在此文件中列出。包在Rust中稱為板條箱,我們稍后將使用它來訪問Raspberry Pi的GPIO引腳。

構(gòu)建示例項(xiàng)目

返回終端窗口,請(qǐng)確保您位于項(xiàng)目目錄中并構(gòu)建項(xiàng)目。

cargo build

這將創(chuàng)建另一個(gè)文件夾在名為 target 的項(xiàng)目中。您還會(huì)注意到一個(gè)名為 Cargo.lock 的新文件。與團(tuán)隊(duì)合作或編寫一些代碼部署到服務(wù)器時(shí),此文件會(huì)將項(xiàng)目鎖定到先前已成功編譯和構(gòu)建的版本。學(xué)習(xí)時(shí),您可以放心地忽略此文件。

在目標(biāo)文件夾中有一個(gè)名為 debug 的子文件夾,這是可執(zhí)行文件所在的位置。在Mac和Linux上,通過鍵入以下內(nèi)容來運(yùn)行項(xiàng)目:

。/YourProject

在Windows上,您將擁有一個(gè)新的 EXE 文件,該文件可以通過雙擊運(yùn)行單擊。

成功!讓我們將該項(xiàng)目轉(zhuǎn)換為使用GPIO引腳的東西。

設(shè)置GPIO引腳

我們將使用rust_gpiozero條板箱由Rahul Thakdoor撰寫。雖然這不是訪問GPIO引腳的唯一方法,但此板條箱的設(shè)計(jì)類似于Python GPIO零庫。

與其手動(dòng)下載板條,還可以將其名稱粘貼在Cargo.toml中的依賴項(xiàng)下。文件。

[dependencies]

rust_gpiozero = “0.2.0”

保存并打開終端。在此階段,由于代碼未更改,因此重建項(xiàng)目沒有任何意義。 Cargo提供了一個(gè)可以檢查代碼是否可以編譯以及是否存在所有依賴項(xiàng)的功能。

cargo check

您的連接可能需要花費(fèi)幾分鐘,但是當(dāng)您在Cargo.toml文件中添加或更改項(xiàng)目時(shí),只需要做一次。

Hello Blink

現(xiàn)在,您將把Hello World腳本更改為閃爍的腳本。首先在編輯器中打開main.rs。如果要跳過編碼,可以在Github Gist上找到完成的腳本。

您需要讓編譯器知道您正在使用rust_gpiozero庫,因此請(qǐng)?jiān)谀_本的最頂部添加對(duì)的引用。

use rust_gpiozero::*;

非常類似于基于Python的常規(guī)眨眼草圖,我們需要一種在打開和關(guān)閉LED之間增加延遲的方法。在Rust中,我們使用標(biāo)準(zhǔn)庫的兩個(gè)元素來做到這一點(diǎn):

use std::thread::sleep;

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

現(xiàn)在在您的 main 函數(shù)中,為您的LED添加一個(gè)變量引腳,以及包含閃爍指令的循環(huán)。

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));

}

就是這樣!保存您的腳本,然后返回到終端。

進(jìn)行測(cè)試

再次構(gòu)建項(xiàng)目以更新可執(zhí)行文件。另外,運(yùn)行命令可以一步構(gòu)建并運(yùn)行腳本:

cargo run

您應(yīng)該看到一個(gè)閃爍的LED。做得好!您剛剛使用Rust制作了第一個(gè)硬件程序。按 Ctrl-C 退回到終端。如果有任何錯(cuò)誤,請(qǐng)徹底檢查代碼,以檢查是否缺少任何冒號(hào),分號(hào)或方括號(hào)。

Raspberry Pi上的Rust令人興奮的未來

當(dāng)前,Python并非如此可能會(huì)被Rust取代。它很容易學(xué)習(xí),并且Python在未來的幾年中將有許多應(yīng)用程序。

責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 樹莓派
    +關(guān)注

    關(guān)注

    122

    文章

    2080

    瀏覽量

    110527
  • Rust
    +關(guān)注

    關(guān)注

    1

    文章

    240

    瀏覽量

    7610
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    何在樹莓派上安裝Ubuntu MATE ?

    ,而非GNOME。在本文中,我將介紹如何輕松地在樹莓派上安裝它。UbuntuMATE官方支持樹莓派,因此每發(fā)布一個(gè)新版本,都會(huì)為樹莓派發(fā)布一個(gè)鏡像。該鏡像可刷入S
    的頭像 發(fā)表于 08-12 18:56 ?3304次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>安裝Ubuntu MATE ?

    技能+1!如何在樹莓派上使用C++控制GPIO?

    在使用樹莓派時(shí),你會(huì)發(fā)現(xiàn)Python和Scratch是許多任務(wù)(包括GPIO編程)中最常用的編程語言。但你知道嗎,你也可以使用C++進(jìn)行GPIO編程,而且這樣做還有不少好處。借助WiringPi
    的頭像 發(fā)表于 08-06 15:33 ?4215次閱讀
    技能+1!如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>使用C++控制GPIO?

    這個(gè)套件讓樹莓派5運(yùn)行幾乎所有YOLO模型!Conda 與 Ultralytics!

    何在樹莓派上設(shè)置YOLO計(jì)算機(jī)視覺?Conda與Ultralytics在本指南中,我們將學(xué)習(xí)如何使用Conda在樹莓派上安裝Ultraly
    的頭像 發(fā)表于 07-31 11:51 ?5411次閱讀
    這個(gè)套件讓<b class='flag-5'>樹莓</b>派5運(yùn)行幾乎所有YOLO模型!Conda 與 Ultralytics!

    初學(xué)者指南:樹莓派上搭建虛擬環(huán)境!

    在這篇簡(jiǎn)明扼要的指南中,我們將探討如何在樹莓派上設(shè)置和使用虛擬環(huán)境(或稱為Venv)——包括在終端和Thonny集成開發(fā)環(huán)境中。使用Bookworm操作系統(tǒng)或更高版本時(shí),或在嘗試安裝Python
    的頭像 發(fā)表于 07-27 13:24 ?986次閱讀
    初學(xué)者指南:<b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>搭建虛擬環(huán)境!

    何在樹莓派上設(shè)置并使用VNC?遠(yuǎn)程訪問完整指南!

    為什么要在樹莓派上使用VNC?使用VNC與樹莓派的主要優(yōu)勢(shì)在于其提供的靈活性。我們可以在“無頭模式”(無物理顯示器)下運(yùn)行樹莓派,同時(shí)仍能完全訪問其圖形用戶界面(GUI)。這減少了對(duì)額
    的頭像 發(fā)表于 07-26 20:42 ?5814次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>設(shè)置并使用VNC?遠(yuǎn)程訪問完整指南!

    C++ 與 Python:樹莓派上哪種語言更優(yōu)?

    Python是樹莓派上的首選編程語言,我們的大部分教程都使用它。然而,C++在物聯(lián)網(wǎng)項(xiàng)目中同樣廣受歡迎且功能強(qiáng)大。那么,在樹莓派項(xiàng)目中選擇哪種語言更合適呢?Python因其簡(jiǎn)潔性、豐富的庫和資源而被
    的頭像 發(fā)表于 07-24 15:32 ?972次閱讀
    C++ 與 Python:<b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>哪種語言更優(yōu)?

    樹莓派防火墻完整指南:如何在局域網(wǎng)中配置 IPFire ?

    如果你希望在樹莓派上配置IPFire,本指南將提供一種簡(jiǎn)單而有效的方法來加強(qiáng)你的網(wǎng)絡(luò)安全。在日益互聯(lián)的世界中,保護(hù)家庭或小型辦公室網(wǎng)絡(luò)免受外部威脅至關(guān)重要。一個(gè)有效的解決方案是部署防火墻——一種監(jiān)控
    的頭像 發(fā)表于 07-21 16:34 ?1307次閱讀
    <b class='flag-5'>樹莓</b>派防火墻完整指南:如<b class='flag-5'>何在</b>局域網(wǎng)中配置 IPFire ?

    何在樹莓派 AI HAT+上進(jìn)行YOLO姿態(tài)估計(jì)?

    大家好,接下來會(huì)為大家開一個(gè)樹莓派5和YOLO的連載專題。內(nèi)容包括四個(gè)部分:在樹莓派5上使用YOLO進(jìn)行物體和動(dòng)物識(shí)別-入門指南在樹莓派5上開啟YOLO姿態(tài)估計(jì)識(shí)別之旅!如何在
    的頭像 發(fā)表于 07-20 20:34 ?1044次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b>派 AI HAT+上進(jìn)行YOLO姿態(tài)估計(jì)?

    何在樹莓派 AI HAT+上進(jìn)行YOLO目標(biāo)檢測(cè)?

    大家好,接下來會(huì)為大家開一個(gè)樹莓派5和YOLO的連載專題。內(nèi)容包括四個(gè)部分:在樹莓派5上使用YOLO進(jìn)行物體和動(dòng)物識(shí)別-入門指南在樹莓派5上開啟YOLO姿態(tài)估計(jì)識(shí)別之旅!如何在
    的頭像 發(fā)表于 07-19 08:34 ?1769次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b>派 AI HAT+上進(jìn)行YOLO目標(biāo)檢測(cè)?

    完整教程:如何在樹莓派上配置防火墻?

    引言防火墻是任何網(wǎng)絡(luò)包括樹莓派網(wǎng)絡(luò)中必不可少的工具。本質(zhì)上,防火墻是內(nèi)部網(wǎng)絡(luò)(如樹莓派網(wǎng)絡(luò))與其他外部網(wǎng)絡(luò)(如互聯(lián)網(wǎng))之間的安全屏障。其主要目的是控制和過濾網(wǎng)絡(luò)流量,根據(jù)預(yù)定義的規(guī)則允許或阻止某些
    的頭像 發(fā)表于 07-07 16:30 ?1144次閱讀
    完整教程:如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>配置防火墻?

    釋放潛力:在樹莓派上運(yùn)行安卓系統(tǒng)實(shí)現(xiàn)多樣化應(yīng)用!

    為什么要在樹莓派上運(yùn)行安卓系統(tǒng)?安卓系統(tǒng)以其龐大的應(yīng)用生態(tài)系統(tǒng)和用戶友好的界面而聞名,它能夠?qū)?b class='flag-5'>樹莓派轉(zhuǎn)變?yōu)楣δ軓?qiáng)大的設(shè)備,能夠處理從媒體消費(fèi)到輕量級(jí)計(jì)算和物聯(lián)網(wǎng)應(yīng)用等各種任務(wù)。優(yōu)勢(shì)高度定制化:
    的頭像 發(fā)表于 07-05 08:33 ?1470次閱讀
    釋放潛力:在<b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>運(yùn)行安卓系統(tǒng)實(shí)現(xiàn)多樣化應(yīng)用!

    何在樹莓派上安裝并運(yùn)行 Arduino 集成開發(fā)環(huán)境!

    ,我們將介紹如何在樹莓派上安裝并運(yùn)行ArduinoIDE。所需物品要在樹莓派上運(yùn)行ArduinoIDE,你需要以下組件:配備適當(dāng)電源的
    的頭像 發(fā)表于 07-01 17:41 ?4391次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>安裝并運(yùn)行 Arduino 集成開發(fā)環(huán)境!

    從初學(xué)到進(jìn)階:樹莓派上最適合你的代碼編輯器推薦!

    安裝樹莓派操作系統(tǒng)后,你就可以使用Python、Scratch、Java、C/C++等受Linux支持的多種編程語言進(jìn)行編程了。其中,Python是樹莓派上最受歡迎的編程語言。在樹莓
    的頭像 發(fā)表于 05-15 16:20 ?1241次閱讀
    從初學(xué)到進(jìn)階:<b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>最適合你的代碼編輯器推薦!

    告別復(fù)雜的終極指南:如何在樹莓派上安裝 Manjaro:2024

    如果你想在RaspberryPi上體驗(yàn)ArchLinux,Manjaro可能是你的最佳選擇。它基于Arch,但被打包成一個(gè)傳統(tǒng)的Linux發(fā)行版,支持多種桌面環(huán)境和架構(gòu)。讓我們來學(xué)習(xí)如何在RaspberryPi上安裝它。什么是Linux發(fā)
    的頭像 發(fā)表于 03-25 09:39 ?1450次閱讀
    告別復(fù)雜的終極指南:如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>安裝 Manjaro:2024

    人臉識(shí)別指南:如何在樹莓派上安裝和設(shè)置 Dlib

    學(xué)習(xí)如何在樹莓派上安裝Dlib并配置人臉識(shí)別功能,為您的AI項(xiàng)目奠定基礎(chǔ)。在樹莓派上安裝Dlib的詳細(xì)步驟要為
    的頭像 發(fā)表于 03-24 17:31 ?1572次閱讀
    人臉識(shí)別指南:如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>安裝和設(shè)置 Dlib