linux调试外部RTC hym8563

DTS配置

bash 复制代码
&i2c5 {
	status = "okay";
		hym8563: hym8563@51 {
		status = "okay";
		compatible = "haoyu,hym8563";
		reg = <0x51>;
		pinctrl-names = "default";
		pinctrl-0 = <&hym8563_int>;
		interrupt-parent = <&gpio0>;
		interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
	};
};

RTC常用的调试命令

bash 复制代码
i2cdetect -l
i2cdetect -y 5
cat /sys/bus/i2c/devices/5-0051/name

date -s "2025-10-10 10:00:00"
date
ls -al /dev/rtc*

# 没有hwclock 可以暂时使用 busybox hwclock
sudo busybox hwclock --systohc --rtc=/dev/rtc1
sudo busybox hwclock --show --rtc=/dev/rtc1
sudo busybox hwclock --systohc

# 系统 → 硬件RTC   把系统时间写到 rtc1       
sudo hwclock -w
sudo hwclock --systohc
sudo hwclock --rtc=/dev/rtc1 --systohc

# 显示硬件时间
sudo hwclock
sudo hwclock --rtc=/dev/rtc1 --show

# 硬件RTC → 系统	读取并设置 硬件RTC时间 更新 系统时间
sudo hwclock -s
sudo hwclock --rtc=/dev/rtc1 --hctosys

# 从系统层读取 rtc1 的当前时间(硬件时钟)
cat /sys/class/rtc/rtc1/time
cat /sys/class/rtc/rtc1/date

# 合并显示
echo "$(cat /sys/class/rtc/rtc1/date) $(cat /sys/class/rtc/rtc1/time)"

# 输出hym8563
cat /sys/class/rtc/rtc1/name

发现默认多打开了一个没用的RTC,导致掉电后开机硬件时间默认从rtc0同步给系统时间(实际外部rtc使用的是rtc1),导致时间不准确,将其关掉。

bash 复制代码
# CONFIG_RTC_DRV_RK808 is not set

尽量使用hwclock,因为busybox hwclock 可能会忽略 /etc/adjtime 的 UTC/LOCAL 设置,导致时间差个时区错误。

bash 复制代码
# 正确的 adjtime 配置
cat /etc/adjtime
0.000000 1764923689 0.000000
1764923689
UTC

打印下面报错没关系,rtc 信息有效

bash 复制代码
[    3.175747] rtc-hym8563 5-0051: hym8563_init_device: error read i2c data -6
[    3.178347] rtc-hym8563 5-0051: rtc information is valid
[    3.185643] rtc-hym8563 5-0051: registered as rtc0

如果开机有打印下面错误

bash 复制代码
[    0.879621] rtc-hym8563 3-0051: could not init device, -6

可以参考火柴棍大佬的文章修改:https://huochaigun.blog.csdn.net/article/details/124230641?fromshare=blogdetail\&sharetype=blogdetail\&sharerId=124230641\&sharerefer=PC\&sharesource=2301_76966953\&sharefrom=from_link

相关推荐
hongmai66688812 小时前
FH8856V310芯片详解:6M高清+0.5TOPS算力,赋能智能安防新方案
人工智能·单片机·嵌入式硬件·物联网·智能家居
RisunJan14 小时前
Linux命令-rlogin(远程登录)
linux·运维
三易串口屏15 小时前
串口屏是什么
单片机·嵌入式硬件
大飞记Python17 小时前
Linux命令速查手册(测试开发4年实战总结,附PDF)
linux·网络·pdf
冰茶丿17 小时前
嵌入式安全第一关:Secure Boot是怎么保护你的设备的?
嵌入式硬件·安全
Kuakewei88818 小时前
4056充电芯片:28V高耐压+电池反接保护+热调节功能
嵌入式硬件
三品吉他手会点灯18 小时前
嵌入式机器学习 - 学习笔记1.1.1 - 什么是机器学习?
c语言·人工智能·笔记·嵌入式硬件·学习·机器学习
woohuwan18 小时前
CST 匝数比和采样电阻怎么算?
单片机·嵌入式硬件
拥抱太阳061618 小时前
HarmonyOS 应用开发《掌上英语》第2篇:ArkTS 模块化开发:Index.ets 统一导出模式深度解析
pytorch·ubuntu·harmonyos
顾喵19 小时前
PetaLinux 2017.4 实操指南:PREEMPT_RT实时补丁移植+Zynq PL中断UIO用户态配置(超完整避坑版)
linux