#include <zephyr/sys/timeutil.h>
#include <time.h>
Go to the source code of this file.
|
enum | mcp7940n_register {
REG_RTC_SEC = 0x0
, REG_RTC_MIN = 0x1
, REG_RTC_HOUR = 0x2
, REG_RTC_WDAY = 0x3
,
REG_RTC_DATE = 0x4
, REG_RTC_MONTH = 0x5
, REG_RTC_YEAR = 0x6
, REG_RTC_CONTROL = 0x7
,
REG_RTC_OSCTRIM = 0x8
, REG_ALM0_SEC = 0xA
, REG_ALM0_MIN = 0xB
, REG_ALM0_HOUR = 0xC
,
REG_ALM0_WDAY = 0xD
, REG_ALM0_DATE = 0xE
, REG_ALM0_MONTH = 0xF
, REG_ALM1_SEC = 0x11
,
REG_ALM1_MIN = 0x12
, REG_ALM1_HOUR = 0x13
, REG_ALM1_WDAY = 0x14
, REG_ALM1_DATE = 0x15
,
REG_ALM1_MONTH = 0x16
, REG_PWR_DWN_MIN = 0x18
, REG_PWR_DWN_HOUR = 0x19
, REG_PWR_DWN_DATE = 0x1A
,
REG_PWR_DWN_MONTH = 0x1B
, REG_PWR_UP_MIN = 0x1C
, REG_PWR_UP_HOUR = 0x1D
, REG_PWR_UP_DATE = 0x1E
,
REG_PWR_UP_MONTH = 0x1F
, SRAM_MIN = 0x20
, SRAM_MAX = 0x5F
, REG_INVAL = 0x60
} |
|
enum | mcp7940n_alarm_trigger {
MCP7940N_ALARM_TRIGGER_SECONDS = 0x0
, MCP7940N_ALARM_TRIGGER_MINUTES = 0x1
, MCP7940N_ALARM_TRIGGER_HOURS = 0x2
, MCP7940N_ALARM_TRIGGER_WDAY = 0x3
,
MCP7940N_ALARM_TRIGGER_DATE = 0x4
, MCP7940N_ALARM_TRIGGER_ALL = 0x7
} |
|
◆ mcp7940n_alarm_trigger
Enumerator |
---|
MCP7940N_ALARM_TRIGGER_SECONDS | |
MCP7940N_ALARM_TRIGGER_MINUTES | |
MCP7940N_ALARM_TRIGGER_HOURS | |
MCP7940N_ALARM_TRIGGER_WDAY | |
MCP7940N_ALARM_TRIGGER_DATE | |
MCP7940N_ALARM_TRIGGER_ALL | |
◆ mcp7940n_register
Enumerator |
---|
REG_RTC_SEC | |
REG_RTC_MIN | |
REG_RTC_HOUR | |
REG_RTC_WDAY | |
REG_RTC_DATE | |
REG_RTC_MONTH | |
REG_RTC_YEAR | |
REG_RTC_CONTROL | |
REG_RTC_OSCTRIM | |
REG_ALM0_SEC | |
REG_ALM0_MIN | |
REG_ALM0_HOUR | |
REG_ALM0_WDAY | |
REG_ALM0_DATE | |
REG_ALM0_MONTH | |
REG_ALM1_SEC | |
REG_ALM1_MIN | |
REG_ALM1_HOUR | |
REG_ALM1_WDAY | |
REG_ALM1_DATE | |
REG_ALM1_MONTH | |
REG_PWR_DWN_MIN | |
REG_PWR_DWN_HOUR | |
REG_PWR_DWN_DATE | |
REG_PWR_DWN_MONTH | |
REG_PWR_UP_MIN | |
REG_PWR_UP_HOUR | |
REG_PWR_UP_DATE | |
REG_PWR_UP_MONTH | |
SRAM_MIN | |
SRAM_MAX | |
REG_INVAL | |
◆ mcp7940n_rtc_set_time()
int mcp7940n_rtc_set_time |
( |
const struct device * | dev, |
|
|
time_t | unix_time ) |
Set the RTC to a given Unix time.
The RTC advances one tick per second with no access to sub-second precision. This function will convert the given unix_time into seconds, minutes, hours, day of the week, day of the month, month and year. A Unix time of '0' means a timestamp of 00:00:00 UTC on Thursday 1st January 1970.
- Parameters
-
dev | the MCP7940N device pointer. |
unix_time | Unix time to set the rtc to. |
- Return values
-
return | 0 on success, or a negative error code from an I2C transaction or invalid parameter. |