数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 4023|回复: 99

[STM] 制作自动授时128*64LED彩屏天气万年历时钟(最新版开源)

    [复制链接]
发表于 2019-2-3 23:42:14 | 显示全部楼层 |阅读模式

马上注册,认识更多玩家好友,查阅更多资源,享有更多功能

您需要 登录 才可以下载或查看,没有帐号?立即注册 微信登录

x
前些时间无意中发现P3室内全彩LED屏模块价不高,就花120元买了2片64*64,32扫,这价格比我以前买双色二手屏还低。由于家里的时钟还是多年前买的LED数码时钟,它的年份是到2020年就没法再向上显示,所以需买新的,所以就有这个制作。

本时钟为了方便知道天气情况,及使时钟的时间准确,所以本时钟有WIFI模块,能自动授时及实时天气显示,以及农历、24节气、天干地支、温湿度等。本制作是单片机采用STM32F103RBT6,时钟芯片用DS3231,WIFI模块用ESP8266,储存用25Q16。ESP8266的编程是采用arduino来编写的,由于它串口输出中文编码是UTF-8,本制作显示字库编码GB2312,所以需转换,转换是采用查表法的,所以25Q16是存有16*16的GB2312字库及16*8的ASII字库及UTF-8转GB2312的表。

以下为LED全彩显示屏,64*64,1/32扫,HUB75E接口。刚回来时没摄相片,焊了电源线及增加了电容才摄相,如下,板有上有24片DP5020,8片SM5166,2片74HC245及1片74HC04组成。
IMG_20190123_094059.jpg
IMG_20190123_094114.jpg
IMG_20190123_094131.jpg
IMG_20190123_094135.jpg
IMG_20190123_094145.jpg
IMG_20190123_094150.jpg
IMG_20190123_094324.jpg


先制作一片测试板,用热转印法做,由于长期使用的,所以验证成功后再去工厂打样,PCB如下:
IMG_20190117_201510.jpg
IMG_20190117_201519.jpg


以下为用电脑电源及测试板连接LED屏进行程序编写。
IMG_20190123_095704.jpg
IMG_20190123_093848.jpg
IMG_20190123_093908.jpg
IMG_20190123_093551.jpg


以下为制作过程测试电流的情况。由于程序还没做亮度控制,所以是电流值是最大亮度的工作电流值,从不同颜色显示来看,红绿蓝三色电流最大为红色,最少为蓝色,如组合起来,白色电流为最大。但实测工作电流最大在2A内,即总功率大约在10W内,如改变一下亮度,电流还会更少,所以本时钟功率不算。全白色,由于是红绿蓝一起亮,电流最大,1.7A。

IMG_20190123_093827.jpg
IMG_20190123_093601.jpg
IMG_20190123_093654.jpg
IMG_20190123_093702.jpg
IMG_20190123_093755.jpg
IMG_20190123_093802.jpg

2楼继续更新

打赏

参与人数 23专家 +6 M币 +361 收起 理由
tigger09 + 30 有全套资料就安逸
kaixinyihao + 4
xiaomage + 30 春節快樂!豬年吉祥
jqbf + 1 + 20 春節快樂!豬年吉祥
林恩京 + 4 優秀文章
zhj12315 + 30 春節快樂!豬年吉祥
likemcu + 3 優秀文章
xiaoxuanfeng + 10
guohua10168 + 20
佳维 + 20 春節快樂!豬年吉祥

查看全部打赏

本帖被以下淘专辑推荐:

发表于 2019-2-7 10:46:57 | 显示全部楼层
我也是程序盲啊,仿个硬件焊接一下勉强可以
强烈要求楼主搞个团购啊,我们付手工费
发表于 2019-2-6 21:59:52 | 显示全部楼层
如果哪位大神能够做好出卖,记得给我淘宝地址。

点评

同问,价格合适的成品我也想入手一个。  详情 回复 发表于 3 天前
 楼主| 发表于 2019-2-3 23:43:37 | 显示全部楼层
