我们将以 Arcs-mini 开发板为核心,展示如何使用触发 SPI 通信,驱动外接墨水屏。
使用的墨水屏模组是 微雪 4.2-inch-e-Paper-V2 ,参考手册下载链接:c359944_墨水屏_4.2inch+e-paper+module_规格书_wj69236.pdf
实操之前,请确保已根据文档《Arcs-Mini 开发环境搭建指南》 搭建开发环境。
本篇示例在 2.3.5 版本的 SDK 进行修改
可通过命令git log查看版本,如果版本不一致,请使用命令git checkout mini-v2.3.5切到指定SDK版本
参考文档《烧录工具安装教程》安装ADB工具
执行命令adb shell kv set int user.disable_app_update 1关闭云端OTA更新,防止云端更新把刚烧录的固件刷掉了。

如果您不想重新编译代码而希望直接体验本固件,可点击下载。
固件下载链接: arcs-mini.combined-ePaper.hex
.hex 文件拖入 cskburn desktop 后选择 ADB 设备进行烧录即可。
源码下载:epaper_demo.zip
下载后,将其替换 arcs_mini 项目的
apps文件夹与arcs-sdk文件夹
微雪 4.2-inch-e-Paper-V2 连接 Arcs_mini 的扩展 GPIO 接口
当前代码使用 PA04 ~ PA09 接墨水屏,连接关系如下:
| 引脚 | 连接信号 | 当前用途 | 说明 |
|---|---|---|---|
PA04 |
BUSY |
GPIO 输入 | 当前代码按“低电平表示空闲”处理 |
PA05 |
CLK |
SPI1 时钟 | CSK_IOMUX_FUNC_ALTER6 |
PA06 |
RST |
GPIO 输出 | 低电平硬复位 |
PA07 |
CS |
SPI1 片选 | 使用硬件片选 |
PA08 |
DC |
GPIO 输出 | 低电平命令,高电平数据 |
PA09 |
DIN |
SPI1 数据输出 | CSK_IOMUX_FUNC_ALTER6 |

CMakeLists.txt 让文件参与编译在 apps/arcs-mini 下新增以下 4 个文件:
epaper_demo.c
epaper_demo.h
font24CN.c
font24CN.h
然后修改 apps/arcs-mini/CMakeLists.txt,确保至少把下面两个源文件加入 target_sources(...):
epaper_demo.c
font24CN.c
epaper_demo.c/h 的代码将 epaper_demo.c 与 epaper_demo.h 的完整代码复制到工程中,作为墨水屏驱动入口与对外接口。
font24CN.c/h 的代码将 font24CN.c 与 font24CN.h 的完整代码复制到工程中,用于中文/英文文字显示的字模与查找接口。
https://www.waveshare.net/wiki/E-Paper_Font_Tutorial