RTC_NXP_Arduino 1.1.1
RTC driver device operation sample code for Arduino
|
Public Types | |
enum | reg_num { _100th_seconds , Seconds , Minutes , Hours , Days , Weekdays , Months , Years , Second_alarm1 , Minute_alarm1 , Hour_alarm1 , Day_alarm1 , Month_alarm1 , Minute_alarm2 , Hour_alarm2 , Weekday_alarm2 , Alarm_enables , TSR1_seconds , TSR1_minutes , TSR1_hours , TSR1_days , TSR1_months , TSR1_years , TSR2_seconds , TSR2_minutes , TSR2_hours , TSR2_days , TSR2_months , TSR2_years , TSR3_seconds , TSR3_minutes , TSR3_hours , TSR3_days , TSR3_months , TSR3_years , TSR_mode , Offset , Oscillator , Battery_switch , Pin_IO , Function , INTA_enable , INTB_enable , Flags , RAM_byte , WatchDog , Stop_enable , Resets , Hours_xx_xx_00 = 0x03 , Hours_xx_00_xx , Hours_00_xx_xx , Reserved0 , Reserved1 , Second_alm1 , Minute_alm1 , Hr_xx_xx_00_alm1 , Hr_xx_00_xx_alm1 , Hr_00_xx_xx_alm1 , Minute_alm2 , Hr_xx_00_alm2 , Hr_00_xx_alm2 , TSR1_hr_xx_xx_00 = 0x13 , TSR1_hr_xx_00_xx , TSR1_hr_00_xx_xx , Reserved2 , TSR2_hr_xx_xx_00 = 0x19 , TSR2_hr_xx_00_xx , TSR2_hr_00_xx_xx , Reserved3 , TSR3_hr_xx_xx_00 = 0x1F , TSR3_hr_xx_00_xx , TSR3_hr_00_xx_xx , Reserved4 } |
enum | alarm_setting_85263A { SECOND , MINUTE , HOUR , DAY , MONTH , MINUTE2 , HOUR2 , WEEKDAY2 } |
enum | periodic_int_select { DISABLE , EVERY_SECOND , EVERY_MINUTE } |
enum | inta { INTA_CLKOUT , INTA_BATTERY_MODE_INDICATION , INTA_INTTERRUPT , INTA_HIGH_Z } |
enum | intb { INTB_DISABLE , INTB_INTTERRUPT , INTB_CLKOUT , INTB_INPUT_MODE } |
enum | ts_in { TS_PULLUP_80K = 0x00 , TS_PULLUP_40K = 0x40 , TSL_ACTIVE_HIGH = 0x00 , TSL_ACTIVE_LOW = 0x20 , TSIM_CMOS = 0x00 , TSIM_MECHANICAL = 0x10 } |
![]() | |
enum | board { NONE , ARDUINO_SHIELD } |
enum | alarm_setting { SECOND , MINUTE , HOUR , DAY , WEEKDAY } |
Public Member Functions | |
PCF85263A (uint8_t i2c_address=(0xA2 > > 1)) | |
PCF85263A (TwoWire &wire, uint8_t i2c_address=(0xA2 > > 1)) | |
virtual | ~PCF85263A () |
void | begin (void) |
void | set (struct tm *now_tm) |
bool | oscillator_stop (void) |
void | alarm (alarm_setting digit, int val) |
void | alarm (alarm_setting digit, int val, int int_sel) |
void | alarm (alarm_setting_85263A digit, int val, int int_sel=0) |
void | alarm_clear (void) |
void | alarm_disable (void) |
uint8_t | int_clear (void) |
time_t | rtc_time (void) |
void | periodic_interrupt_enable (periodic_int_select sel, int int_sel=0) |
void | pin_congfig (inta cfg_a, intb cfg_b) |
void | ts_congfig (int setting) |
time_t | timestamp (int num) |
time_t | time (time_t *tp) |
void | reg_w (uint8_t reg_adr, uint8_t *data, int size) |
void | reg_w (uint8_t reg_adr, uint8_t data) |
void | reg_r (uint8_t reg_adr, uint8_t *data, int size) |
uint8_t | reg_r (uint8_t reg_adr) |
void | write_r8 (uint8_t reg, uint8_t val) |
uint8_t | read_r8 (uint8_t reg) |
void | bit_op8 (uint8_t reg, uint8_t mask, uint8_t value) |
![]() | |
RTC_NXP () | |
virtual | ~RTC_NXP () |
time_t | time (time_t *tp) |
Additional Inherited Members | |
![]() | |
![]() | |
static uint8_t | bcd2dec (uint8_t v) |
static uint8_t | dec2bcd (uint8_t v) |
enum PCF85263A::inta |
enum PCF85263A::intb |
enum PCF85263A::reg_num |
enum PCF85263A::ts_in |
PCF85263A::PCF85263A | ( | uint8_t | i2c_address = (0xA2 >> 1) | ) |
Create a PCF85263A instance with specified address
wire | TwoWire instance |
i2c_address | I2C-bus address (default: (0xBC>>1)) |
Definition at line 3 of file PCF85263A.cpp.
PCF85263A::PCF85263A | ( | TwoWire & | wire, |
uint8_t | i2c_address = (0xA2 >> 1) ) |
Create a PCF85263A instance connected to specified I2C pins with specified address
wire | TwoWire instance |
i2c_address | I2C-bus address (default: (0xBC>>1)) |
Definition at line 7 of file PCF85263A.cpp.
|
virtual |
Destructor
Definition at line 11 of file PCF85263A.cpp.
|
virtual |
Alarm setting
digit | to specify which parameter to set: SECOND, MINUTE, HOUR, DAY, WEEKDAY in 'enum alarm_setting' |
val | Setting value. Set 0x80 to disabling |
Implements RTC_NXP.
Definition at line 50 of file PCF85263A.cpp.
Referenced by alarm().
void PCF85263A::alarm | ( | alarm_setting | digit, |
int | val, | ||
int | int_sel ) |
Alarm setting
digit | to specify which parameter to set: SECOND, MINUTE, HOUR, DAY, WEEKDAY in 'enum alarm_setting' |
val | Setting value. Set 0x80 to disabling |
int_sel | Interrupt output selector. ) for INT_A, 1 for INT_B |
Definition at line 55 of file PCF85263A.cpp.
void PCF85263A::alarm | ( | alarm_setting_85263A | digit, |
int | val, | ||
int | int_sel = 0 ) |
Alarm setting
digit | to specify which parameter to set: SECOND, MINUTE, HOUR, DAY, WEEKDAY in 'enum alarm_setting' |
val | Setting value. Set 0x80 to disabling |
Definition at line 65 of file PCF85263A.cpp.
|
virtual |
|
virtual |
|
virtual |
Initializer but nothing done with this menthod in this version. Don't need to call
Implements RTC_NXP.
Definition at line 15 of file PCF85263A.cpp.
void PCF85263A::bit_op8 | ( | uint8_t | reg, |
uint8_t | mask, | ||
uint8_t | value ) |
Register overwriting with bit-mask
Register can be updated by bit level
reg | register index/address/pointer |
mask | bit-mask to protect overwriting |
value | value to overwrite |
Referenced by alarm_disable(), periodic_interrupt_enable(), pin_congfig(), and ts_congfig().
|
virtual |
|
virtual |
Detector for oscillation stop
Implements RTC_NXP.
Definition at line 45 of file PCF85263A.cpp.
void PCF85263A::periodic_interrupt_enable | ( | periodic_int_select | sel, |
int | int_sel = 0 ) |
Enabling every second/minute interrupt
sel | choose DISABLE, EVERY_SECOND or EVERY_MINUTE in 'enum periodic_int_select' |
Definition at line 120 of file PCF85263A.cpp.
Pin configuration
cfg_a | To choose INT_A pin congiguration: Use CLKOUT, BATTERY_MODE_INDICATION, INTTERRUPT or HIGH_Z |
cfg_b | To choose INT_A pin congiguration: Use DISABLE, INTTERRUPT, CLKOUT or INPUTMODE |
Definition at line 128 of file PCF85263A.cpp.
uint8_t PCF85263A::read_r8 | ( | uint8_t | reg | ) |
Register read, 8 bit
reg | register index/address/pointer |
uint8_t PCF85263A::reg_r | ( | uint8_t | reg_adr | ) |
Single register read
reg | register index/address/pointer |
void PCF85263A::reg_r | ( | uint8_t | reg_adr, |
uint8_t * | data, | ||
int | size ) |
Multiple register read
reg | register index/address/pointer |
data | pointer to data buffer |
size | data size |
Referenced by int_clear(), oscillator_stop(), rtc_time(), and timestamp().
void PCF85263A::reg_w | ( | uint8_t | reg_adr, |
uint8_t * | data, | ||
int | size ) |
Multiple register write
reg | register index/address/pointer |
data | pointer to data buffer |
size | data size |
Referenced by alarm_clear(), int_clear(), and set().
void PCF85263A::reg_w | ( | uint8_t | reg_adr, |
uint8_t | data ) |
Single register write
reg | register index/address/pointer |
data | pointer to data buffer |
size | data size |
|
virtual |
rtc_time
Implements RTC_NXP.
Definition at line 102 of file PCF85263A.cpp.
|
virtual |
set
now_tm | struct to set calendar and time in RTC |
Implements RTC_NXP.
Definition at line 19 of file PCF85263A.cpp.
time_t PCF85263A::time | ( | time_t * | tp | ) |
time
"time()" in "time.h" compatible method for RTC
tp | pointer to time_t variable |
time_t PCF85263A::timestamp | ( | int | num | ) |
void PCF85263A::ts_congfig | ( | int | setting | ) |
Timestamp pin configuration
setting | To choose options: Compose value by ORing next constants: TS_PULLUP_80K, TS_PULLUP_40K, TSL_ACTIVE_HIGH, TSL_ACTIVE_LOW, TSIM_CMOS and TSIM_MECHANICAL |
Definition at line 133 of file PCF85263A.cpp.
void PCF85263A::write_r8 | ( | uint8_t | reg, |
uint8_t | val ) |
Register write, 8 bit
reg | register index/address/pointer |
val | data value |