当前位置: 首页 > news >正文

用steam32显示屏做万年历

转动旋转编码器可以改数值,按下可以进入设置模式,平常为普通模式作类似钟表

我使用的是cubemx和cubeide的组合

1.高速外部时钟和低速外部时钟(主要是为了断电后能够继续计数)都需要设为晶振,旋钮有一个编码器模式,我使用的旋转编码器如果通道极性不经过设置会导致顺时针减小逆时针增加

类似于这个原理。通过A通道上升沿确定B通道的电频来确定旋转方向,不同的器件可能不一样,触发控制器有专门的旋转编码器接口

注(来自b站波特律动老师的图)

2.RTC时钟,采用的是32位,可以计数到0-2的32次方,使用的是unix时间戳来转换获取具体的时间,为了掉电也能够进行进行计数,需要吧RTC放在后备区域,有VBAT引脚引出来

但HAL库里关于RTC有个问题,他的日期和时间是分开计数的,也就是断电后时间可以继续计数,但日期就会被重置

因此需要自己写一个RTC时钟库,要对其进行写的操作前需要先进入RTC定义,必须要确定RTOFF是1的时候才能做写入操作,CNF值为1进入写模式,之后再清除CNF,相关的代码可以在网上找,有很多开源的库可以直接拿来用

也可以自己写一个,前面读操作和写操作直接调用HAL库里面的就行,写代码时,分到任务函数和初始化函数,便于阅读和多个任务解耦,但此次工程只有一个主任务

写代码遇到的最大的收益是业务逻辑不能写在模块库,那要实现可以使用回调函数

HAL库属于低层,故,可以在应用层先重新定义回调函数,在HAL库发生相应事件的时候调用回调函数,下面是库里面的函数

下面是应用层重新定义的回调函数,里面有具体逻辑实现

最后在定义里实现

其次,库函数里面用HAL—延时函数时会导致一系列问题,可以用下面函数来代替延时函数的实现作为消抖函数,getTick函数得到的是开机时间一直持续的时间,pressedtime代表按钮按下瞬间的时间,他们时间差要大于我们想要消抖的时间

最终实现如下图,时间和日期都可以改,在退出设置模式的时候时间会照常运行,断电后也会照常运行,像一块手表一样

http://www.jsqmd.com/news/1255755/

相关文章:

  • TAS5782M闭环D类功放:从架构原理到硬件设计的音频系统集成方案
  • 昇腾CANN算子优化与AI加速计算实践
  • TFLite Micro农业场景声音分类部署实战:鸟鸣、虫鸣与机械噪音的多类别端侧识别系统
  • C++ --vector
  • AI数据分析工具:让文科研究更高效
  • 2026互联网猎头服务市场概览:AI人才缺口、机构对比与选型指南 - 资讯快报
  • 考虑 Stribeck 摩擦特性的无刷直流电机驱动 EMB 执行器耦合建模及仿真分析(Simulink仿真实现)
  • Rust WebAssembly 边缘计算实战:从 120ms 冷启动到 5ms 的 WASM 推理优化复盘
  • 拒绝广告干扰:2026工厂空压制氮真空系统服务商选择指南 - 城刊速递
  • 佛山回收名牌包常见套路,线上高价引流上门不断压价 - 全城热点
  • 深入解析ADC32RF42:时钟、SYSREF同步与DDC链实战指南
  • AI 在社交前端中的应用:智能好友推荐与动态流个性化排序
  • AI驱动的本地化搜索优化:提升企业到店转化率
  • Anritsu安立 MT8870A无线测试套件
  • 2026年有源滤波器厂家分类与选型指南:多谐波源场景看定制能力 - 城刊速递
  • 华为MetaERP Oracle Fusion Financials 会计核算架构深度分析报告基于 Oracle Fusion Cloud Financials 26C 官方文档体系整理,涵盖设计哲
  • 阴阳师自动化脚本终极指南:如何用OnmyojiAutoScript解放双手,告别重复操作
  • 番茄小说下载器完整指南:三步快速下载离线阅读番茄小说
  • 佛山二手奢侈品包包变现,警惕商家夸大磨损恶意砍价 - 全城热点
  • ADS127L01高精度ADC:工业振动分析与宽频带信号采集实战指南
  • 深入解析ADC12DJ3200 DDC与JESD204B:高速ADC数字下变频与接口同步实战
  • MLX90632国产替代方案: S-D1贴片式红外测温传感器技术解析
  • LTX-2.3 整合包落地实战:一键搞定文生视频、图生视频与动作迁移
  • 2026年录音转换文字的软件深度测评:成本分析维度下,谁才是王者
  • crontab 管理工具(降低openclaw cron (agentTurn) token )
  • 117、客观指标深度解析:PSNR、SSIM、VIF、LPIPS与NIQE
  • FreeMove终极指南:5分钟掌握Windows文件夹无痛迁移技术
  • MonkeyCode 实战:从需求到交付的一次 AI 协作开发记录
  • NS-USBLoader:Switch文件管理的终极三合一解决方案
  • 2026年5万预算的二手车怎么选?四家不同渠道的实测对比 - 城刊速递