DS1306
6 的 19
这 ds1306 能 是 run 在 也 12-小时 或者 24-小时 模式. 位 6 的 这 小时 寄存器 是 定义 作 这
12- 或者 24-小时 模式 选择 位. 当 高, 这 12-hour 模式 是 selected. 在 这 12-hour mode, 位 5 是 这
am/pm 位 和 逻辑 高 正在 pm. 在 这 24-小时 模式, 位 5 是 这 第二 10-hour 位 (20-23 hours).
这 ds1306 包含 二 时间 的 日 alarms. 时间 的 日 alarm 0 能 是 设置 用 writing 至 寄存器 87h
至 8ah. 时间 的 日 alarm 1 能 是 设置 用 writing 至 寄存器 8bh 至 8eh. 位 7 的 各自 的 这 时间 的
日 alarm 寄存器 是 掩饰 位 (表格 1). 当 所有 的 这 掩饰 位 是 逻辑 0, 一个 时间 的 日 alarm 将
仅有的 出现 once 每 week 当 这 值 贮存 在 timekeeping 寄存器 00h 至 03h 相一致 这 值
贮存 在 这 时间 的 日 alarm 寄存器. 一个 alarm 将 是 发生 每 日 当 位 7 的 这 日
alarm 寄存器 是 设置 至 一个 逻辑 1. 一个 alarm 将 是 发生 每 小时 当 位 7 的 这 日 和 小时
alarm 寄存器 是 设置 至 一个 逻辑 1. similarly, 一个 alarm 将 是 发生 每 分钟 当 位 7 的 这
日, 小时, 和 分钟 alarm 寄存器 是 设置 至 一个 逻辑 1. 当 位 7 的 这 日, hour, minute, 和 秒
alarm 寄存器 是 设置 至 一个 逻辑 1, 一个 alarm 将 出现 每 第二.
时间 的 日 alarm 掩饰 位
表格 1
alarm 寄存器 掩饰 位 (位 7)
秒 分钟 小时 日
1 1 1 1 alarm once 每 第二
0 1 1 1 alarm 当 秒 相一致
0 0 1 1 alarm 当 分钟 和 秒 相一致
0 0 0 1 alarm 当 小时, 分钟, 和 秒 相一致
0 0 0 0 alarm 当 日, 小时, 分钟, 和 秒
相一致
特定的 目的 寄存器
这 ds1306 有 三 额外的 寄存器 (控制 寄存器, 状态 寄存器, 和 trickle charger
寄存器) 那 控制 这 real 时间 时钟, 中断, 和 trickle charger.
控制 寄存器 (读 0fh, 写 8fh)
BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0
0 WP 0 0 0 1 hz AIE1 AIE0
wp (写 保护)
- 在之前 任何 写 运作 至 这 时钟 或者 内存, 这个 位 必须 是 逻辑 0. 当
高, 这 写 保护 位 阻止 一个 写 运作 至 任何 寄存器, 包含 位 0, 1, 和 2 的 这
控制 寄存器. 在之上 最初的 电源 向上, 这 状态 的 这 wp 位 是 未阐明的. 因此 这 wp 位 应当
是 cleared 在之前 attempting 至 写 至 这 设备.
1 hz (1 hz 输出 使能)
- 这个 位 控制 这 1 hz 输出. 当 这个 位 是 一个 逻辑 1, 这 1 hz 输出
是 使能. 当 这个 位 是 一个 逻辑 0, 这 1 hz 输出 是 高 z.
aie0 (alarm 中断 使能 0)
- 当 设置 至 一个 逻辑 1, 这个 位 准许 这 中断 0 要求 标记
(irqf0) 位 在 这 状态 寄存器 至 assert
INT0
. 当 这 aie0 位 是 设置 至 逻辑 0, 这 irqf0 位 做
不 initiate 这
INT0
信号.
aie1 (alarm 中断 使能 1)
- 当 设置 至 一个 逻辑 1, 这个 位 准许 这 中断 1 要求 标记
(irqf1) 位 在 这 状态 寄存器 至 assert int1. 当 这 aie1 位 是 设置 至 逻辑 0, 这 irqf1 位 做
不 initiate 一个 中断 信号, 和 这 int1 管脚 是 设置 至 一个 逻辑 0 状态.