Rust

ラズパイでRust|インストールからLチカまで

スポンサーリンク

どうも。まっきーです。

最近Rustがキテるということで、Rustを勉強し始めました。

早速ですが、ラズパイでRustを使ってみようと思います!

本記事ではRustのインストールからLチカまで行います。

一度もLチカをしたことがない!という方はPython版を一度見ておくといいです。

ラズパイでLチカをやってみよう!(Python) 

動作環境

まず動作環境から。

必要なもの

必要なもの

  • RaspberryPi 3B+
  • LEDライト
  • ジャンパー線
  • 抵抗400~1000Ωぐらいのもの1つ
  • ブレッドボード

下記のスターターセットで全てそろえることができます。

ラズパイにRustをインストール

下記のコマンドでrustupがインストールできます。

以下のような画面が表示されたら、1と入力。

これで、Rustのインストールは完了です。

下記コマンドでパスを通します。

rustcとcargoのバージョンを確認しましょう!

必要なパッケージをインストールします。

 cargo make をインストール(少し時間がかかります)

gitをインストールしていない方はこちらのコマンドで。

最新版のアップデートが必要なら下記のコマンドでできます。

以上で準備は完了です!

始めに、Hello, world を表示させましょう。下記コマンドをそれぞれ実行していきます。

実行後、helloworldディレクトリが作成されます。

helloworldディレクトリに移動します。

下記のコマンドを実行します。

Hello, worldと表示されれば成功です!

RustでLチカ

Lチカを行うための準備をしましょう。

下記のコマンドを順に入力してください。

今回はrust_gpiozeroというクレート(Crate rust_gpiozero)を使用します。

上記コマンド実行後、.tomlファイルにマーカーの部分が追加されます。

回路図

ソースコード

srcディレクトリのmain.rsを編集。

blinkは下記のような引数を取ります。

引数(点灯・消灯時間)はf32なので、浮動小数点方式です。

メソッドの中身が知りたい方は「Crate rust_gpiozero」のドキュメントを参考にしてください。

では、実行してみましょう。

2秒ごとにLEDが点滅を繰り返せば成功です!

別のクレートを使用(rppal)

rppalという別のクレートを使用して、Lチカを行ってみます。

こちらの方が多くの方の支持を受けているクレートです。

rppalを追加しましょう。

先ほどのmain.rsを以下のように書き換えます。

実行しましょう!

1秒ごとに点滅をすれば成功です!

今後のラズパイではrppalを使ってスイッチ操作等を実装していこうと思います。

今回は以上です!

参考サイト

スポンサーリンク

-Rust

© 2021 まきろぐ Powered by AFFINGER5