跳转至

RTC

Rockchip 平台板载 RTC 信息如下

主板 SOC 平台 板载 RTC
K1 RK3568 Rockchip Y
K1B RK3568 Rockchip N
K3 RK3562 Rockchip Y
K7 / K7C RK3576 Rockchip Y
K8 RK3588 Rockchip Y

Allwinner 平台板载 RTC 信息如下

主板 SOC 平台 板载 RTC
K2B V1 H618 Allwinner N
K2B V2 H618 Allwinner Y
K2C H618 Allwinner Y
K4B T113 Allwinner Y
K5C A133 Allwinner Y

板载 RTC

板载 RTC 是集成于主板(或嵌入式底板)的实时时钟模块,主板断电时RTC通过纽扣电池供电,确保主板系统时间正常运行。

Note

主板接口带有 RTC 丝印,RTC 电池接口通常用于接入纽扣电池,主板断电时为板载 RTC 模块提供供电。

  • 硬件安装

K1 安装示意图:

image-20251110115114912

外置 RTC

主板未板载 RTC 状态下,可通过外置连接方式增加实时时钟模块。

1. 确认拓展引脚 I2C 引脚位置以及模块的电源域,使用的外置 RTC 模块为 hym8563 电源域为 3.3V。

image-20251112142527332

2. 确认模块 SDA SCL 引脚的上拉电阻,没有则需要增加上拉电阻。

3. 模块安装。

Warning

主板通电状态下,禁止安装/拆卸。

image-20251112142713347

DTS 节点配置

Rockchip

Rockchip 平台 dts 配置 hym8563 模块节点配置如下:

&i2c2 {
    status = "okay";

    hym8563: hym8563@51 {
        compatible = "haoyu,hym8563";
        reg = <0x51>;
        pinctrl-names = "default";
        pinctrl-0 = <&hym8563_int>;
        interrupt-parent = <&gpio0>;
        interrupts = <RK_PA0 IRQ_TYPE_LEVEL_LOW>;
        wakeup-source;
    };
};

Allwinner

Allwinner 平台 dts 配置 hym8563 模块节点配置如下:

&twi3 {
    status = "okay";

    hym8563: hym8563@51 {
        compatible = "haoyu,hym8563";
        status = "okay";
        reg = <0x51>;
        interrupt-parent = <&pio>;
        interrupts = <PB 8 IRQ_TYPE_LEVEL_LOW>;
        wakeup-source;
    };
};

测试

  • **判断RTC 设备是否正常识别 **

查看总线是否注册:

ls /dev/i2c*

i2cdetect 检测设备是否挂载识别成功,可识别到 I2C 设备的地址(hym8563 RTC 模块地址为 0x51)。

i2cdetect -y 3
  • 测试 RTC 命令
命令 功能描述
date 查看/修改系统时间(具体用法可通过 man date 查阅)
hwclock -s 将硬件 RTC 时间同步到系统时间
hwclock -w 将系统时间写入硬件 RTC(持久化保存)
timedatectl 查看系统时间、时区、RTC 状态等详细信息
  • 手动设置时间并同步到 RTC
# 1. 手动设置系统当前时间(格式:年-月-日 时:分:秒)
sudo date -s "2024-08-14 08:00:00"

# 2. 将设置好的系统时间写入硬件 RTC(断电后仍能保持)
sudo hwclock -w

# 3. 验证:将 RTC 时间同步回系统(确保一致性)
sudo hwclock -s