构建一个用于在 Python 中快速原型设计 Adafruit GFX GFX 显示屏的工具
pydafruit_gfx 是一个用于在 Python 中快速原型设计 Adafruit GFX GFX 显示屏的工具。(没错,是 Python!)
在搭建显示屏(使用Arduino和硬件)时,我常常感到沮丧:需要刷写程序、线缆可能损坏、导线松脱,或者板子突然烧坏。最终我可能只能花10到20秒(如果运气好)来测试一下,把字体向左移动三个像素是否“感觉正确”。
我一直想找到一种更快的方式来原型设计显示布局和图形,于是我开发了这个Python工具。
使用真实GFX代码
为什么不直接使用 Adafruit 的 GFX 代码,而不是去模仿呢?
Pydafruit Gfx 使用:
•Adafruit GFX 图形代码
•SDL(一个可在 macOS、Linux 和 Windows 上运行的显示窗口)
•pybind11
使用Adafruit的原始GFX代码非常棒,因为没有任何不确定性。字体复制正确了吗?那个函数真的实现了吗?所以直接用他们的代码吧。他们的代码就是真相的来源。
SDL 是一个支持基本像素绘制的后端窗口,非常适合本工具使用。SDLSDL 可以绘制任意颜色,放大显示(在电脑屏幕上 64x6444 像素非常小),并可将输出保存为图像。Adafruit 的 GFX 会直接写入 SDL SDL SDL 窗口。你无需安装 SDL,它已内置在 pip pip pip 轮中。
pybind111 将整个过程变成一个你可以直接用 pip pip 安装的 Python Python 库。
我已在 macOS、Windows 和 Ubuntu Linux 上测试过这些轮子,都正常工作。但我相信仍可能存在一些特殊情况、不常见的配置或较旧的操作系统会引发问题。
设置
选项1:安装轮子(pip install)
如果你使用的是 Mac、Linux 或 Windows,只需下载与你的 Python Python 版本和平台匹配的 wheel 文件,然后用 pip pip 安装即可。仓库中的 README.md 也提供了相关说明。
选项2:从源码构建
如果你想修改代码、添加功能(比如字体!)或查看整个系统如何运作,你可以自己动手来构建。
克隆仓库(包括 Adafruit GFX GFX 子模块),安装 SDL2,然后运行:
安装后,运行示例:
如果窗口打开并显示图形,说明您可以开始原型设计了。
我需要一个演示,于是开始用 pydafruit gfx gfx 编写 Python 代码。下面就是那段代码。大约一小时后,我就得到了一个自己满意的东西。
接下来,我将.py文件复制到chatGPT中,并说:“我想把它作为OLED显示屏的Arduino.ino文件。”
我上传了生成的代码,运行后它成功了。
现在我可以在 Python 中快速迭代,正确地设计布局和图形,然后在满意后将其转换为 Arduino 代码。
本文编译自hackster.io





