如何开始与树莓皮生锈

想从生锈开始吗?下面是如何在Raspberry Pi上构建一个基本的硬件程序。...

如果你对编程感兴趣,你可能听说过Rust。由Mozilla设计的这种语言受到了开发者的广泛喜爱,并在爱好者中不断增长。

rust-raspberry-pi

Raspberry Pi是小型计算机的瑞士**,非常适合学习代码。让我们把两者结合起来,在覆盆子皮上涂上锈迹。

设置你的树莓圆周率

对于本项目,您需要:

  • 树莓皮。
  • 带路。
  • 220-1k欧姆电阻器。
  • 试验板和连接线。

A circuit diagram showing an LED and resistor attached to the GPIO 18 and GND pins of a Raspberry Pi

将GPIO 18连接到LED的正极支脚,将LED的负极支脚连接到电阻器,然后再连接回Pi上的GND引脚。

本教程是使用树莓皮3B+与树莓伸展在桌面模式。通过远程SSH连接,它也可以很好地工作,尽管不同的Pi模型和不同的操作系统可能会有不同的结果。

如何在树莓皮上安装铁锈

The Terminal command required to install Rust

要安装rust,请转到rust lang安装页面并将install命令复制到终端中。出现提示时,选择默认安装。

The three choices presented by the Rust installer.

安装程序将在安装完成时通知您,不过安装可能需要一些时间,具体取决于您的连接。

安装后

Rustc and Cargo are installed, but not currently in PATH

安装是成功的,但您还不能完全开始使用它。如果你试着按版本检查生锈和货物,你会得到一个错误。通常,必须在路径中添加一种语言才能在命令行中使用它们。

幸运的是,Rust为您做到了这一点,您所需要做的就是重新启动Pi,或者注销并再次登录。现在检查生锈和货物应该可以了。

Testing Rust and Cargo in PATH with their version numbers.

您将从终端编译和构建所有脚本,但还需要一个代码编辑器。在这个项目中,我将使用codeoss,一个可以安装在Pi上的VS代码的社区构建,但它不是必需的。任何代码编辑器都可以。

创建项目

要创建一个Rust项目,创建一个新目录并通过键入

mkdir YourFoldercd YourFolder

使用Cargo创建一个新的Rust项目。

cargo new YourProject

您将得到新项目已创建的确认。

Making a new directory in the terminal and putting a blank rust project in it

输入新项目文件夹并列出其内容。

cd YourProjectls

您将看到一个名为src的文件夹和一个名为货物.toml. 这两个要素构成了每个项目的基础。

一个简单的生锈项目,解释道

A sample hello-world rust script

首先,打开src目录,打开主要风险在代码编辑器中。您将看到,新项目附带了一个“helloworld”脚本来启动。

以前使用过C语言或Java的人都会熟悉Rust语法。这与Python不同,Python使用空格、分号和大括号来表示代码块。Rust代码必须在运行之前编译和构建。

A blank Cargo.toml file

回到项目的父文件夹中,打开货物.toml在代码编辑器中。任何用JavaScript或Ruby编写过代码的人都可能会发现这一点。项目信息、生成说明和依赖项都列在此文件中。包被称为生锈的板条箱,我们稍后将使用一个访问树莓Pi的GPIO引脚。

构建示例项目

回到终端窗口,确保您在项目目录中并生成项目。

cargo build

Using the Cargo Build command to build the sample project

这将在项目中创建另一个名为target的文件夹。您还会注意到一个名为货物锁. 在与团队合作或编写要部署到服务器的代码时,此文件会将项目锁定到以前已成功编译和生成的版本。学习时,您可以放心地忽略此文件。

在目标文件夹中有一个名为debug的子文件夹,这就是可执行文件所在的位置。在Mac和Linux上,通过键入以下命令运行项目:

./YourProject

在Windows上,您将有一个新的EXE文件,可以通过双击来运行。

The file structure of the built rust project along with the hello world program running.

成功!让我们把这个项目转换成使用GPIO引脚的东西。

设置gpio引脚

Adding the Rust GPIO Zero crate to the Cargo.toml file

我们将在这个项目中使用Rahul Thakdoor的rust\u gpiozero板条箱。虽然它不是访问GPIO引脚的唯一方法,但这个板条箱的设计与PythonGPIOZero库类似。

与其手动下载板条箱,不如将其名称粘贴到货物.toml文件。

[dependencies]rust_gpiozero = "0.2.0"

保存它,然后打开你的终端。在这个阶段,没有必要重建项目,因为没有代码发生更改。Cargo提供了一个函数,该函数将检查代码是否编译以及是否存在所有依赖项。

cargo check

Cargo check will check code for errors and install dependencies