本制作共有7个程序,其中1个主程序,是本制作的程序;5个用于写入25Q16的程序,其中4个是gb2312及ASII字库,1个是utf8转gb2312表程序;还有一个用ESP8266的arduino程序。
文件.jpg

WIFI模块ESP8266接收天气时间用arduino程序编写,arduino程序它的示例做得好,容易快速上手,用AiThinker_IDE上手没法快,本制作通过ESP8266读天气及时间程序就是用arduino程序里的示例改的,它就是下图的示例改动的,就是在它的基础上增加字符串处理,把收到的网站数据重新整理比较简单的字符串,
天气程序.jpg

由于是个人应用,没做APP用于修改接收WIFI等参数,所以参数需根据各人的实际情况进行修改,以下为需修改的东西。
1,需要修改的WIFI的参数,如下图,把自己的WIFI参数写入剪头所指的地方。
wifi设置.jpg

2,修改接收那里的天气,如下图是接收广州的天气设置。在输入以下网站,然后在地址上的广州那个地址改为需接收的地址。
天气网站2.jpg

刷新一下,看看收到的天气是不是新地址,如是就复制连接,把它复制到以下图中剪头处,再上传到ESP8266就行了。
天气网站.jpg

然后打开Arduino串口监视器,就可以看到以下格式的数据。[Timetianqi1]及[Timetianqi2]这两个数据就是天气及时间数据了,时间网站及天气网站是在网上找的,天气网站每天免费用户只有几十次读取,所以本程序是每5S读一次时间,每30分读一次天气。如坛友有更好的天气网站,不用注册的,请提供一下。
输出格式.jpg


25Q16里保存的是字库数据及字库编码转换表,数据需事先写入,它与本人的土办法制作字库操作一样:http://bbs.mydigit.cn/read.php?tid=2352395的操作一样,原理做法也是一样,分别用本板写入4个字库程序及转换程序,运行一下就行了,指示灯闪烁就行了。


arduino编写串口输出的中文编码是utf8,本制作显示字库是gb2312的,所以需要转换,由于找不到单片机用的转换程序,不清楚gb2312与utf8转换规律,所以就采用查表法,上网找了份utf8的中文编码表,但它是没有标点符号的,所以标点符号需另外处理,由于天气数据中文标点符号不多,所以也不难处理,由于网上找的表格式不是单片机程序的格式,如用人工转,那就头晕了,所以用易语言写个小程序,把表转成单片机用的格式,如下图。
编码转换.jpg


转换完成后,把表中的数据导入STM32编码转换程序,写入本制作,然后运行一下,注意,由于写入25Q16是一个地址一个数据写入,不是一组数据写入,所以速度不快,需等10多秒,等板上的批示灯闪烁,查一下串口输出,就完成转换表的写入。

本制作utf8转gb2312原理如下:由于utf8是三个字节的,utf8中文字表(符号除外)最高字节它的值是从0XE4-0XE9,即范围只有6个,由于gb2312是二个字节的,25Q16是最大地址为0X1FFFFF,所以从0X100000地址开始存gb2312高位字节,0X180000地址开始存gb2312低位字节,utf8的高位字节减0XD4,即把它的编码人为改成从0X100000开始,保存相对应的gb2312编码就行了。转换时就先判断有没在0XE4-0XE9,如在就减0XD4,就可以找到对应的gb2312编码了,几个符号直接判断就行了。

本制作的电路图及程序在以下压缩包内,电路图中显示OE脚需改成PC10脚(电路没改动)。由于程序刚完成,可能有BUG,日后使用过程中再修改,仅供参考。
全彩时钟制作.zip (3.42 MB, 下载次数: 67)

打赏

参与人数 3M币 +70 收起 理由
yznj + 30 春節快樂!豬年吉祥
zxrom8250 + 20 春節快樂!豬年吉祥
newnet1234 + 20 春節快樂!豬年吉祥

查看全部打赏

发表于 2019-2-5 23:07:18 | 显示全部楼层
万年历是电子爱好者永恒的主题
 楼主| 发表于 2019-2-3 23:44:32 | 显示全部楼层
