网站首页 > 资源文章 正文
开源项目描述
做了一个实用又好看的VFD屏【RGB时钟摆件】。可7天不间断持续工作。
本文会主要分享它的电路图+代码原理分析。希望能给想DIY时钟的小伙伴一些帮助!
参数与亮点
- 屏幕使用VFD屏上海中荧9位米字屏。
- 主控采用STC8H+PT6315。
- 单片机采用TSSOP20封装的STC8H1K17_36I
- 支持RX8025T高精度实时时钟
- 支持WS2812B(1515封装)的两颗RGB
- 支持三个用户按键
- 可以离线切换年月日/时分秒、设置时间、调整VFD的亮度、开启/关闭 ACG动画、关闭/开启RGB或更改特效
设计图
代码原理
我用Vscode写代码,再使用Keil编译。
电脑环境:Macos+Win虚拟机。
1.源码大概逻辑
三个用户按键由定时器1以固定1ms的频率进行扫描,支持检测按下,松开与长按的逻辑。
当检测到任何一个按键的事件触发了,将使用Flag标记位进行标记,不在中断函数中执行耗时的操作。
定时器0作为系统的滴答定时器,设置不可屏蔽的自动重装载模式。
1毫秒一次中断,uint32_t的变量加1一次,主函数中不使用软件延时函数延时,我们将使用值,值的比较法进行延时,这样大大增加效率。
主函数中,将会对每个按钮的flag进行判断——检测是否为触发按键的事件,然后执行对应的耗时逻辑。
另外,关于VFD的刷新、8025T时间的读取,ACG动画、RGB特效刷新、时间的保存、屏幕保护程序……这些都在主函数中通过值,值的比较法,判断是否到了该执行的时刻。
这是超级简单的API,如果你想自定义功能,也可以直接调用gui.h。
2.(HTML)字库生成工具
我使用原生HTML写了一个字库生成工具(JS用到了cdn在线库需要电脑联网才可以正常加载)。
- 在使用的时候只需打开这个后缀.html文件(注意如果打开乱码,请在UTF-8的编码下打开)
- 在浏览器内,用鼠标点击一下
- 得出你想要的图案
- 点击生成,直接生成配置在代码字库uint32_t的值。
3.STC烧录设置(重要)
时钟频率选择24Mhz
4.项目结构
参考资料:
[1]https://oshwhub.com/yc_chen/zyc-vfd-shi-zhong
— 完 —
嘉立创EDA·头条号
关注我,看一手优质开源项目
猜你喜欢
- 2024-12-24 万伤大神翻盘全靠它们 这些技能不能少——乘员基础技能详解
- 2024-12-24 新车 | 21.97万元起,新款凯迪拉克CT4 1.5T到店,比2.0T价格低3.2万
- 2024-12-24 C80B (H)型不锈钢运煤敞车简介 运煤专用敞车
- 2024-12-24 从工况到配置,手把手教你如何选对牵引车!
- 2024-12-24 电商班列、高铁快运助力“双十一电商黄金周”
- 2024-12-24 坦克世界一代版本一代神,这代没有查涤纶?当年版本宠儿落魄至此
- 2024-12-24 RX8025T-爱普生高精度温补RTC实时时钟模块(压电侠)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)