数码之家

 找回密码
 立即注册
搜索
查看: 3878|回复: 2

[综合] DIY:RX8025AC/8025AC/RX8025SA时钟芯片与RX8025T的区别以及驱动注意要点

[复制链接]
发表于 2024-6-6 04:56:15 | 显示全部楼层 |阅读模式
EPSON RTC芯片RX8025SA(芯片上丝印是R8025AC),网上也称为RX8025AC。

该芯片和RX8025T实际是不同的:
1、没有温度补偿
2、有高精度时间偏差调整寄存器,但不能改变32K输出
3、提供两个中断输出引脚(INTA/INTB)
4、I2C的驱动方法有细微差别。

下面重点讲驱动中的注意事项,很多人都会遇到的坑:
1、读寄存器时,必须在写地址后使用Wire.endTransmission(false);,例如:

i2cBeginTransmission(RX8025AC_ADDR);
Wire.write((uint8_t)RX8025AC_SECONDS);
Wire.endTransmission(false);
Wire.requestFrom(RX8025AC_ADDR, 7);

......

2、RX8025AC的寄存器地址是使用高四位,低四位必须是0,也就是从0x00,0x10,0x20x,0x30,...0xE0,0xF0。正常的数据如下:

ADDR:0x00 = 01011001 HEX:59 BCD:59
ADDR:0x10 = 01010000 HEX:50 BCD:50
ADDR:0x20 = 00000100 HEX:4 BCD:4
ADDR:0x30 = 00000100 HEX:4 BCD:4
ADDR:0x40 = 00000110 HEX:6 BCD:6
ADDR:0x50 = 00000110 HEX:6 BCD:6
ADDR:0x60 = 00100100 HEX:24 BCD:24
ADDR:0x70 = 00000000 HEX:0 BCD:0
ADDR:0x80 = 00000000 HEX:0 BCD:0
ADDR:0x90 = 00000000 HEX:0 BCD:0
ADDR:0xa0 = 00000000 HEX:0 BCD:0
ADDR:0xb0 = 00000000 HEX:0 BCD:0
ADDR:0xc0 = 00000000 HEX:0 BCD:0
ADDR:0xd0 = 00000000 HEX:0 BCD:0
ADDR:0xe0 = 00000000 HEX:0 BCD:0
ADDR:0xf0 = 00000000 HEX:0 BCD:0



附件是Datasheet,有问题请可以跟帖,我尽量帮大家解答。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

打赏

参与人数 1家元 +60 收起 理由
家睦 + 60

查看全部打赏

发表于 2024-6-6 23:34:47 | 显示全部楼层
能写代码的,都是高手,不过我看玩直接做为外部晶振的用得多
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-6-7 01:39:10 | 显示全部楼层
ethan2304 发表于 2024-6-6 23:34
能写代码的,都是高手,不过我看玩直接做为外部晶振的用得多

代码很简单,网上也有很多库可以参考。有一定基础的,几天时间就上手了。我也是基本用来做晶振的,但是要具体测试芯片的精准度,就要写代码了。我对比了DS3231SN DS3231M(假货) PCF8653 RX8025T,现在在测试RX8025AC。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-5-2 07:28 , Processed in 0.249601 second(s), 15 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表