1. 文档中心
  2. 比卜创造 Micro:bit
  3. API 参考
  4. SPI

SPI

spi 模块让你通过串行外设接口(SPI)总线与连接到 micro:bit 的设备通信。SPI 采用主从架构,只有一个主设备。你需要为三种信号指定连接:

  • SCLK:串行时钟(主设备输出)。
  • MOSI:主出从入(主设备输出)。
  • MISO:主入从出(从设备输出)。

函数

init(baudrate=1000000, bits=8, mode=0, sclk=pin13, mosi=pin15, miso=pin14)

在指定 pins 上以给定参数初始化 SPI 通信。注意:正确通信时,双方参数必须一致。

baudrate 定义通信速度。

bits 定义传输字节大小。当前仅支持 bits=8,未来可能改变。

mode 根据以下约定确定时钟极性与相位的组合,极性为高阶位,相位为低阶位:

SPI 模式极性(CPOL)相位(CPHA)
000
101
210
311

极性(CPOL)0 表示空闲时时钟为逻辑 0,激活时变高(逻辑 1);极性 1 表示空闲时为逻辑 1,激活时变低(逻辑 0)。相位(CPHA)0 表示在时钟前沿采样数据,1 表示在后沿采样(参见 信号边沿)。

sclk、mosi 和 miso 参数指定各类信号使用的引脚。

read(nbytes, out=0)

读取最多 nbytes 字节,同时持续写入 out 指定的单字节。返回读取的内容。

write(buffer)

将 buffer 字节写入总线。

write_readinto(out, in)

将 out 缓冲区写入总线,并将响应读入 in 缓冲区。两缓冲区长度应相同,可以是同一对象。