两分钟速成教学视频如下:(全开源)多功能天气像素时钟速成教学,小白也能完美复刻(所有资料放评论区)_哔哩哔哩_bilibili
视频链接如下:(全开源)超炫酷,自制多功能像素时钟,功能超乎你想象_哔哩哔哩_bilibili
硬件链接如下:https://oshwhub.com/theapocalypse/2812-shi-zhong-_2023-09-23_22-28-42
时间转眼已来到了2024年,我也已毕业一年多了,毕业后,我最终也没有从事专业相关工作,每天下班后最常做的事就是打游戏、刷短视频。 2024年了,我想应该做点改变了。以前的笔记本电脑也换成了现在的台式机,看着凌乱的桌面,我想让它变得整洁一点。为此,我想做一个能看时间、天气、能当桌面音响、能作为一个USB拓展坞使用的多功能像素时钟。
首先时间显示方面我用的是一块WS2812像素屏。
当然也可以选择四块下面这种,体积会小很多,价格也相对便宜。
下面就是电路搭建了,
主控我选择的是ESP32,其它电路主要包含音频采集电路、USB扩展电路、DS1302时钟电路,蓝牙音频。
开源链接:https://oshwhub.com/theapocalypse/2812-shi-zhong-_2023-09-23_22-28-42
硬件设计如下:
硬件设计好了,接下来就是结构设计了,因为有两种不同的屏幕尺寸,所以我设计了两种不同尺寸的模型,方便大家复刻。
打印效果如下:
结构与硬件都做好了,便是软件的编写。
软件编写我用的是VSCode+PlatformIO,代码大多都是现成的,网上也有很多教程。因为让2812规律的显示数字,我没找到合适的解决办法。所以我这借鉴了lcd显示屏显示数字的办法,它也是通过控制单个像素点的亮暗,进而控制整个屏幕的显示,由此我们对其显示数字的办法稍加修改就可以在像素屏上显示数字,同时也可以使用相同的取模方式,对文字进行取模。
取模方式如下:
取模数组如下:
因为LCD显示屏点亮单个像素点是通过X、Y坐标来表示像素点的位置,所以我将每个像素点封装在了一个二维数组里,这样当我们想显示像素屏任一位置的像素点时都可以用简单的X、Y坐标来表示。解决了点亮任意像素点的问题后,显示字符、数字等的程序就可以完美移植了。
代码如下:
视频展示链接如下:(全开源)超炫酷,自制多功能像素时钟,功能超乎你想象_哔哩哔哩_bilibili
来看看最后的效果吧!
这是我毕业后做的第一个项目,虽然项目有些曲折,也碰到了许多的问题,但好在都一一解决了,这不由的让我想起了在校时欢乐的调车时光,为了电赛而熬的四天三夜,完赛时队友脸上的喜悦,最终虽没能拿到国奖,但拼搏过就算不后悔,毕业后因为某些原因,我没有走上嵌入式这条路,但一颗热爱的心却从未熄灭,所以我想在2024年做出改变,将以前丢掉的东西重新捡起在出发,从今以后我也会学习一些新的知识,做一些有趣好玩的东西,或复刻、或创造、或改进,希望能与大家一起共同进步。我也会将我所做的项目都将开源给大家,欢迎大家来复刻。当然本人技术有限,欢迎各位批评指正!在这给大家拜个晚年,祝大家龙年大吉,万事顺遂,执着理想,纯粹当下,人生海海,有帆有岸。
本人技术有限,欢迎各位批评指正,不胜感激。有问题请评论区留言,看到就回!