AceTime  1.6
Date and time classes for Arduino that support timezones from the TZ Database, and a system clock that can synchronize from an NTP server or an RTC chip.
Public Member Functions | List of all members
ace_time::clock::DS3231Clock Class Reference

An implementation of Clock that uses a DS3231 RTC chip. More...

#include <DS3231Clock.h>

Inheritance diagram for ace_time::clock::DS3231Clock:
Inheritance graph
[legend]
Collaboration diagram for ace_time::clock::DS3231Clock:
Collaboration graph
[legend]

Public Member Functions

void setup ()
 
acetime_t getNow () const override
 Return the number of seconds since the AceTime epoch (2000-01-01T00:00:00Z). More...
 
void setNow (acetime_t epochSeconds) override
 Set the time to the indicated seconds. More...
 
- Public Member Functions inherited from ace_time::clock::Clock
virtual ~Clock ()
 Virtual destructor. More...
 
virtual void sendRequest () const
 Send a time request asynchronously.
 
virtual bool isResponseReady () const
 Return true if a response is ready.
 
virtual acetime_t readResponse () const
 Returns number of seconds since AceTime epoch (2000-01-01). More...
 

Additional Inherited Members

- Static Public Attributes inherited from ace_time::clock::Clock
static const acetime_t kInvalidSeconds = LocalTime::kInvalidSeconds
 

Detailed Description

An implementation of Clock that uses a DS3231 RTC chip.

Definition at line 23 of file DS3231Clock.h.

Member Function Documentation

◆ getNow()

acetime_t ace_time::clock::DS3231Clock::getNow ( ) const
inlineoverridevirtual

Return the number of seconds since the AceTime epoch (2000-01-01T00:00:00Z).

Returns kInvalidSeconds if an error has occured.

This is a blocking call. Some clocks (e.g. NTP client) this may take many seconds. On those clocks, use the asynchronous methods (sendRequest(), isResponseReady(), and readResponse()) instead.

Implements ace_time::clock::Clock.

Definition at line 29 of file DS3231Clock.h.

◆ setNow()

void ace_time::clock::DS3231Clock::setNow ( acetime_t  )
inlineoverridevirtual

Set the time to the indicated seconds.

Calling with a value of kInvalidSeconds indicates an error condition, so the method should do nothing. Some clocks do not support this feature, for example, NTP or GPS clocks and this method will be a no-op.

Reimplemented from ace_time::clock::Clock.

Definition at line 35 of file DS3231Clock.h.


The documentation for this class was generated from the following file: