精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

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

454398 ? 來源:網絡整理 ? 作者:網絡整理 ? 2020-01-30 17:54 ? 次閱讀

如果您對編程感興趣,那么您可能聽說過Rust。該語言由Mozilla設計,受到開發人員的廣泛喜愛,并繼續在奉獻者中成長。

Raspberry Pi是小型計算機的瑞士軍刀,非常適合學習代碼。我們將兩者結合起來,并在Raspberry Pi上安裝Rust。

設置Raspberry Pi

對于此項目,您將需要:

Raspberry Pi

LED

220-1k歐姆電阻

面包板和接線。

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

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

教程是使用Raspberry Pi 3B +和Raspbian Stretch在桌面模式下制作的。即使不同型號的Pi和不同的操作系統可能會產生不同的結果,它也可以通過遠程SSH連接正常運行。

如何在Raspberry Pi上安裝Rust

要安裝rust,請轉到rust-lang安裝頁面,然后將install命令復制到您的終端中。出現提示時,選擇默認安裝。

安裝程序將在完成時通知您,盡管安裝可能會花費一些時間,具體取決于您的連接。/p》 安裝后

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

幸運的是Rust為您做到了,而您所需要做的就是重新啟動Pi或注銷并再次登錄。現在檢查Rust和Cargo應該可以使用。

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

創建Rust項目

要創建Rust項目,請創建一個新目錄,然后輸入

mkdir YourFolder

cd YourFolder

使用Cargo創建一個新的Rust項目。

cargo new YourProject

您將確認已經創建了新項目。

輸入新項目文件夾并列出其內容。

cd YourProject

ls

您會看到一個名為 src 和名為 Cargo.toml 的文件。這兩個元素構成了每個Rust項目的基礎。

一個簡單的Rust項目,解釋了

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

以前使用C語言Java的人都會熟悉Rust語法。這與使用空白,分號和花括號表示代碼塊的Python不同。 Rust代碼必須在運行之前進行編譯和構建。

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

構建示例項目

返回終端窗口,請確保您位于項目目錄中并構建項目。

cargo build

這將創建另一個文件夾在名為 target 的項目中。您還會注意到一個名為 Cargo.lock 的新文件。與團隊合作或編寫一些代碼部署到服務器時,此文件會將項目鎖定到先前已成功編譯和構建的版本。學習時,您可以放心地忽略此文件。

在目標文件夾中有一個名為 debug 的子文件夾,這是可執行文件所在的位置。在Mac和Linux上,通過鍵入以下內容來運行項目:

。/YourProject

在Windows上,您將擁有一個新的 EXE 文件,該文件可以通過雙擊運行單擊。

成功!讓我們將該項目轉換為使用GPIO引腳的東西。

設置GPIO引腳

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

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

[dependencies]

rust_gpiozero = “0.2.0”

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

cargo check

您的連接可能需要花費幾分鐘,但是當您在Cargo.toml文件中添加或更改項目時,只需要做一次。

Hello Blink

現在,您將把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!

現在在您的 main 函數中,為您的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 退回到終端。如果有任何錯誤,請徹底檢查代碼,以檢查是否缺少任何冒號,分號或方括號。

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

當前,Python并非如此可能會被Rust取代。它很容易學習,并且Python在未來的幾年中將有許多應用程序。

責任編輯:wv

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 樹莓派
    +關注

    關注

    116

    文章

    1699

    瀏覽量

    105531
  • Rust
    +關注

    關注

    1

    文章

    228

    瀏覽量

    6574
