Skip to main content

Seeed Studio XIAO 圆形显示屏入门指南

介绍

Seeed Studio Round Display for XIAO 是一款兼容所有 XIAO 开发板的扩展板。一侧配备全覆盖触摸屏,设计为直径 39mm 的圆盘。它在紧凑的尺寸中集成了板载 RTC、充电芯片和 TF 卡槽,非常适合用于智能家居、可穿戴设备等场景中的交互式显示。

REV说明日期作者
v1.0初始版本2023/1/29Linus.Liao
v1.11.更换锂电池充电 IC
2.在 A0 和 D6 上增加一个开关
2023/4/7Linus.Liao

规格参数

项目详细参数
电源USB Type-C:5V @35 mA
电池充电:3.7V @37mA
充电电流~ 485 mA
可扩展存储TF 卡槽,最大支持 32GB FAT
屏幕1.28 英寸触摸屏
240×240 分辨率
65K 色
其他外接设备JST 1.25 接插件
尺寸39mm x 39mm

特性

  • 电容触摸屏扩展板:配备 1.28 英寸圆形显示屏,240×240 分辨率,65K 色,提供清晰且色彩丰富的图像显示
  • 高度兼容:与所有 XIAO 系列产品高度兼容,可轻松集成到你当前的项目中
  • 丰富外设:板载 RTC、电池充电芯片、TF 卡槽、JST 1.25 接插件,全部集成在紧凑尺寸中
  • 表盘尺寸设计:采用 39 mm 圆形设计,适用于可穿戴和空间受限的项目
  • 即插即用:所有引脚均已引出,无需焊接

硬件概览

在开始之前,我们可以参考下图来了解 Round Display 的引脚设计,以便更好地理解 Round Display 的功能。

自 2023 年 4 月 7 日起,改版后的 Round Display 增加了一个 2 位开关,用于控制屏幕背光和电池电压读取,方便用户自由选择是否使用该引脚或将其释放。点击这里查看更多详情。

入门指南

硬件准备

如果你想充分发挥 Round Display 的全部功能并获得良好的体验,我们强烈建议你购买我们的 XIAO 系列作为 Round Display 的主控板。

tip

XIAO SAMD21、RP2040 和 RA4M1 由于内存不足,可能与圆形屏幕不兼容。

Seeed Studio XIAO nRF52840 (Sense)Seeed Studio XIAO ESP32C3Seeed Studio XIAO ESP32S3 (Sense)Seeed Studio XIAO ESP32C6

Round Display 背面的一排引脚是为 XIAO 系列设计的。如果你手头已经有 XIAO,就不需要准备任何额外的线缆,只需将 XIAO 的引脚对齐后直接插入 Round Display 即可。

caution

请注意,在连接 XIAO 时,XIAO 的 Type-C 接口应朝向 Round Display 的外侧。如果你不小心接反了电源,也不用太担心,Round Display 具有电源保护电路,不会轻易损坏,但我们不建议长时间保持反接状态。

Round Display 推荐的放置方向是:当你正对 Round Display 时,XIAO 的 Type-C 接口朝右侧,这样 Round Display 的电源开关按钮就在左下角。

软件准备

要使用 Round Display,我们需要对 XIAO 系列进行编程。推荐的编程工具是 Arduino IDE,你需要为 XIAO 配置 Arduino 环境并添加对应的板卡包。

tip

如果这是你第一次使用 Arduino,我们强烈建议你参考Arduino 入门指南

步骤 1. 根据你的操作系统下载并安装稳定版本的 Arduino IDE

步骤 2. 启动 Arduino 应用程序

步骤 3. 为你正在使用的 XIAO 配置 Arduino IDE

  • 如果你想在后续示例中使用 Seeed Studio XIAO RP2350,请参考**本教程**完成添加。

  • 如果你想在后续示例中使用 Seeed Studio XIAO nRF52840,请参考**本教程**完成添加。

  • 如果你想在后续示例中使用 Seeed Studio XIAO ESP32C3,请参考**本教程**完成添加。

  • 如果你想在后续示例中使用 Seeed Studio XIAO ESP32C6,请参考**本教程**完成添加。

  • 如果你想在后续示例中使用 Seeed Studio XIAO ESP32S3,请参考**本教程**完成添加。

步骤 4. 安装图形库和屏幕驱动库

要使用圆形显示屏,我们需要预先安装两个库。一个是圆形显示屏设备驱动库,用于驱动设备的屏幕和触摸功能;另一个是图形显示库,提供了一些非常常用的绘图接口。

  1. 从 GitHub 下载 Seeed_Arduino_RoundDisplay 库:

  1. 从 GitHub 下载 Seeed_GFX 库:

  1. 在 Arduino IDE 中通过添加 ZIP 文件的方式安装该库。依次点击 Sketch > Include Library > Add .ZIP Library,然后选择下载好的 ZIP 文件。
note

如果你之前安装过 TFT_eSPI 库,可能需要暂时从 Arduino 库文件夹中移除或重命名它,以避免冲突,因为 Seeed_GFX 是在 TFT_eSPI 基础上分支并增加功能的库。

Arduino 库概览

从上面的教程我们大致可以看出,Round Display 主要使用 LVGLTFT_eSPIArduino GFX 这几个库。出于篇幅考虑,我们将以绘制表盘为例,分别介绍 LVGLTFT_eSPI 库的使用。

  • 你可以点击**这里**了解 TFT_eSPI 库的接口和使用方法。

  • 你可以点击**这里**了解 LVGL 库的接口和使用方法。

  • 你可以点击**这里**了解 Arduino GFX 库的接口和使用方法。

