Data Structures | Defines | Typedefs | Enumerations | Functions
csl_rtc.h File Reference

RTC functional layer API header file. More...

#include "cslr.h"
#include "csl_error.h"
#include "csl_types.h"
#include "soc.h"
#include "csl_general.h"

Go to the source code of this file.

Data Structures

struct  CSL_RtcConfig
 RTC Config Structure. More...
struct  CSL_RtcDate
 RTC Date Structure. Contains the field of year, month and day for Date. More...
struct  CSL_RtcTime
 RTC Time Structure. Contains the field of hour, minute, second and milli second for time. More...
struct  CSL_RtcAlarm
 RTC Alarm Time Structure. Contains the field of hour, minute, second and milli second for Alarm time. More...
struct  CSL_RtcIsrAddr
 Declarations for interrupt routines. More...
struct  CSL_RtcIsrDispatchTable
 structure array of isr function for RTC. More...

Defines

#define CSL_RTC_BIT_SET   (1u)
#define CSL_RTC_BIT_RESET   (0)
#define CSL_RTC_WAIT_CYCLE   (50u)
#define CSL_RTC_SCRATCH1_MASK   (0x8000u)
#define CSL_RTC_STATUS_MASK   (0x803Fu)
#define CSL_RTC_DISPATCH_TABLE_SIZE   (0x07u)
#define CSL_RTC_COMPENSATION_MAX   (1024u)
#define CSL_RTC_TIME_OUT   (0x1FFu)

Typedefs

typedef void(* CSL_RTCCallBackPtr )(void)
 call back function for RTC.

Enumerations

enum  CSL_RTCPeriodicInterruptType {
  CSL_RTC_DAY_PERIODIC_INTERRUPT,
  CSL_RTC_HR_PERIODIC_INTERRUPT,
  CSL_RTC_MINS_PERIODIC_INTERRUPT,
  CSL_RTC_SEC_PERIODIC_INTERRUPT,
  CSL_RTC_MS_PERIODIC_INTERRUPT
}
 enum variable for the selection of rtc Periodic interrupt for Day , Hour , Minute , Second and MilliSecond Period.
enum  CSL_RTCEventType {
  CSL_RTC_MSEVENT_INTERRUPT,
  CSL_RTC_SECEVENT_INTERRUPT,
  CSL_RTC_MINSEVENT_INTERRUPT,
  CSL_RTC_HREVENT_INTERRUPT,
  CSL_RTC_DAYEVENT_INTERRUPT,
  CSL_RTC_EXTEVENT_INTERRUPT,
  CSL_RTC_ALARM_INTERRUPT,
  CSL_RTC_INTERRUPT_NONE
}
 enum variable for the selection of rtc interrupt Alarm Int,External Event, Day Event, Hour Event, Minute Event, Second Event, MilliSecond Event.
enum  CSL_RTCCompType {
  CSL_RTC_COMPENSATION_NEGATIVE = 0,
  CSL_RTC_COMPENSATION_POSITIVE,
  CSL_RTC_COMPENSATION_INVALID
}
 This enum holds type of the compensation required for the RTC.

Functions

static Uint16 rtcDivFun (Uint16 dividend, Uint16 divisor)
static Uint16 rtcModuloDivFun (Uint16 dividend, Uint16 divisor)
static Uint16 rtc_pow (Uint16 var, Uint16 pow)
 function for power operator.
void RTC_reset (void)
void RTC_start (void)
void RTC_stop (void)
CSL_Status RTC_config (CSL_RtcConfig *pConfig)
CSL_Status RTC_getConfig (CSL_RtcConfig *pGetConfig)
CSL_Status RTC_setTime (CSL_RtcTime *pRtcTime)
CSL_Status RTC_getTime (CSL_RtcTime *pGetRtcTime)
CSL_Status RTC_setDate (CSL_RtcDate *pRtcDate)
CSL_Status RTC_getDate (CSL_RtcDate *pGetRtcDate)
CSL_Status RTC_setAlarm (CSL_RtcAlarm *pRtcAlarm)
CSL_Status RTC_setPeriodicInterval (CSL_RTCPeriodicInterruptType periodicInterruptType)
CSL_Status RTC_eventEnable (CSL_RTCEventType rtcEvent)
CSL_Status RTC_eventDisable (CSL_RTCEventType rtcEvent)
CSL_RTCEventType RTC_getEventId (void)
Uint16 RTC_decToBcd (Uint16 decVal)
Uint16 RTC_bcdToDec (Uint16 hexVal)
CSL_Status RTC_setCallback (CSL_RtcIsrDispatchTable *rtcDispatchTable, CSL_RtcIsrAddr *isrAddr)
CSL_Status RTC_setCompensation (CSL_RTCCompType compType, Uint16 compVal)

Detailed Description

RTC functional layer API header file.

Path: \(CSLPATH)/inc