58935| 2
|
[ESP8266/ESP32] 用ESP32做一个数字沙漏 |
本帖最后由 RRoy 于 2024-4-24 14:30 编辑 沙漏用来形象地显示时间的流逝,现在市面上很难找到大型沙漏了,常见的只有厨房用的小沙漏,大概能显示3到5分钟。 在这个项目里,作者制作了一个完整流程正好为一小时的沙漏,小时数会在顶部的玻璃上显示。 这个项目的构建和编程都相当简单,只需要你有一些基础的Arduino知识就行。同时,沙漏在外观设计上也留有很大的发挥空间。 所需材料
这个是整个项目中可能相对最复杂的部分,但是别担心,一步一步来,你会发现也没那么难。 显示屏和RTC都需要一个3.3V的电源和GND。 RTC还需要两个额外的连接: 按照表格连接显示屏。TFT1是上方的显示屏,TFT2是下方的。 步骤2:程序和RTC 对于ESP32,你需要在Arduino IDE中进行以下设置: 将程序上传到ESP32。如果接线正确,应该可以正常工作。 RTC模块通过无线电加密信号获取时间。可能需要几分钟才能显示正确的时间。从接收到的数据中分离出分钟和小时数,并用于我们的程序。 分钟数被转换为沙子三角形的坐标,确保沙子的流动正好持续一小时。 小时数只在上方的玻璃上显示。 上传 HourGlass.ino 或 HourGlass-demo.ino 到你的ESP32。确保 colors.h 文件在同一文件夹中。 程序可以在文末打包下载。 步骤3:图形工作原理 图形由简单的几何元素组成。上方的沙子最初显示为一个填充矩形(tft1.fillRect(…))。由于圆形显示屏,这实际上无法识别。沙子流动形成的圆锥是通过一个黑色三角形模拟的,这个三角形随时间改变形状和位置。底部堆积的沙子也由三角形表示。 小时数简单地显示在上方的玻璃上。 步骤4:外壳 作者倾向于使用3D打印机制作的外壳,使用Tinkercad设计。 作者将其分成3部分,这样时钟就可以轻松放入孔中。这是能得到的最接近沙漏形状的设计。 stl文件可以在文末打包下载。 你不用将沙漏翻转。沙子会在一小时后神奇地“移回”上方的玻璃中。 原文地址:https://www.instructables.com/Digital-Hourglass/ 项目作者:Markus Opitz 译文首发于:DF创客社区 转载请注明来源信息 |
90.29 KB, 下载次数: 4586
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed