征集令 |智能全彩时钟
简介
基于STM32的全彩多功能时钟
简介:基于STM32的全彩多功能时钟开源协议
:CC BY-NC-ND 3.0
描述
基于STM32的多功能全彩时钟,复刻需谨慎。
一、简介
1.可通过物联网获取网络上的数据并更新本地数据。(如:时间、天气等)
2.实时获取当前温度,可在本地显示出来或上传至app查看。
3.拥有32*8的全彩的屏幕。
4.可在app上选择多种显示时间或动画模式。
5.在线模式下任意时刻时间误差几乎为零。
6.离线模式下时间误差基本保持在 ±1S/6天 范围内。
7.bilibili链接:全彩时钟_哔哩哔哩_bilibili
二、器材准备
准备以下器材:
(1) A4大小的硫酸纸
(2) 黑色喷漆
(3) 黑茶色亚克力板(30mm*8mm)
(4)CH340串口下载器
(5)ESP LINK下载器(可以不用)
(6)8mm的拼装积木 (3~4包,1包500个)
(7)TTP223模块·*3
三、硬件
1.显示部分
(1)WS2812灯板
灯板部分最好是不要买8*32的,不然WS2812的线序不同那么显示出来的要不就是镜像的,要不就是乱码。
这是我买的灯板链接:https://item.taobao.com/item.htm?id=537253639590
灯板的集成度太高,直接焊接的画会耗费大量时间,可能还会降低成功率。
4块灯板按照下列线的顺序将灯板用飞线连接起来,注意:线不要焊接错了和飞线不要太细。
这是我灯板内部的线序。一定要注意线序!一定要注意线序!一定要注意线序!
(2)隔栅部分
用3D打印机打印出材料为树脂的隔栅,如下图。
在某宝上买黑色喷漆把隔栅染成黑色,白色的隔栅效果不好,会透光,影响整体的美观。
如果是打印的尼龙材料则可以省略这个步骤。
(3)遮光部分
A4的硫酸纸或是普通的打印A4纸也是可以的,硫酸纸的均光效果要比A4好一些。
亚克力板选用黑茶色的,,长宽为30mm*8mm。
(4)外壳
我采用的是用多个小积木搭建的时钟外壳,也可以采用其他的方法。
用8mm*8mm的积木一层一层的搭建成时钟的外壳,建议多种颜色搭配拼接,这样会使整体的观感得到提升。
(5)显示部分安装顺序
1):将制作好的外壳的显示面向下,黑茶色亚克力板卡在外壳里面的最下面。
2):接着在亚克力板上放同样大小的硫酸纸。
3):然后再将隔栅卡在硫酸纸上面,如果卡不紧的话就打胶固定。
4):最后再放上连接好的灯板,灯板上的每一个灯一定要卡在隔栅中,不然到最后的显示效果不好。(成品图如下:)
(提示:在卡的时候也可以加积木或打胶固定进行固定。)
2.连接部分
(1)按下列的图片和主控板上的丝印提示连接硬件部分
四、软件
1.网络连接部分
网络连接流程图 :
wifi模组在开机时连接上一次连接过的wifi,如果连接不起则会产生一个名字为AutoConnectAP的wifi,连接此wifi会自动进入一个配网的页面,在此页面选择WiFi并输入密码再点击保存,模组会自动保存这次连接的WiFi,下次上电时会第一时间尝试连接此WiFi。当然也可以随意按下一个按键设置时钟为离线模式。
手机连接模组产生的网络会自动跳转到上面第一张图,然后按照步骤走就可以给时钟连接网络了。第二步是输入WiFi的名字,也可以直接点上面的WiFi直接进行输入。第三步是WiFi的密码。
联网模式:联网之后可以在bilnker APP上面直接控制,支持的时间显示模式高达5种、能调节亮度、颜色、手动调节或指定亮度等等。也可在app上看到时钟实时获取到的多种信息。
非联网模式:非联网模式下调节的功能会少一些如:不能精确的调节颜色,只正常亮度自动模式,不能手动设置。失去天气显示功能,无法在时钟上显示天气。失去时钟校准功能,将切换至本地时间数据(时钟内部存储)进行时间显示。
2.程序
1) 在arduino中打开ESP-01S的程序时一定要添加头文件,否则会编译失败。
2) 在心知天气中注册账号获取私钥。把下面的字符替换成自己的私钥。
3) 创建一个点灯科技app的项目,并复制密钥到ESP-01S的程序里面。
4)点灯科技项目里面的组件按下面的格式添加,添加后可以按我这个排列,也可以按自己需求排列。排列好后把组件键名改成下面的里的,如我圈出来的第一个,每个组件键名都不一样注意改的时候不要改错了,每个都要改。
4)ESP-01S的文件用arduino修改后再下载。stm32的程序可以直接用串口下载,下载时按住BOOT0再上电。
5)3D打印文件和程序部分·放在下面工程附件里了。
注:推荐标准版,即下即用,没天气和app控制功能,其他的都一样,标准版里有二进制文件可以直接下载。爱折腾的可以选择进阶版。目前发现问题温湿度芯片工作久了会温度会比实际温度高,湿度会比实际湿度低。解决办法:温室度芯片飞线,不焊接在板子上。
评论