上接4楼

以下为今天更新,由于走字方式显示天气,所需时间过长,不能及时看到室内温度及农历等,所以修改了显示方式,在日期显示行改为换页显示,校果为上下移动,分别显示日期及农历等,每页显示时间在温湿度及亮度设置的换页时间控制,上下移动时间大约0.8S,如下图:

以下为显示原来的年月日星期
IMG_20190203_224050.jpg

上下移动
IMG_20190203_224052.jpg

显示农历,当天天气情况及室内温度
IMG_20190203_224054.jpg



同时也处理了一些BUG。以下为最新主控程序下载:
彩屏控制时钟程序.zip (422.83 KB, 下载次数: 92)

打赏

参与人数 6专家 +1 M币 +71 收起 理由
stdzlqz + 20 春節快樂!豬年吉祥
佳维 + 20 春節快樂!豬年吉祥
newnet1234 + 20 謝謝分享
风间尘 + 10
chenzoutie + 1 優秀文章
suhaiyuan + 1 豬年吉祥,春節快樂!

查看全部打赏

 楼主| 发表于 2019-2-3 23:42:48 | 显示全部楼层
测试过没大问题后,就去工厂打样,以下为打样回来的板。
IMG_20190128_091558.jpg

本制作原设计是用塑料来制作外壳的,但由于材料不够,改为用铁板做外壳,WIFI模块是安装在电路板上的,所以可能会出现接收困难,看实际校果,如接收困难就外接天线或把模块装在壳外。由于制外壳的图片不多,只有一张,制作好后喷黑漆。
IMG_20190125_150451.jpg

由于上面电流检测发现电流不大,所以采用12V2A的华为电源供电,通过5A5V的电源模块降压供本电路,电路板设计成可以安装5A模块KIM055,也可以安装10A的模块,KIM055已做改动,可以12V供电的。以下是两种模块。
IMG_20190128_104329.jpg

以下为装好元件的板,由于电路设计LED显示oe脚是用PA6控制,但在实际应用中发现受读写25Q16时影响,出现屏不同颜色有飞点,经测试后改为PC10就正常,所以需在电路板断开原铜线,再用飞线连接到PC10。
IMG_20190128_201553.jpg
IMG_20190128_201635.jpg

以下成品外观。
IMG_20190131_145649.jpg
IMG_20190131_145659.jpg
IMG_20190131_145705.jpg

感光电阻及温湿度检测,温湿度用HTU21。
IMG_20190131_151956.jpg

以下为背面,背面这样设计主要是不想电源插头外露。
IMG_20190131_145715.jpg

内部图。
IMG_20190131_145410.jpg
IMG_20190131_145415.jpg
IMG_20190131_145419.jpg
IMG_20190131_145426.jpg

以下为最次对本制作实际功率进行测试,用北电功率计,以下全白最暗的功率
IMG_20190131_144928.jpg

以下全白最亮的功率
IMG_20190131_144952.jpg

以下为全蓝最暗及最亮的功率,全蓝功率最小。
IMG_20190131_145041.jpg
IMG_20190131_145056.jpg

正常设置的功率。
IMG_20190131_145227.jpg
IMG_20190131_145239.jpg

总的来说,以上功率不算大。

3楼继续更新

打赏

参与人数 4专家 +1 M币 +80 收起 理由
亚历山大 + 20 做的这么安逸,简直不是人
拿糖糖换媳妇 + 20 優秀文章
杨雪飞 + 1 + 20 春節快樂!豬年吉祥,这才是优秀DIY.
2545889167 + 20

查看全部打赏

 楼主| 发表于 2019-2-3 23:43:13 | 显示全部楼层
以下为工作界面

时钟显示页,最上行为日期及星期,第二行为时间,采用12小时制显示,最后行有三种显示方式,如启用显示天气,就采用向左飞字方式显示,如下。 IMG_20190131_115445.jpg
如设置为不启用显示天气,且设置为显示温湿度,就采用分页显示,一页显农历,一页显温湿度。
IMG_20190131_152256.jpg
IMG_20190131_152255.jpg

