\r\n\r\n

raspberry piでspi/i2cを有効にする方法(とその用途)

ラズベリーパイのgpioピンはご存知かと思いますが、spiやi2cのコネクタはどうでしょうか?何のためにあるのか、どう活用するのか...。

Raspberry Piは、ほとんど何にでも使えます。家庭用メディアセンターからレトロゲームのカスタマイズまで、Piと同様のシングルボードコンピュータはユビキタスになっていると言ってよいでしょう。

Raspberry PiのGPIOピンを使って実験を始めると、さらに面白いことが起こります。これらのピンが何をするのかを説明しましたが、次にPiでSPIとI2Cプロトコルを有効にする方法とその理由を説明します。

Raspberry pi (spi on raspberry pi)は何ですか?

その前に、この2つのプロトコルの役割について簡単に説明します。

SPI(Serial Peripheral Interface)は、マイコン(Piなど)が一度に100以上の周辺機器と通信できるようにするものです。マイコンは、すべての「スレーブ」部品の「マスター」として働き、高速に通信することができます。この図は、簡単なSPI接続の概要を示しています。

SPIについて初めて読む人は、難しく感じるかもしれませんが、頑張ってください!SCLKはマスターデバイスが設定するクロック速度で、デバイス間の情報共有の速さを決定します。

クロックの各サイクル(または「ティック」)において、マスターとスレーブのデバイスは共に1ビットの情報を送受信します。MOSI(マスターアウトスレーブイン)、MISO(マスターインスレーブアウト)ピンは、このために使用されます。

SSまたはスレーブセレクト端子(PiではCE0またはCE1と表示)は、スレーブデバイスが任意の時点でマスターデバイスと通信しているかどうかを通知するために使用されます。ほとんどの場合、各スレーブデバイスは独自のSSピンを必要としますが、SCLK、MOSI、MISOピンを共有することができます。

デバイスによっては、デイジーチェーン接続で1本のSSピンを共有することができ、電源とグラウンドの2本と合わせて4本のピンを使用することができます。

enhancement startup YouTubeチャンネルでは、SPIについてわかりやすい入門書を掲載し、さらにプロトコルを解説しています。

raspberry piでspiを有効にする方法

Raspberry PiのSPIを有効にするには、ターミナルから以下のコマンドを入力して、raspiのコンフィギュレーションを開きます。

sudo raspi-config

Interfacing Opti***」に移動し、次のメニューで「P4 SPI Enable/Disable automatic loading of SPI kernel module」を選択します。ウィンドウのプロンプトで「はい」を選択します。 これでSPIが有効になりました!

または、/boot から SPI/configuration.txt ファイルを有効にして、ターミナルウィンドウを開き、次のように入力します。

sudo nano /boot/config.txt

dtparam=spi=onと書かれている行を探し、#の記号を削除してください。SPIの有効化方法に関わらず、PiとSPIを再起動することで有効化されます。

ラズベリーバークでスピを作れるか?

SPIペリフェラルを使ったプロジェクトは何百とありますが、手始めとしては、自分でRFIDリーダーをプログラミングするのがよいでしょう。

ArduinoとRFIDを使ったスマートロックのDIYチュートリアルでは、MFRC-522リーダーを使用しています。ラズベリーレザー風味のRFIDの紹介は、piddlerintherootで詳しく解説しています。

このセットアップは、趣味の電子工作のためだけではありません。Raspberry Piプロジェクトのベストコレクションでは、ヨーロッパの大規模な工場運営の一環として、Raspberry PiとRFIDで動作する本格的なMESシステムを使用しています。

raspberry piのi2cは何ですか?

I2Cはフィリップス・エレクトロニクス社が開発した通信プロトコルで、マイコンを使ったホビープロジェクトで多用されている。その理由は明白で、SPIの最小4本の配線を2本で済ませることができるからです。また、ユーザー**のライブラリにもしっかり対応しています。Raspberry Piには、I2C用に設計された部品がたくさんあります。SPIに比べれば遅いですが、それでも日常的に使う分には十分な速度で動作します。

SPIとよく似たこのプロトコルは、マスターデバイス(Piなど)とスレーブデバイス(スクリーン、シフトレジスタ、モータードライバなど)を持っています。

デバイス間の最初の接続はSCL(Serial Clock)で、これはデータ転送の同期を取るためにホストによって設定されます。2本目はSDA(シリアルデータ)で、I2Cバス上のすべてのデバイス間でデータのやり取りを行います。

マスターデバイスは、スタートビットと7ビットの16進数アドレスで通信を開始します。これをスレーブ機器に合わせないと通信できない。そのため、多くの機器が2本の配線で済むようになっています。

その後、マスターデバイスは、アンサーまたはACKの返事を受け取る前に、スレーブデバイスの読み取りまたは書き込み(R/W)を行うかどうかを指定します。

YouTubeで強化されたスタートアップは、再びI2Cを簡単に理解し、洞察することができます。

raspberry piでi2cを有効にする方法

I2Cは、Piでもraspiの設定メニューから有効にすることができます。

sudo raspi-config

矢印キーでインターフェースオプションを選択し、P5I2Cを選択すると、I2Cコアモジュールの自動ロードの有効/無効を選択できます。プロトコルを有効にすることを確認すると、確認画面が表示されます。

SPIと同様、configure.txtを修正することでも対応可能です。

sudo nano /boot/config.txt

dtparam=i2c#u arm=onを修正し、#記号を削除します。

Piを再起動すると、I2Cが立ち上がる!

Raspberry Piのi2cで何ができるのか?

I2Cは、多数の出力が必要なプロジェクトに最適です。代表的な用途として液晶ディスプレイがあり、最大で16本のピンが必要だが、I2Cではこの機能を通信用2本、電源とグランド用2本に減らすことができる。

多くのLCDスクリーンにはI2Cの「バックパック」が付属しており、セットアップを容易にし、残りのPiピンを他のセンサーや周辺機器に解放することができます。

TheRaspberryPiGuyがRaspberry PiのI2C LCDの設定と使用方法について、YouTubeで詳しく説明しています。

spiとi2cで省ピン!

Raspberry Piに搭載されているSPIやI2Cは、確かにホビー電子工作の全くの初心者には不向きですが、決して怖いものではありません。

Raspberry Piビギナーズガイドで基本を学んでから、実際に使ってみるとよいでしょう。

サンプルプロジェクトを通して学ぶのが一番です。 どんなものができるのか、楽しみにしています。

  • 2021-03-25 07:35 に公開
  • 閲覧 ( 14 )
  • 分類:IT

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