数码之家

 找回密码
 立即注册
搜索
查看: 15336|回复: 77

[C51] 用DS3231制作自动亮度的4位数码管时钟

    [复制链接]
发表于 2019-7-25 21:21:37 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

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

x
本帖最后由 aqxgm 于 2019-7-25 21:32 编辑

作为一名业余的单片机爱好者,从开始玩到现在,做的最多的就是各种各样的时钟了。从最初的纯软件计时,到DS1302时钟芯片再到后来的GPS、 SNTP对时的都做过。纯软件计时一断电就全归零了,完全没有实用价值;DS1302的好一些,有断电走时,但误差较大,走时不准;GPS授时准确度无敌,可是在室内使用信号不好,还要拖一根线到窗台或室外,显得不够简洁;SNTP比较完美,但只适用于有WIFI的地方。还有传说中美信的高精度时钟芯片DS3231没有玩过。最近事不多,就用它做了个实用的时钟。

DS3231简介:
DS3231 是低成本、高精度 I2C实时时钟 (RTC),具有集成的温补晶体振荡器 (TCXO) 和晶体。该器件包含电池输入端,断开主电源时仍可保持精确的计时。集成晶体振荡器提高了器件的长期精确度。 DS3231采用 16引脚、300mil的 SO封装。RTC 保持秒、分、时、星期、日期、月和年信息。少于31 天的月份,将自动调整月末日期,包括闰年补偿。时钟的工作格式可以是 24 小时或带 AM/PM 指示的 12 小时格式。提供两个可编程日历闹钟和一路可编程方波输出。地址与数据通过 I2C双向总线串行传输。精密的、经过温度补偿的电压基准和比较器用来监视 VCC状态,检测电源故障、提供复位输出,并在必要时自动切换到备用电源。另外, RST监视引脚可以作为手动按钮输入以产生外部复位信号。
♦0°C 至 +40°C 范围内精度为 ±2ppm
♦-40°C 至 +85°C 范围内精度为 ±3.5ppm
♦为连续计时提供备用电池输入
♦低功耗
♦实时时钟提供秒、分、时、星期、日期、月、年信息,并提供有效期到 2100 年的闰年补偿
♦两个日历闹钟
♦可编程方波输出
♦快速 (400kHz) I2C 接口
♦3.3V工作电压
♦数字温度传感器输出:精度为 ±3°C

DS3231管脚定义和芯片实物图
image001.png
image003.jpg

显示部分使用TM1650驱动4位0.8寸的共阴极数码管。TM1650是天微生产的一款数码管驱动,2线串行驱动,8级亮度调整,并且支持28个按键扫描。只要把要显示的数据写入其中就能正确的显示,就不用再去傻傻地写动态扫描的函数了,硬件连接也更简单。用起来很方便。

TM1650管脚定义和芯片实物图
TM1650.png    

image007.jpg

4位共阴0.8寸数码管
nEO_IMG_IMG_20190103_173851.jpg
nEO_IMG_IMG_20190103_174502.jpg

MCU的选用:
先计算了下I/O的占用,I2C 接口2个,TM1650用 2个,DS3231的SQW1个(1HZ方波用于刷新显示)。这样仅仅用了5个I/O口,配合DS3231的3.3V供电,就选用了手头现成的STC 15L104W单片机。
STC15L104管脚定义和芯片实物图

15L104.png

image011.jpg


STC手册上有用普通I/O模拟简易ADC的介绍,正好还有一个I/O未用,就加个光敏电阻做光线感应来自动调整数码管的亮度。
用AD画图、制板
原理图:
SCH.png


画好的PCB:
PCB.png


热转印制板、三氯化铁腐蚀、钻孔,失败总是难免的
nEO_IMG_IMG_20190110_091950.jpg    
nEO_IMG_IMG_20190110_091936.jpg
nEO_IMG_IMG_20190110_093344.jpg
nEO_IMG_IMG_20190110_093415.jpg

焊接完成:
nEO_IMG_IMG_20190111_195416.jpg
nEO_IMG_IMG_20190111_195455.jpg

nEO_IMG_IMG_20190111_195429.jpg      
nEO_IMG_IMG_20190111_195522.jpg


数码管贴一片亚克力增加可读性
nEO_IMG_IMG_20190111_200824.jpg            
nEO_IMG_IMG_20190111_200847.jpg

完成后的样子:
nEO_IMG_IMG_20190111_201417.jpg    
nEO_IMG_IMG_20190113_135808.jpg

STC15系列单片机用普通I/O做简单ADC的思路就是利用上升沿中断,通过电容充放电来检测外部光线强度,再去调整数码管的亮度。数码管的亮度通过TM1650来实现。手册上有例程,拿来改下就能用了。本制作光敏电阻接在P3.3口。硬件如图:
nEO_IMG_最小系统.jpg


