The real time clock is one of the basic components of most modern electronic devices, not to mention classic electronic clocks. In the world of hobby/maker electronics, the DS3231 reigned supreme for years, but unfortunately, lately it is hard to find and prices are unacceptable. Very often, cheap DS3231 available turn out to be a product significantly different from the declared parameters, the question is whether they are original products. An interesting alternative is the RX8025T whose accuracy is comparable to the old DS3231.
I checked the accuracy, built several prototypes, tested and prepared an Arduino library - now the operation of the RTC is trivial.
- Accuracy
- RX8025T UA – 5 seconds / month
- RX8025T UB – 10 seconds / month
- Built-in 32.768kHz DTCXO – digital temperature compensated crystal oscillator
- Backup battery power supply 3V CR1220
- Voltage range 1.8 – 5.5V
- I²C Bus
- Alarm, timer interrupt (INT output)
- Time update interrupt function (INT output)
- Every second
- Every minute
- FOUT – 32.768kHz, 1024Hz, 1Hz output
- FOE input “high” then FOUT “on”
- FOE “low” then FOUT “off”
- Install Arduino Library - open repository
- The module requires a 1.8-5.5V power supply
- It is recommended to connect the 3V CR1220 battery as a backup power supply
- I2C bus connection required
- INT connection recommended
- FOE required only if FOUT is used
The available functions are described in sample program codes.
The sample program code has been prepared to show that the control is very simple and basic knowledge of the Arduino is enough.
- How to set and display the RTC date and time
- How to set and display the RTC date and time with the names of days of the week and months
- How to generate an interrupt by the RTC (INT output) every second or every minute and handle the interrupt
- How to generate square wave by the RTC (FOUT output) with preset frequencies: 32.768 kHz, 1024 Hz, 1Hz.
void setup(void)
{
//RX8025T initialization
RTC.init();
//Set the system time to 10h 23m 30s on 25 Oct 2022
setTime(10, 23, 30, 25, 10, 22);
//Set the RTC from the system time
RTC.set(now());
}
void loop(void)
{
//Read the time from the RTC and store it in the tm structure
RTC.read(tm);
printDateTime();
delay(1000);
}
Datasheet- RTC RX8025T Module – Schematic
- How to Use RTC RX8025T Module with Arduino
- Dedicated Arduino Library
- Datasheet summary
- Datasheet full
- Pinout
- Dimensions
RTC RX8025T Module can be found here: www.nixietester.com
Comments