回答

收藏

RT-Thread设备框架学习之RTC设备

RT-Thread RT-Thread 4172 人阅读 | 0 人回复 | 2021-04-25

RT-Thread学习记录
1.Studio新建工程

2.控制台使用简述

3.PIN设备框架学习

4.UART设备框架学习

5.I2C设备框架学习

6.SPI设备框架学习

RTC设备
首先在Components设置项下勾选RTC驱动框架,这边有两个可选项,使用闹钟和开启模拟RTC,STM32带硬件RTC直接使用即可,不需要模拟,如下图:


然后在Samples设置项下勾选rtc device的例程,保存,如下图可以看到例程已添加入工程。


/*
* Copyright (c) 2006-2018, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date           Author       Notes
* 2018-11-30     misonyo      first implementation.
*/
/*
* 程序清单:这是一个 RTC 设备使用例程
* 例程导出了 rtc_sample 命令到控制终端
* 命令调用格式:rtc_sample
* 程序功能:设置RTC设备的日期和时间,延时一段时间后获取当前时间并打印显示。
*/
?
#include <rtthread.h>
#include <rtdevice.h>
?
static int rtc_sample(int argc, char *argv[])
{
    rt_err_t ret = RT_EOK;
    time_t now;
?
    /* 设置日期 */
    ret = set_date(2018, 12, 3);
    if (ret != RT_EOK)
    {
        rt_kprintf("set RTC date failed\n");
        return ret;
    }
?
    /* 设置时间 */
    ret = set_time(11, 15, 50);
    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;
}c
/* 导出到 msh 命令列表中 */
MSH_CMD_EXPORT(rtc_sample, rtc sample);
?
然后在board.h文件下的RTC CONFIG段,开启RTC的驱动支持。


保存,编译,运行,可以看到例程设置了RTC的时间并打印,我们也可以通过date指令查看当前的时间,带参数更新时间。


以上就是RTC设备的使用说明


分享到:
回复

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /3 下一条