调试大普RTC芯片驱动-ins5699s

目录

一、修改设备树,注意设备地址的计算

二、大致的调试步骤

1、检查i2c适配器是否加载成功

2、加载设备驱动,看能否检测到设备


一、修改设备树,注意设备地址的计算

这款时钟芯片是I2C接口,驱动源码由厂家提供。

注意:在大部分情况下,i2c的DATA和CLK均要接上拉电阻,我们接的是4.7K。

在设备树对应的I2C总线下,添加ins5699s节点。

设备地址0x32,请从芯片手册中查找:

 8 bit,高7位代表设备地址,即二进制:0011 0010,高位补零。

驱动安装模块的方式编译。

在更换设备树后,使用I2Ctools工具查看I2C总线情况。

二、大致的调试步骤

1、检查i2c适配器是否加载成功

i2cdetect:用于扫描 i2c 总线上的设备

如果i2c2打开了,i2cdetect -l便能看到,说明i2c2适配器是OK的,如果没有,不忙着加载ins5699驱动,先排查适配器问题。我在此处没有任何回显,才发现设备树中i2c2的status是“okey”,而不是“okay”,导致i2c2总线没有使能

i2cget -f -y 2 0x32 0x00:读取i2c2总线上地址为0x32的设备,该设备0x00的寄存器数据

如果回显“Error: Read failed”,也说明i2c适配器有问题。我在此处报错了,才发现i2c2的DATA和CLK引脚没有接上拉电阻

2、加载设备驱动,看能否检测到设备

insmod rtc-ins5699.ko

然后

./i2cdetect -r -y 2:扫描i2c2总线上的所有地址。

其回显中,– 表示该地址被检测,但是没有芯片应答,UU 表示该地址被当前内核驱动使用。

此处如果0x32地址处不是显示UU,而是显示-,说明总线和5699通信正常。

在/dev/下面应该能看到rtc的设备节点了。

之后,再执行5699的测试程序。

最后的最后,hwclock命令便可正常设置时间了。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汉尼拔勇闯天涯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值