Skip to content

Pimoroni 75 号州际公路评论:使用 RP2040 控制 LED 矩阵

    1645184979

    我们的判决

    HUB75 显示器易于使用且有趣的介绍。非常适合那些刚接触该主题的人。需要 Wi-Fi 的有经验的用户需要查看 Adafruit 的 Matrix Portal M4。

    为了

    + 精心设计
    + MicroPython 库易于使用
    + Stemma QT / Qwiic 连接器
    + 面板电源螺丝端子

    反对

    – 没有网络连接
    – CircuitPython 支持很麻烦

    LED矩阵就在我们身边。在巴士总站、机场、拱廊甚至电梯中,这些简单的屏幕为我们提供了简短而清晰的信息。一个常见的矩阵是 HUB75,多年来,制造商已经破解了各种微控制器,以根据自己的意愿弯曲这些设备。

    现在轮到 Raspberry Pi 的 RP2040 了,以 Pimoroni 的 75 号州际公路的形式。花 14 美元,我们得到了一个定制设计的 RP2040 供电板,其唯一目的是使许多 32 x 32 和 64 x 64 矩阵面板 LED 发光。75 号州际公路可使用 C、MicroPython 和 CircuitPython 编程语言,尽管在我们的测试中后一种语言存在一些严重问题。

    75 号州际公路规格

    系统级芯片
    RP2040(双 Arm Cortex M0+,运行频率高达 133Mhz,具有 264kB 的 SRAM)

    贮存
    2MB 支持 XiP 的 QSPI 闪存

    兼容性
    32 x 32、32 x 64、64 x 64 HUB75 LED 矩阵。 

    通用输入输出接口
    3 个模拟

     
    I2C

     
    QW/ST (Stemma QT / Qwiic)

     
    1 个用户按钮

     
    用于为矩阵供电的 5V 螺钉端子

    力量
    5V 通过 USB C 或 GPIO

    方面
    1.9 x 1.2 x 0.66 英寸(48.5 x 31 x 17 毫米)

    使用 75 号州际公路

    Interstate 75 专为 HUB75 RGB 显示器而设计,当我们需要大量大格式数据时使用。想想巴士总站、杂货店和购物中心。它们的工作方式与具有可寻址 LED 的 NeoPixel 矩阵不同。HUB75 与一系列移位寄存器一起工作,一次控制两行显示。 

    仅更新屏幕的一小部分需要完全刷新。75 号州际公路连接到 HUB75 的输入接头,并通过两个螺丝端子为面板供电。您的 HUB75 应配备适当的电源线。

    HUB75 面板设计用于连接在一起以形成更大的面板,因此配有带状电缆和 y 形电源线,可连接“菊花链”显示器。我们用两个显示器进行了测试,当以纯色运行显示器时,在 5.22V 下看到大约 1A(每个面板 500mA)。这意味着我们可以使用 USB 电池轻松运行 75 号州际公路和面板。

    您可以从 75 号州际公路上驱动多少个面板?我们在最近一集 The Pi Cast 中向 Pimoroni 的首席开发人员 Phil Howard 提出了这个问题,似乎四个 32 x 32 面板是你的极限。这不是很多面板,但对于大多数项目来说已经足够了。

    Pimoroni Interstate 75 比典型的 Raspberry Pi Pico 板更宽,考虑到 HUB75 接口的外形尺寸和 Interstate 75 提供的额外端口,这是必要的。我们有一个单一的 Stemma QT / Qwiic 连接器,Pimoroni 将其称为 QW/ST (Quest)。使用此连接器,我们可以添加传感器、按钮、电位器,它们可以控制显示并用作实验的数据源。我们有少量的 GPIO 引脚,基本上是所有未用于显示的引脚。存在 I2C、模拟输入和软件调试引脚。 

    电源和数据通过单根 USB C 电缆提供给 Pimoroni 75 号州际公路,但 GPIO 分支确实有一个 5V 引脚,可用于为设备供电。2MB 的存储空间可能看起来微不足道,我们在安装固件时损失了 1MB,但我们仍然有足够的存储空间来存储额外的库甚至图像。一个 32 x 32 像素的 BMP 文件大小约为 3KB,因此我们可以拥有许多图像;即使是 64 x 64 的图像也只有 ~12KB。

    由于 Interstate 75 是基于 RP2040 的板,我们有多种编程语言可供选择。我们首先使用 Pimoroni 自己的 MicroPython 版本进行了测试,其中最新版本支持 75 号州际公路。我们按照 GitHub 存储库中的示例进行操作,在 20 分钟内,我们在两个 HUB75 面板上滚动了文本。 

    Pimoroni 的 MicroPython 模块称为 hub75,它抽象出许多复杂性,例如基于 RGB 或 HSV 值设置像素颜色。模块中缺少的一个抽象是文本。我们本来希望看到可以将字符串传递给的函数或类。但这不是交易破坏者。我们设法编写了一个在矩阵上显示整数的简单脚本;诚然,代码需要重构,但它达到了它的目的。

    QW/ST 连接器是我们可以为 Pimoroni 75 号州际公路添加额外功能的地方。使用 Stemma QT / Qwiic 组件,我们可以添加用于温度传感器、加速度计、磁力计和紫外线检测的传感器,只需很少的接线。Pimoroni 的 MicroPython 固件适用于一些但不是所有的插件。从我们的收藏中,我们采购了一个 BME688 温度传感器,并快速重写了我们的简单脚本以获取当前温度并将其显示在矩阵上。它运行良好,它让我们开始考虑对 CircuitPython 的支持。

    MicroPython 的替代品是 CircuitPython,75 号州际公路有自己的官方端口。我们连接了一个 HUB75 面板,刷新了最新的稳定 CircuitPython 版本,然后修改了一个 RGB 矩阵示例以使用 75 号州际公路的 GPIO 引脚映射,然后我们就死机了。董事会似乎已经死了。我们无法将 CircuitPython 刷回电路板上,因此我们不得不使用自定义 uf2 固件“核爆”存储。 

    我们重复了安装过程,但错误仍然存​​在。需要一点帮助,我们联系了 Pimoroni 并共同努力解决了这个问题。工作假设是 CircuitPython 正在“幕后”执行操作,这会导致 75 号州际公路看起来“已死”。大约 90 秒后,Windows 通知我们“无法识别 USB 驱动器”,但在按下重置后,我们又恢复了业务并且我们的代码可以正常工作。 

    我们在这个调试过程上花了很多时间,与 Pimoroni 的联合创始人 Paul Beech 和首席开发人员 Phil Howard 一起工作。有时我们的调试过程类似于用于成功启动阿波罗 13 号命令模块的启动过程。CircuitPython 适用于 75 号州际公路,但如果您需要访问 Adafruit 软件库,尤其是 Stemma QT 组件,最好下载 Pimoroni 的支持 Adafruit 库的 MicroPython 版本。

    75 号州际公路的替代方案

    75 号州际公路的零售价略高于 14 美元,以这个价格,你可以买到一块坚固但有限的木板。我们没有任何 Wi-Fi 连接,但可以通过 GPIO 添加。Adafruit 的 Matrix Portal M4 是一块板的野兽。Arm Cortex M4 处理器和 ESP32 协处理器售价 25 美元,为我们提供原始速度和 Wi-Fi 连接。CircuitPython 和 Arduino IDE 完全支持它。对于额外的 10 美元,我们获得了创建 IoT HUB75 项目的能力,只需很少的布线,这对某些人来说是可取的。 

    如果您使用 Adafruit Feather RP2040,它本身就是最好的 RP2040 板之一,您可以添加售价 7.50 美元的 Adafruit RGB Matrix Featherwing 套件,并提供与 HUB75 类似的功能。如果加上 Feather RP2040 本身的成本 11.95 美元,那么您将花费近 20 美元购买该组合。但是,您也可以使用可堆叠接头并以 12.95 美元的价格购买 Adafruit AirLift FeatherWing,这将为您提供 Wi-Fi 功能。 

    如果成本是一个问题,Brian Lough 的 14 美元 D1 Mini Matrix Breakout 和 ESP32 Matrix Shield 是社区制作的项目,解决了许多制造商的问题,包括我们的问题。Wemos D1 Mini 是 ESP8266 的 2 美元开发板,使用 Lough 的开发板,我们可以使用它们来控制 HUB75 矩阵,并将它们连接到 Internet。

    底线

    Pimoroni 75 号州际公路很有趣。该板体积小,设计精良,易于使用。如果您只想要简单的滚动文本和图像,那么您会从中得到很多。如果物联网更适合您,那么再花 10 美元购买 Adafruit 的 Matrix Portal M4 是明智之举。

    0 0 votes
    Rating post
    Subscribe
    Notify of
    guest
    0 comments
    Inline Feedbacks
    View all comments
    0
    Would love your thoughts, please comment.x
    ()
    x