我正在使用 ASUS TinkerBoard,OS Linaro 9.5 - Kernel 4.4.132
我添加了一个基于 DS3231 芯片的小 RTC 板。
系统创建添加到 /dev/rtc0 和 /dev/rtc 的设备 /dev/rtc1(链接到 /dev/rtc0)。
我可以通过i2cdetect和hwclock命令与 RTC 芯片交谈,但我有一个奇怪的行为。
这是我的测试——当然我已经断开网络以避免 ntp 同步:
没有 RTC:每次上电时,板/操作系统都会从 2016 年 11 月 3 日 00:00 重置日期和时间
使用 RTC:
- 通过 Internet 连接同步日期/时间
- 强制设置的 RTC 值
hwclock -f /dev/rtc1 --systohc
- 通过 'hwclock -f /dev/rtc1 --get' 检查值
- 断开网络并关闭电路板 - 假设在 18:00
- 18:15 给电路板加电
- 当桌面准备好时,我看到系统时间设置为 18:00(?)
- 如果我阅读 RTC
hwclock -f /dev/rtc1 --get
并且我有 18:15 - 数据正确设置为今天(!)
好像恢复了系统日期,掉电时系统时间冻结,RTC时间正确但没有恢复到系统时间。
任何想法?