RTC的英文全称是Real-Time Clock,翻译过来是实时时钟芯片。RTC芯片是一种能提供日历/时钟(世纪、年、月、时、分、秒)及数据存储等功能的专用集成电路。适合于一切需要微功耗及准确计时的场合。广泛应用于嵌入式领域:车载电子、手机、数码相机、MP3、MP4、电子词典等。
RK3568开发板采用的RTC是HYM8563芯片,HYM8563是一款低功耗CMOS实时时钟/日历芯片。可计时基于 32.768kHz 晶体的秒,分,小时,星期,天,月和年。工作电压范围:1.0~5.5V,低休眠电流:典型值为 0.25μA(VDD =3.0V, TA =25°C)。
板级使能RTC,配置位置:arch/arm64/boot/dts/rockchip/aukun-utx-rk3568jt.dtsi
&i2c5 {
status = "okay";
rtc@51 {
status = "okay";
compatible = "haoyu,hym8563";
reg = <0x51>;
};
};
我们通常在文件系统用i2c-tools调试I2C设备。常用的几个命令:i2cdetect(检测I2C器件工具) 、i2cdump(查看寄存器值工具) 、i2cget(读取寄存器值工具)、 i2cset(设置寄存器值工具)。
sudo apt install i2c-tools
查询rtc设备驱动
ls /dev/rtc*
如驱动加载成功,则会生成设备文件的描述:rtc0
由设备树可知,RTC挂载在I2C5总线上
i2cdetect -a 5 //0x51地址上UU表示已经被RTC驱动占用
1、查看系统时间:
date
2、查看RTC硬件时间:
hwclock -f /dev/rtc0
3、将硬件时间同步至系统时间
hwclock -s //将硬件时间同步到系统时间
再次查看RTC时间已经与系统同步
Copyright © 2022-2030 aukun.cn 合肥奥鲲电子科技版权所有 皖ICP备2023002494号-1