Welcome to Firefly
切换语言
Firefly文档中心
最近更新: 2026-07-31 13:46:27

RTC 使用

简介

AIO-1126BJD4V0 开发板采用 RV1126B 芯片内部的外设作为RTC(Real Time Clock)。基于 32.768 kHz 晶体振荡器提供年、月、日、星期、小时、分钟和秒。 支持秒和小时计数补偿。BCD表示时间、日历和闹钟。12 或 24 小时制,AM 和 PM 为 12 小时模式。

  • 中断可单独通过软件屏蔽
    • 报警中断
    • 周期性中断
    • 芯片断电中断
    • 电池电源非典型中断

该 RTC 外设不支持定时休眠唤醒。

RTC驱动

Linux SDK 中的 DTS 配置参考: kernel-6.1/arch/arm64/boot/dts/rockchip/rv1126b-firefly-aio-1126bjd4v0.dts

&rtc {
        rockchip,rtc-suspend-bypass;
        status = "okay";
};

驱动参考:kernel-6.1/drivers/rtc/rtc-rockchip.c

接口使用

Linux 提供了三种用户空间调用接口。在 AIO-1126BJD4V0开发板中对应的路径为:

  • SYSFS接口:/sys/class/rtc/rtc0/
  • PROCFS接口: /proc/driver/rtc
  • IOCTL接口: /dev/rtc0

SYSFS接口

可以直接使用 catecho 操作 /sys/class/rtc/rtc0/ 下面的接口。

比如查看当前 RTC 的日期和时间:

# cat /sys/class/rtc/rtc0/date 
2022-06-21
# cat /sys/class/rtc/rtc0/time 
06:52:08

PROCFS 接口

打印 RTC 相关的信息:

# cat /proc/driver/rtc
rtc_time        : 06:53:50
rtc_date        : 2022-06-21
alrm_time       : 06:55:05
alrm_date       : 2022-06-21
alarm_IRQ       : yes
alrm_pending    : no
update IRQ enabled      : no
periodic IRQ enabled    : no
periodic IRQ frequency  : 1
max user IRQ frequency  : 64
24hr            : yes

IOCTL接口

可以使用 ioctl 控制 /dev/rtc0

详细使用说明请参考文档 kernel/Documentation/admin-guide/rtc.rst

FAQs

Q1: 开发板上电后时间不同步?

A1: 检查一下 RTC 电池是否正确接入。

本页目录