收藏 人收藏

    評論

    相關推薦

    何在樹莓派上安裝Docker容器

    1. 準備工作 在開始之前,請確保你的樹莓派已經安裝了最新版本的Raspberry Pi OS。如果沒有,請按照以下步驟操作: 下載最新的Raspberry Pi OS鏡像:訪問 Raspberry
    的頭像 發表于 11-11 11:38 ?276次閱讀

    樹莓派上部署YOLOv5進行動物目標檢測的完整流程

    卓越的性能。本文將詳細介紹如何在性能更強的計算機上訓練YOLOv5模型,并將訓練好的模型部署到樹莓派4B上,通過樹莓派的攝像頭進行實時動物目標檢測。 一、在電腦上訓練YOLOv5模型
    的頭像 發表于 11-11 10:38 ?420次閱讀
    在<b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>部署YOLOv5進行動物目標檢測的完整流程

    如何立即開始使用TMS320C6411 DSP進行開發

    電子發燒友網站提供《如何立即開始使用TMS320C6411 DSP進行開發.pdf》資料免費下載
    發表于 10-28 10:24 ?0次下載
    如何立即<b class='flag-5'>開始使用</b>TMS320C6411 DSP進行開發

    如何用Rust編寫一個ChatGPT桌面應用(保姆級教程)

    用IDEA開發的java仔) 安裝 Rust 語言工具鏈:首先,請確保你已安裝了 Rust 編程語言工具鏈,包括 Rust 編譯器 (rustc) 和包管理工具 (cargo)。可以通過訪問
    的頭像 發表于 09-25 11:19 ?301次閱讀
    如何用<b class='flag-5'>Rust</b>編寫一個ChatGPT桌面應用(保姆級教程)

    樹莓派gui開發用什么ide

    樹莓派(Raspberry Pi)是一款功能強大的微型計算機,可以運行多種操作系統,如Raspbian、Ubuntu等。在樹莓派上進行GUI(圖形用戶界面)開發,可以使用多種集成開發環境(IDE
    的頭像 發表于 08-30 16:49 ?699次閱讀

    如何配置和開始使用TC397xx的外設?

    如何配置和開始使用 TC397xx 的外設(ADC、PWM、UART、SPI、I2C、DMA、定時器)。
    發表于 05-29 07:04

    在Aurix Tc375Lk上使用Rust編程語言可以嗎?

    您好,如果我想在 Aurix Tc375Lk 上使用 Rust 編程語言,可以嗎?如果是,鏈接 rust 編譯器 ADS 和 freetoolchain 的步驟是什么?你有在 ADS 或 freetoolchian 中鏈接編譯器的用戶指南嗎? 請詳細說明謝謝
    發表于 05-17 13:42

    [鴻蒙]OpenHarmony4.0的Rust開發

    背景 Rust 是一門靜態強類型語言,具有更安全的內存管理、更好的運行性能、原生支持多線程開發等優勢。Rust 官方也使用 Cargo 工具來專門為 Rust 代碼創建工程和構建編譯
    的頭像 發表于 02-26 17:28 ?809次閱讀
    [鴻蒙]OpenHarmony4.0的<b class='flag-5'>Rust</b>開發

    谷歌捐款100萬美元給Rust基金會,以增強C++與Rust的交互性

    如今,谷歌多項核心業務仍以 C++為主要編程語言,雖然無法直接使用Rust替代現有的C++程序,但谷歌依然選擇支持Rust基金會的“Interop Initiative”計劃,幫助那些選用C++的機構更為順暢地過渡至Rust上。
    的頭像 發表于 02-19 15:41 ?611次閱讀

    一次Rust重寫基礎軟件的實踐

    受到2022年“谷歌使用Rust重寫Android系統且所有Rust代碼的內存安全漏洞為零” [1] 的啟發,最近筆者懷著濃厚的興趣也順應Rust 的潮流,嘗試著將一款C語言開發的基礎軟件轉化
    的頭像 發表于 01-25 11:21 ?597次閱讀

    在核桃派上實現USB攝像頭的OpenCV顏色檢測

    在前幾周的文章中已經介紹過如何在核桃派上用OpenCV讀取圖像并顯示到pyqt5的窗口上,這里在上一篇文章的基礎上,給開發板加入顏色檢測功能,嘗試將圖像中所有藍色的東西都用一個框標記出來。
    的頭像 發表于 01-20 17:50 ?896次閱讀
    在核桃<b class='flag-5'>派上</b>實現USB攝像頭的OpenCV顏色檢測

    樹莓派主板如何連接電腦

    連接樹莓派到電腦是一個非常有用的功能,它可以讓我們在電腦上進行樹莓派的操作和管理。本文將詳細介紹如何連接樹莓派主板到電腦。我會從準備工作開始,一直到連接完成并進行測試。 第一步:準備材
    的頭像 發表于 01-07 15:40 ?1844次閱讀

    從Rustup出發看Rust編譯生態

    從Rustup出發看Rust編譯生態 1. Rust和LLVM的關系是怎樣的? 2. Rustup中targets是什么,為什么可以安裝多個? 3. Rust在windows上為什么需要安裝Visual studio?
    的頭像 發表于 01-02 11:00 ?503次閱讀

    何在同步的 Rust 方法中調用異步代碼 | Tokio 使用中的幾點教訓

    在同步的 Rust 方法中調用異步代碼經常會導致一些問題,特別是對于不熟悉異步 Rust runtime 底層原理的初學者。
    的頭像 發表于 12-24 16:23 ?1295次閱讀

    何在樹莓派Pico上使用紅外線接收模塊?

    樹莓派 Pico 上使用紅外線接收模塊(HX1838 型),我們采用開源的 pico_ir 庫。
    的頭像 發表于 11-30 09:08 ?2145次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b>派Pico上使用紅外線接收模塊?