4 releases (major breaking)
4.0.0 | Dec 4, 2021 |
---|---|
3.0.0 | Nov 25, 2021 |
2.0.0 | Nov 20, 2021 |
0.1.1 | Nov 1, 2020 |
#509 in Embedded development
26KB
468 lines
ds1302-rs
DS1302 real time clock-calendar platform agnostic driver
About
The DS1302 trickle-charge timekeeping chip contains a real-time clock/calendar and 31 bytes of static RAM. It
communicates with a microprocessor via a simple serial interface. The real-time clock/calendar provides seconds,
minutes, hours, day, date, month, and year information. The end of the month date is automatically adjusted for
months with fewer than 31 days, including corrections for leap year. The clock operates in either the 24-hour or
12-hour format with an AM/PM indicator. The chip driver is based on embedded-hal
traits.
Datasheet: DS1302
DS1302 RTC Board - Waveshare
Hardware requirements
- Serial Peripheral Interface (SPI)
- SPI speed less than 2 MHz
- SPI frame format with LSB transmitted first!
- Default 8-bit data frame format is selected for transmission/reception
- Default CPOL: CK to 0 when idle, CPHA: the first clock transition is the first data capture edge
Driver features:
-
Reading/setting clock/calendar data
-
12-hour (AM/PM) or 24-hour format
-
Changing the time format while the chip is working
NEW (4.0.0 release):
-
Programmable Trickle Charger configuration
-
31 x 8 Battery-Backed General-Purpose RAM operations
Examples
https://github.com/Nekspire/ds1302-rs/tree/master/examples
This crate uses probe-run
to run the examples.
To build examples type:
cargo build --examples
or cargo build --examples --release
To run examples type:
cargo run --example <example name>
or cargo run --example <example name> --release
The output should be like this:
Running `probe-run --chip STM32F103C8 target/thumbv7m-none-eabi/debug/examples/bluepill_ssd1306`
(HOST) INFO flashing program (36.32 KiB)
(HOST) INFO success!
License
Copyright © 2021 Nekspire
Dual licensed under your choice of either of:
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
Thanks for contribution!
Dependencies
~235KB