搜索

[开发工具] 【华大测评】七、RTC

[复制链接]
133|0
 楼主 | 2020-7-7 14:44 | 显示全部楼层 |阅读模式
      在昨天OLED驱动显示的基础上做了RTC实验,同时利用OLED显示输出RTC日历信息。

一、实验资源
1、HC32F460-EVB;
2、Keil V5.28;
3、ST-LINK调试器

二、资源简介
      HC32F460PETB的实时时钟 (RTC) 模块以BCD码格式保存时间信息,支持12/24小时两种时制,能够根据月份和年份自动计算日数28、29
(闰年)、30和31日。实际应用中还可以设定闹钟,闹钟还可以产生中断;为避开温度对晶振的影响还可以通过时钟误差补偿寄存器进行适度补偿,这对于提升时钟计时的准确性提供了保障。

2020-07-07_142054.png
2020-07-07_142116.png

RTC实时时钟模块的寄存器比较多,但配置相对还是比较简单的。
2020-07-07_142838.png

三、代码实现
      实验的代码参考了DEMO,其中只是设置了时、分、秒的参数。为了让OLED显示的字体显得饱满重新写了一个显示12*16字符函数:
  1. if (0 == RTC_GetDateTime(RtcDataFormatDec, &stcCurrDateTime))
  2.                 {
  3.                         Hour = BCD2DEC(stcCurrDateTime.u8Hour);
  4.                         Minute = BCD2DEC(stcCurrDateTime.u8Minute);
  5.                         Second = BCD2DEC(stcCurrDateTime.u8Second);
  6.                        
  7.                         OLED_Show12x16(0,0,Hour/10);       
  8.                         OLED_Show12x16(16,0,Hour%10);       
  9.                         OLED_Show12x16(32,0,10);       
  10.                         OLED_Show12x16(48,0,Minute/10);       
  11.                         OLED_Show12x16(64,0,Minute%10);       
  12.                         OLED_Show12x16(80,0,10);
  13.                         OLED_Show12x16(96,0,Second/10);
  14.                         OLED_Show12x16(112,0,Second%10);
  15.                 }
复制代码


四、实验结果
微信图片_20200707144001.jpg
微信图片_20200707143950.jpg

五、实验总结
      RTC实时时钟模块在工程应用中简化了硬件设计、降低了成本,是一个非常实用的模块。

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表