Arduino与Proteus仿真实例DS3232高精度实时时钟驱动仿真
Arduino与Proteus仿真实例-DS3232高精度实时时钟驱动仿真
DS3232高精度实时时钟驱动仿真
1、DS3232介绍
DS3232是一款低成本温度补偿晶体振荡器 (TCXO),具有非常精确的温度补偿集成实时时钟 (RTC) 和236 字节的电池供电 SRAM。此外,DS3232 集成了电池输入,并在设备的主电源中断时保持准确计时。晶体谐振器的集成提高了设备的长期精度,并减少了生产线上的零件数量。DS3232 可在商业和工业温度范围内使用,并采用行业标准的 20 引脚、300 密耳 SO 封装。
RTC 维护秒、分、小时、日、日期、月和年信息。对于少于 31 天的月份,月末的日期会自动调整,包括闰年的更正。时钟以 24 小时或 12 小时格式运行,并带有 AM/PM 指示器。提供了两个可编程的时间警报和一个可编程的方波输出。地址和数据通过 I2C 双向总线串行传输。精密温度补偿电压基准和比较器电路监控 VCC 的状态以检测电源故障、提供复位输出并在必要时自动切换到备用电源。此外,RST 引脚作为按钮输入进行监控,以产生 µP 复位。

DS3232的引脚功能如下:
| 引脚序号 | 名称 | 描述 |
|---|---|---|
| 1, 2, 7–14, 19 | N.C. | 无连接。 内部未连接。 必须接地。 |
| 3 | 32kHz | 32kHz 推挽输出。 如果使用 EN32kHz = 0 或 BB32kHz = 0 禁用,则 32kHz 引脚的状态会低。 |
| 4 | VCC | 主电源的直流电源引脚。 该引脚应使用 0.1μF 至 1.0μF 的电容去耦。 |
| 5 |
I
N
T
\over INT
INT/SQW | 低电平有效中断或方波输出。 该开漏引脚需要一个外部上拉电阻。 如果不使用,它可以保持打开状态。 该多功能引脚由控制寄存器 (0Eh) 中的 INTCN 位的状态决定。 当 INTCN 设置为逻辑 0 时,该引脚输出方波,其频率由 RS2 和 RS1 位决定。 当 INTCN 设置为逻辑 1 时,计时寄存器与任一闹钟寄存器之间的匹配会激活
I
N
T
\over INT
INT/SQW 引脚(如果启用了闹钟)。 由于首次通电时 INTCN 位设置为逻辑 1,因此该引脚默认为中断输出且警报禁用。 上拉电压最高可达 5.5V,与 VCC 上的电压无关。 如果不使用,该引脚可以悬空。 |
| 6 |
R
S
T
\over RST
RST | 低电平有效复位。 该引脚是开漏输入/输出。 它指示VCC相对于VPF规范的状态。 当 VCC低于VPF时,
R
S
T
\over RST
RST 引脚被驱动为低电平。 当VCC超过VPF时,对于
R
S
T
\over RST
RST,
R
S
T
\over RST
RST 引脚被驱动为高阻抗。 低电平有效、开漏输出与去抖动按钮输入功能相结合。 该引脚可以通过按钮复位请求激活。 它有一个内部50k标称值上拉电阻到 VCC。不应连接外部上拉电阻。 如果晶体振荡器被禁用,
R
S
T
\over RST
RST 将被绕过并且
R
S
T
\over RST
RST 立即变高。 |
| 15 | GND | 接地 |
| 16 |
V
B
A
T
V_{BAT}
VBAT | 备用电源输入。 当使用VBAT输入作为主电源的器件时,该引脚应使用 0.1μF 至 1.0μF 的低泄漏电容去耦。 当使用 VBAT 输入作为备用电源的器件时,不需要电容器。 如果不使用VBAT,则接地。 该设备已通过 UL 认证,可确保在与一次锂电池一起使用时防止反向充电。 |
| 17 | SDA | 串行数据输入/输出。 该引脚是 I2C 串行接口的数据输入/输出。 该开漏引脚需要一个外部上拉电阻。 上拉电压最高可达 5.5V,与VCC上的电压无关。 |
| 18,20 | SCL | 串行时钟输入。 该引脚是 I2C 串行接口的时钟输入,用于同步串行接口上的数据移动。 只需要连接到一个引脚。 另一个引脚必须连接到相同的信号或悬空。 无论 VCC 上的电压如何,该引脚都可以使用高达 5.5V 的电压。 |
DS3232典型的应用电路如下

2、仿真电路原理图

3、仿真代码实现
本次使用到如下开源库:
演示代码如下:
1 | /\*\* |
4、仿真结果

文章来源: https://iotsmart.blog.csdn.net/article/details/121240610