40static int8_t gs_time_zone = 0;
313 timestamp += (time_t)(gs_time_zone * 3600);
314 timeptr = localtime(×tamp);
315 t.
date = (uint8_t)timeptr->tm_mday;
316 t.
hour = (uint8_t)timeptr->tm_hour;
317 t.
minute = (uint8_t)timeptr->tm_min;
318 t.
month = (uint8_t)timeptr->tm_mon + 1;
319 t.
second = (uint8_t)timeptr->tm_sec;
320 if (timeptr->tm_wday == 0)
326 t.
week = (uint8_t)timeptr->tm_wday;
328 t.
year = (uint16_t)(timeptr->tm_year + 1900);
390 timeptr.tm_year = t.
year - 1900;
391 timeptr.tm_mon = t.
month - 1;
392 timeptr.tm_wday = t.
week;
393 timeptr.tm_mday = t.
date;
394 timeptr.tm_hour = t.
hour;
395 timeptr.tm_min = t.
minute;
396 timeptr.tm_sec = t.
second;
399 *timestamp = mktime(&timeptr) - gs_time_zone * 3600;
413 *zone = gs_time_zone;
driver rx8025t alarm header file
uint8_t rx8025t_set_time(rx8025t_handle_t *handle, rx8025t_time_t *t)
set the current time
uint8_t rx8025t_set_update_interrupt(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable update interrupt
uint8_t rx8025t_set_minute_alarm_mask(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable minute alarm mask
uint8_t rx8025t_set_ram(rx8025t_handle_t *handle, uint8_t data)
set ram
uint8_t rx8025t_set_timer_interrupt(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable timer interrupt
uint8_t rx8025t_set_hour_alarm(rx8025t_handle_t *handle, uint8_t hour)
set hour alarm
uint8_t rx8025t_set_alarm_interrupt(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable alarm interrupt
uint8_t rx8025t_start(rx8025t_handle_t *handle)
start
uint8_t rx8025t_init(rx8025t_handle_t *handle)
initialize the chip
uint8_t rx8025t_clear_flag(rx8025t_handle_t *handle)
clear flag
rx8025t_alarm_t
rx8025t alarm enumeration definition
uint8_t rx8025t_set_update_select(rx8025t_handle_t *handle, rx8025t_update_select_t select)
set update select
uint8_t rx8025t_get_ram(rx8025t_handle_t *handle, uint8_t *data)
get ram
struct rx8025t_time_s rx8025t_time_t
rx8025t time structure definition
uint8_t rx8025t_set_week_alarm(rx8025t_handle_t *handle, uint8_t week)
set week alarm
uint8_t rx8025t_set_test(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable test
uint8_t rx8025t_set_hour_alarm_mask(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable hour alarm mask
uint8_t rx8025t_get_time(rx8025t_handle_t *handle, rx8025t_time_t *t)
get the current time
uint8_t rx8025t_set_week_day_alarm_mask(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable week day alarm mask
uint8_t rx8025t_set_temperature_compensation_interval(rx8025t_handle_t *handle, rx8025t_temperature_compensation_interval_t interval)
set the temperature compensation interval
uint8_t rx8025t_set_alarm_day_week(rx8025t_handle_t *handle, rx8025t_alarm_t alarm)
set alarm day week
uint8_t rx8025t_irq_handler(rx8025t_handle_t *handle)
irq handler
rx8025t_bool_t
rx8025t bool enumeration definition
uint8_t rx8025t_set_minute_alarm(rx8025t_handle_t *handle, uint8_t minute)
set minute alarm
uint8_t rx8025t_set_timer(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable timer
struct rx8025t_handle_s rx8025t_handle_t
rx8025t handle structure definition
uint8_t rx8025t_set_date_alarm(rx8025t_handle_t *handle, uint8_t date)
set date alarm
uint8_t rx8025t_deinit(rx8025t_handle_t *handle)
close the chip
uint8_t rx8025t_alarm_get_ascii_time(char *buf, uint8_t len)
alarm example get the ascii time
uint8_t rx8025t_alarm_get_timestamp(time_t *timestamp)
alarm example get the time in a unix timestamp
uint8_t rx8025t_alarm_get_timestamp_time_zone(int8_t *zone)
alarm example get the local time zone
uint8_t rx8025t_alarm_set_timestamp_time_zone(int8_t zone)
alarm example set the local time zone
uint8_t rx8025t_alarm_set_timestamp(time_t timestamp)
alarm example set the time by a unix timestamp
uint8_t rx8025t_alarm_get_time(rx8025t_time_t *t)
alarm example get the time
uint8_t rx8025t_alarm_write_ram(uint8_t data)
alarm example write ram
#define RX8025T_ALARM_DEFAULT_UPDATE_SELECT
uint8_t rx8025t_alarm_init(void(*callback)(uint8_t type))
alarm example init
uint8_t rx8025t_alarm_read_ram(uint8_t *data)
alarm example read ram
uint8_t rx8025t_alarm_deinit(void)
alarm example deinit
uint8_t rx8025t_alarm_irq_handler(void)
alarm irq
#define RX8025T_ALARM_DEFAULT_INTERRUPT_UPDATE
uint8_t rx8025t_alarm_config(uint8_t minute, uint8_t hour, rx8025t_alarm_t date_week, uint8_t date, uint8_t week, rx8025t_bool_t minute_mask, rx8025t_bool_t hour_mask, rx8025t_bool_t day_week_mask)
alarm example config
#define RX8025T_ALARM_DEFAULT_TEMPERATURE_COMPENSATION_INTERVAL
rx8025t alarm example default definition
uint8_t rx8025t_alarm_set_time(rx8025t_time_t *t)
alarm example set the time
uint8_t rx8025t_interface_iic_init(void)
interface iic bus init
uint8_t rx8025t_interface_iic_deinit(void)
interface iic bus deinit
uint8_t rx8025t_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read
void rx8025t_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t rx8025t_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write
void rx8025t_interface_delay_ms(uint32_t ms)
interface delay ms
#define DRIVER_RX8025T_LINK_IIC_INIT(HANDLE, FUC)
link iic_init function
#define DRIVER_RX8025T_LINK_RECEIVE_CALLBACK(HANDLE, FUC)
link receive_callback function
#define DRIVER_RX8025T_LINK_IIC_WRITE(HANDLE, FUC)
link iic_write function
#define DRIVER_RX8025T_LINK_IIC_READ(HANDLE, FUC)
link iic_read function
#define DRIVER_RX8025T_LINK_INIT(HANDLE, STRUCTURE)
initialize rx8025t_handle_t structure
#define DRIVER_RX8025T_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_RX8025T_LINK_IIC_DEINIT(HANDLE, FUC)
link iic_deinit function
#define DRIVER_RX8025T_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function