如只显温度农历,就如下。
IMG_20190131_152411.jpg

以下为设置页界面,共有4页,
以下为显示颜色及字体设置,时钟的字体可以选择数字及数码体,各显示颜色选择共有7种:1红,2绿,3黄,4蓝,5紫,6青,7白
IMG_20190131_115452.jpg

以下为温湿度及亮度设置,显示方式用温湿度加农历(分页显示)及只显温度加农历,对于换页速度是用于温湿度加农历显示分页用,亮度共有6档,分别为自动,1-5。
IMG_20190131_115458.jpg

以下关显示设置,这个主要作用是晚上关灯后,关显示用的,可以设置关显示的时间段,设置关显示的亮度值,如设置为0,就等于不启用本功能。
IMG_20190131_115505.jpg

以下为授时及天气设置,可以启用或关闭,后面的英文言是用于显示自动授时及天气接收的情况,OK表示正常,ERR表示有错。最后行为走字速度。
IMG_20190201_102554.jpg

以下为节日节气显示
IMG_20190131_150334.jpg
IMG_20190131_150410.jpg
IMG_20190131_150444.jpg

以下为天气显示的校果,走字方式。
IMG_20190131_150020.jpg
IMG_20190131_150022.jpg
IMG_20190131_150042.jpg
IMG_20190131_150100.jpg
IMG_20190131_150103.jpg
IMG_20190131_150112.jpg
IMG_20190131_150121.jpg

以下为天气初始化时的显示,故障的显示没摄。
IMG_20190131_152606.jpg
IMG_20190131_152607.jpg

以下在第二行字最后角的E字表示当前处于授时状态且授时数据出错显示。
IMG_20190201_102416.jpg

以下为正在使用中。
IMG_20190131_194055.jpg

4楼继续更新

打赏

参与人数 6专家 +2 M币 +110 收起 理由
x067 + 20 春節快樂!豬年吉祥
铁皮屋 + 10 春節快樂!豬年吉祥,,我经常循环在牛A与牛C.
佳维 + 20 春節快樂!豬年吉祥
zzy_85569381 + 1 + 20 春節快樂!豬年吉祥
stdzlqz + 1 + 20 優秀文章
cushion + 20 優秀文章

查看全部打赏

发表于 2019-2-4 00:13:19 | 显示全部楼层
看了再来插楼。
发表于 2019-2-4 08:43:52 | 显示全部楼层
还是挺漂亮 ,字的颜色可在调节搭配。略微费电。

打赏

参与人数 1M币 +10 收起 理由
moontree + 10 歡迎探討

查看全部打赏

发表于 2019-2-4 09:37:57 | 显示全部楼层
话说那个楼主厉害,正好家里万年历坏掉不显示了,能不能转一台?

点评

只有一台,自己用,资料已公开,自己制作啦。  详情 回复 发表于 2019-2-4 16:37
发表于 2019-2-4 09:39:48 | 显示全部楼层
很漂亮,控制一下亮度应该会节能一些。
发表于 2019-2-4 09:40:51 | 显示全部楼层
做的真漂亮,赞
发表于 2019-2-4 11:42:45 来自手机浏览器 | 显示全部楼层
厉害了,这玩意儿学校或者单位用比较合适,家用……
 楼主| 发表于 2019-2-4 16:37:29 | 显示全部楼层
慕容夜天 发表于 2019-2-4 09:37
话说那个楼主厉害,正好家里万年历坏掉不显示了,能不能转一台?

只有一台,自己用,资料已公开,自己制作啦。

点评

楼主大神,我水平有限,没有能力制作出来。是不是可以和坛友团购一些?就是我找些人,共同找你制作?另外总费用大约多少?  详情 回复 发表于 2019-2-5 09:11
发表于 2019-2-5 08:19:04 来自手机浏览器 | 显示全部楼层
动手能力很强,做的也很好看,非常好。
发表于 2019-2-5 08:47:33 | 显示全部楼层
可以网购吗?我想买!
发表于 2019-2-5 09:06:42 | 显示全部楼层
求购 制作自动授时彩色128*64LED屏天气万年历时钟全部套件。

