当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]与其再开发一个生产力设备,我决定打造“借口猫”——一款小巧的电子纸桌面伴侣,能根据猫咪表情的变化和特殊模式生成借口。所有内容均本地存储,无需Wi-Fi、API或云服务即可运行。

我拖延,而有时这也没关系。

与其再开发一个生产力设备,我决定打造“借口猫”——一款小巧的电子纸桌面伴侣,能根据猫咪表情的变化和特殊模式生成借口。所有内容均本地存储,无需Wi-Fi、API或云服务即可运行。

这个初版也是我的学习项目。在ChatGPT的帮助下,我开发并优化了Arduino代码,并对现有外壳设计进行了一些小调整,以适配硬件。

借口猫的功能:

借口猫有三种主要页面状态:

- 启动页,等待用户按下按钮;

- 正常页面,显示随机选择的借口及对应的猫咪表情;

- 五种特殊页面,在这些页面中,猫咪会暂时停止生成借口,转而执行其他操作。

按下KEY2键,即可生成新的借口并更换猫咪的表情。特殊模式以单色位图头文件形式存储,显示猫咪在睡觉、追逐球、寻找食物、发出嘶嘶声或进入Cheems模式。

如果设备静置60秒以上,将返回启动页面。

硬件与软件

硬件

•Seeed Studio XIAO电子纸显示屏EE05

•4.26英寸单色电子纸显示屏,分辨率为800 × 480

USB-C数据线

•3D打印外壳

•安装了Arduino IDE的电脑

EE05由XIAO ESP32-S3 Plus供电,并配备三个可编程用户按钮。此版本通过USB-C供电,而内置的JST连接器可在后续版本中预留空间,用于添加3.7V锂电池。

软件

•Arduino IDE

•Seeed Studio 维基中的官方 EE05 指南

•Excuse Cat 源代码

所有项目文件均可在 GitHub 仓库中获取。

1:连接硬件

首先,我使用 FPC 数据线将 4.26 英寸的电子纸显示屏连接到 EE05。然后通过 USB-C 将板子连接到电脑,用于编程和供电。

2:运行第一个显示测试

在开始开发 Excuse Cat 接口之前,我按照官方的 EE05 Arduino 指南,先进行一个简单的“Hello World”测试。

这一步帮助我完成了 ESP32 板子包的设置、安装所需的电子纸库、选择正确的 driver.h 文件,并确认了板子能够与显示屏正常通信。

上传示例代码后,文本成功显示在电子纸上,这证明了 Arduino 环境、串口、FPC 连接以及显示屏驱动都已正确工作。

在确认硬件和 Arduino 环境无误后,我便可以着手构建 Excuse Cat 的界面及交互逻辑。

3:设计交互逻辑并编写代码

当显示测试成功后,我开始为 Excuse Cat 设计交互逻辑。我仍在学习编程,因此借助ChatGPT编写了Arduino代码。我描述了想要实现的行为,将每个版本在实际硬件上进行测试,然后当结果与预期交互不一致时,就调整代码。

该程序仅使用KEY2作为输入,并跟踪多个页面状态和计时器:

•在启动页面时,首次按下按钮会打开正常借口页面。

•在正常模式下,每次按下按钮都会从本地存储的列表中选择一个借口,并更新猫咪的表情。

•在相同十秒内连续多次按下按钮,会增加快速按压计数器。

•前四次快速按压会正常生成借口。

•从第五次快速按压开始,程序进入五种特殊猫咪模式之一。

•如果没有再次按下按钮连续十秒,快速按压计数器将被重置。

•没有发生任何交互连续六十秒后,设备将返回到启动页面。

这些特殊模式以单色位图头文件形式存储,显示猫咪在睡觉、追逐球、寻找食物、发出嘶声,或变成Cheems模式。

借口列表、交互逻辑和位图资源均直接存储在Arduino项目中,使设备完全离线运行。

收集借口

我希望这些借口听起来像是真正的创作者可能会说的,而不是泛泛而谈的占位文本。

我在 r/maker 社区发帖,邀请大家分享他们放弃项目时最有趣的理由。我挑选并改编了一些自己最喜欢的回复,再结合了关于天气、调试、动力不足、零食以及日常制作人常见问题的其他借口。

例如:

“松鼠!”

“昨天就完成了。”

“世界还没准备好接受我的天才之作。”

“我觉得我的项目还需要多花点时间胡思乱想。”

“现在是打扫房间的时候。”

4:上传并测试项目到 Arduino IDE

当交互逻辑正常运行后,我将项目文件整理成一个单一的 Arduino 代码文件夹,并准备好了上传代码。

Arduino 代码文件夹中包含主程序、显示配置,以及用于特殊猫咪页面的位图文件:

所有这些文件都应保留在同一个代码文件夹中。

在 Arduino IDE 中,我选择了正确的 ESP32-S3 板和串口,编译了项目,并将其上传到了 EE05。上传草图后,我在设备上测试了完整的交互功能,包括页面切换、随机借口选择、猫表情变化、特殊模式触发以及60秒倒计时返回功能。

