sys/rtc.h

#include <sys/rtc.h>

This header includes defines for the Real-Time Clock (RTC) used in the CE. The toolchain allows both direct access to the hardware registers, and using TI’s helper routines.

API Documentation

CE Real-Time Clock define file.

Authors

Matt “MateoConLechuga” Waltz

Jacob “jacobly” Young

Defines

rtc_Enable(int)

Enables the Real-Time-Clock (RTC).

Parameters
  • int – Interrupt mask to enable specific RTC interrupts.

rtc_Set(sec, min, hr, day)

Sets the Real-Time-Clock (RTC) with new values.

Note

The set values do not take effect until the next RTC second. Verify the values have been loaded by waiting for rtc_IsBusy() to be false. The RTC will also need to be enabled.

Parameters
  • sec – Second value to load.

  • min – Minute value to load.

  • hr – Hour value to load.

  • day – Day value to load.

rtc_SetAlarm(sec, min, hr)

Sets the Real-Time-Clock (RTC) alarm with new values.

Parameters
  • sec – Second alarm value.

  • min – Minute alarm value.

  • hr – Hour alarm value.

rtc_Disable()

Disables the Real-Time-Clock (RTC).

rtc_IsBusy()

Checks if the RTC is busy setting newly loaded values.

rtc_AckInterrupt(mask)

Acknowledges an RTC interrupt.

This should be used to clear the condition that is causing the interrupt.

Parameters
  • mask – RTC interrupt mask.

rtc_ChkInterrupt(mask)

Checks if a RTC interrupt condition has occurred.

Parameters
  • mask – RTC interrupt mask.

rtc_Time()

Gets a combination of the RTC time; useful for seeding random numbers via srand().

rtc_Seconds

RTC seconds.

rtc_Minutes

RTC minutes.

rtc_Hours

RTC hours.

rtc_Days

RTC days.

rtc_AlarmSeconds

RTC alarm seconds.

rtc_AlarmMinutes

RTC alarm minutes.

rtc_AlarmHours

RTC alarm hours.

RTC_LOAD_INT

RTC load operation complete.

RTC_ALARM_INT

RTC alarm interrupt.

RTC_DAY_INT

RTC interrupt on day change.

RTC_HR_INT

RTC interrupt on hour change.

RTC_MIN_INT

RTC interrupt on minute change.

RTC_SEC_INT

RTC interrupt on second change.

RTC_INT_MASK

RTC mask for all interrupts.

Functions

void boot_SetDate(uint8_t day, uint8_t month, uint16_t year)

Sets the calculator’s date.

Performs checks to ensure date is within range

Parameters
  • day[in] Day to set

  • month[in] Month to set

  • year[in] Year to set

void boot_GetDate(uint8_t *day, uint8_t *month, uint16_t *year)

Gets the calculator’s date.

Parameters
  • day[out] Pointer to variable to store day

  • month[out] Pointer to variable to store month

  • year[out] Pointer to variable to store year

void boot_SetTime(uint8_t seconds, uint8_t minutes, uint8_t hours)

Sets the calculator’s time.

Performs checks to ensure time is within range

Parameters
  • seconds[in] Seconds to set

  • minutes[in] Minutes to set

  • hours[in] Hours to set

void boot_GetTime(uint8_t *seconds, uint8_t *minutes, uint8_t *hours)

Gets the calculator’s time.

Note

You can read rtc_Seconds, rtc_Minutes , and rtc_Hours directly, but you should double check that rtc_Seconds didn’t change while reading rtc_Minutes and rtc_Hours .

Parameters
  • seconds[out] Pointer to variable to store seconds

  • minutes[out] Pointer to variable to store minutes

  • hours[out] Pointer to variable to store hours

bool boot_IsAfterNoon(void)

Checks if past noon.

Returns

True if past noon