步骤1:此项目所需的部件
零件清单:
taydaelectronics上的Arduino Uno $ 6
arduino uno的Protoshield。
DS3231 plus电池。
WS2813 LED 144 1米。
Tay OH电子公司的470 OHM 1 W碳膜电阻约1美分。
Taydaelectronics的1000uf 16V电解电容9美分
5v电源 - 我用了一个旧的黑莓充电器。
6in圆镜。
10个亚克力圆盘
2 - 6“木质刺绣箍(是的,右边)
Silver one - 镜片.Ebay似乎最便宜。
各种电线。
3/8“木制方形销钉
旧木制时钟底座或其他展示架。
2个小拉链。
原型盾不是必需的,但如果您喜欢使用Arduino,您会发现它在构建这些项目时非常方便。如果需要,可以使用面包板交换原型屏蔽。
您可能还需要烙铁。
我希望该项目的成本约为40.00美元
第2步:设置你的电脑
如果这是你的第一个arduino项目:
从arduino.cc下载arduino软件
使用USB电缆将Arduino连接到PC。
启动软件后,您需要安装三个库:
单击“草图”菜单,然后单击“包含库”,然后单击“管理库。..” “
安装两个库:FastLED和RTClib。有关详细信息,请参阅图片。
从我的github获取Arduino scketch
我将在最后查看代码,以便您可以修改它如所须。
此时加载程序Infinity_Clock_DS3231_WS2813.ino
转到草图和上传以加载Arduino。
Instructable的最后一部分涵盖了一些可配置的参数。
现在最好上传草图,因为一旦添加了外部电源,最好不要将它连接到您的PC。
第3步:连接项目。
如果您正在使用ProtoType Shield将它放在Arduino上。
接线是最复杂的部分该项目。我收录了图片,以帮助您了解我的所作所为。我建议在开机前仔细检查所有连接。
DS3231 - 实时时钟模块
将 DS3231 模块放入面包板并按照图片连接。
Arduino接地至GND
Arduino 5V至VCC
Arduino A4至SDA
Arduino A5至SCL
在图片中,我将5v和地线连接到面包板上的自己的运行,因为稍后我们将需要连接外部电源。
结果
将WS2813 LED灯条
arduino 5V连接到5V电源。
中间的两个连接器是冗余数据引脚。它们转到引脚7
确保在引脚7和两条数据引线之间放置一个470 OHM电阻。
Arduino接地到最后连接器。
连接外部5V电源(建议不要长时间从arduino电源运行LED灯条。)
在引线之间放置一个1000uf的电解电容器。
将电源和地线连接到Arduino电源(5V)和接地(GND)
我不建议将外部电源和USB连接到Arduino上同时。
第4步:构建无限镜像
构建无限镜像的步骤
将胶片涂在丙烯酸胶片上。这将使你的单向镜像。
将丙烯酸圆盘放入刺绣箍中。拧紧螺丝以防止滑动
将镜子放入另一个Embroiery箍中。 Tighen向下拧螺丝。
将方形销钉切成小截面。约1/2“
将LED灯条环绕在圆圈内。
使用拉链将LED固定到位。
你可以需要在拉链领上切一个缺口。
把环放在镜子上
用木块作为垫片
将块粘贴到位。它们应足够牢固以将LED固定在适当的位置。
将丙烯酸镜放在镜子/LED顶部并粘合到位。
第5步:代码
该程序使用实时时钟库和Fastled库。
以下是一些自定义行为的代码片段。
OFFSET - 是重叠。编程期望重叠来自LED0。我有3个LED偏移。
CLOCKSTART - 中午就在时钟的位置.LED 30将它从电气连接中拨出来。
我编写程序使用HTML颜色。你可以从https://htmlcolorcodes.com/获取它们只需在prog中交换#为0x ram。
你可以改变上午/下午的背景
backgroundAM = 0x070707;
backgroundPM = 0x646D7E;
LED指针时钟:
hourHand = 0x000FFF;
minHand = 0x00CC00;
secHand = 0xcc0000;
为了让它脱颖而出,我添加了一个选项,可以让3个LED用于时针,但允许您更改两侧的颜色中间一个让它脱颖而出。
theeledhour = true;//你可以使它成为真或假
extraHourHand = 0x00001F;
另一个不错的功能是RTClib将检测到你的DS3231已经取出电池并将设置到PC编译时的时间。它是新DS3231的一个很好的功能。
-
时钟
+关注
关注
10文章
1720浏览量
131365 -
Arduino
+关注
关注
187文章
6464浏览量
186660
发布评论请先 登录
相关推荐
评论