9个版本 (4个重大更新)
0.5.2 | 2023年12月8日 |
---|---|
0.5.1 | 2023年12月8日 |
0.4.1 | 2023年11月25日 |
0.3.1 | 2023年11月19日 |
0.1.0 | 2023年11月4日 |
#197 in 硬件支持
每月120次下载
1.5MB
748 行
rv3028c7-rtc
Rust no_std
驱动程序,用于瑞士Micro Crystal AG生产的RV-3028-C7及类似实时时钟(RTC)。基于2023年11月下载的应用手册。
此驱动程序提供了许多读取和写入RTC i2c寄存器的方法,但并未完全使用RTC的所有功能。
运行示例
所有示例都在运行Linux的树莓派上运行并测试过,例如使用命令行
cargo run --example rpil
从Linux命令行。
单个RTC示例
这些示例都假设有一个RTC直接连接到类似树莓派的Linux主机。
rpil
演示了与连接到例如树莓派主机的RTC的一些基本交互。event_log
展示了如何配置和启用事件日志(例如,检测EVI引脚上的中断信号)alarm_int
展示了如何设置和获取闹钟,并检查闹钟触发trickle
展示了如何启用和禁用涓流充电,以及启用Vbackup切换countdown
演示了设置周期性倒计时定时器以重复和单次模式。set_alarm
展示了如何设置闹钟
多个RTC示例
这些示例都假设有多个RTC通过i2c复用器(例如TCA9548A)连接到主机
muxit
展示了通过类似 TCA9548A 的 i2c 复用器与两个 RTC(具有相同的 i2c 地址)进行通信。请参阅高级接线图原理图。comp_mux
比较了四个独立 RTC 的输出(每个 RV-3028-C7 和 DS3231 有两个),并检测它们何时偏移(通常在多天后)。请参阅相关的 四 RTC 接线图。trickle_mux
展示了如何配置和确认备用电压的涓流充电器。
测试
RUST_BACKTRACE=1 cargo test --tests
这将仅在任何主机平台上构建和运行测试,而不需要将真实硬件 RTC 连接到主机。请注意,当前的 cargo test
也会构建所有示例,如果您在非 Linux 平台上测试,基于 linux_embedded_hal
的示例将无法构建。
有趣的事情
这是一个带有四个 RTC 通过 i2c 复用器连接的面包板(用于比较示例)