40static int8_t gs_time_zone = 0;
295 timestamp += (time_t)(gs_time_zone * 3600);
296 timeptr = localtime(×tamp);
297 t.
date = (uint8_t)timeptr->tm_mday;
298 t.
hour = (uint8_t)timeptr->tm_hour;
299 t.
minute = (uint8_t)timeptr->tm_min;
300 t.
month = (uint8_t)timeptr->tm_mon + 1;
301 t.
second = (uint8_t)timeptr->tm_sec;
302 if (timeptr->tm_wday == 0)
308 t.
week = (uint8_t)timeptr->tm_wday;
310 t.
year = (uint16_t)(timeptr->tm_year + 1900);
372 timeptr.tm_year = t.
year - 1900;
373 timeptr.tm_mon = t.
month - 1;
374 timeptr.tm_wday = t.
week;
375 timeptr.tm_mday = t.
date;
376 timeptr.tm_hour = t.
hour;
377 timeptr.tm_min = t.
minute;
378 timeptr.tm_sec = t.
second;
381 *timestamp = mktime(&timeptr) - gs_time_zone * 3600;
395 *zone = gs_time_zone;
driver rx8025t timer 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_timer_counter(rx8025t_handle_t *handle, uint16_t counter)
set timer counter
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_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
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_test(rx8025t_handle_t *handle, rx8025t_bool_t enable)
enable or disable test
rx8025t_timer_clock_t
rx8025t timer clock enumeration definition
uint8_t rx8025t_set_timer_clock(rx8025t_handle_t *handle, rx8025t_timer_clock_t clk)
set timer clock
uint8_t rx8025t_get_time(rx8025t_handle_t *handle, rx8025t_time_t *t)
get the current time
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_irq_handler(rx8025t_handle_t *handle)
irq handler
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_deinit(rx8025t_handle_t *handle)
close the chip
uint8_t rx8025t_timer_init(void(*callback)(uint8_t type))
timer example init
uint8_t rx8025t_timer_irq_handler(void)
timer irq
uint8_t rx8025t_timer_set_time(rx8025t_time_t *t)
timer example set the time
uint8_t rx8025t_timer_set_timestamp_time_zone(int8_t zone)
timer example set the local time zone
uint8_t rx8025t_timer_get_timestamp(time_t *timestamp)
timer example get the time in a unix timestamp
uint8_t rx8025t_timer_stop(void)
timer example stop
uint8_t rx8025t_timer_read_ram(uint8_t *data)
timer example read ram
uint8_t rx8025t_timer_config(rx8025t_timer_clock_t clk, uint16_t counter)
timer example config
#define RX8025T_TIMER_DEFAULT_UPDATE_SELECT
uint8_t rx8025t_timer_deinit(void)
timer example deinit
#define RX8025T_TIMER_DEFAULT_INTERRUPT_UPDATE
uint8_t rx8025t_timer_get_time(rx8025t_time_t *t)
timer example get the time
uint8_t rx8025t_timer_set_timestamp(time_t timestamp)
timer example set the time by a unix timestamp
uint8_t rx8025t_timer_start(void)
timer example start
#define RX8025T_TIMER_DEFAULT_TEMPERATURE_COMPENSATION_INTERVAL
rx8025t timer example default definition
uint8_t rx8025t_timer_write_ram(uint8_t data)
timer example write ram
uint8_t rx8025t_timer_get_ascii_time(char *buf, uint8_t len)
timer example get the ascii time
uint8_t rx8025t_timer_get_timestamp_time_zone(int8_t *zone)
timer example get the local time zone
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