跳到主要内容

RTC 时钟

RTC(实时时钟)的目的是为设备或系统提供当前日期和时间的实时信息。它是一个独立的时钟芯片或模块,具有自己的电源,即使设备断电或发生电源故障,也能保持准确的时间。由于国际运输限制,RTC 硬件在运输时不附带电池,用户需要自行购买 CR1220 纽扣电池。不同版本的 BliKVM 使用的 RTC 时钟型号可能有所不同,使用方法也可能略有差异。

BliKVM V2 PCIe 和 BliKVM V3 Hat - pcf8563

"1. 检查 pcf8563 RTC 时钟硬件是否在 i2c 总线上被正确识别。pcf8563 RTC 时钟的 i2c 地址为 0x51。以 root 身份执行以下命令,验证 rtc 时钟是否在 i2c 总线上正确检测到:"
root@mangopimcore:~# i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- 51 -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
"2. 在 Linux 系统的 i2c 子系统中注册一个新的 i2c 设备。该设备是一个 i2c 地址为 0x51 的 pcf8563。使用命令 ls /dev | grep rtc 验证是否出现 rtc1 设备,表示注册成功。"
echo pcf8563 0x51 > /sys/class/i2c-adapter/i2c-1/new_device
"3. 将当前系统时间设置为 RTC 时钟时间。"
hwclock -f /dev/rtc0 -w
"4. 从 RTC 时钟读取时间。如果可以读取时间,则表明 RTC 模块正常工作。"
root@mangopimcore:~# hwclock -f /dev/rtc0 -r
2023-05-28 05:04:08.679152-02:30

BliKVM V4 - pcf8563

"1. 检查 pcf8563 RTC 时钟硬件是否在 i2c 总线上被正确识别。pcf8563 RTC 时钟的 i2c 地址为 0x51。以 root 身份执行以下命令,验证 rtc 时钟是否在 i2c 总线上正确检测到:"
root@mangopimcore:~# i2cdetect -y 0
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- 51 -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
"2. 在 Linux 系统的 i2c 子系统中注册一个新的 i2c 设备。该设备是一个 i2c 地址为 0x51 的 pcf8563。使用命令 ls /dev | grep rtc 验证是否出现 rtc1 设备,表示注册成功。"
echo pcf8563 0x51 > /sys/class/i2c-adapter/i2c-0/new_device
"3. 将当前系统时间设置为 RTC 时钟时间。"
hwclock -f /dev/rtc1 -w
"4. 从 RTC 时钟读取时间。如果可以读取时间,则表明 RTC 模块正常工作。"
root@mangopimcore:~# hwclock -f /dev/rtc1 -r
2023-05-28 05:04:08.679152-02:30