Herzog Library 00.00.01  rel_libdev.herzog.00.00.01.10606
rtc_device.h
Go to the documentation of this file.
1 
12 #ifndef __RTC_DEVICE_H__
13 #define __RTC_DEVICE_H__
14 
15 #include <stdint.h>
16 #include "hdf.h"
17 
18 typedef enum {
22 } RTC_ALARM_t;
23 
24 typedef enum {
29 
33 typedef struct {
35  int32_t (*RTC_Init)(void);
36  int32_t (*RTC_Stop)(void);
37  int32_t (*Alarm_Start)(RTC_ALARM_t alarm, RTC_ALARM_MODE_t mode, uint32_t sec, void *cb);
38  int32_t (*Alarm_Stop)(RTC_ALARM_t alarm);
39 } RTC_Device_t;
40 
41 typedef void (*rtc_cb_func_t)(RTC_Device_t *dev);
42 
49 
56 int32_t RTC_devInit(RTC_Device_t *dev);
57 
64 int32_t RTC_devStop(RTC_Device_t *dev);
65 
76 int32_t RTC_devStartAlarm(RTC_Device_t *dev, RTC_ALARM_t alarm,
77  RTC_ALARM_MODE_t mode, uint32_t sec, void *cb);
78 
86 int32_t RTC_devStopAlarm(RTC_Device_t *dev, RTC_ALARM_t alarm);
87 
88 #endif /* __RTC_DEVICE_H__ */
Definition: rtc_device.h:26
enum IRQn IRQn_Type
The enumeration of Interrupt Number Assignments.
Definition: rtc_device.h:21
int32_t RTC_devStopAlarm(RTC_Device_t *dev, RTC_ALARM_t alarm)
Stop a Alarm Timer.
Definition: rtc_device.c:247
void(* rtc_cb_func_t)(RTC_Device_t *dev)
Definition: rtc_device.h:41
RTC_Device_t * RTC_devRequest(void)
Request A RTC Device.
Definition: rtc_device.c:36
int32_t RTC_devStartAlarm(RTC_Device_t *dev, RTC_ALARM_t alarm, RTC_ALARM_MODE_t mode, uint32_t sec, void *cb)
Start a Alarm Timer.
Definition: rtc_device.c:238
int32_t RTC_devStop(RTC_Device_t *dev)
Stop RTC Timer.
Definition: rtc_device.c:230
A structure to represent RTC device.
Definition: rtc_device.h:33
RTC_ALARM_t
Definition: rtc_device.h:18
int32_t RTC_devInit(RTC_Device_t *dev)
Initialize RTC Timer.
Definition: rtc_device.c:222
RTC_ALARM_MODE_t
Definition: rtc_device.h:24
Definition: rtc_device.h:20
IRQn_Type IRQ
Definition: rtc_device.h:34
Definition: rtc_device.h:19
Definition: rtc_device.h:25
Definition: rtc_device.h:27