見出し画像

Raspberry Pi PicoでPythonのお勉強 ~6~

前回まででMicroPythonでのI2C Read/Write方法は分かったので今回からはSPIアクセスになりますが、SPIのソースを作成する前にやらなければならないことがあります。それはI2C用になっている現在の配線をSPI用に変更することです。

I2Cは電源系の配線を除くと2本の配線で済みますが、SPIだとそれが4本(又は3本)必要になります。なので、ジャンパー線を2本追加してさらにRaspberry Pi PicoでSPIのためにどのピンを使うのかを決めなければなりません。あともう一つ忘れがちですが、今回使っているGY-BMP280をSPIで動かすにはどういう設定が必要なのか調べなければなりません。

そこでBMP280のデータシート見ると以下の記述がありました。

Interface selection is done automatically based on CSB (chip select) status. If CSB is connected to VDDIO, the I2C interface is active. If CSB is pulled down, the SPI interface is activated. After CSB has been pulled down once (regardless of whether any clock cycle occurred), the I2C interface is disabled until the next power-on-reset.

BMP280データシートより

これを読む限りでは現在GY-BMP280上でプルアップされているCS信号をわざわざプルダウンに変更する必要はなく、SPIアクセスのために一度CSをLowにすればその後はSPIでアクセスできるようになりそうです。

Raspberry Pi Pico Pinout Diagram

というわけで、GY-BMP280とRaspberry Pi Pico間の配線を変更するだけでSPIアクセスできるということが分かりましたので、上図のRaspberry Pi Pico Pinout Diagramを見てGP0~GP3のSPI0インターフェースを使うことにしました。

で、配線を変更した結果が下図になります。

GY-BMP280 SPI接続

SPIを使う準備ができましたので、次回からSPIアクセスのためのソース作成に入りたいと思います。

この記事が気に入ったらサポートをしてみませんか?