上手树莓派 Pico 案例之SPI【CircuitPython】

522 阅读1分钟

开发环境三选一

  1. MicroPython
  2. The C/C++ SDK
  3. CircuitPython

由于树莓派 Pico 对python的环境支持比较友好,本文选择python作为基础开发环境。 又因为我是偏向硬件玩耍,所以最终采用 CircuitPython 作为基础开发环境

实战

什么是SPI

Pico有两个SPI端口。请记住,只要每个传感器有一个单独的片选(CS)引脚,你就可以在一个端口上连接多个传感器。

这里我们在第二个SPI端口上使用一个BME280传感器。

image.png

安装BME280库

要安装BME280库,请运行以下程序。

下载文件

sudo pip3 install adafruit-circuitpython-bme280

注意,这一步与主BME280指南中显示的相同。你可以对任何其他传感器做同样的事情。

下面是要运行的示例代码。

import time
import board
import busio
import digitalio
import adafruit_bme280

spi = busio.SPI(board.SCK1, board.MOSI1, board.MISO1)
 
cs = digitalio.DigitalInOut(board.GP13)

bme280 = adafruit_bme280.Adafruit_BME280_SPI(spi, cs)

while True:
    print("\nTemperature: %0.1f C" % bme280.temperature)
    print("Humidity: %0.1f %%" % bme280.relative_humidity)
    print("Pressure: %0.1f hPa" % bme280.pressure)
    print("Altitude = %0.2f meters" % bme280.altitude)
    time.sleep(2)

image.png

参考:learn.adafruit.com/circuitpyth…