光线感应调试,数码管显示大体的充放电时间。
nEO_IMG_IMG_20190110_172924.jpg
nEO_IMG_IMG_20190110_172935.jpg
nEO_IMG_IMG_20190110_173225.jpg

尝试着做了个动图
Untitled-2.gif

一些PCB细节图片
nEO_IMG_IMG_2280.jpg
nEO_IMG_IMG_2282.jpg
nEO_IMG_IMG_2283.jpg
nEO_IMG_IMG_20190113_135824.jpg
nEO_IMG_IMG_20190113_135830.jpg

摆拍了几张
nEO_IMG_IMG_2274.jpg
nEO_IMG_IMG_2278.jpg
nEO_IMG_IMG_20190112_191858.jpg

至于DS3231和TM1650的驱动,互联网上有现成的的函数。DS3231的SQW输出1HZ方波,单片机在方波的每个下降和上升沿产生中断然后读取DS3231的时间,再发送到TM1650的显示寄存器去刷新数码管的显示就行了。放置了2个按键用来调节时间。由于是自己制板,受单面PCB的限制,布线颇费了一番周折。不过每天看到自己的“作品”正常的工作,还是很有成就感的。


打赏

参与人数 31家元 +525 收起 理由
liangwei0855 + 9 大能摩拜
懒虫包子 + 20
moontree + 20 謝謝分享
萧错 + 20
febwind + 21 優秀文章
酷玩小子 + 3
jsycwnw + 20 優秀文章!
huaweiwx + 20 謝謝分享
黯然销魂 + 20
eros8269 + 20

查看全部打赏

发表于 2019-7-25 22:09:07 | 显示全部楼层
做的相当不错。瓦力机器人也是自己做的吗?
回复 支持 反对

使用道具 举报

发表于 2019-7-25 23:13:55 | 显示全部楼层
瓦力应该是领养的。
回复 支持 反对

使用道具 举报

发表于 2019-7-25 23:51:02 | 显示全部楼层
做的很漂亮,手工不错
回复 支持 反对

使用道具 举报

发表于 2019-7-26 06:32:45 | 显示全部楼层
10多年前做的数字钟上也用了亮度控制,只是只有两级,一直用到现在
回复 支持 反对

使用道具 举报

发表于 2019-7-26 07:37:22 | 显示全部楼层
思路清晰,介绍详细,板子和焊工都不错~
回复 支持 反对

使用道具 举报

发表于 2019-7-26 08:10:10 | 显示全部楼层
板上可以刷点松香酒精溶液来防锈
回复 支持 反对

使用道具 举报

发表于 2019-7-26 09:24:37 | 显示全部楼层
做的不错,不过铜线最好用松香水之类的保护一下,不然容易氧化
回复 支持 反对

使用道具 举报

发表于 2019-7-26 10:05:39 | 显示全部楼层
咱俩聊聊,我有个3208的点阵能不能做成时间,1640驱动的,
回复 支持 反对

使用道具 举报

发表于 2019-7-26 11:48:49 | 显示全部楼层
不知道怎么调整的时间。电路图看不太清楚,按键没接到单片机上的样子。
回复 支持 0 反对 1

使用道具 举报

发表于 2019-7-26 12:25:58 | 显示全部楼层
牛掰,做得真漂亮,谢谢分享,膜拜
回复 支持 反对

使用道具 举报

发表于 2019-7-26 16:40:37 | 显示全部楼层
做的挺漂亮,期待楼主分享一下源码
回复 支持 反对

使用道具 举报

发表于 2019-7-26 17:31:55 | 显示全部楼层
这个板子用什么软件画的啊
回复 支持 反对

使用道具 举报

发表于 2019-7-26 18:19:32 | 显示全部楼层
很漂亮,有成品和大家分享没?
回复 支持 反对

使用道具 举报

发表于 2019-7-26 19:24:14 | 显示全部楼层
制作不错!思路正确,我也喜欢做LED时钟,网上买过散件做过一些。
回复 支持 反对

使用道具 举报

发表于 2019-7-26 20:18:23 | 显示全部楼层
对,晚上亮度调低后就没这么刺眼
回复 支持 反对

使用道具 举报

发表于 2019-7-26 21:59:35 | 显示全部楼层
非常漂亮,什么时候也自己制版,是自己的理想~

打赏

参与人数 1家元 +5 收起 理由
aqxgm + 5 加油

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2019-7-27 07:22:04 | 显示全部楼层
很好,各个环节都不错。
回复 支持 0 反对 1

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-3-29 06:53 , Processed in 0.312000 second(s), 16 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

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