3504|3

297

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

[RTT&瑞萨高性能 CPK-RA6M4] 7、RT-Thread之RTC评测 [复制链接]

一、硬件部分

RTC (Real-Time Clock)是内部实时时钟,基本不涉及外部管脚,可以提供精确的实时时间,用于产生年、月、日、时、分、秒等信息。实时时钟芯片大多采用精度较高的晶体振荡器作为时钟源。

由于信息输出的需要,还是采用串口输出的方式,打印信息,因此用到了usart7作为调试信息的输出,涉及的管脚为P613和P614.

 二、软件部分

1、新建项目

基于开发板进行新建项目,选择模板工程,生成后直接打开项目

 

2、FSP配置

新项目在使用RA Smart Configurator时,需要指定安装路径。然后打开RA Smart Configurator,在new stack中增加RTC

 

 检查一下g_usart7的管脚P613和P614,然后点击右上角的Generate Project Content,生成配置。比较遗憾的是,每次RA Smart Configurator生成后,都需要手动复制board_cfg.h头文件。

3、RT Thread Settungs中设置

打开RT-Thread Setting,配置RTC相关的信息,图形界面中右键配置RTC,然后在组件选项中使能RTC

在硬件选项中同样使能RTC

  Ctrl-S保存后更新配置信息

4、代码说明

在RT-Thread网站中,可以找到RTC相关的示例

 适当修改后,新建rtc.c文件,放在src目录下

#include <rtthread.h>
#include <rtdevice.h>
#include <time.h>
static int set_datetime(int argc, char *argv[])
{
    rt_err_t ret = RT_EOK;
    //time_t now;

     if(argc != 6) {
         rt_kprintf("Usage:set_datetime 2022 06 18 21 57 00 \r\n");
     }
    /* 设置日期 */
    ret = set_date(atoi(argv[1]), atoi(argv[2]), atoi(argv[3]));
    if (ret != RT_EOK)
    {
        rt_kprintf("set RTC date failed\n");
        return ret;
    }

    /* 设置时间 */
    ret = set_time(atoi(argv[4]), atoi(argv[5]), atoi(argv[6]));
    if (ret != RT_EOK)
    {
        rt_kprintf("set RTC time failed\n");
        return ret;
    }

    /* 延时3秒 */
    //rt_thread_mdelay(3000);

    /* 获取时间 */
    //now = time(RT_NULL);
    //rt_kprintf("%s\n", ctime(&now));

    return ret;
}
/* 导出到 msh 命令列表中 */
MSH_CMD_EXPORT(set_datetime, rtc sample);

用于设定初始时间,使用方式为命令行输入set_datetime 2022 06 18 21 57 00

为了及时更新时间,在hal_entry.c中修改hal_entry函数

void hal_entry(void)
{
    time_t now;

    rt_kprintf("\nHello RT-Thread!\n");

    while (1)
    {
        rt_pin_write(LED3_PIN, PIN_HIGH);
        rt_thread_mdelay(500);
        rt_pin_write(LED3_PIN, PIN_LOW);
        rt_thread_mdelay(500);
        /* 获取时间 */
        now = time(RT_NULL);
        rt_kprintf("%s\n", ctime(&now));

    }

}

编译后下载至开发板,开启串口软件sscom

5、演示效果

复位开发板后在sscom中显示信息

 设置初始时间后,每间隔1秒打印当前时间

三、心得体会

对于RTT支持的设备来说,实现功能确实非常方便,甚至可以不写代码实现,非常方便和快捷,但是对于不直接支持的设备,还是比较麻烦的。RTC显然属于支持的设备,因此非常方便。

期待RTT加入更多的硬件支持和更多的设备支持!

最新回复

谢谢分享,很有参考价值,mark一下,期待后续教程。。。   详情 回复 发表于 2022-6-21 23:03
点赞 关注

回复
举报

7462

帖子

2

TA的资源

五彩晶圆(高级)

沙发
 

谢谢分享,期待后续!

 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 

回复

6787

帖子

2

TA的资源

版主

板凳
 

教程写的不错!

 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

4
 

谢谢分享,很有参考价值,mark一下,期待后续教程。。。

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
推荐帖子
IC设计领域介绍及工程师未来出路规划

一、 IC 设计领域简介 (一)模拟与混号讯号电路设计 IC 电路可分为为模拟 IC 与数字 IC 两大类,以及两者兼具的混合讯号等三种 ...

关于ARM入门与学习方案

一 首先说说ARM的发展 可以用一片大好来形容,翻开各个公司的网站,招聘里面嵌入式占据了大半工程师职位。 广义的嵌入式无非几 ...

STM32相关资料

Cortex-M3权威指南Cn213290 STM32F10xxx硬件开发:使用入门13291 STM32F10x参考手册13292 本帖最后由 daicheng 于 2008-12-1 ...

替jxb01033016发帖:嵌入式究竟该怎么学

以下内容是jxb01033016在一个回帖中的,我感觉非常实在,在那堆回复中很容易被湮没,因此专门发一个帖子。 其实做技术,本来 ...

智能机器人设计完整资料分享

智能机器人设计完整资料分享 195747 195740 195741 195742 195743 195744 195745

机智云Gokit3.0套件测评汇总

活动详情:https://bbs.eeworld.com.cn/elecplay/content/154 测评汇总: @青春最好时 【机智云Gokit3测评】+开箱评 ...

请教一下,专利归属的问题

一个职员在一家制作气表的公司上班,气表中计量用到了霍尔器件(此件外购),这个霍尔器件容易受到磁干扰从而会导致计量丢数,这 ...

【得捷电子Follow me第1期】第七贴:曲折的同步网络时间

这个贴早就应该发了,只不过经过了一段不平常的弯路终于搞定了。 首先,同步网络时间必须得连上网: import network im ...

开关电源中尖峰吸收电路中R和C的取值如何计算,有没有相关的书籍,请帮忙推荐一下

开关电源中尖峰吸收电路中R和C的取值如何计算,有没有相关的书籍,请帮忙推荐一下

我想问一下这几个是什么器件SB,SL

858102 858101

关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表