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

介绍
Seeed Studio Round Display for XIAO 是一款兼容所有 XIAO 开发板的扩展板。一侧配备全覆盖触摸屏,设计为直径 39mm 的圆盘。它在紧凑的尺寸中集成了板载 RTC、充电芯片和 TF 卡槽,非常适合用于智能家居、可穿戴设备等场景中的交互式显示。
| REV | 说明 | 日期 | 作者 |
|---|---|---|---|
| v1.0 | 初始版本 | 2023/1/29 | Linus.Liao |
| v1.1 | 1.更换锂电池充电 IC 2.在 A0 和 D6 上增加一个开关 | 2023/4/7 | Linus.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 的主控板。
XIAO SAMD21、RP2040 和 RA4M1 由于内存不足,可能与圆形屏幕不兼容。
| Seeed Studio XIAO nRF52840 (Sense) | Seeed Studio XIAO ESP32C3 | Seeed Studio XIAO ESP32S3 (Sense) | Seeed Studio XIAO ESP32C6 |
|---|---|---|---|
![]() | ![]() | ![]() | ![]() |
Round Display 背面的一排引脚是为 XIAO 系列设计的。如果你手头已经有 XIAO,就不需要准备任何额外的线缆,只需将 XIAO 的引脚对齐后直接插入 Round Display 即可。

请注意,在连接 XIAO 时,XIAO 的 Type-C 接口应朝向 Round Display 的外侧。如果你不小心接反了电源,也不用太担心,Round Display 具有电源保护电路,不会轻易损坏,但我们不建议长时间保持反接状态。
Round Display 推荐的放置方向是:当你正对 Round Display 时,XIAO 的 Type-C 接口朝右侧,这样 Round Display 的电源开关按钮就在左下角。

软件准备
要使用 Round Display,我们需要对 XIAO 系列进行编程。推荐的编程工具是 Arduino IDE,你需要为 XIAO 配置 Arduino 环境并添加对应的板卡包。
如果这是你第一次使用 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. 安装图形库和屏幕驱动库
要使用圆形显示屏,我们需要预先安装两个库。一个是圆形显示屏设备驱动库,用于驱动设备的屏幕和触摸功能;另一个是图形显示库,提供了一些非常常用的绘图接口。
- 从 GitHub 下载 Seeed_Arduino_RoundDisplay 库:
- 从 GitHub 下载 Seeed_GFX 库:
- 在 Arduino IDE 中通过添加 ZIP 文件的方式安装该库。依次点击 Sketch > Include Library > Add .ZIP Library,然后选择下载好的 ZIP 文件。
如果你之前安装过 TFT_eSPI 库,可能需要暂时从 Arduino 库文件夹中移除或重命名它,以避免冲突,因为 Seeed_GFX 是在 TFT_eSPI 基础上分支并增加功能的库。
Arduino 库概览
从上面的教程我们大致可以看出,Round Display 主要使用 LVGL、TFT_eSPI 和 Arduino GFX 这几个库。出于篇幅考虑,我们将以绘制表盘为例,分别介绍 LVGL 和 TFT_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 上,查看电子纸屏幕的实际显示效果!

请注意,后续所有屏幕的代码都需要配套一个 driver.h 文件,用于选择要使用的屏幕类型。
示例 2:TFT 时钟
请参考示例 1,在与 .ino 文件相同的目录下新建一个 driver.h 文件,并在其中保留以下代码:#define BOARD_SCREEN_COMBO 501
我们需要在 Round Display 上使用 RTC 功能,因此你还需要搜索并安装 I2C BM8563 RTC 库。

当硬件和软件都准备就绪后,我们就可以开始上传第一个示例程序了。该示例程序可用于检查 Round Display 的 RTC 时钟是否正常工作。由于此示例占用的内存较少,适用于所有 XIAO 型号。
如果你想在此示例基础上修改以实现更复杂的显示,请注意你所使用的 XIAO 的内存大小。具体大小可以在该 XIAO 的介绍页面中找到。
你可以在 Arduino IDE 中通过 File -> Examples -> Seeed Arduino Round display -> TFT_Clock 找到该示例程序。

只需选择你正在使用的 XIAO 型号以及 XIAO 所在的端口号,然后编译并上传即可。
确保 Round Display 的电源开关拨到 ON 位置。

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

示例 3:硬件测试
请参考示例 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 卡以及触摸功能是否正常工作。
我们需要在 Round Display 上使用 RTC 功能,因此你还需要搜索并安装 I2C BM8563 RTC 库。

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

只需选择你正在使用的 XIAO 型号以及 XIAO 所在的端口号,然后编译并上传即可。
确保 Round Display 的电源开关拨到 ON 位置。

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

该示例程序会测试扩展板的所有功能项,包括 RTC 功能。如果你没有安装 I2C BM8563 RTC 库,则可能会报错,你可以将函数 lv_hardware_test() 注释掉,此时对 SD 卡的功能检测也会被关闭。
校准固件更新
如果你发现触摸有时没有响应,可以按照以下步骤为屏幕更新校准固件。
- 通过此链接下载代码

- 将它们放在同一目录下并运行该固件。

- 打开串口监视器,你会看到如下图所示的成功提示信息,这表示更新成功,你就可以上传自己的程序来试一试了!

故障排查
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 选择合适的编译选项。请参考下图进行设置并重新上传程序。

资源
- [PDF] 充电 IC 数据手册
- [PDF] ETA3410 数据手册
- [PDF] RTC PCF8563 数据手册
- [PDF] 1.28'' a-Si TFT 液晶显示屏数据手册
- [PDF] Seeed Studio Round Display for XIAO 原理图
- [PDF] Seeed Studio Round Display for XIAO 原理图 v1.1
- [PDF] GJX0128A4-15HY 数据手册
- [ZIP] Seeed Studio Round Display for XIAO 原理图和 PCB
- [ZIP] Seeed Studio Round Display for XIAO 原理图和 PCB v1.1
- [3DM] Round Display for XIAO 的 3D 模型
- [STL] Round Display 外壳的 3D 模型图
- [STL] Seeed Studio XIAO ESP32 S3 Sense 圆形屏幕外壳
技术支持与产品讨论
感谢你选择我们的产品!我们将为你提供多种支持,以确保你在使用我们产品的过程中尽可能顺利。我们提供多种沟通渠道,以满足不同的偏好和需求。