点亮你的 Round Display

示例 1:Arduino Life - 如何在圆形屏幕上使用 Seeed_GFX 库

从 Seeed_GFX 库中打开示例程序:File > Seeed_GFX > Examples > Round Display > Arduino_Life

在与 Arduino 草图相同的文件夹中创建一个名为 driver.h 的新文件,方法是点击示例标签旁边的箭头并选择 "New Tab"。

将新文件命名为 driver.h

前往 Seeed GFX Configuration Tool,并按照图片所示选择 "TRMNL 7.5" (OG) DIY Kit"。

复制生成的代码并粘贴到你创建的 driver.h 文件中。代码应类似如下:

#define BOARD_SCREEN_COMBO 501 // Round Display for Seeed Studio XIAO (GC9A01)

现在你可以将该示例上传到 TRMNL DIY Kit 上,查看电子纸屏幕的实际显示效果!

caution

请注意,后续所有屏幕的代码都需要配套一个 driver.h 文件,用于选择要使用的屏幕类型。

示例 2:TFT 时钟

caution

请参考示例 1,在与 .ino 文件相同的目录下新建一个 driver.h 文件,并在其中保留以下代码:#define BOARD_SCREEN_COMBO 501

tip

我们需要在 Round Display 上使用 RTC 功能,因此你还需要搜索并安装 I2C BM8563 RTC 库。

当硬件和软件都准备就绪后,我们就可以开始上传第一个示例程序了。该示例程序可用于检查 Round Display 的 RTC 时钟是否正常工作。由于此示例占用的内存较少,适用于所有 XIAO 型号。

tip

如果你想在此示例基础上修改以实现更复杂的显示,请注意你所使用的 XIAO 的内存大小。具体大小可以在该 XIAO 的介绍页面中找到。

你可以在 Arduino IDE 中通过 File -> Examples -> Seeed Arduino Round display -> TFT_Clock 找到该示例程序。

只需选择你正在使用的 XIAO 型号以及 XIAO 所在的端口号,然后编译并上传即可。

确保 Round Display 的电源开关拨到 ON 位置。

如果程序运行顺利,你将看到如下效果。

示例 3:硬件测试

caution

请参考示例 1,在与 .ino 文件相同的目录下新建一个 driver.h 文件,并在其中保留以下代码:#define BOARD_SCREEN_COMBO 501

由于 HardwareTest 示例较为复杂且占用的内存较大,一些 XIAO 型号可能会因为内存不足而无法成功运行。我们基于 TFT 库和 Arduino GFX 库制作了一张测试表供你参考。

TFT 库Arduino GFX
XIAO SAMD21
XIAO RP2040
XIAO RA4M1
XIAO nRF52840 non mbed version
XIAO nRF52840 mbed version
XIAO ESP32C3
XIAO ESP32C6
XIAO ESP32S3

该示例程序可用于检查 Round Display 的 RTC 时钟、SD 卡以及触摸功能是否正常工作。

tip

我们需要在 Round Display 上使用 RTC 功能,因此你还需要搜索并安装 I2C BM8563 RTC 库。

你可以在 Arduino IDE 中通过 File -> Examples -> Seeed Arduino Round display -> HardwareTest 找到该示例程序。

只需选择你正在使用的 XIAO 型号以及 XIAO 所在的端口号,然后编译并上传即可。

确保 Round Display 的电源开关拨到 ON 位置。

如果程序运行顺利,你将看到如下效果。

note

该示例程序会测试扩展板的所有功能项,包括 RTC 功能。如果你没有安装 I2C BM8563 RTC 库,则可能会报错,你可以将函数 lv_hardware_test() 注释掉,此时对 SD 卡的功能检测也会被关闭。

校准固件更新

tip

如果你发现触摸有时没有响应,可以按照以下步骤为屏幕更新校准固件。

  1. 通过此链接下载代码
  1. 将它们放在同一目录下并运行该固件。
  1. 打开串口监视器,你会看到如下图所示的成功提示信息,这表示更新成功,你就可以上传自己的程序来试一试了!

故障排查

Q1:为什么我上传程序后屏幕没有任何显示?

A:请检查 Round Display 的电源开关是否已打开。如果你使用的是 XIAO ESP32C3,在上传程序后可能还需要按一下 Reset 按钮才能正常工作。

Q2:如果我想把 Seeed Studio XIAO ESP32S3 Sense 接到这个扩展屏上,两路 TF 卡槽会不会冲突?

A:不会产生冲突。不同的 SD 卡槽是通过片选引脚进行控制的,如果你想使用 Sense 上的 microSD 卡槽,片选引脚应为 21;如果你想使用 Round Display 上的 microSD 卡槽,片选引脚应为 D2

在 S3 Sense 相机教程中,我们有同时使用摄像头和 microSD 卡的示例

Q3:为什么我的 XIAO RP2040 在使用 Round Display 的 HardwareTest 代码时会出现非常奇怪的 C++ 错误?

A:这可能是因为你没有为 XIAO RP2040 选择合适的编译选项。请参考下图进行设置并重新上传程序。

资源

技术支持与产品讨论

感谢你选择我们的产品!我们将为你提供多种支持,以确保你在使用我们产品的过程中尽可能顺利。我们提供多种沟通渠道,以满足不同的偏好和需求。

Loading Comments...