当前位置: 首页 > article >正文

RK356x bsp 7 - PCF8563 RTC调试记录

文章目录

  • 1、环境介绍
  • 2、目标
  • 3、PCF8563
  • 4、dts配置
  • 5、内核配置
  • 6、测试验证
  • 7、总结

1、环境介绍

硬件:飞凌ok3568-c开发板

软件:原厂rk356x sdk

2、目标

开发板断电后仍正常计时。

3、PCF8563

PCF8563 是由 NXP Semiconductors 公司生产的低功耗 CMOS 实时时钟 / 日历芯片。400kHz 的 I2C 总线,从地址读 0A3H,写 0A2H。共有 16 个 8 位寄存器,包括控制寄存器、状态寄存器、时钟计数器寄存器、报警寄存器、CLKOUT 频率寄存器、定时器控制寄存器和定时器寄存器等,其中秒、分钟、小时、日、月、年等寄存器采用 BCD 码格式编码。

4、dts配置

通过原理图得出PCF8563 RTC芯片使用I2C3接口:

&i2c3 {
	status = "okay";
	
	pcf8563: pcf8563@51 {
		status = "okay";
		compatible = "nxp,pcf8563";
		reg = <0x51>;		
	};
};

5、内核配置

内核开启PCF8563 RTC:

CONFIG_RTC_DRV_PCF8563=y

同时关闭RK808 RTC,不然最终设备节点会出现两个RTC,/dev/rtc0和/dev/rtc1:

CONFIG_RTC_DRV_RK808=n

6、测试验证

查看驱动是否匹配成功:

root@rk3568-buildroot:/# dmesg | grep rtc
[    4.082733] rtc-pcf8563 3-0051: registered as rtc0
[    4.083946] rtc-pcf8563 3-0051: setting system clock to 2024-12-25T09:02:14 UTC (1735117334)
root@rk3568-buildroot:/# ls /dev/rtc0
/dev/rtc0

执行如下命令设置系统日期和时间:

root@rk3568-buildroot:/# date -s "2024-12-25 11:22:25"

把系统时间写入RTC:

root@rk3568-buildroot:/# hwclock -wu

断电,等待1~2分钟后重启,查看时间是否正常:

root@rk3568-buildroot:/# date
Wed Dec 25 11:24:50 UTC 2024

7、总结

嵌入式Linux学习交流群:424571391


http://www.kler.cn/a/458500.html

相关文章:

  • Unity 读Excel,读取xlsx文件解决方案
  • 【Rabbitmq篇】高级特性----事务,消息分发
  • 【每日学点鸿蒙知识】Web跳转系统应用、页面动态跳转、非UI中观测变化、MVVM模式、循环中使用定时问题
  • .net core 的计算机基础
  • B站推荐模型数据流的一致性架构
  • MetaRename for Mac,适用于 Mac 的文件批量重命名工具
  • 抽象工厂设计模式的理解和实践
  • C++Primer 控制流
  • Element-ui的使用教程 基于HBuilder X
  • 数据仓库工具箱—读书笔记02(Kimball维度建模技术概述04、使用一致性维度集成)
  • LabVIEW化工实验室设备故障实时监测
  • 【Linux】:Linux套接字Socket网络编程
  • Dockerfile基本原理
  • 解决springdoc-openapi-ui(Swagger3)跳转默认界面问题
  • 关于 PCB线路板细节锣槽问题 的解决方法
  • c# WaitSleepJoin状态的线程如何自动恢复
  • ArcGIS计算矢量要素集中每一个面的遥感影像平均值、最大值等统计指标
  • 改变HTML元素的方式有哪些?如何在HTML中添加/替换或删除元素?
  • 微服务保护-sentinel
  • 大模型-Ollama使用相关的笔记