E-Paper Studio: 可视化设计工具
- 分类:技术革新
- 作者:张辉
- 来源:原创
- 发布时间:2026-04-15 10:29
- 访问量:
【概要描述】大连佳显的工程师推出的这个所见即所得,一键生成Arduino代码的这个工具将大大方便用户的设计和编程,真正让电子墨水屏开发像搭积木一样简单。
E-Paper Studio: 可视化设计工具
【概要描述】大连佳显的工程师推出的这个所见即所得,一键生成Arduino代码的这个工具将大大方便用户的设计和编程,真正让电子墨水屏开发像搭积木一样简单。
- 分类:技术革新
- 作者:张辉
- 来源:原创
- 发布时间:2026-04-15 10:29
- 访问量:
E-Paper Studio

E-Paper Studio 是一个面向电子纸(E-Paper)项目的在线可视化设计工具。通过拖拽式界面快速搭建显示布局,并自动生成可直接运行的 Arduino 代码。
无论新手还是创客,都能将想法在几分钟内变为真实的电子墨水屏显示。
零代码设计
拖拽组件,无需手算坐标,所见即所得。
一键生成
完整驱动+传感器+局刷代码,开箱即用。
所见即所得
实时画布,多组件支持,精确属性调整。
高度可配置
扫描模式、位序、坐标变换,适配多数墨水屏。
⚡ 快速开始:从设计到硬件,只需三步
设计界面
选择画布尺寸,拖拽文本、数值、图片、传感器等组件。双击编辑文本或图片,右侧属性面板精确调整位置、颜色、字体。
配置硬件
设置扫描模式、位序、极性、原点;选择传感器模型(BME280/SCD41);定义局刷区域,避免全局闪烁。
生成 & 烧录
点击 Generate Code,复制或下载完整 .ino 文件。在 Arduino IDE 中调整引脚,上传即用。
高级特性,精准控制
多画布管理 & 启动序列
支持 Boot Screen 和 Main Screen 两个画布。生成的代码自动包含启动画面全刷,再进入主界面,模拟真实电子设备启动过程。
局部刷新优化
手动绘制局刷区域后,系统会为每个区域分配独立缓冲区。局刷时仅更新动态组件(时钟、传感器值),静态部分从预生成位图直接拷贝,极大减少刷新次数与功耗。可设置局刷多少次后强制执行一次全刷防止残影。
灵活的字体系统
预览时根据所选U8g2字体模板(6x10, logisoso24等)实时缩放。
代码生成每个文本组件可独立指定U8g2字体,或使用全局自动匹配。支持三种渲染模式:
native— 原生U8g2字体,无缩放。sharp— 最近邻缩放,边缘锐利。smooth— Bayer抖动缩放,大字平滑。
传感器数据集成
选择 BME280 或 SCD41 后,生成的代码自动包含:对应库、全局变量、初始化函数、读取函数、格式化函数。主循环每分钟读取一次传感器并触发界面更新。
位图映射全配置
兼容几乎所有常见电子屏驱动:
扫描模式
行扫描 / 列扫描(8页式)
位序
MSB优先 / LSB优先
坐标方向
X/Y独立反向,原点可选四角
坐标变换
旋转90°/180°/交换XY
像素极性
1=白/0=黑 或 0=白/1=黑
生成代码结构解析
点击“Generate Code”后,你将获得一个结构清晰的 Arduino 文件(.ino),包含以下主要部分:
// 1. 头文件与配置
#include <SPI.h>
#include <U8g2_for_Adafruit_GFX.h>
#include "Display_EPD_W21.h"
// 2. 位图数组(自动生成)
const unsigned char gImage_boot[] = { 0x00, 0xFF, ... };
const unsigned char gImage_main_base[] = { ... };
// 每个局刷区域的基底数组
// 3. 运行时变量与1bpp绘图工具
void setPixel1bpp(...);
void fillRect1bpp(...);
void drawTextMonoPx(...); // 基于U8g2渲染文本
// 4. 时间/传感器处理
void initRuntimeData();
bool updateRuntimeData();
void formatSensorText(...);
// 5. 局刷区域合成函数
void composeDynamicZone1(uint8_t* buf, int w, int h) {
memcpy(buf, gImage_zoneBase1, ...);
drawTextMonoPx(...); // 绘制动态组件
}
// 6. setup() 启动序列
void setup() {
EPD_HW_Init();
EPD_WhiteScreen_ALL(gImage_boot); // 开机画面
composeDynamicFull(gMainBuf, ...);
EPD_SetRAMValue_BaseMap(gMainBuf); // 主界面
EPD_DeepSleep();
}
// 7. loop() 每分钟更新动态数据
void loop() {
if (updateRuntimeData()) refreshDisplay();
delay(200);
}
典型应用场景
- 桌面温湿度计(时钟 + BME280 + 电池符号)
- 智能家居控制面板
- ️ 创意徽章 / 挂牌(导入图片)
- ⚙️ 产品原型快速迭代
- ⏱️ 运动计时器 / 番茄钟
- 日程提醒白板
✅ 已测试驱动与面板
SSD1680 (296x128, 128x296), GDEY029T94, 以及通用行/列扫描显示屏。通过位图映射配置可适配绝大多数单色电子墨水屏。
默认引脚 A14 (BUSY), A15 (RES), A16 (DC), A17 (CS) — 可在生成代码后按需修改。
✨ 现在开始,让电子纸显示屏活起来
打开 E-Paper Studio 在线工具,拖拽设计你的第一个屏幕,3分钟后就能在硬件上
看到它。
E-Paper Studio 由Good Display 创客社区驱动,持续增加组件与驱动兼容性。
遇到问题或建议?欢迎提交 Issue。
扫二维码用手机看

