我想为我的办公桌定制一个时钟。在 neopixel LED 的帮助下,我决定构建自己的数字时钟,它足以在我工作时显示时间。在这个时钟中,我们可以改变时间、数字颜色和亮度。让我们开始制作吧。
阁楼85*1
WS2812B LED *54
实时时钟 DS1307*1
AMS1117-5.0*1
开关*1
10k*1
二极管_4148*1
滑动开关*1
32.768kHz晶振*1
TP4056锂离子电池充电模块
18650锂电池
首先,我为时钟选择了 neopixels,因为我们只需要一个引脚来控制所有 LED,我们可以简单地显示不同的颜色。要显示一个数字,我们至少需要 5 行和 3 列的 LED。所以我设计了这样的一位数段。也就是说,一位数需要 13 个 LED。我们有 4 个数字,总共 52 个新像素。此外,我还为第二个指示添加了两个 LED。为了节省时间,我在电路中添加了 ds1307 rtc ic。
我在easyeda上设计了电路。在这里,我将 RGB LED 排列成数字模式,每个数字由 13 个 LED 组成。另外,我为第二个指示添加了 2 个 LED。rtc ic 的 SDA 和 SCL 引脚连接到 attiny 的引脚 5 和 7。
从这里下载电路图
用手焊接这个 54 Led 和其他组件是不切实际的,所以我将电路转换为 PCB。首先,我将 LED 布置在 PCB 的顶部。然后在底层,我布置了所有其他组件并完成了PCB设计。完成设计后,我们的 PCB 看起来像这样。所以接下来我生成并下载了用于 PCB 制造的 Gerber 文件。
从这里下载 Gerber 文件
为了制作 PCB,我访问了JLCPCB.com。jlcpcb仅需 2 美元即可购买 5 块很棒的 PCB,其 PCB 组装从 0 美元起。
领取JLCPCB $54新用户优惠券:https ://jlcpcb.com/ ESC
要订购 PCB,只需单击立即订购并上传 Gerber 文件,然后您可以选择颜色厚度数量等。在这种情况下,我选择紫色。之后,我选择了运输方式并下了订单。
两周后,我收到了 PCB,紫色的 PCB 看起来很棒,质量也非常好。
接下来,我抓住了 Neopixel LED。我们必须将 54 个 LED 焊接到 PCB 上,手工焊接会很痛苦,所以我决定使用回流焊方法。所以首先我用针分配焊膏。然后我将每个 LED 放在正确的焊盘上。完成后,我把它放在我自己动手做的电炉里煮了。LED 回流后,我们的 PCB 看起来像这样。现在我们必须将元件焊接到 PCB 的下侧。在这里我们不能使用回流焊方法,因为另一侧已经用 LED 焊接了。所以我手工焊接了每个组件。
我将 spi 引脚 attiny 连接到 Arduino 并对 attiny85 进行了编程,现在我将电池连接到时钟,在这里你可以看到结果。它运行良好,但您可以看到 LED 的光一起漫射并发出混合光。
从这里下载 Arduino 代码
为了解决这个问题,我在 tinkerkad 中设计了一个外壳,并使用我的 ender 3v2 3d 打印了设计。我们有三个不同的 3d 部分。带 LED 夹具的底座、后盖和前面板。
从这里下载 3D 文件
接下来,我从时钟 PCB 上拆下按钮和开关,并将软线连接到它。
然后我将开关和按钮焊接到它的焊盘上,并将 neopixel PCB 插入夹具中。这里我把tp4056充电模块加到锂离子电池上接上电路。在后盖上,我粘上了tp4056充电模块、按钮和开关。最后,我合上了盖子。对于前面板,我把它粘在前面,就是这样。
现在你可以看到工作看起来不错吧。我们可以更改时间、颜色和亮度,只需按下按钮,然后再次按下按钮即可更改颜色。选择颜色后等待 3 秒选择亮度,我们可以将其设置为 0-10,然后我们可以设置小时和分钟,就是这样。
这就是我制作基于 Attiny85 的 Neopixel 时钟的方法。这就是今天的全部内容。希望您喜欢我的教程并从中学到了一些东西。下次见
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !