辉光管时钟学习制作及开源软硬件工程

作者分享了自己制作辉光管时钟的过程,使用STM32微控制器、DS3231时钟芯片和升压模块。硬件部分包括锂电池供电、充电管理和驱动电路设计。软件上通过IIC协议与DS3231通信获取时间并显示。项目存在未实现低功耗模式和网络校时功能的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

作为一个电子人,一直想做一个辉光管时钟,算是大学的一个心愿,终于在快要毕业前做了一个,下面把软件和硬件的部分开源出来。
请添加图片描述


开源地址

github项目开源点击这里

提示:打不开github可以到CSDN里面下载 csdn项目开源压缩包点击这里


辉光管项目介绍

辉光管的工作条件

我采用的是QS27-1辉光管,型号和QS30-1是一样的。一般用170v的电压加在阳极,串联一个20k-30k的电阻进行限流。
辉光管里面充满了惰性Ne气体,高压电极释放的电子会碰撞Ne气体,使其失去电子,但同时,电子又会与正离子结合,从而发出光。
请添加图片描述

请添加图片描述
引脚的判断方法一般是将引脚朝着自己,缺口朝上,顺时针方向为1号引脚,对应上图的引脚编号


硬件部分

总体采用的是STM32F030K6T6控制,网上买了一个5v-170v升压模块和DS3231时钟模式。
在这里插入图片描述
在这里插入图片描述
PCB主控板画的是四层板结构,尝试了一下。

部分介绍

充电电路

硬件采用的是锂电池供电,用type-c充电,tp4059进行充电管理。
在这里插入图片描述

驱动电路

采用了两层编码,stm32先向3-8译码器写入,然后输出的8位分别控制两个K155ID1,驱动两个辉光管点亮
在这里插入图片描述
网上说要采用K155ID1是因为耐高压,但是卓晴老师分析的文章说也可以不使用这个译码器。
可以去仔细看一下:K155ID1辉光管驱动芯片功能测试

不足之处

本来打算利用低功耗模式,这样处于待机状态就行了,载利用一些轻触开关啥的进行唤醒操作就行,但是做的比较着急,忘记加mos管开关控制电路了。
在这里插入图片描述
在这里插入图片描述
应该在进入低功耗的时候把DS3231时钟模块和高压模块的电源关断。
具体见如何实现见:
stm32f103c6t6下的HAL库搭建三种低功耗模式及实战分析(stm32通用)

在这里插入图片描述
稳压电路使用的就是低功耗芯片。


软件部分

软件很简单,用keil编程,用IIC读取DS3231时钟模块的时间。

	  DS3231_getDate(&TIME);
      DS3231_getTime(&TIME);
	  
	  time_hour1=TIME.hour/10;
	  time_hour2=TIME.hour%10;
	  
	  time_min1=TIME.minute/10;
	  time_min2=TIME.minute%10;
	  
      hour=Bytes_Config(Num_Select(time_hour1),Num_Select(time_hour2));
	  min=Bytes_Config(Num_Select(time_min1),Num_Select(time_min2));

然后进行编码显示就行,在显示前加入一些固定的闪烁动画。

软件和硬件参考:QS-30四位辉光管时钟


总结

等之后有时间希望能重新画一画电路,弄成低功耗模式的板子,还有就是加入联网校正时间的功能,不用手动矫正时间了

【舸轮综合船舶工作室】出品 欢迎关注b站up主:舸轮综合船舶制造 查看更多资源及教程 不保证没错误,本工作室不为使用此套开源资料造成的任何后果负责! IN14辉光PCB文件及程序源码说明 版本V1.1 主要是对我奇怪的电路设计风格做一个解释(╯‵□′)╯︵┻━┻ 除了右边有一个8550外,PCB中几乎所有的三极管型号均为13001 7805最好加一个微型的散热器,实测发热较大 NE555只是拿来闪烁冒号的,不是升压的,需另外配升压板 NE555右上方那个R 500k阻值具体是多少需要试,这个阻值决定了冒号的闪烁频率 闪烁的冒号(氖泡)从板子左下角的两个2pin分别接入,切记不可并联后接入 PowerRealy是一个继电器,是用来控制升压模块通断的,封装是典型黄色的HK信号继电器 继电器左边的两个接口,标有- S +的是红外热释探头的接入口,实现人来自动开,可在-和S之间再并联一个自锁开关可实现手动开关,另一个是-IN+是电源输入,参考电压12v,电流约0.2A 单片机左边的2pin接口是升压模块电源接口 调时按钮是KEY1 KEY2 R4 R2 R7 R1是四个8路排阻,排阻有小白点的一端对准焊盘正方形的一端 板子下方中间的+HV-是升压模块输出接入点 其左边的Out+分别接4个辉光管的阳极 为了节省板子(偷懒)没有采用常规的74HC573锁存器一组一组扫描着输出,而是采用每个引脚专门控制一位,但引脚刚好又差了一个,无奈就加了一个573,把变化最小的第一位数字和调时按钮接在上面 左上角的2032BAT是接纽扣电池的,能够实现掉电走时,但我不知为何没成功 现在程序还不是很完善,有一些bug,已知的有:在整点时小时位会延时1分钟,比如从20:59到21:00时会先跳到20:00然后一分钟后才会变为21:01,调时时有时候小时那边会一直在十内循环,不管他直接多按几轮一般能出来,调分时有时会只有个位动,好像这时候只能重启了。 焊接时一定要注意三极管引脚之间别短路了! 焊接时一定要注意三极管引脚之间别短路了! 焊接时一定要注意三极管引脚之间别短路了! 即使看着没短路也要用万用表打一下以防万一,Protel自带的三极管封装为什么引脚焊盘之间距离如此感人我也不知道 四组Out-(注意最右边那三个是一组,最左边从Q25和Q26中间引脚引出的两个引脚也是一组)各自接什么参照网上的51单片机引脚定义再对照下表:(左边第一位代表从左往右第几个辉光管,第二位表示此辉光管对应引脚的数字,右边表示单片机的对应引脚) 11 P22 12 P23 20 P34 21 P06 22 P07 23 P21 24 P20 25 P17 26 P30 27 P31 28 P32 29 P33 30 P03 31 P04 32 P02 33 P01 34 P05 35 P00 40 P16 41 P35 42 P36 43 P37 44 P10 45 P11 46 P12 47 P13 48 P14 49 P15
辉光时钟全套开源资料 PCB 源码 51单片机 STC89C52 DS1302时钟芯片 IN14辉光管 【舸轮综合船舶工作室】出品 欢迎关注b站up主:舸轮综合船舶制造 查看更多资源及教程 不保证没错误,本工作室不为使用此套开源资料造成的任何后果负责! IN14辉光PCB文件及程序源码说明 版本V1.1 除了右边有一个8550外,PCB中几乎所有的三极管型号均为13001 7805最好加一个微型的散热器,实测发热较大 NE555只是拿来闪烁冒号的,不是升压的,需另外配升压板 NE555右上方那个R 500k阻值具体是多少需要试,这个阻值决定了冒号的闪烁频率 闪烁的冒号(氖泡)从板子左下角的两个2pin分别接入,切记不可并联后接入 PowerRealy是一个继电器,是用来控制升压模块通断的,封装是典型黄色的HK信号继电器 继电器左边的两个接口,标有- S +的是红外热释探头的接入口,实现人来自动开,可在-和S之间再并联一个自锁开关可实现手动开关,另一个是-IN+是电源输入,参考电压12v,电流约0.2A 单片机左边的2pin接口是升压模块电源接口 调时按钮是KEY1 KEY2 R4 R2 R7 R1是四个8路排阻,排阻有小白点的一端对准焊盘正方形的一端 板子下方中间的+HV-是升压模块输出接入点 其左边的Out+分别接4个辉光管的阳极 为了节省板子(偷懒)没有采用常规的74HC573锁存器一组一组扫描着输出,而是采用每个引脚专门控制一位,但引脚刚好又差了一个,无奈就加了一个573,把变化最小的第一位数字和调时按钮接在上面 左上角的2032BAT是接纽扣电池的,能够实现掉电走时,但我不知为何没成功 现在程序还不是很完善,有一些bug,已知的有:在整点时小时位会延时1分钟,比如从20:59到21:00时会先跳到20:00然后一分钟后才会变为21:01,调时时有时候小时那边会一直在十内循环,不管他直接多按几轮一般能出来,调分时有时会只有个位动,好像这时候只能重启了。 焊接时一定要注意三极管引脚之间别短路了! 焊接时一定要注意三极管引脚之间别短路了! 焊接时一定要注意三极管引脚之间别短路了! 即使看着没短路也要用万用表打一下以防万一,Protel自带的三极管封装为什么引脚焊盘之间距离如此感人我也不知道 四组Out-(注意最右边那三个是一组,最左边从Q25和Q26中间引脚引出的两个引脚也是一组)各自接什么参照网上的51单片机引脚定义再对照下表:(左边第一位代表从左往右第几个辉光管,第二位表示此辉光管对应引脚的数字,右边表示单片机的对应引脚) 11 P22 12 P23 20 P34 21 P06 22 P07 23 P21 24 P20 25 P17 26 P30 27 P31 28 P32 29 P33 30 P03 31 P04 32 P02 33 P01 34 P05 35 P00 40 P16 41 P35 42 P36 43 P37 44 P10 45 P11 46 P12 47 P13 48 P14 49 P15
会说话的辉光管电子时钟,说的可是英语哦。 当时我看到这个六个“灯管子”就被震慑到了,画面太美,简直不敢直视。原来这个就辉光管,估计有好多网友和我一样没见过。那么给大家讲讲他的工作原理: 管子内部充有氖气,阳极加上高压,每个数字都是一个阴极,当阴极接地之后,数字尽速回周围形成辉光放电现象,发出橘红色的光芒。当然,这个光属于冷光,并不像灯丝一样是高温炙热以后产生的光芒,但是一般辉光管也称之为灯。 这个辉光时钟出子一个德国“严谨君”之手,这个辉光管电子时钟解决了两个问题:一个是显示问题,一个是语音报时功能。语音报时通过一个按钮可以触发。之前没有找到原理图和代码,现在看到了这,分享给喜欢的人,这个可以自己动手做做。这个辉光管我本来以为应该很难买到的,因为不常见。但是感谢万能的X宝,还是买到了。 辉光管电子时钟: 处理器:AVR ATmega32(ATmega 32数据手册)(8位) 显示器:6个辉光管 时间:无线电DCF77模块接收精确的德国时间 控制:红外传感器 声音:存储在SD卡里,声音控制器是带有SPI接口的12的DAC芯片 MCP4921(MCP4921数据手册) 放大器:使用ST的TDA7233(TDA7233数据手册) 调试接口:UART/RS232 硬件: 有两个PCB板,一个是辉光管板,一个是控制板 使用的软件是KiCad,正准备转成AD版,后面会上传。 KiCad版本的源文件上传了,打印出来PDF版本,有兴趣的可以参考。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值