根据您的连接情况,这可能需要几分钟,但您只需要在中添加或更改项目时执行一次货物.toml文件。

你好,眨眼

A Raspberry Pi with an LED attached

现在,您将把hello world脚本更改为闪烁的灯光脚本。从打开开始主要风险在你的编辑器里。如果您想跳过编码,可以在Github Gist上找到完成的脚本。

您需要让编译器知道您正在使用rust\u gpiozero库,因此在脚本的最顶端添加对库的引用。

use rust_gpiozero::*;

与常规的基于Python的眨眼草图非常相似,我们需要一种方法来增加打开和关闭LED之间的延迟。在Rust中,我们使用标准库的两个元素来实现这一点:

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

现在在main函数中,为LED pin添加一个变量,并添加一个包含闪烁指令的循环。

let led = LED::new(18); // sets a variable for the led pinloop{ // starts a loop led.on(); sleep(Duration::from_secs(1)); // creates a 1 second pause led.off(); sleep(Duration::from_secs(1));}

就这样!保存脚本,然后返回终端。

测试一下

An image showing the LED lighting up

再次生成项目以更新可执行文件。或者,run命令在一个步骤中生成并运行脚本:

cargo run

你应该看到一个闪烁的LED。做得好!你刚用铁锈做了你的第一个硬件程序。按Ctrl-C退出返回终端。如果您有任何错误,请彻底检查您的代码是否有漏掉的冒号、分号或括号。

树莓皮锈迹斑斑的美好未来

目前,Python还没有被铁锈取代的危险。它很容易学习,Python在未来几年将有许多应用程序。

也就是说,铁锈有相当一个嗡嗡声围绕着它,有很多原因,你应该学习的语言!

  • 发表于 2021-03-21 09:18
  • 阅读 ( 265 )
  • 分类:编程

你可能感兴趣的文章

4个项目,使你的树莓皮便携

... 您选择哪一种取决于您想如何使用该设备。Raspberry Pi Zero NoodlePi的种类是空的:没有网络连接,所以只要设备保持脱机状态,它就会保持安全和私有。然而,如果你计划在一些游戏,零W模式是一个...

  • 发布于 2021-03-11 18:08
  • 阅读 ( 291 )

为您的第一个项目最好的树莓皮工具包

... 在你开始考虑显示选项之前。。。 ...

  • 发布于 2021-03-15 13:46
  • 阅读 ( 206 )

12个树莓皮圣诞项目,你可以在一天内

... 上面的视频演示了如何在这样的项目中使用树莓Pi。3D打印的房子是在TinkerCAD设计的,Neopixel照明雪人也是如此。房子里藏着一个树莓圆周率和来基本布线,使项目的生活。该项目的代码是用...

  • 发布于 2021-03-17 19:30
  • 阅读 ( 321 )

如何建立一个树莓皮游戏男孩和哪里买一个工具包

... 继续阅读,学习如何建立自己的树莓皮游戏男孩和建立自己的工具包的一切。 ...

  • 发布于 2021-03-19 13:29
  • 阅读 ( 263 )

适合初学者的11个最佳树莓圆周率项目

... Raspberry Pi初学者的另一个简单项目是学习如何通过GPIO控制LED灯。 ...

  • 发布于 2021-03-19 13:42
  • 阅读 ( 271 )

如何在树莓皮上玩点按式人渣冒险游戏

...典游戏的一个关键类型却常常被忽视:点击冒险。下面是如何安装鼠标驱动的冒险游戏在你的树莓皮与**虚拟机。 ...

  • 发布于 2021-03-19 21:48
  • 阅读 ( 229 )

如何决定是否需要树莓皮3 b+模型

总是喜欢树莓皮,但还没来得及做?有这么多版本的董事会,很容易分心。你要的是覆盆子皮3B+吗?或者你应该考虑较早的树莓皮3,或后来的树莓皮4? ...

  • 发布于 2021-03-19 22:54
  • 阅读 ( 224 )

如何流蒸汽游戏树莓皮没有月光

... 如何在树莓皮上安装蒸汽连接 ...

  • 发布于 2021-03-21 20:59
  • 阅读 ( 311 )

如何在树莓皮上播放mp3和其他音频文件

... 但是如果不先安装Kodi,如何在Raspberry-Pi上播放mp3呢? ...

  • 发布于 2021-03-23 13:23
  • 阅读 ( 290 )

把你的树莓皮变成笔记本电脑的9种方法

... 一个详细的视频(上图)伴随着这个构建。您将学习如何构建电池组、连接充电器和升压转换器,甚至扩展USB端口以提高可访问性。 ...

  • 发布于 2021-03-23 14:16
  • 阅读 ( 268 )