我还根据这些测试结果,调整了按钮去抖时间、文字位置和位图的位置。

5:修改3D打印外壳

软件运行正常后,我开始着手制作外壳。

该外壳基于bOoStEr在MakerWorld上分享的“E Ink(电子纸)数字板外壳”。我保留了大部分原始设计,并对本次制作进行了少量修改。

我裁剪了原设计前部开口的一部分,并调整了模型位置,以确保USB-C接口和KEY2键均可使用。保持USB-C接口外露尤为重要,因为此版本首次通过USB供电,而非电池供电。

6:组装设备

最终组装相对简单。

我将电子纸显示屏和EE05电路板放入改装后的外壳内,将屏幕与前部开口对齐,并确认USB-C接口和KEY2键仍可操作。

组装仅需少量螺丝和双面胶即可完成。螺丝将外壳固定在一起,而胶带则防止内部组件移动。

关闭外壳后,我连接了USB-C数据线,并再次测试设备,以确保外壳不会遮挡按钮或对显示屏施加压力。

如何使用Excuse Cat

1. 通过USB-C连接设备,然后等待启动页面。

2. 按 KEY2 键生成借口并改变猫咪的表情。

3. 继续按 KEY2 以生成更多借口。

4. 在十秒内反复按压 KEY2,即可进入特殊模式。

5. 请将设备静置60秒,然后返回启动页面。

结论

Excuse Cat 还是一个规模较小、尚不完善的初版。其借口库有限,交互和界面还有很大的发展空间。

然而,作为我从最初构想到完成一个实际物理设备的首个项目,对我来说,完成它比追求每个细节的完美更为重要。

在开发过程中,我逐渐意识到,对我而言,拖延并不总是可以通过其他生产力工具解决的问题。有时我只是不想去做某项任务;有时我会感到疲惫、卡住,或对自己要求过高。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

我一直养着雪茄,却厌倦了猜测加湿器内部的状况。湿度会不断变化,等你察觉时,已经为时已晚。于是,我开始打造HC-01:一款智能加湿器控制器,它能实时监测温度和湿度,并自动调节环境参数。

关键字: 加湿器 温湿度传感器 显示屏 ESP32

为了让这个项目更易于上手,无需复杂的编码、IDE设置或库安装。我开发了一款极其简单的网页刷机工具,您可以通过浏览器直接将预编译的二进制文件烧录到您的设备上。我还制作了完整的视频教程,一步步指导您完成整个过程!

关键字: SD卡 显示屏 SPI总线 ESP32

M5Stack 推出的 M5 Paper S3 是一款功能多样且实用的设备,非常适合打造各类信息显示项目。凭借其大尺寸的电子纸屏幕和 WiFi 连接功能,它可作为数据展示面板,从不同来源获取并显示信息。

关键字: 电子纸 Wi-Fi M5Stack

因此我制作了这个小巧的终端模拟器。它使用的是Makerfabs ESP32-S3并行TFT触摸屏,配备3.5英寸ILI9488显示屏。一款专为无头Linux设备设计的物理串行控制台,基于Makerfabs ESP32-S...

关键字: 触摸屏 服务器 显示屏 ESP32-S3

reTerminal E1001 不仅是一款搭载 ESP32-S3 的电子纸显示屏,更是一款功能多样的边缘设备,专为持续监测而设计,具备超低功耗特性,电池续航时间最长可达三个月。

关键字: 电子纸 显示屏 ESP32-S3

MIPI(移动产业处理器接口):由ARM、诺基亚、ST和TI等公司于2003年成立的联盟制定的一种接口标准。其目的是标准化移动设备内部接口(如摄像头、显示屏、射频/基带接口),从而降低移动设备的设计复杂度,提高设计灵活性...

关键字: 摄像头 显示屏 RV1126B

这是一个快速且多功能的平台,专为基于MIPI-DSI和MIPI-CSI的显示屏和摄像头人机界面(HMI)应用而设计。它同样适用于边缘AI工作负载、传感器处理应用以及需要CM4/CM5载板灵活性的同时保持微控制器确定性行为...

关键字: 微控制器 显示屏 人机界面 SCINTIX P4板

作为一名创作者和开发者,每天不断查看 AdMob、Cults3D、Google Console 和 YouTube Analytics 的数据会耗费大量时间。我不喜欢日复一日地记录新数据——这对创作者来说实在不现实。为了...

关键字: 显示屏 蜂鸣器 稳压器 ESP32-C3

在本项目中,将ESP32-S3智能显示屏与多个传感器结合,构建了一个紧凑型气象站,可测量温度、湿度、大气压力、海拔高度、降雨状况以及环境光照强度。

关键字: 传感器 显示屏 ESP32-S3

现代数字实验室和教室不仅需要智能设备,还需要实时的环境感知。噪音过大会降低注意力,干扰学习活动,并影响整体工作效率。在本项目中,我们使用两块ESP32板、一个MAX4466麦克风放大器和一个MAX7219 LED矩阵显示...

关键字: LED矩阵 显示屏 放大器 MAX4466
关闭