点评

只有一台,自己用,资料已公开,自己制作啦。我的制作是用来打发时间,是玩的,不搞商业化的,也没时间精力搞,所以自己动手啦。  详情 回复 发表于 2019-2-5 09:34
发表于 2019-2-5 09:11:14 | 显示全部楼层
落叶风 发表于 2019-2-4 16:37
只有一台,自己用,资料已公开,自己制作啦。

楼主大神,我水平有限,没有能力制作出来。是不是可以和坛友团购一些?就是我找些人,共同找你制作?另外总费用大约多少?

点评

兄弟,自己动手吧,楼主实力手把手教学,不太难,最多可能就是懒惰。  详情 回复 发表于 2019-2-6 20:40
我的制作是用来打发时间,是玩的,不搞商业化的,也没时间精力搞,所以自己动手啦。制用成本没算过,可以粗略估算,LED屏2片(55元一片,运费10元,共120元),PCB打样费40元(12块板),开关电源模块KIM055是以前买  详情 回复 发表于 2019-2-5 09:50
 楼主| 发表于 2019-2-5 09:34:25 | 显示全部楼层
麦仔园 发表于 2019-2-5 09:06
求购 制作自动授时彩色128*64LED屏天气万年历时钟全部套件。

只有一台,自己用,资料已公开,自己制作啦。我的制作是用来打发时间,是玩的,不搞商业化的,也没时间精力搞,所以自己动手啦。
发表于 2019-2-5 09:39:19 | 显示全部楼层
想问下楼主那个显示时间的数码管字体是哪一种?我找不到

点评

你搜一下液晶字体就有了,至于怎么折腾进去,我不会,我只是之前下载过个字体给公司做过价签。  详情 回复 发表于 6 天前
自己取模的,没成品。  详情 回复 发表于 2019-2-5 09:52
 楼主| 发表于 2019-2-5 09:50:49 | 显示全部楼层
本帖最后由 落叶风 于 2019-2-5 09:52 编辑
慕容夜天 发表于 2019-2-5 09:11
楼主大神,我水平有限,没有能力制作出来。是不是可以和坛友团购一些?就是我找些人,共同找你制作?另外 ...

我的制作是用来打发时间,是玩的,不搞商业化的,也没时间精力搞,所以自己动手啦。制用成本没算过,可以粗略估算,LED屏2片(55元一片,运费10元,共120元),PCB打样费40元(12块板),开关电源模块KIM055是以前买的,查淘宝有的买5元有的买15,也有买20元,在这当是10元,STM32F103RCT6 9.2元,ESP-12E ESP8266 11元,25q16 2.5元,HTU21D温湿度传感器检测模块 14.2元,DS3231 3.3元,12V2A电源 20元,其它电阻电容晶振稳压集成接头等合计当10元。以上不算运费合计:230元(如PCB板分摊开,一片才不到4元,合计194元),PCB板本人设计成可以当实验板用的,大部份接口已引出来。外壳需外算,建议用3D打印机打的,里面有WIFI模块,用金属的不方便,塑料比较好。
 楼主| 发表于 2019-2-5 09:52:40 | 显示全部楼层
1965501205 发表于 2019-2-5 09:39
想问下楼主那个显示时间的数码管字体是哪一种?我找不到

自己取模的,没成品。

点评

好的好的  详情 回复 发表于 2019-2-5 21:32
您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

Archiver|手机版|小黑屋|关于我们|联系我们|网站条款|数码之家 ( 闽ICP备05031405号 )

GMT+8, 2019-2-16 19:56 , Processed in 0.180697 second(s), 18 queries , MemCache On.

Powered by Discuz!

© 2001-2019 Comsenz Inc.

快速回复 返回顶部 返回列表