开发环境三选一
由于树莓派 Pico 对python的环境支持比较友好,本文选择python作为基础开发环境。 又因为我是偏向硬件玩耍,所以最终采用 CircuitPython 作为基础开发环境
CircuitPython是一种编程语言,旨在简化在低成本微控制器板上进行实验和学习编码的过程。
实战
让我们来点亮一些NeoPixels!
我们可以使用SPI端口来做这个,使用neopixel_spi库提供的黑客。但是u2if固件支持真正的交易。没有必要使用黑客。只要将NeoPixels连接到任何可用的GP引脚,并使用正常的neopixel库。
下面是一个布线的例子。
这个例子使用一个12环的RGB NeoPixel。对于任何其他设置,只需改变像素的数量和可能的像素顺序。
例子1:通过按键控制LED的开关
import time
import board
import neopixel
COLORS = (
(255, 0, 0),
( 0, 255, 0),
( 0, 0, 255),
(255, 255, 0),
(255, 0, 255),
( 0, 255, 255),
)
pixels = neopixel.NeoPixel(board.GP23, 12)
while True:
for color in COLORS:
pixels.fill(color)
time.sleep(0.5)
附案
library documentation page包含了所有CircuitPython库的分类列表,这些库都包含在以下捆绑包中,并有每个库的文档链接。
下载和安装说明
你可以下载所有可用的库,这些库包含在CircuitPython最近的主要版本的zip文件捆绑包中。这些捆绑文件每天都会更新,只要其中的库有更新。 每个版本的库都是以 .mpy 文件的形式提供的,它是Python源代码的编译版本。确保下载与你的CircuitPython主要版本相匹配的捆绑包,因为 .mpy 文件在不同的版本中会有变化。例如,如果你正在运行7.0.0,你应该下载7.x捆绑包。
预编译的 .mpy 文件比 .py 文件在你的CIRCUITPY硬盘上占用的空间更少。它们的加载速度也更快,这对于一些低内存的板子来说是非常友好的,因为 .py 文件太大,无法在板子上编译。 除非你需要源码版本,否则请选择合适的 .py 库包!如果你需要将 .py 文件编译为 .mpy ,你可以自己运行mpy-cross交叉编译器。
安装,为你的CircuitPython版本下载相应的捆绑包。解压缩文件,打开产生的文件夹,找到lib文件夹。打开lib文件夹,找到你需要加载的库文件。在你的CIRCUITPY驱动器上创建一个lib文件夹。把你需要的各个库文件复制到CIRCUITPY驱动器上的lib文件夹。更多的细节看这里。
你可以随时在GitHub上找到最新版本的库捆绑。
在你的电路板上下载和更新库的另一种方法是使用CircUp工具,它正在开发中。