EM MICROELECTRONIC - MARIN SA 603002 Application Note 603002 Title: Highly accurate, DTCXO Temperature Compensated Real Time Clock / Calendar Module with I2C Interface Product Family: RV-3029 Part Number: RV-3029 TABLE OF CONTENTS 1. OVERVIEW ........................................................................................................................................................ 4 1.1. GENERAL DESCRIPTION ......................................................................................................................... 4 1.2. APPLICATIONS ......................................................................................................................................... 4 2. BLOCK DIAGRAM ............................................................................................................................................. 5 2.1. PINOUT ...................................................................................................................................................... 6 2.2. PIN DESCRIPTION .................................................................................................................................... 7 2.3. FUNCTIONAL DESCRIPTION ................................................................................................................... 7 2.4. DEVICE PROTECTION DIAGRAM ........................................................................................................... 8 3. REGISTER ORGANIZATION ............................................................................................................................ 9 3.1. REGISTER OVERVIEW ............................................................................................................................. 9 3.2. CONTROL PAGE REGISTER FUNCTION .............................................................................................. 10 3.2.1. CONTROL_1 (address 00h…bits description) .................................................................................. 10 3.2.2. CONTROL_INT (address 01h…bits description) .............................................................................. 10 3.2.3. CONTROL_INT FLAG (address 02h…bits description) ................................................................... 11 3.2.4. CONTROL_STATUS (address 03h…bits description) ..................................................................... 11 3.2.5. CONTROL_RESET (address 04h…bits description) ........................................................................ 12 3.3. WATCH PAGE REGISTER FUNCTION .................................................................................................. 12 3.3.1. SECONDS, MINUTES, HOURS, DAYS, WEEKDAYS, MONTHS, YEARS REGISTER ................. 12 3.3.2. DATA FLOW OF TIME AND DATE FUNCTION ............................................................................... 14 3.4. ALARM PAGE REGISTER FUNCTION .................................................................................................. 15 3.4.1. SECONDS, MINUTES, HOURS, DAYS, WEEKDAYS, MONTHS, YEARS ALARM REGISTER .... 15 3.5. TIMER PAGE REGISTER FUNCTION .................................................................................................... 17 3.6. TEMPERATURE PAGE REGISTER FUNCTION .................................................................................... 17 3.7. EEPROM DATA PAGE REGISTER FUNCTION ..................................................................................... 17 3.8. EEPROM CONTROL PAGE REGISTER FUNCTION ............................................................................. 18 3.8.1. EEPROM CONTROL (address 30h…bits description) ..................................................................... 18 3.8.2. XTAL OFFSET (address 31h…bits description) ............................................................................... 18 3.8.3. XTAL TEMPERATUR COEFFICIENT (address 32h…bits description) ........................................... 18 3.8.4. XTAL TURNOVER TEMPERATUR COEFFICIENT T0 (address 33h…bits description) ................. 19 3.9. RAM DATA PAGE REGISTER FUNCTION ............................................................................................ 19 4. DETAILED FUNCTIONAL DESCRIPTION ..................................................................................................... 20 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 1 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.1. POWER-UP, POWER MANAGEMENT AND BATTERY SWITCHOVER .............................................. 20 4.1.1. POWER UP SEQUENCE ................................................................................................................. 21 4.1.2. SUPPLY VOLTAGE OPERATING RANGE AND LOW VOLTAGE DETECTION ............................ 22 4.2. RESET ...................................................................................................................................................... 24 4.2.1. POWER-UP RESET, SYSTEM RESET AND SELF-RECOVERY RESET ...................................... 24 4.2.2. REGISTER RESET VALUES ............................................................................................................ 25 4.3. EEPROM MEMORY ACCESS ................................................................................................................. 27 4.4. TIMER FUNCTION ................................................................................................................................... 28 4.4.1. TIMER INTERRUT ............................................................................................................................ 30 4.5. ALARM FUNCTION ................................................................................................................................. 31 4.5.1. ALARM INTERRUPT ........................................................................................................................ 32 4.6. INTERRUPT OUTPUT INT ....................................................................................................................... 33 4.7. WATCH ENABLE FUNCTION ................................................................................................................. 34 4.8. SELF-RECOVERY SYSTEM ................................................................................................................... 34 4.9. CLOCK OUTPUT CLKOUT ..................................................................................................................... 35 5. COMPENSATION OF FREQUENCY DEVIATION AND FREQUENCY DRIFT vs TEMPERATURE ............ 36 5.1. TEMPERATURE CHARACTERISTICS TUNING FORK CRYSTAL....................................................... 36 5.2. COMPENSATION PRINCIPLE ................................................................................................................ 37 5.2.1. THERMOMETER AND TEMPERATURE VALUE ............................................................................ 38 5.2.2. SETTING THE FREQUENCY COMPENSATION PARAMETERS .................................................. 39 5.3. METHOD OF COMPENSATING THE FREQUENCY DEVIATION ......................................................... 40 5.3.1. CORRECT METHOD FOR TESTING THE TIME ACCURACY ....................................................... 41 5.3.2. TESTING THE TIME ACCURACY USING CLKOUT OUTPUT........................................................ 41 5.3.3. TESTING THE TIME ACCURACY USING INTERRUPT OUTPUT 1 Hz ......................................... 42 5.4. TIME ACCURACY OPT: A / OPT: B ....................................................................................................... 44 2 6. I C INTERFACE ............................................................................................................................................... 46 2 6.1. I C INTERFACE CHARACTERISTICS .................................................................................................... 46 2 6.2. I C INTERFACE SYSTEM CONFIGURATION ........................................................................................ 46 6.3. BIT TRANSFER ....................................................................................................................................... 47 6.4. START AND STOP CONDITIONS .......................................................................................................... 47 6.5. ACKNOWLEDGE ..................................................................................................................................... 48 2 6.6. I C INTERFACE PROTOCOL .................................................................................................................. 49 2 6.7. I C DEVICE ADDRESSES ....................................................................................................................... 49 2 6.8. I C INTERFACE READ AND WRITE DATA TRANSMISSION ............................................................... 50 6.8.1. WRITE MODE DATA TRANSMISSION ............................................................................................ 50 6.8.2. READ MODE DATA TRANSMISSION AT SPECIFIC ADDRESS.................................................... 51 6.8.3. READ MODE ..................................................................................................................................... 52 7. ELECTRICAL CHRACTERISTICS .................................................................................................................. 53 7.1. ABSOLUTE MAXIMUM RATINGS .......................................................................................................... 53 7.2. FREQUENCY AND TIME CHARACTERISTICS ..................................................................................... 53 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 2 www.emmicroelectronic.com 420010-D01, 2.0 603002 7.3. STATIC CHARACTERISTICS ................................................................................................................. 54 2 7.4. I C INTERFACE TIMING CHARACTERISTICS ...................................................................................... 55 8. APPLICATION INFORMATION ....................................................................................................................... 57 8.1. RECOMMENDED REFLOW TEMPERATURE (LEADFREE SOLDERING) .......................................... 58 Maximum Reflow Conditions in accordance with IPC/JEDEC J-STD-020C “Pb-free” ................................. 58 9. PACKAGE ........................................................................................................................................................ 59 9.1. DIMENSIONS AND SOLDERPADS LAYOUT ........................................................................................ 59 9.2. MARKING AND PIN #1 INDEX ................................................................................................................ 60 10. PACKING INFORAMTION ............................................................................................................................... 61 10.1. CARRIER TAPE ....................................................................................................................................... 61 10.2. PARTS PER REEL ................................................................................................................................... 62 10.3. REEL 13 INCH FOR 12 mm TAPE .......................................................................................................... 63 10.4. REEL 7 INCH FOR 12 mm TAPE ............................................................................................................ 64 11. HANDLING PRECAUTIONS FOR CRYSTALS OR MODULES WITH EMBEDDED CRYSTALS ................ 65 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 3 www.emmicroelectronic.com 420010-D01, 2.0 603002 1. OVERVIEW RTC module with built-in “Tuning Fork” crystal oscillating at 32.768 kHz Factory calibrated, all built-in Temperature Compensation circuitry Time accuracy: Temperature Range 25°C 0°C to + 50°C -10°C to + 60°C -40°C to + 85°C -40°C to +125°C Opt: A +/- 3 ppm +/- 4 ppm +/- 5 ppm +/- 6 ppm +/- 8 ppm Opt: B +/- 3 ppm +/- 5 ppm +/- 10 ppm +/- 25 ppm +/- 30 ppm Ultra low power consumption: 800nA typ @ VDD = 3.0V / Tamb = 25°C Wide clock operating voltage: 1.3 – 5.5V Wide interface operating voltage: 1.4 – 5.5V Extended operating temperature range: -40°C to +125°C 2 I C serial interface with fast mode SCL clock frequency of 400 kHz Provides year, month, day, weekday, hours, minutes and seconds Highly versatile alarm and timer functions Integrated Low-Voltage Detector, Power-On Reset and Self-Recovery System Main Power Supply to Backup Battery switchover circuitry with Trickle Charger Programmable CLKOUT pins for peripheral devices (32.768 kHz / 1024 Hz / 32 Hz / 1 Hz) Available in a small and compact package sizes, RoHS-compliant and 100% leadfree: C3: 3.7 x 2.5 x 0.9 mm 1.1. GENERAL DESCRIPTION The RV-3029 is a CMOS low power, real-time clock/calendar module with built-in Thermometer and Digital Temperature Compensation circuitry (DTCXO). The temperature compensation circuitry is factory-calibrated and greatly improves the time accuracy by compensating the frequency-deviation @ 25°C and the anticipated frequency-drift over the temperature of the embedded 32.768 kHz “Tuning-Fork” crystal, even over the extended 2 Temperature Range -40°C to +125°C. Data is transferred serially via an I C interface with a maximum SCL clock frequency in fast mode of 400 kHz, the built-in word address register is incremented automatically after each written or read data byte. Beyond standard RTC-functions like year, month, day, weekday, hours, minutes, seconds information, the RV-3029 offers highly versatile Alarm and Timer-Interrupt function, programmable Clock-Output and Low-Voltage Detector. 1.2. APPLICATIONS The RV-3029 RTC module combines key functions with outstanding performance in a small ceramic package: Factory calibrated Temperature Compensation Extended temperature range up to +125°C Low Power consumption Smallest temperature compensated RTC module with embedded Xtal These unique features make this product perfectly suitable for many applications: Automotive: Car Radio / GPS and Tracking Systems / Dashboard / Engine Controller / Car Mobile & Entertainment Systems / Tachometers Metering: E-meter / Heating Counter Outdoor: ATM & POS systems / Surveillance & Safety systems / Ticketing systems All kind of portable and battery operated devices Industrial and consumer electronics White goods Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 4 www.emmicroelectronic.com 420010-D01, 2.0 603002 2. BLOCK DIAGRAM 32.768 kHz Xtal DIVIDER and TEMPERATURE COMPENSATION LOGIC OSC CLKOUT CLKOE OUTPUT CONTROL INT VDD VBACKUP SYSTEM CONTROL LOGIC POWER CONTROL VSS I2C-BUS SCL 2-wire SDA TEMPERATURE SENSOR Serial Interface Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 5 Control_1 Control_INT Control_INT-Flags Control_Status Control_Reset Seconds Minutes Hours Date Weekday Month Year Seconds Alarm Minutes Alarm Hour Alarm Day Alarm Weekday Alarm Month Alarm Year Alarm Timer Low Timer High Temperature °K User EEPROM 2 Bytes EE Ctrl Xtal Deviation Xtal Temp-Coef Xtal T0 Temp User RAM 8 Byte User RAM 00 08 10 18 20 28 29 30 38 3F www.emmicroelectronic.com 420010-D01, 2.0 603002 2.1. PINOUT C3 Package: Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 #1 CLKOE #10 N.C. #2 VDD #9 VBACKUP #3 CLKOUT #8 N.C. #4 SCL #7 INT #5 SDA #6 VSS 6 www.emmicroelectronic.com 420010-D01, 2.0 603002 2.2. PIN DESCRIPTION Symbol Pin # Description C3 Positive supply voltage; positive or negative steps in supply voltage may affect oscillator performance, recommend 10 nF decoupling capacitor close to device VDD 2 CLKOUT 3 N.C. SCL SDA VSS 8 4 5 6 CLKOUT output push-pull / INT function open-drain requiring pull-up resistor Not Connected; internally used for test, do not connect other signals than ground Serial Clock Input pin; requires pull-up resistor Serial Data Input-Output pin; open-drain; requires pull-up resistor Ground INT VBACKUP N.C. CLKOE 7 Interrupt Output pin; open-drain; active LOW 9 10 1 Backup Supply Voltage; tie to GND when not using backup supply voltage Not Connected; internally used for test, do not connect other signals than ground CLKOUT enable/disable pin; enable is active HIGH; tie to GND when not using CLKOUT Clock Output pin; CLKOUT or INT function can be selected.(Control_1; bit7; Clk/Int) 2.3. FUNCTIONAL DESCRIPTION The RV-3029 is a highly accurate real-time clock/calendar module due to integrated temperature compensation circuitry. The built-in Thermometer and Digital Temperature Compensation circuitry (DTCXO) provides improved time-accuracy; achieved by measuring the temperature and calculating an expected correction value based on precise, factory-calibrated Crystal parameters. The compensation of the frequency deviation @ 25°C and the Crystal’s frequency-drift over the temperature range are obtained by adding or subtracting 32.768 kHz oscillator clock-pulses. Beyond standard RTC-functions like year, month, day, weekday, hours, minutes, seconds information, the RV-3029 offers highly versatile Alarm and Timer-Interrupt function, programmable Clock-Output 2 and Voltage-Low-Detector and a Main-Supply to Backup-Battery Switchover Circuitry and a 400 kHz I C interface. The CMOS IC contains thirty 8-bit RAM registers organized in 6 memory pages; the address counter is automatically incremented within the same memory page. All sixteen registers are designed as addressable 8-bit parallel registers, although, not all bits are implemented. • Memory page #00 contains of five registers (memory address 00h and 04h) used as control registers • Memory page #01 addresses 08h through 0Eh are used as counters for the clock function (seconds up to years). The Seconds, Minutes, Hours, Days, Weekdays, Months and Years registers are all coded in Binary-Coded-Decimal (BCD) format. When one of the RTC registers is read, the content of all counters is frozen to prevent faulty reading of the clock/calendar registers during a carry condition • Memory page #02 addresses 10h through 16h define the alarm condition • Memory page #03 addresses 18h and 19h are used for Timer function • Memory page #04 address 20h provides the thermometer reading value • Memory page #07 addresses 38h through 3Fh are available for user data Additionally, the CMOS-IC contains six non-volatile 8-bit EEPROM registers organized in 2 memory pages; the address counter is automatically incremented within the same memory page. • EEPROM page #05 addresses 28h and 29h are available for EEPROM user data • EEPROM page #06 contains of four registers (memory address 30h through 33h) used as non-volatile control registers. These registers contain the factory programmed parameters of the Crystal’s thermal characteristics, the frequency-deviation @ ambient temperature and the Thermometer’s calibration values. In favour for the best time-accuracy, the factory programmed registers (memory address 31h through 33h) shall not be changed by the user without carefully studying its function Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 7 www.emmicroelectronic.com 420010-D01, 2.0 603002 2.4. DEVICE PROTECTION DIAGRAM VDD CLKOE CLKOUT NC VBACKUP NC SCL INT SDA VSS Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 8 www.emmicroelectronic.com 420010-D01, 2.0 603002 3. REGISTER ORGANIZATION The registers are grouped into memory pages. The pages are addressed by the 5 most-significant-bits (MSB’s bits 7 – 3), the 3 least-significant-bites (LSB’s 2 – 0) select the registers within the addressed page. 30 RAM registers organized in 6 memory pages and 6 EEPROM registers organized in 2 memory pages are available. During interface access, the page address (MSB’s 7 - 3) is fixed while the register address (LSB’s 2 - 0) are automatically incremented. The content of all counters and registers are frozen to prevent faulty reading of the clock/calendar registers during carry condition. The time registers in the Clock and Alarm pages are encoded in the Binary Coded Decimal format (BCD) to simplify application use. Other registers are either bit-wise or standard binary format. 3.1. REGISTER OVERVIEW Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 1 Bit 0 TD1 TD0 SROn EERE X X SRIE V2IE TAR TE WE V1IE TIE X X SRF V2IF AIE V1IF TF X PON SR AF V2F V1F X X X X X SysR X X X X X 40 X 40 20 10 8 4 2 1 20 10 8 4 2 X 1 12-24 20-PM 10 8 4 2 1 X X 20 10 8 4 2 1 X X X X X 4 2 1 X X X 10 8 4 2 1 X 40 20 10 8 4 2 1 Page Address Bit 7 - 3 Bit 2 - 0 Control page 000 001 010 011 00h 01h 02h 03h Clk/Int Control_1 X Control_INT X Control_INT Flag EEbusy Control_Status 100 04h Control_Reset 000 001 010 011 100 101 110 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh Seconds Minutes Hours Days Weekdays Months Years 000 001 010 011 100 101 110 10h 11h 12h 13h 14h 15h 16h Second Alarm Minute Alarm Hour Alarm Days Alarm Weekday Alarm Months Alarm Year Alarm Timer page 00011 000 001 18h 19h Temperature page 00100 000 EEPROM User 00101 EEPROM Control page 00000 Clock page 00001 Alarm page 00010 00110 RAM page 00111 Bit 2 Hex AE_S 40 20 10 8 4 2 1 AE_M 40 20 10 8 4 2 1 AE_H X 20-PM 10 8 4 2 1 AE_D X 20 10 8 4 2 1 AE_W X X X X 4 2 1 AE_M X X 10 8 4 2 1 AE_Y 40 20 10 8 4 2 1 Timer Low Timer High 128 64 32 16 8 4 2 1 128 64 32 16 8 4 2 1 20h Temperature 128 64 32 16 8 4 2 1 000 28h EEPROM User 001 29h EEPROM User 000 001 010 011 30h 31h 32h 33h EEPROM Contr. Xtal Offset Xtal Coef Xtal T0 000 : 111 38h : User RAM 2 bytes of EEPROM for user data R80k R20k R5k R1k FD1 FD0 ThE ThP sign 64 32 16 8 4 2 1 128 64 32 16 8 4 2 1 X X 32 16 8 4 2 1 8 bytes of RAM for user data 3Fh Bit positions labelled as “X” are not implemented and will return a “0” when read. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 9 www.emmicroelectronic.com 420010-D01, 2.0 603002 3.2. CONTROL PAGE REGISTER FUNCTION 3.2.1.CONTROL_1 (address 00h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 00h Control_1 Clk/Int TD1 TD0 SROn EERE TAR TE WE Bit Symbol Value 7 Clk/Int 6 TD1 5 TD0 4 SROn 3 EERE 2 TAR 1 TE 0 WE 0 Description Reference Applies INT function on CLKOUT pin Applies CLKOUT function on CLKOUT pin See section 4.9. 00 01 10 11 Select Source Clock for internal Countdown Timer See section 4.4. 0 1 0 1 0 1 0 1 0 1 Disables Self Recovery function Enables Self Recovery function Disables automatic EEPROM refresh every hour Enables automatic EEPROM refresh every hour Disables Countdown Timer auto-reload mode Enables Countdown Timer auto-reload mode Disables Countdown Timer Enables Countdown Timer Disables 1Hz Clock Source for Watch Enables 1Hz Clock Source for Watch 1 See section 4.8. See section 4.3. See section 4.4. See section 4.4. See section 4.7. 3.2.2.CONTROL_INT (address 01h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X X X SRIE V2IE V1IE TIE AIE 01h Control_INT Bit Symbol Value 7 to 5 unused X Unused 0 1 0 1 0 1 0 1 0 1 Disables Self-Recovery INT Enables Self-Recovery INT Disables VLOW2 INT; “Low Voltage 2 detection” Enables VLOW2 INT; “Low Voltage 2 detection” Disables VLOW1 INT; “Low Voltage 1detection” Enables VLOW1 INT; “Low Voltage 1detection” Disables Countdown Timer INT Enables Countdown Timer INT Disables Alarm INT Enables Alarm INT 4 SRIE 3 V2IE 2 V1IE 1 TIE 0 AIE Description Reference See section 4.8. See section 4.1.2. See section 4.1.2. See section 4.4.1. See section 4.5.1. Bit positions labelled as “X” are not implemented and will return a “0” when read. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 10 www.emmicroelectronic.com 420010-D01, 2.0 603002 3.2.3.CONTROL_INT FLAG (address 02h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X X X SRF V2IF V1IF TF AF 02h Control_INT Flag Bit Symbol Value 7 to 5 unused X Unused 0 No Self-Recovery Interrupt generated Self-Recovery Interrupt generated if possible deadlock is detected; clear flag to clear Interrupt No VLOW2 Interrupt generated VLOW2 Interrupt generated when supply voltage drops below VLOW2 threshold No VLOW1 Interrupt generated VLOW1 Interrupt generated when supply voltage drops below VLOW1 threshold No Timer Interrupt generated Timer Interrupt generated when Countdown Timer value reaches zero No Alarm Interrupt generated Alarm Interrupt generated when Time & Date matches Alarm setting 4 SRF 3 V2IF 2 V1IF 1 TF 0 AF 1 0 1 0 1 0 1 0 1 Description Reference See section 4.6. See section 4.6. See section 4.6. See section 4.6. See section 4.6. Bit positions labelled as “X” are not implemented and will return a “0” when read. 3.2.4.CONTROL_STATUS (address 03h…bits description) Address Function 03h Control_Status Bit Symbol 7 EEbusy 6 unused 5 PON 4 SR Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 EEbusy X PON SR V2F V1F X X Value 0 1 X Unused 0 No Power-On Reset executed Flag is set at Power-On, flag must be cleared by writing “0” No Self-Recovery Reset or System Reset has been generated. Flag is set when Self-Recovery Reset or System Reset has been generated. No VLOW2 Interrupt generated” VLOW2 Interrupt generated when supply voltage drops below VLOW2 threshold No VLOW1 Interrupt generated” VLOW1 Interrupt generated when supply voltage drops below VLOW1 threshold 1 0 1 0 3 V2F 2 V1F 1 0 1 to 0 unused Description EEPROM is not busy Flag is set when EEPROM page is busy due to “write” or automatic EEPROM refresh in progress 1 X Reference See section 4.3. See section 4.1. See section 4.2.1. See section 4.6. See section 4.6. Unused Bit positions labelled as “X” are not implemented and will return a “0” when read. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 11 www.emmicroelectronic.com 420010-D01, 2.0 603002 3.2.5.CONTROL_RESET (address 04h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X X X SysR X X X X 04h Control_Reset Bit Symbol Value 7 to 5 unused 4 3 to 0 Description Reference X Unused 0 No System Reset will be executed Set bit = “1” triggers a System Reset. After the restart of the logic, the SysR will be cleared and in bit 4 “SR” in the register Control_Status will be set See section 4.2.1. SysR unused 1 X Unused Bit positions labelled as “X” are not implemented and will return a “0” when read. 3.3. WATCH PAGE REGISTER FUNCTION Watch Page registers are coded in the Binary Coded Decimal (BCD) format; BCD format is used to simplify application use. 3.3.1.SECONDS, MINUTES, HOURS, DAYS, WEEKDAYS, MONTHS, YEARS REGISTER Seconds (address 08h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 08h Seconds X 40 20 10 8 4 2 1 Bit Symbol Value 7 6 to 0 X Seconds 0 to 59 Description Unused This register holds the current seconds coded in BCD format Minutes (address 09h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 40 20 10 8 4 2 1 09h Minutes X Bit Symbol Value 7 6 to 0 X Minutes 0 to 59 Description Unused This register holds the current minutes coded in BCD format Hours (address 0Ah…bits description) Address Function 0Ah Hours Bit Symbol 7 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X 12-24 20-PM 10 8 4 2 1 Value X - Description Unused 12 hour mode (AM/PM) 6 12-24 5 20-PM 4 to 0 Hours1) 0 1 0 1 1 to 12 Selects 24-hour mode Selects 12-hour (AM/PM) mode Indicates AM Indicates PM This register holds the current hours coded in BCD format 0 1 0 to 23 Selects 24-hour mode Selects 12-hour AM/PM mode This register holds the current hours coded in BCD format 24 hour mode 6 5 to 0 1) 12-24 Hours1) User is requested to pay attention setting valid data only. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 12 www.emmicroelectronic.com 420010-D01, 2.0 603002 Days (address 0Bh…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X X 20 10 8 4 2 1 0Bh Days Bit Symbol Value X Days 1 to 31 7 to 6 5 to 0 Description Unused This register holds the current days coded in BCD format 1) 1) The RTC compensates for leap years by adding a 29th day to February if the year counter contains a value which is exactly divisible by 4; including the year 00. Weekdays (address 0Ch…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 0Ch Weekdays X X X X X 4 2 1 Bit Symbol Value X Weekdays 1 to 7 7 to 3 2 to 0 Weekdays1) Sunday Monday Tuesday Wednesday Thursday Friday Saturday 1) Description Unused This register holds the current weekdays coded in BCD format 1) Bit 7 X X X X X X X Bit 6 X X X X X X X Bit 5 X X X X X X X Bit 4 X X X X X X X Bit 3 X X X X X X X Bit 2 0 0 0 1 1 1 1 Bit 1 0 1 1 0 0 1 1 Bit 0 1 0 1 0 1 0 1 These bits may be re-assigned by the user. Months (address 0Dh…bits description) Address Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 0Dh Function Months X X X 10 8 4 2 1 Bit Symbol Value 7 to 5 4 to 0 X Months 1 to 12 Months January February March April May June July August September October November December Bit 7 X X X X X X X X X X X X Description Unused This register holds the current months coded in BCD format 1) Bit 6 X X X X X X X X X X X X Bit 5 X X X X X X X X X X X X Bit 4 0 0 0 0 0 0 0 0 0 1 1 1 Bit 3 0 0 0 0 0 0 0 1 1 0 0 0 Bit 2 0 0 0 1 1 1 1 0 0 0 0 0 Bit 1 0 1 1 0 0 1 1 0 0 0 0 1 Bit 0 1 0 1 0 1 0 1 0 1 0 1 0 1) The RTC compensates for leap years by adding a 29th day to February if the year counter contains a value which is exactly divisible by 4; including the year 00. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 13 www.emmicroelectronic.com 420010-D01, 2.0 603002 Years (address 0Eh…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X 40 20 10 8 4 2 1 0Eh Years Bit Symbol Value X Years 0 to 79 7 6 to 0 Description Unused This register holds the current year 20xx coded in BCD format1) 1) The RTC compensates for leap years by adding a 29th day to February if the year counter contains a value which is exactly divisible by 4; including the year 00. 3.3.2.DATA FLOW OF TIME AND DATE FUNCTION 1 Hz tick SECONDS MINUTES 12_24 hour mode HOURS LEAP YEAR CALCULATION DAYS WEEKDAY MONTHS YEARS Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 14 www.emmicroelectronic.com 420010-D01, 2.0 603002 3.4. ALARM PAGE REGISTER FUNCTION The Alarm Page registers contain alarm information. When one or more of these registers are loaded with a valid second, minute, hour, day, weekday, month or year information and its corresponding alarm enable bit (AE_x) is logic “1”, then that information will be compared with the current time / date information in the Watch Page registers. When all enabled comparisons first match (wired “AND”) and the AIE Flag (bit 0 in register Control_INT) is enabled, then the AF Flag (bit 0 in register Control_INT) is set = “1” and an Interrupt signal becomes available at INT pin. Disabled Alarm registers which have their corresponding bit AE_X at logic “0” are ignored. 3.4.1.SECONDS, MINUTES, HOURS, DAYS, WEEKDAYS, MONTHS, YEARS ALARM REGISTER Alarm Seconds (address 10h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 10h Second Alarm AE_S 40 20 10 8 4 2 1 Bit Symbol Value 7 6 to 0 AE_S Seconds Alarm 0 1 0 to 59 Description Second Alarm is disabled Second Alarm is enabled These bits hold the Second Alarm information coded in BCD format Alarm Minutes (address 11h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 11h Minute Alarm AE_M 40 20 10 8 4 2 1 Bit Symbol Value 7 6 to 0 AE_M Minutes Alarm 0 1 0 to 59 Description Minute Alarm is disabled Minute Alarm is enabled These bits hold the Minute Alarm information coded in BCD format Alarm Hours (address 12h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 12h Hours Alarm AE_H X 20-PM 10 8 4 2 1 Bit Symbol Value 7 AE_H 6 X Description 0 1 - Hour Alarm is disabled Hour Alarm is enabled Unused 0 1 Indicates AM Indicates PM These registers hold the Hours Alarm information coded in BCD format when in 12 hour mode 12 hour mode (AM/PM) 5 4 to 0 20-PM Hours Alarm 1 to 12 Hours Alarm 0 to 23 24 hour mode 5 to 0 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 These registers hold the Hours Alarm information coded in BCD format when in 24 hour mode 15 www.emmicroelectronic.com 420010-D01, 2.0 603002 Alarm Days (address 13h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 13h Days Alarm AE_D X 20 10 8 4 2 1 Bit Symbol Value 7 6 5 to 0 AE_D X Days Alarm 0 1 1 to 31 Description Day Alarm is disabled Day Alarm is enabled Unused These registers hold the Day Alarm information coded in BCD Alarm Weekdays (address 14h…bits description) Address Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 14h Weekday Alarm AE_W X X X X 4 2 1 Bit Symbol Value 7 6 to 3 2 to 0 Function AE_W X Weekday Alarm 0 1 1 to 7 Description Weekday Alarm is disabled Weekday Alarm is enabled Unused These registers hold the Weekday Alarm information coded in BCD Alarm Months (address 15h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 15h Months Alarm AE_M X X 10 8 4 2 1 Bit Symbol Value 7 6 to 5 4 to 0 AE_M X Months Alarm 0 1 1 to 12 Description Months Alarm is disabled Months Alarm is enabled Unused These registers hold the Months Alarm information coded in BCD Alarm Years (address 16h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 16h Year Alarm AE_Y 40 20 10 8 4 2 1 Bit Symbol Value 7 6 to 0 AE_Y Year Alarm Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 0 1 0 to 79 Description Year Alarm is disabled Year Alarm is enabled These registers hold the Year Alarm information coded in BCD 16 www.emmicroelectronic.com 420010-D01, 2.0 603002 3.5. TIMER PAGE REGISTER FUNCTION The Timer Page contains 2 registers forming a 16-bit count down timer value. Countdown Timer Value (addresses 18h / 19h…bits description) Address 18h 19h Address 18h 19h Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Timer Low Timer High 128 128 64 64 32 32 16 16 8 8 4 4 2 2 1 1 Symbol Timer Low Timer High Value 1 to 255 0 to 255 Description These bits hold the Low Countdown Timer Value in binary format These bits hold the High Countdown Timer Value in binary format 3.6. TEMPERATURE PAGE REGISTER FUNCTION The Temperature Page register contains the result of the measured temperature ranging from -60°C (=0d) to +190°C (=250d) with 0°C corresponding to a content of =60d. During read / write access, the content of the register Temperature is frozen in a cache memory to prevent faulty reading. When the Thermometer is disabled by ThE = “0” (bit 1 in register EEPROM_Control), the register Temperature at address 20h can be externally written. Temperature Value (address 20h…bits description) Address 20h Address 20h Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Temperature 128 64 32 16 8 4 2 1 Symbol Temperature Value -60 to +194°C Description These bits hold the Temperature Value coded in binary format 3.7. EEPROM DATA PAGE REGISTER FUNCTION The EEPROM Data Page contains 2 non-volatile EEPROM registers for user’s application. Please see section 4.3 EEPROM MEMORX ACCESS for detailed instructions how to handle EEPROM read / write access. User EEPROM Data Registers (addresses 28h / 29h…bits description) Address 28h 29h Address 28h 29h Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 EEPROM User EEPROM User 128 128 64 64 32 32 16 16 8 8 4 4 2 2 1 1 Symbol EEPROM User EEPROM User Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 Value 0 to 255 0 to 255 Description EEPROM User Data (2 Bytes) 17 www.emmicroelectronic.com 420010-D01, 2.0 603002 3.8. EEPROM CONTROL PAGE REGISTER FUNCTION The EEPROM Control Page contains 4 non-volatile EEPROM registers. With Register EEPROM Control, the settings for Trickle-Charger (bit 7-4), the CLKOUT frequency (bit 3&2) and the Thermometer (bit 1&0) can be controlled. The registers XTAL Offset, XTAL Coef and XTAL T0 contain the factory calibrated, individual crystal parameters to compensate the frequency deviation over the temperature range. Please see section 4.3 EEPROM MEMORY ACCESS for detailed instructions how to handle EEPROM read / write access. 3.8.1.EEPROM CONTROL (address 30h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 30h EEPROM Control R80k R20k R5k R1k FD1 FD0 ThE ThP Bit Symbol Value 0 1 Description Disables 80 kΏ trickle charge resistor Enables 80 kΏ trickle charge resistor 0 Disables 20 kΏ trickle charge resistor 1 0 1 0 1 Enables 20 kΏ trickle charge resistor Disables 5 kΏ trickle charge resistor Enables 5 kΏ trickle charge resistor Disables 1.5 kΏ trickle charge resistor Enables 1.5 kΏ trickle charge resistor 00 01 10 11 Selects Clock Frequency at CLKOUT pin 0 1 0 1 Disables Thermometer Enables Thermometer Set Temperature Scanning Interval: Set Temperature Scanning Interval: 7 R80k 6 R20k 5 R5k 4 R1k 3 FD1 2 FD0 1 ThE 0 ThP Reference See section 4.1. See section 4.9. See section 5.2.1. 1 second 16 seconds See section 5.2.1. 3.8.2.XTAL OFFSET (address 31h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 31h XTAL Offset sign 64 32 16 8 4 2 1 Bit Symbol 7 6 to 0 Value 0 1 Sign XTAL Offset1) 0 to 121 Description - Deviation (slower) of 32.768kHz frequency at T0 + Deviation (faster) of 32.768kHz frequency at T0 Reference See section 5.2.2. Frequency Offset Compensation value 1) The XTAL Offset register value is factory programmed according to the crystal’s initial frequency-tolerance. For best time-accuracy, the content of this register must not be changed by the user. 3.8.3.XTAL TEMPERATUR COEFFICIENT (address 32h…bits description) Address Function 32h XTAL Coef Bit Symbol 7 to 0 XTAL Coef 1) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 128 64 32 16 8 4 2 1 Value Description Reference 0 to 255 Quadratic Coefficient of XTAL’s Temperature Drift See section 5.2.2. 1) The XTAL Coef register value is factory programmed according to the crystal parameters over temperature. For best time-accuracy, the content of this register must not be changed by the user. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 18 www.emmicroelectronic.com 420010-D01, 2.0 603002 3.8.4.XTAL TURNOVER TEMPERATUR COEFFICIENT T0 (address 33h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 33h XTAL T0 x x 32 16 8 4 2 1 Bit Symbol Value 7 to 6 x 5 to 0 XTAL T01) 4 to 67 Description Reference Unused XTAL’s Turnover Temperature in °C See section 5.2.2. 1) The XTAL T0 register value is factory programmed according to the crystal parameters over temperature. For best time-accuracy, the content of this register must not be changed by the user. 3.9. RAM DATA PAGE REGISTER FUNCTION The RAM Data Page contains 8 RAM registers for user’s application. User RAM Data Registers (addresses 38h to 3Fh…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 38h --3Fh RAM User --RAM User 128 64 32 16 8 4 2 1 128 64 32 16 8 4 2 1 128 64 32 16 8 4 2 1 Address Symbol Value 38h --- RAM User --- 0 to 255 3Fh RAM User 0 to 255 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 --- Description RAM User Data (8 Bytes) 19 www.emmicroelectronic.com 420010-D01, 2.0 603002 4. DETAILED FUNCTIONAL DESCRIPTION 4.1. POWER-UP, POWER MANAGEMENT AND BATTERY SWITCHOVER The RV-3029 has two power supply pins: VDD the main power supply input pin VBACKUP the backup battery input pin The RV-3029 has multiple power management function implemented: Automatic switchover function between main power supply and backup supply voltage. The higher supply voltage is selected automatically, with a switchover hysteresis of 20mV Low supply voltage detection VLOW1 and VLOW2 with the possibility to generate an INT if the corresponding control bits are enabled Functions requiring a minimum supply voltage are automatically disabled if low supply voltage is detected Interface and CLKOUT are automatically disabled when the device operates in backup supply mode Programmable trickle charge circuitry to charge backup battery or supercap Backup Switchover Circuitry Disables non-used Functions VDD Power Supply VBAT 20mV VDD VBAT 2 Battery switchover VBAT VDD Operating on VDD Operating on VBACKUP Operating on VDD I2C Interface Enabled Disabled Enabled CLKOUT Enabled Disabled Enabled INT Enabled Enabled Enabled Disabled Enabled Trickle Charge Enabled 1 1 2 3 3 Trickle charge circuitry is enabled by software when selecting trickle-charge resistors. When back-up supply switchover-circuitry switches to the backup supply voltage, trickle charge function is disabled. The implemented backup switchover circuitry continuously compares VDD and VBACKUP voltages and connects the higher of them to the internal supply voltage VINT. The switchover hysteresis from VDD to VBACKUP and vice versa is typically 20mV. When the device is operating at the VBACKUP supply voltage, non-used RTC functions are disabled to ensure optimized power consumption: I2C interface Disabled when operating in VBACKUP mode CLKOUT Disabled when operating in VBACKUP mode INT Enabled even when operating in VBACKUP mode Trickle Charge Disabled when operating in VBACKUP mode Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 20 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.1.1.POWER UP SEQUENCE The device can be either powered up from main supply VDD or from backup supply VBACKUP. During power-up, the chip is executing the following power-up procedure: The implemented battery switchover circuitry compares VDD and VBACKUP voltages and connects the higher of them to supply the chip At power-up, the chip is kept in Reset state until the supply voltage reaches an internal threshold level. Once the supply voltage is higher than this threshold level, a Reset is executed and registers are loaded with the Register Reset Values described in section 4.2.2. REGISTER RESET VALUES After the Reset is executed and registers are loaded with the Register Reset Values, “PON” is set = “1” (bit 5 in Register Control-Status), it needs to be cleared by writing = “0” Once the supply voltage reaches the oscillator start-up voltage, the oscillator-circuitry starts the 32.768 kHz “tuning-fork” Crystal typically within 500 ms Once the 32.768 kHz clocks are present, the Voltage Detector starts in fast mode to monitor the supply voltage, the accelerated scanning of the supply voltage will slightly increase the current consumption. When a supply voltage >VLow2 is detected, the fast mode voltage detection is stopped, and the EEPROM read is enabled Configuration registers are loaded with the configuration data read from the EEPROM Control Page and the bits VLow1 and VLow2 are reset = “0” If the Thermometer is enabled by “ThE” = “1” (bit 1 in register EEPROM_Control), the temperature is measured and the frequency compensation value for time correction is calculated The RV-3029 becomes fully functional; the correct Time / Date information needs to be loaded into the corresponding registers and bit 5 “PON” in Register Control-Status needs to be cleared by writing “0” Note 1: During power up, the Low Voltage Detection is monitoring the supply voltage at an accelerated scan rate increasing the current consumption of the device. Once power supply voltage exceed VLOW2 threshold, the flags VLOW1 and VLOW2 are cleared and the scan rate for the low voltage detection is set to 1 second to ensure optimized power consumption. Note 2: Please not the different meaning of the “PON”; “VLow1” and “VLow2” Flags: PON “PON” Flag is set after Power-Up Reset is executed Indicating that time & date information are corrupted VLow1 VLow1 Flag is set when supply voltage drops below VLow1 threshold Indicating that the Thermometer might have been disabled due to low supply voltage and the temperature compensation was operating for a while with the last temperature reading causing bigger time-deviation VLow2 VLow2 Flag is set when supply voltage drops below VLow2 threshold Indicating a risk that the 32.768kHz might have stopped due to low supply voltage and that the time & date information might be corrupted Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 21 www.emmicroelectronic.com 420010-D01, 2.0 603002 Example Power Up sequence, Low Voltage detection and Backup Supply switchover VDD Power Supply Voltage 5.0 V 4.0 V 3.0 V 2.0 V 1.0 V VLOW 1 2.1 V VLOW 2 1.3 V 0V VBAT Battery switchover when VDD < (VBAT - 50mV) VBAT VDD PON Flag set at power-up 1 VLOW 1 Flag set when supply voltage < Vlow1 1 VLOW 2 -flag set when supply voltage < Vlow2 0 0 1 0 1 1 2 3 4 5 6 7 8 2 3 4 5 6 7 8 Power Up Reset is executed; registers are loaded with Reset Values. PON flag is set at Power up indicating that time / date information likely are corrupted. Low voltage detection flags VLOW1 and VLOW2 are automatically cleared. PON Flag needs to be cleared by software writing “0”. Trickle charge circuitry for backup battery can be enabled by software. Switchover to the backup supply voltage when VDD drops below VDD < (VBAT – 20mV). Low voltage detection sets VLOW1 Flag when supply voltage drops VLOW1 threshold. Low voltage detection sets VLOW2 Flag when supply voltage drops VLOW2 threshold. Switchback from backup supply voltage to main supply voltage when VDD rise above VDD > (VBAT + 20mV). VLOW1 and VLOW2 Flags need to be cleared by software writing “0”. 4.1.2.SUPPLY VOLTAGE OPERATING RANGE AND LOW VOLTAGE DETECTION The RV-3029 has built-in low supply voltage detection which periodically monitors supply voltage levels vs. VLOW1 and VLOW2 thresholds. If low supply voltage is detected, the corresponding flags V LOW1 and VLOW2 are set = “1”. Device functions critical to low supply voltage are disabled. During power up, the Low Voltage Detection is monitoring the supply voltage at an accelerated scan rate. If power supply voltage exceed VLOW2 threshold, the flags VLOW1 and VLOW2 are cleared and the scan rate for the low voltage detection is set to 1 second. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 22 www.emmicroelectronic.com 420010-D01, 2.0 603002 Minimum Supply Voltage and Low Voltage Detection 2.0 V VLOW 1 2.1 V 1.0 V VLOW 2 1.3 V EEPROM Write EEPROM Function EEPROM Read 3.0 V Interface active with reduced speed Fully Operating 4.0 V Timekeeping not guaranteed 5.0 V I2C Interface Function Interface active VDD max 5.5 V Thermomerter inactive, last value frozen 5.5 V Temperature Compensation / Thermometer Thermomerter active Supply Voltage Timekeeping Function Temperature Compensation Operating VDD VPROG 2.2 V 0V At first power-up, the supply voltage has to exceed VLOW1 threshold to enable and correctly setup all function of the device. Timekeeping Function: Keeping track of Time & Date depends on the 32.768kHz oscillator operates safely over the specified temperature range. Timekeeping function is guaranteed for a supply voltage down to V LOW2 threshold, below this voltage the 32.768kHz oscillator may stop and the time & date information might be corrupted. Temperature Compensation: The Frequency Compensation Unit “FCU” operates with supply voltages down to V LOW2 threshold. The Thermometer requires a supply voltage of ≥ VLOW1 threshold. Supply voltages below VLOW1 threshold will automatically disable the Thermometer; the last correct temperature reading is frozen in the register “Temperature”. The Frequency Compensation Unit continues to operate with the last temperature-reading down to a supply voltage ≥ VLOW1 threshold. 2 I C interface: 2 The I C interface operates with max. SCL clock rate down to a supply voltage of ≥ VLOW1 threshold. Between VLOW1 and VLOW2 threshold, the interface still operates at reduced SCL clock rate. EEPROM read / write access: EEPROM read access is possible down to a supply voltage of ≥ VLOW2 threshold. EEPROM write cycle requires a minimum supply voltage of ≥ VPROG of 2.2V. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 23 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.2. RESET A Reset can be initiated by 3 different ways: Power On Reset (automatically initiated at power-up) Software Reset (can be initiated by software) Self-Recovery System Reset (automatically initiated if enabled by Software and possible deadlock is detected) 4.2.1.POWER-UP RESET, SYSTEM RESET AND SELF-RECOVERY RESET Power On Reset: A Reset is automatically generated at Power On. After Power On Reset has been executed, bit 5 “PON” in Register Control_Status is set = “1”, it needs to be cleared by writing = “0”. System Reset: A Software Reset can be initiated when the System-Reset command “SysR” is set =”1” (bit 4 in Register Control_Reset). If a System-Reset is executed, the “SR” Flag (bit 4 in Register Control_Status) is set = “1”, needs to be cleared by writing = “0”. It is generally recommended to make a System Reset by Software after power-up. Note: Please consider the Register Reset Values shown in section 4.2.2. After a Reset has been executed, SelfRecovery System “SROn” (bit 4 in Register Control_1) is set = “1” and Self-Recovery INT Enable “SRIE” (bit 4 in Register Control_INT) is set = “0”. Self-Recovery System Reset: A Self-Recovery System Reset will be automatically initiated when the Self-Recovery function is enabled by bit 4 “SROn” in Register Control_1 is set “1” and internally a possible deadlock-state is detected. If a Self-Recovery System Reset is executed, the bit 4 “SR” in Register Control_Status is set “1” and need to be cleared by writing “0”. After a Self-Recovery System Reset is executed and Register Reset Values were written, bit 4 “SRF” in Register Control_INT Flag is set “1” and needs to be cleared by writing “0”. In case of a Self Recovery System Reset is executed, an Interrupt is available if Self-Recovery-INT function is Enabled by bit 4 “SRIE” in Register Control_INT is set “1”. The purpose of the Self Recovery function is to generate an internal System Reset in case the on-chip state machine goes into a deadlock. The function is based on an internal counter that is periodically reset by the control logic. If the counter is not reset on time, a possible deadlock is detected and a System Reset will be triggered. The System Reset is executed latest after 2 temperature- or voltage-monitoring periods defined in Thermometer Period bit 0 “ThP” in Register EEPROM Control, i.e. latest after 2 or 32 seconds. Note: Please consider the Register Reset Values shown in section 4.2.2. After a Reset has been executed, SelfRecovery System bit 4 “SROn” in Register Control_1 = “1” and Self-Recovery INT Enable “SRIE” in Register Control_INT = “0”. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 24 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.2.2.REGISTER RESET VALUES Address Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 1 Control_1 Control_INT Control_INT Flag Control_Status EEbusy 0 X 0 0 1 0 0 0 1 0 0 X 0 0 0 X 0 0 0 X 1 0 0 X 04h Control_Reset - - - 0 - - - - 000 001 010 011 100 101 110 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh Seconds Minutes Hours Days Weekdays Months Years - X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X 000 001 010 011 100 101 110 10h 11h 12h 13h 14h 15h 16h Second Alarm Minute Alarm Hour Alarm Days Alarm Weekday Alarm Months Alarm Year Alarm AE_S AE_Y X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Timer page 00011 000 001 18h 19h Timer Low Timer High X X X X X X X X X X X X X X X X Temperature page 00100 000 20h Temperature X X X X X X X X EEPROM User 00101 000 28h EEPROM User 001 29h EEPROM User EEPROM Control page 000 001 010 011 30h 31h 32h 33h EEPROM Contr. Xtal Offset Xtal Coef Xtal T0 000 : 111 38h : User RAM Page Bit 7 - 3 Address Bit 2 - 0 Hex Control page 000 001 010 011 00h 01h 02h 03h 100 00000 Clock page 00001 Alarm page 00010 00110 RAM page 00111 Function Bit 7 AE_M AE_H AE_D AE_W AE_M 2) 1) 3) 2 bytes of EEPROM for user data 0 4) 0 4) 0 4) 0 4) 0 4) 0 4) 1 Factory setting: Xtal frequency deviation Factory setting: Xtal temperature coefficient Factory setting: Xtal T0 temperature 4) 0 4) 8 bytes of RAM for user data 3Fh – bits labelled as – are not implemented. X bits labelled as X are undefined at power-up and unchanged by subsequent resets. 1) SRF flag (bit 4 in register Control_INT Flag) will be set = “1” after a Self Recovery System Reset was executed. 2) PON flag (bit 5 in register Control_Status) will be set = “1” after a Power On Reset was executed. 3) SR flag (bit 4 in register Control_Status) will be set = “1” after a System or Self recovery Reset was executed. 4) EEPROM Control default data are set by factory; data might be reprogrammed by customer and will remain unchanged during power down or any Reset executed. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 25 www.emmicroelectronic.com 420010-D01, 2.0 603002 After Reset, the following mode is entered: - CLKOUT is selected at CLKOUT pin, default frequency is 32.768 kHz defined in register EEPROM Control Timer and Timer Auto-Reload mode are disabled; Timer Source Clock frequency is set to 32Hz Self Recovery function is enabled Automatic EEPROM Refresh every hour is enabled 24 hour mode is selected, no Alarm is set All Interrupts are disabled At Power-On Reset, “PON” Flag is set = “1” and has to be cleared by writing = “0” At Self-Recovery Reset or System Reset, “SR” Flag is set = “1” and has to be cleared by writing = “0”. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 26 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.3. EEPROM MEMORY ACCESS The EEPROM Memory has a built-in automatic EEPROM Refresh function, controlled by “EERE” (bit 3 in register Control_1). If enabled, this function automatically refreshes the content of the EEPROM Memory Pages once an hour. The “EEbusy” will be set = “1” (bit 7 in register Control_Status) if the EEPROM Memory Pages are busy due to write or automatic refresh cycle is in progress. “EEbusy” goes = “0” when writing is finished, EEPROM Memory Pages shall only be accessed when not busy, i.e. when “EEbusy” = “0”. A special EEPROM access procedure is required preventing access collision between the internal automatic EEPROM refresh cycle and external read / write access through interface. Set “EERE” = “0” Automatic EEPROM Refresh needs to be disabled before EEPROM access. Check for “EEbusy” = “0” Access EEPROM only if not busy Set “EERE” = “1” It is recommended to enable Automatic EEPROM Refresh at the end of read / write access Write EEPROM Allow 10ms wait-time after each written EEPROM register before checking for EEbusy = “0” to allow internal data transfer Read access: Write access: Clear EERE Disable automatic EEPROM refresh EEbusy = 0? Check if EEPROM is busy? No Disable automatic EEPROM refresh EEbusy = 0? Check if EEPROM is busy? No Yes Read EEPROM Clear EERE Yes EEPROM read access is permitted Yes Next read? Write EEPROM EEPROM write access is permitted Wait 10ms Wait 10ms to allow internal EEPROM write No Set EERE = 1 Enable automatic EEPROM refresh No EEbusy = 0? Wait until previous write cycle is finished Yes Yes Next write? No Set EERE = 1 Enable automatic EEPROM refresh Note: A minimum power supply voltage of VPROG = 2.2V is required during the whole EEPROM write procedure; i.e. until “EEbusy” = “0”. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 27 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.4. TIMER FUNCTION The RV-3029 offers different Alarm and Timer functions which allow simply generating highly versatile timingfunctions. The Countdown Timer is controlled by the register Control_1. Bit 1 “TE” enables the Timer function; bits 5 & 6 “TD0” and “TD1” determine one of 4 Timer Source Clock frequencies (32 Hz, 8 Hz, 1 Hz, or 0.5Hz). The Timer counts down from a software-loaded 16-bit binary value ,n’, “Timer Low” (bit 0-7 at address 18h) and “Timer High” (bit 0-7 at address 19h). Values, n’ from 1 to 65536 are valid; loading the counter with ,n’ = “0” effectively stops the timer. The end of every Timer countdown is achieved when the Timer Counter value ,n’ reaches = “0”. Countdown Timer can be set in Automatic Reload mode by “TAR” = “1” (bit 2 of register Control_1), the counter automatically re-loads Timer countdown value, n’ and starts the next Timer period. Automatic reload of the countdown value ,n’ requires 1 additional timer source clock. This additional timer source clock has no effect on the first Timer period, but it has to be taken into account since it results in a Timer duration of ,n+1’ for subsequent timer periods. The generation of Interrupts from the Countdown Timer function is enabled by “TIE” = “1” (bit 1 in register Control_INT). If Timer Interrupt is enabled by “TIE” = “1”, the Timer Flag “TF” (bit 1 in register Control_INT Flag) will be set = “1” at the end of every Timer countdown. The Interrupt signal INT follows the condition of Timer Flag “TF” (bit 1 in register Control_INT Flag), the INT signal can be cleared by clearing the “TF” = “0”. Control of the Countdown Timer Functions (address 00h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 00h Control_1 Clk/Int TD1 TD0 SROn EERE TAR TE WE Bit Symbol Value 6 TD1 5 TD0 2 TAR 1 TE Description 00 Timer Source Clock Frequency: 32 Hz 01 10 11 0 1 0 1 Timer Source Clock Frequency: 8 Hz Timer Source Clock Frequency: 1 Hz Timer Source Clock Frequency : 0.5 Hz Disables Countdown Timer Auto-Reload mode Enables Countdown Timer Auto-Reload mode Disables Countdown Timer Enables Countdown Timer The Timer Source Clock Frequency “TD0” & “TD1” and the Timer Auto Reload mode “TAR” can only be written when the Timer is stopped by “TE” = “0” (bit 1 in register Control_1). The Countdown Timer values in “Timer Low” and “Timer High” can only be written when the Timer is stopped by “TE” = “0” and Timer Auto Reload mode is disabled “TAR” = “0”. Register Countdown Timer (addresses 18h / 19h…bits description) Register 18h is loaded with the low byte of the 16-bit Countdown Timer value ,n’ Register 19h is loaded with the high byte of the 16-bit Countdown Timer value ,n’ Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 18h Timer Low 128 64 32 16 8 4 2 1 19h Timer High 128 64 32 16 8 4 2 1 Bit Symbol Value 18h Timer Low xx01 to xxFF 19h Timer High 00xx to FFxx Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 Description Countdown value = n Countdown period 28 n Source Clock Frequency www.emmicroelectronic.com 420010-D01, 2.0 603002 Example Countdown Timer function with Timer in Auto Reload mode In this example, the Countdown Timer is set to Automatic Reload Mode, the Countdown Timer value is set = “3”. Automatic reload of the countdown value ,n’ requires 1 additional Timer Source Clock. This additional timer source clock has no effect on the first Timer period but it has to be taken into account since it results in a Timer duration of ,n+1’ for subsequent timer periods. The Interrupt signal ( INT ) is cleared by clearing the Timer Flag “TF” = “0”. 1 TE TAR Timer Source Clock Frequency TD0 / TD1 Countdown Timer Value XX 03 02 01 Auto Reload 03 02 Auto Reload 01 03 02 TF INT TSC n n TSC n +1 2 3 4 5 3 4 1 Timer Source Clock Frequency TD0 / TD1 can only be modified when Timer is disabled “TE” = “0” Countdown Timer value ,n’ in “Timer Low” and “Timer High” only can be modified when Timer “TE” = “0” and Timer Auto Reload “TAR” = “0” are both disabled. 2 Duration of first Timer Period 3 4 5 n Source Clock Frequency The additional timer source clock for automatic reload of the countdown Timer value ,n’ has no effect on the first Timer Period. Timer Automatic Reload mode “TAR” requires one Timer Source Clock period for automatic reload of the Countdown Timer value ,n’. To reset Interrupt signal ( INT ), Timer Flag “TF” has to be cleared by writing = “0”. When Countdown Timer is in automatic reload mode, one additional timer source clock has to be taken into account since it results in a Timer duration of ,n+1’ for subsequent timer periods. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 29 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.4.1.TIMER INTERRUT The generation of Interrupts from the Countdown Timer function is enabled by “TIE” = “1” (bit 1 in register Control_INT). If Timer Interrupt is enabled by “TIE” = “1”, the Timer Flag “TF” (bit 1 in register Control_INT Flag) will be set = “1” at the end of every Timer countdown. The Interrupt signal INT follows the condition of Timer Flag “TF” (bit 1 in register Control_INT Flag), the Timer Flag “TF” and the Interrupt signal ( INT ) remain set until cleared by software writing “TF” = “0”. Timer Interrupt Control (addresses 01h / 02h…bits description) Address Function 01h Control_INT bit 1 TIE 02h Control_INT Flag bit 1 TF Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X X X SRIE V2IE V1IE TIE AIE 0 1 X 0 1 TF is disabled, no Timer Interrupt generated TF is enabled, Timer Interrupt generated when Countdown Timer value reaches zero and TF is set “1” X X SRF V2IF V1IF TF AF No Timer Interrupt generated Timer Flag is set “1” when TIE is enabled and Countdown Timer value reaches zero, TF needs to be cleared to clear INT Bit positions labelled as “X” are not implemented and will return a “0” when read. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 30 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.5. ALARM FUNCTION Every Alarm Register in Alarm Page can be individually enabled by setting bit 7 (AE_x) = “1”. Disabled alarm registers which have their bit “AE_x” at logic = “0” are ignored. When one or more of these registers are loaded with a valid second, minute, hour, day, weekday, month or year information and its corresponding alarm enable bit (AE_x) is logic = ”1”, then that information will be compared with the current time / date information in Watch Page registers. Alarm function Blockdiagram check now signal SECOND AEN SECOND ALARM 1 = 0 SECOND TIME MINUTE AEN MINUTE ALARM 1 = 0 MINUTE TIME HOUR AEN HOUR ALARM 0 0 HOUR TIME 1 1 = AIE DAY AEN INT DAY ALARM & AF 1 = 0 DAY TIME to reset INT, clear AF by writting = 0 WEEKDAY AEN WEEKDAY ALARM 1 = 0 WEEKDAY TIME MONTH AEN MONTH ALARM 1 = 0 MONTH TIME YEAR AEN YEAR ALARM 1 = 0 YEAR TIME Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 31 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.5.1.ALARM INTERRUPT The generation of Interrupts from the Alarm function is enabled by “AIE” = “1” (bit 0 in register Control_INT). When all enabled Alarm comparisons first match (wired “AND”) and the Alarm Interrupt is enabled by, the Alarm Flag “AF” (bit 0 in Register Control_INT Flag) is set to logic = “1”. The Interrupt signal ( INT ) follows the condition of “AF”. The Interrupt signal INT follows the condition of Alarm Flag “AF” (bit 0 in register Control_INT Flag), The Alarm Flag “AF” and the Interrupt signal ( INT ) remain set until cleared by software writing “AF” = “0”. Once bit “AF” has been cleared, it will only be set again when the time increments and matches the alarm condition once more. Alarm Interrupt Control (addresses 01h / 02h…bits description) Address 01h Function Control_INT Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 X X X SRIE V2IE V1IE TIE AIE 0 0 02h AIE 1 Control_INT Flag X 0 0 AF 1 AF is disabled, no Alarm Interrupt generated AF is enabled, AF is set “1”and Alarm Interrupt generated when all enabled Alarm comparisons first match X X SRF V2IF V1IF TF AF No Alarm Interrupt generated Alarm Flag is set “1” when all enabled Alarm comparisons first match, needs to be cleared to clear INT Bit positions labelled as “X” are not implemented and will return a “0” when read. Example for Alarm Flag and Alarm INT MINUTE AEN whenand usingset theto minute alarmno and no other interrupts are enabled Example where “Minute Alarm” Example is enabled 45 and other Alarm is enabled. If bit AIE is enabled, the INT pin follows the condition of bit 0 “AF” in register Control_INT Flag at address 02h. 1 0 HOUR AEN minutes counter 44 minute alarm 45 45 46 1 0 set alarm flag, AF DAY AEN 1 0 AF WEEKDAY AEN 1 INT when AIE = 1 0 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 32 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.6. INTERRUPT OUTPUT INT An active LOW Interrupt signal is available at INT pin. The INT is an open-drain output and requires a pull-up resistor to VDD. Interrupts may be sourced from five places: Alarm function Countdown Timer function VLOW1 detection VLOW2 detection System Reset function All Interrupt signals follow the condition of their corresponding flags in the bits 0 to 4 of register Control_INT Flag at address 02h. Alarm Interrupt: Generation of Interrupts from the Alarm function is enabled via “AIE” = “1” (bit 0 in register Control_INT). If “AIE” is enabled, the INT pin follows the condition of Flag “AF” (bit 0 in register Control_INT Flag). To clear Interrupt signal ( INT ), the corresponding flag “AF” needs to be cleared by writing = “0”, clearing “AF” will immediately clear INT . Timer Interrupt: Generation of Interrupts from the Countdown Timer is enabled via “TIE” = “1” (bit 1 in register Control_INT). If “TIE” is enabled, the INT pin follows the condition of Flag “TF” (bit 1 in register Control_INT Flag). To clear Interrupt signal ( INT ), the corresponding flag “TF” needs to be cleared by writing = “0”, clearing “TF” will immediately clear INT . VLOW1 Interrupt: Generation of Interrupts from the Voltage Low 1 detection is enabled via “V1IE” = “1” (bit 2 in register Control_INT). If “V1IE” is enabled, the INT pin follows the condition of Flag “V1IF” (bit 2 in register Control_INT Flag). To clear Interrupt signal ( INT ), both corresponding flags “V1IF” (bit 2 in register Control_INT Flag) and “V1F” (bit 2 in register Control_Status) need to be cleared by writing = “0”. VLOW2 Interrupt: Generation of Interrupts from the Voltage Low 2 detection is enabled via “V2IE” = “1” (bit 3 in register Control_INT). If “V2IE” is enabled, the INT pin follows the condition of Flag “V2IF” (bit 3 in register Control_INT Flag). To clear Interrupt signal ( INT ), both corresponding flags “V2IF” (bit 3 in register Control_INT Flag) and “V2F” (bit 3 in register Control_Status) need to be cleared by writing = “0”. System Reset Interrupt: Generation of Interrupts from the System Reset function is enabled via “SRIE” = “1” (bit 4 in register Control_INT). If “SRIE” is enabled, the INT pin follows the condition of Flag “SRF” (bit 4 in register Control_INT Flag). To clear Interrupt signal ( INT ), both corresponding flags “SRF” (bit 4 in register Control_INT Flag) and “SR” (bit 4 in register Control_Status) need to be cleared by writing = “0”. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 33 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.7. WATCH ENABLE FUNCTION The function Watch Enable function “WE” (bit 0 in register Control_1) enables / disables the 1 Hz clock for the watch function. After power-up reset, the bit “WE” is automatically set = “1” and the 1 Hz clock is enabled. Setting “WE” = “0” stops the watch-function and the time circuits can be set and will not increment until the stop is released. Setting “WE” = “1” allows for accurate start of the time circuits triggered by an external event. “WE” will not affect the clock outputs at CLKOUT. 4.8. SELF-RECOVERY SYSTEM The purpose of the Self-Recovery System is to automatically generate an internal Reset in case the on-chip state machine goes into a deadlock. A possible source for such a deadlock could be disturbed electrical environment like 2 EMC problem, disturbed power supply or any kind of communication issues on the I C interface. The function of the Self-Recovery System is based on internal counter that is periodically reset by the Control Logic. If the counter is not reset in time, a Self-Recovery Reset will be executed, at the latest after 2 thermometer scanning interval periods, i.e. 2 or 32 seconds. The Self-Recovery System is enabled / disabled by “SROn ” (bit 4 in register Control_1), it is automatically enabled “SROn” = “1” after power-up by the register reset values, see section 4.2.2. REGISTER RESET VALUES. Thermometer scanning interval is defined with “ThP” (bit 0 in register EEPROM_Control). Generation of Interrupts from the System Reset function is enabled via “SRIE” = “1” (bit 4 in register Control_INT). If “SRIE” is enabled, the INT follows the condition of Flag “SRF” (bit 4 in register Control_INT Flag). To clear Interrupt signal ( INT ), both corresponding flags “SRF” (bit 4 in register Control_INT Flag) and “SR” (bit 4 in register Control_Status) need to be cleared by writing = “0”. During Self-Recovery or System Reset, the internal logic is reset and registers are loaded with the Register Reset Values shown in section 4.2.2., Watch / Alarm and Timer information are not affected. After Self-Recovery Reset, “SRF” is set = “1” (bit 4 in Register Control_INT Flag), indicating that an automatic Self-Recovery System Reset has been executed. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 34 www.emmicroelectronic.com 420010-D01, 2.0 603002 4.9. CLOCK OUTPUT CLKOUT The internal reference frequency is generated by the oscillator-circuitry operating a 32.768 kHz “Tuning-Fork” Quartz Crystal. A programmable square wave is available at CLKOUT pin. Frequencies of 32.768 kHz, 1024 Hz, 32 Hz or 1 Hz can be generated for use as a system clock, microcontroller clock, input to a charge pump or for test purposes. The duty cycle of the selected clock is not controlled. However, due to the nature of the clock generation, all frequencies will be 50:50 except the 32.768 kHz. The frequency 32.768 kHz is clocked directly from the oscillator-circuitry, as a consequence of that, this frequency does not contain frequency compensation clock pulses. The frequencies 1024 / 32 / 1 Hz are clocked from the prescaler and contain frequency compensation clock pulses. Operation is controlled by the bits “FD1” / “FD0” (bit 2 & 3 in the register EEPROM Control). If “Clk/Int” is = “1” (bit 7 in register Control_1), CLKOUT pin becomes a push-pull CLKOUT output and can be enabled / disabled with the CLKOE pin. When disabled with CLKOE pin = “low”, the CLKOUT output is pulled low. Register EEPROM Control FD0 / FD1 CLKOUT Frequency Selection (address 30Eh…bits description) Address 30h Bit 3 to 2 1) Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 EEPROM Control R80k R20k R5k R1k FD1 FD0 ThE 1 3 2 CLKOUT Frequency FD1 FD0 [Hz] Typ. Duty Cycle 0 0 32768 40:60 to 60:40 0 1 1024 50:50 Directly from 32.768kHz oscillator circuitry, without freq. compensation With frequency compensation 1 0 32 50:50 With frequency compensation 1 1 1 50:50 With frequency compensation %1) Remarks Duty cycle definition: % HIGH-level time : % LOW-level time Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 35 www.emmicroelectronic.com 420010-D01, 2.0 603002 5. COMPENSATION OF FREQUENCY DEVIATION AND FREQUENCY DRIFT vs TEMPERATURE There is a Thermometer and a Frequency Compensation Unit “FCU” built-in the RV-3029. Based on all known tolerances and the measured ambient temperature, this Frequency Compensation Unit “FCU” is calculating every 32 seconds a Frequency Compensation Value. The frequency compensation itself is achieved by adding or subtracting clock-pulses to the 32.768 kHz reference clock, one compensation period takes 32 seconds. All required parameters for frequency compensation are factory calibrated and should not be modified to profit from best time accuracy. Frequency deviations affecting the time accuracy of Real Time Clocks: XTAL offset: XTAL T0: XTAL temp. coefficient: Xtal’s frequency deviation ±20 ppm @ 25°C Xtal’s turnover temperature 25°C ±5°C 2 Xtal’s frequency drift vs temperature -0.035 ppm * (T-T0) ±10% 5.1. TEMPERATURE CHARACTERISTICS TUNING FORK CRYSTAL Typical Frequency Deviation of a 32.768 kHz Tuning Fork Crystal over Temperature 20.0 T0 = 25°C (±5) 0.0 -20.0 ΔF/F [ppm] -40.0 -60.0 -0.035 ppm * (T-T0)2 (±10%) -80.0 -100.0 -120.0 -140.0 -160.0 -180.0 -60 -40 -20 0 20 40 60 80 100 T [°C] Above graph shows the typical frequency-deviation of a 32.768kHz “Tuning-Fork” Crystal over temperature. The parabolic curve is specified in terms of turnover temperature “T 0” and the quadratic thermal coefficient “β”. T0: turnover temperature 25°C ±5°C nd 2 Β: 2 order temperature coefficient -0.035 ppm * (T-T0) ±10% (quadratic thermal coefficient) Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 36 www.emmicroelectronic.com 420010-D01, 2.0 603002 5.2. COMPENSATION PRINCIPLE The Frequency Compensation Unit “FCU” is calculating every 32 seconds a Frequency Compensation Value based on individual device data: XTAL offset: XTAL T0: XTAL temp. coefficient: Temperature: Device individual frequency deviation ±20ppm @ 25°C Xtal’s turnover temperature 25°C ±5°C 2 Xtal’s frequency drift vs. temperature -0.035 ppm * (T-T0) ±10% Measured ambient temperature Calculating the Anticipated Frequency Deviation and the Time Compensation Value 400 Calculated Time Compensation Value 350 300 250 200 150 Δf/f [ppm] 100 XTAL OFFSET Δf/f = +/-20 ppm 50 0 -50 -100 XTAL T0 T0 = 25°C (+/-5°C) -150 -200 -250 XTAL Temperature Coefficient 2 Δf/f [ppm] = -0.035 * (Tamb-T0) (+/-10%) -300 -350 -400 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 Temperature [°C] Note: The 32.768 kHz frequency is adjusted according to the calculated Time Compensation value. The compensation itself is achieved by adding or subtracting clock-pulses to the 32.768 kHz reference clock. One complete compensation period takes 32 seconds. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 37 www.emmicroelectronic.com 420010-D01, 2.0 603002 5.2.1.THERMOMETER AND TEMPERATURE VALUE The function of the Thermometer is controlled by “ThP” and “ThE” (bit 0 & bit 1 in the register EEPROM Control). Register EEPROM Control Thermometer Control (address 30h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 30h EEPROM Control R80k R20k R5k R1k FD1 FD0 ThE ThP Bit Symbol Value 1 ThE 0 ThP Description 0 Disable Thermometer 1 0 1 Enable Thermometer Thermometer scanning interval: 1 second Thermometer scanning interval: 16 seconds The measured temperature value is stored in the register “Temperature” at address 20h. The measured temperature is binary coded ranging from -60°C (=0d) to +190°C (=250d). Example: Temperature of 0°C corresponding to a content of = 60d. The thermometer has a resolution of 1°C per LSB; the typical accuracy is +/-4°C within the temperature range -40°C to +125°C. The Thermometer is automatically disabled if status bit “Vlow1” is set = “1”, the result of the last temperature measurement is frozen in register “Temperature” and the frequency compensation continues working with this last temperature reading. The actual temperature value can be read from register “Temperature” at address 20h. The Thermometer has to be disabled by ThE = “0” to externally write a temperature value into the register “Temperature” at address 20h. Temperature Value (address 20h…bits description) Address 20h Temperature Function Temperature Value hex Bit 7 128 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 64 32 16 8 4 2 These bits hold the Temperature Value coded in binary format 1 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 -60°C -59°C 00h 01h 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0°C 3Ch 0 0 1 1 1 1 0 0 194°C 195°C FEh FFh 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 38 www.emmicroelectronic.com 420010-D01, 2.0 603002 5.2.2.SETTING THE FREQUENCY COMPENSATION PARAMETERS In order to achieve best time accuracy, correct parameters have to be stored into the corresponding registers of the EEPROM Control page. Attention: these parameters are factory calibrated, it is recommended not to modify these register values. XTAL Offset (address 31h…bits description) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 31h XTAL Offset sign 64 32 16 8 4 2 1 Bit Symbol 7 6 to 0 Sign XTAL Offset Value 0 1 0 to 121 Description - Deviation (slower) of 32.768kHz frequency at T0 + Deviation (faster) of 32.768kHz frequency at T0 Frequency Offset Compensation value The register value “XTAL Offset” is used by the Frequency Compensation Unit “FCU” to compensate the initial frequency deviation of the 32.768 kHz clock at the crystal’s turnover temperature “XTAL T0”. The required register value “XTAL Offset” is calculated as follow: XTAL Offset = XtalOFFSET x 1.05 XTAL COEF Temperature Coefficient (address 32h…bits description) Address 32h XTAL Coef Bit Symbol 7 to 0 1) Function XTAL Coef1) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 128 64 32 16 8 4 2 1 Value Description 0 to 255 Quadratic Coefficient of XTAL’s Temperature Drift Reference The factory programmed register value XTAL Coef may also contain thermometer error compensation. The register value “XTAL Coef” is used by the Frequency Compensation Unit “FCU” to compensate the frequency nd deviation caused by 2 order temperature coefficient of the 32.768 kHz crystal (frequency drift vs temperature). The required register value “XTAL Coef” is calculated as follow: XTAL Coef = XtalTEMPERATURE COEFFICIENT x 4096 x 1.05 XTAL T0 Turnover Temperature (address 33h…bits description) 1) Address Function Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 33h XTAL T0 x x 32 16 8 4 2 1 Bit Symbol Value 7 to 6 x 5 to 0 XTAL T01) 4 to 67 Description Reference unused XTAL’s Turnover Temperature in °C The factory programmed register value XTAL T0 may also contain thermometer error compensation. The register value “XTAL T0” is used by the Frequency Compensation Unit “FCU” to compensate the frequency deviation caused by the turnover temperature T0 of the 32.768 kHz crystal. The required register value “XTAL T0” is calculated as follow: XTAL T0 = XtalTURNOVER TEMP T0 - 4 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 39 www.emmicroelectronic.com 420010-D01, 2.0 603002 5.3. METHOD OF COMPENSATING THE FREQUENCY DEVIATION The Frequency Compensation Unit (FCU) calculates every 32 seconds the compensation factor needed to obtain accurate time information. The compensation is made by adding or subtracting correction clocks to the 32.768 kHz reference frequency at the first stage of the frequency divider chain, thereby changing the period of a single second. Extra clocks are added for to speed-up the timing, subtracting clocks to slow-down the timing. Clock 32.768 kHz 2 Compensation „slow clock“ Compensation „fast clock“ 1 2 1 If 32.768 kHz Clock too fast: then 32.768kHz clocks are suppressed to obtain a compensated and accurate RTC timing. If 32.768 kHz Clock too slow: then extra correction clocks are added to obtain a compensated and accurate RTC time. Each compensation period takes 32 seconds. Correction clocks are periodically applied during one complete compensation period. Within a compensation period of 32 seconds, one correction clock will compensate the time information by ±1 ppm. 1 1 1 Time deviation Time compensation periode = 32 seconds 1 + 1 1 1 - Time compensation cycle 32 seconds: within a time compensation cycle of 32 seconds, the required numbers of 32.768kHz clocks are periodically suppressed (or added) to compensate the anticipated deviation of 32.768kHz reference clock. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 40 www.emmicroelectronic.com 420010-D01, 2.0 603002 Effect of correction clocks: CLKOUT 32.768 kHz: CLKOUT 1024 / 32 / 1 Hz: Timer / INT Output: Time / Date not affected, this frequency is not compensated affected, these frequencies are compensated affected; the internal Timer Source Clocks are compensated affected; time & date information are compensated 5.3.1.CORRECT METHOD FOR TESTING THE TIME ACCURACY The compensation method of adding or subtracting correction clocks is changing the period of a single second; therefore the duration of single seconds may vary within a compensation cycle of 32 seconds. For a test result correctly representing the time accuracy of the RTC module, it is mandatory to measure the device during one complete compensation cycle of 32 seconds. When the device is tested over a shorter period of time, an error will be caused by the test method and shall be considered for interpretation of the test-results: Measuring Time 1 second 2 seconds 4 seconds 8 seconds 32 seconds Resolution of Compensation Method ± 1 clock (32.768 kHz) ± 1 clock (32.768 kHz) ± 1 clock (32.768 kHz) ± 1 clock (32.768 kHz) ± 1 clock (32.768 kHz) Test Error / Deviation per Day ± 30.5 ppm / ± 2.7 sec. per day ± 15.3 ppm / ± 1.3 sec. per day ± 7.7 ppm / ± 0.7 sec. per day ± 3.9 ppm / ± 0.4 sec. per day represents real performance 5.3.2.TESTING THE TIME ACCURACY USING CLKOUT OUTPUT The simplest method to test the time accuracy of the Frequency Compensation Unit (FCU) is by measuring the compensated frequencies at the CLKOUT pin. Enable temperature compensation: Select scanning interval 1 s: Enable thermometer: set “ThP” = “0” (bit 0 register EEPROM Control) set “ThE” = “1” (bit 1 register EEPROM Control) Select compensated frequency at CLKOUT: Set CLKOUT frequency: set “FD0” / “FD1” (bits 1&3 register EEPROM Control) to select CLKOUT frequency = 1024Hz or alternatively 1Hz Measuring equipment and setup: Use appropriate frequency counter: Correct setup: Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 for example Agilent A53132A Universal Counter set gate time to 32 seconds (one complete compensation cycle) to measure frequency and calculate time deviation upon the measured frequency deviation 41 www.emmicroelectronic.com 420010-D01, 2.0 603002 5.3.3.TESTING THE TIME ACCURACY USING INTERRUPT OUTPUT 1 Hz The internal Countdown Timer can be used to generate a 1 Hz test signal at the INT output. However, this procedure is more complicated than using CLKOUT, therefore the following instructions shall be read carefully to avoid mistakes. Enable temperature compensation: Select scanning interval 1 s: Enable thermometer: set “ThP” = “0” (bit 0 register EEPROM Control) set “ThE” = “1” (bit 1 register EEPROM Control) Set appropriate test condition using Countdown Timer & 1 Hz INT Output: Disable Timer: Disable Timer Auto-Reload Mode: set “TE” = “0” (bit 1 register Control_1) set “TAR” = “0” (bit 2 register Control_1) Timer & Timer Auto Reload Mode needs to be disabled to allow changes in settings of the Timer Source Clock and Countdown Timer value. Set Timer Source Clock = 8 Hz: Set Countdown Timer Value n = 7: Enable Timer Interrupt: Set Timer in Auto-Reload Mode: Enable Timer: set “TD0” = “1“& “TD1” = “0” (bit 5&6 register Control_1) set register “Timer Low” = 07h (bit 0-7 register Timer Low) set register “Timer High” = 00h (bit 0-7 register Timer High) set “TIE” = “1” (bit 1 register Control_INT) set “TAR” = “1” (bit 2 register Control_1) set “TE” = “1” (bit 1 register Control_1) Prepare MCU Software Driver to clear INT signal: MCU clears INT signal: clear INT by setting “TF” = “0” (bit 1 register Control_INT Flag) Measuring equipment and setup: Use appropriate frequency counter: Gate time: Trigger to negative slope: Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 for example Agilent A53132A Universal Counter set gate time to 32 seconds (one complete compensation cycle) set trigger to falling edge (negative slope) 42 www.emmicroelectronic.com 420010-D01, 2.0 603002 1 Second 1 INT SDA VDD SCL RV-3029 INT MCU 1 2 2 INT Output is active LOW. That means the falling edge of the INT signal is generated by the RV-3029. When testing the time-accuracy by using INT signal it is mandatory to trigger on the falling edge of the Interrupt signal. The rising edge of the INT signal is generated when the MCU clears the Interrupt signal by software. The timing of the rising edge depends on the MCU and must not be used to test the time-accuracy. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 43 www.emmicroelectronic.com 420010-D01, 2.0 603002 5.4. TIME ACCURACY OPT: A / OPT: B Option A: parts individually calibrated over the temperature range To obtain the best possible accuracy over the temperature-range, Option A parts are individually calibrated over the entire temperature range. XTAL offset: XTAL T0: XTAL temp. coefficient: Thermometer error: Frequency deviation @ 25°C Turnover temperature Frequency drift vs temperature Thermometer accuracy Individually compensated Individually calibrated over temperature Individually calibrated over temperature Individually acquired over temperature, correction value individually embedded in XTAL parameters Every part RV-3029 Opt: A is individually measured over the temperature range to derive thermometer’s and crystal’s characteristics over the temperature range in order to achieve optimized time accuracy. Based on the temperature data, frequency correction values are calculated and individually programmed into the corresponding EEPROM register by the factory. Below chart shows the time deviation of 30 tested devices over the temperature range of 30 individually calibrated RTC’s (Opt: A) after the components were reflow soldered onto a PCB, the red dotted line shows the specified time accuracy for Option: A devices. Option A: Temperature range 25°C 0°C to + 50°C -10°C to + 60°C -40°C to + 85°C -40°C to +125°C Time deviation ±3 ppm = ±0.26 seconds per day ±4 ppm = ±0.35 seconds per day ±5 ppm = ±0.44 seconds per day ±6 ppm = ±0.52 seconds per day ±8 ppm = ±0.70 seconds per day Option: A (calibrated) Time Deviation vs. Temperature 12.0 10.0 8.0 6.0 Δ t/t [ppm] 4.0 2.0 0.0 -2.0 -4.0 -6.0 -8.0 -10.0 -12.0 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 90 Temperature [°C] Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 44 www.emmicroelectronic.com 420010-D01, 2.0 603002 Option B: parts individually calibrated based on generic temperature data The Option: B devices are designed for an optimized trade off accuracy vs cost. Option B parts are individually programmed to compensate the frequency deviation at 25°C but using generic batch data to compensate the crystal’s temperature characteristics. Option B parts offer a good time accuracy at little cost. XTAL offset: XTAL T0: XTAL temp. coefficient: Thermometer error: Frequency deviation @ 25°C Turnover Temperature Frequency drift vs temperature Thermometer accuracy Individually compensated Compensated with generic batch data Compensated with generic batch data Individually acquired at 25°C, correction value individually embedded in XTAL parameters Samples of RV-3029 Opt: B parts are individually measured over the temperature range to derive the generic batch data for the thermometer’s and crystal’s characteristics over the temperature range. Based on the temperature data, frequency correction values are calculated and individually programmed into the corresponding EEPROM register by the factory. Below chart shows the time deviation of 30 tested devices over the temperature-range of individually calibrated RTC’s (Opt: B) after the components were reflow soldered onto a PCB, the red dotted line shows the specified time accuracy for Option: B devices. Option B: Temperature range 25°C 0°C to + 50°C -10°C to + 60°C -40°C to + 85°C -40°C to +125°C Time deviation ± 3 ppm = ±0.26 seconds per day ± 5 ppm = ±0.44 seconds per day ±10 ppm = ±0.87 seconds per day ±25 ppm = ±2.17 seconds per day ±30 ppm = ±2.60 seconds per day Option: B (default) Time Deviation vs. Temperature 30 25 20 15 Δ t/t [ppm] 10 5 0 -5 -10 -15 -20 -25 -30 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 90 Temperature [°C] Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 45 www.emmicroelectronic.com 420010-D01, 2.0 603002 6. I2C INTERFACE 2 The I C interface is for bidirectional, two lines communication between different ICs or modules. The two lines are a Serial-DAtaline (SDA) and a Serial-CLockline (SCL). 6.1. I2C INTERFACE CHARACTERISTICS SCL and SDA ports are open-drain architecture to allow connections of multiple devices. Both lines must be connected to a positive supply via pull-up resistors. 6.2. I2C INTERFACE SYSTEM CONFIGURATION 2 2 Since multiple devices can be connected with the I C bus, all I C bus devices have a fixed, unique device number built-in to allow individual addressing of each device. Data transfer may be initiated only when the bus is not busy. 2 The device that controls the I C bus is the “Master”; the devices which are controlled by the master are the “Slaves”. A device generating a message is a “Transmitter”; a device receiving a message is the “Receiver”. The communication is controlled by the Master. To start a transmission, the Master applies the “START condition” 2 and generates the SCL clocks during the whole transmission. Before any data is transmitted on the I C bus, the device which should respond is addressed first. The addressing is always carried out with the first byte transmitted after the “START condition”, most significant bit MSB is sent first. The master terminates the transmission by sending the “STOP condition”. The RV-3029 acts as a Slave-Receiver or Slave-Transmitter. Therefore the clock signal SCL is only an input signal, but the data signal SDA is a bidirectional line. Application Diagram Pull-up Resistors tr R= Cbus VDD INT I2C-Bus Master SCL RV-3029 I2C-Bus Device Slave address: Write: AC Read: AD Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 46 VDD SCL SDA VDD SCL SDA VDD INT SCL SDA SDA I2C-Bus Device www.emmicroelectronic.com 420010-D01, 2.0 603002 6.3. BIT TRANSFER One data bit is transferred during each clock pulse. The data on the SDA line must remain stable during the HIGH period of the clock pulse, as changes in the data line at this time are interpreted as control signals. Data change should be executed during the LOW period of the clock pulse. Bit Transfer SDA SDA SCL SCL Data line stable; Data valid Change of data allowed 6.4. START AND STOP CONDITIONS Any serial communication with the RV-3029 starts with a “START condition” and terminates with the “STOP condition”. Definition of START and STOP condition SDA SDA SCL SCL S P STOP condition START condition Both SDA data and SCL clock lines remain HIGH when the bus is not busy. A HIGH to LOW transition of the data line, while the clock is HIGH, is defined as the START condition (S). A LOW to HIGH transition of the data line, while the clock is HIGH, is defined as the STOP condition (P). The RV-3029 does not allow a repeated START. Therefore a STOP has to be released before the next START. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 47 www.emmicroelectronic.com 420010-D01, 2.0 603002 6.5. ACKNOWLEDGE There is no limit to the numbers of data bytes transmitted between the start and stop conditions. Each byte (of 8 bits) is followed by an acknowledge cycle. Therefore, the Master generates an extra acknowledge clock pulse. The acknowledge bit is a HIGH level signal put on the SDA line by the Transmitter Device. The Receiver Device must pull down the SDA line during the acknowledge clock pulse to confirm the correct reception of the last byte. A Slave-Receiver, which is addressed, must generate an acknowledge after the correct reception of each byte Also a Master-Receiver must generate an acknowledge after correct reception of each byte that has been clocked out of the Slave-Transmitter The device that acknowledges must pull down the SDA line during the acknowledge clock pulse, so that the SDA line is stable LOW during the HIGH period of the acknowledge related clock pulse (setup and hold times must be taken into consideration) If the Master is addressed as Receiver, it can stop data transmission by not generating an acknowledge on the last byte that has been sent from the Slave-Transmitter. In this event, the Slave-Transmitter must leave the data line HIGH to enable the Master to generate a stop condition 2 Acknowledgement on the I C interface Data Output by Transmitter not acknowledge Data Output by Receiver acknowledge SCL from Master S 1 2 8 clock pulse for acknowledgement START condition Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 9 48 www.emmicroelectronic.com 420010-D01, 2.0 603002 6.6. I2C INTERFACE PROTOCOL 2 Before any data is transmitted on the I C bus, the device which should respond is addressed first. The addressing is always carried out with the first byte transmitted after the “START condition”. Any serial communication with the RV-3029 starts with a “START condition” and terminates with the “STOP condition”. When the “START condition” is detected, a copy of the content of the addressed Watch, Alarm, Timer and Temperature registers is stored into a cache memory. During read / write operation, data are provided from this cache memory. To prevent faulty reading, data in the cache memory are kept stable until the “STOP condition” terminates the interface communication. When the “STOP condition” after a “Write transmission” terminates the interface communication, the content of the modified registers in the cache memory are copied back into the corresponding Watch, Alarm, Timer and Temperature registers. 6.7. I2C DEVICE ADDRESSES The RV-3029 is addressed with the first byte sent after the “START condition”. The first byte contains the 7 bit slave address and the R/ W bit. The following two slave addresses are reserved for the RV-3029: WRITE: READ: Slave address is ACh, (R/ W = 0) Slave address is ADh, (R/ W = 1) (10101100) (10101101) RV-3029 Slave Addresses WRITE: READ: ACh ADh A C/D group 1 group 2 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 0 1 0 1 1 0 R/W 1 AC 1 0 1 0 1 1 0 0 Write AD 1 0 1 0 1 1 0 1 Read Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 49 www.emmicroelectronic.com 420010-D01, 2.0 603002 6.8. I2C INTERFACE READ AND WRITE DATA TRANSMISSION Any serial communication with the RV-3029 starts by initiating the “START condition”. The first byte sent contains the 8 bit address of RV-3029, were the LSB is the R/ W bit which defines if the device is addressed in READ or WRITE mode. 6.8.1.WRITE MODE DATA TRANSMISSION With the first byte, the Master has addressed the RV-3029 in Write Mode The next byte contains the Page & Word Address. The upper 5 bits address a specific “Memory Page”, the 3 lower bits are the auto incrementing address part The next byte contains the data the Master sends to the addressed Page & Word Address After reading or writing one byte, the Word Address is automatically incremented by 1 within the same Memory Page. If “acknowledge” is not received, no auto increment of the address is executed and a following reading transmits data of the same address Example of Data Transmission in Write Mode Master sends out the “Start Condition” Master sends out the “Slave Address”, ACh for the RV-3029; the R/ W bit = “0” for write mode Acknowledgement from the RV-3029 Master sends out the “Page & Word Address” to the RV-3029 Acknowledgement from the RV-3029 Master sends out the “Data” to write to the address specified in step 4) Acknowledgement from the RV-3029 Steps 6) and 7) can be repeated if necessary. Within the same Memory Page, the RV-3029 will increment the word address automatically 9) Master sends out the “Stop Condition” 1) 2) 3) 4) 5) 6) 7) 8) 2 S SLAVE ADDRESS 3 0 0 R/W 1 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 4 PAGE WORD ADDRESS 5 6 7 8 0 DATA 0 DATA 9 0 P Acknowledge from the RV-3029 50 www.emmicroelectronic.com 420010-D01, 2.0 603002 6.8.2.READ MODE DATA TRANSMISSION AT SPECIFIC ADDRESS With the first byte, the Master has addressed the RV-3029 in Write Mode The next byte contains the Page & Word Address. The upper 5 bits address a specific “Memory Page”, the 3 lower bits are the auto incrementing address part 2 The I C interface communication is halted by sending the “Stop Condition” 2 Then the I C interface communication is re-established by sending the “Start Condition” With the next byte, the Master is addressing the RV-3029 in Read Mode Then the Slave transmits the first byte starting from the previously addressed Page & Word address. Within the same Memory Page, the Word Address will be incremented automatically by 1. If “acknowledge” is not received, no auto increment of the address is executed and a following reading transmits data of the same address Example of Data Transmission in Read Mode after setting a specific Page & Word address 10) 11) 12) 13) 14) 1 2 SLAVE ADDRESS 3 0 0 4 PAGE WORD ADDRESS 5 6 7 8 0 P S SLAVE ADDRESS 9 R/W S Master sends out the “Start condition” Master sends out the “Slave Address”, ACh for the RV-3029; the R/ W bit = “0” for write mode Acknowledgement from the RV-3029 Master sends out the “Page & Word Address” to the RV-3029 Acknowledgement from the RV-3029 Master sends out the “Stop Condition” Master sends out the “Start Condition” Master sends out the “Slave Address”, ADh for the RV-3029; the R/ W bit =”1” for read mode Acknowledgement from the RV-3029: At this point, the Master becomes a Receiver, the Slave becomes the Transmitter The RV-3029 sends out the “Data” from the “Page & Word Address” specified in step 4) Acknowledgement from the Master: At this time, the “Page & Word” Address will be automatically incremented by 1 Steps 10) and 11) can be repeated if necessary. Within the same Page Address, the Word Address will be incremented automatically The Master, addressed as Receiver, can stop data transmission by not generating an acknowledge on the last byte that has been sent from the Slave Transmitter. In this event, the Slave-Transmitter must leave the data line HIGH to enable the Master to generate a “Stop condition” Master sends out the “Stop Condition” 1 0 10 11 12 DATA 0 DATA 13 14 1 P R/W 1) 2) 3) 4) 5) 6) 7) 8) 9) Acknowledge from the Master Acknowledge from the RV-3029 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 51 www.emmicroelectronic.com 420010-D01, 2.0 603002 6.8.3.READ MODE With the first byte, the Master has addressed the RV-3029 in Write Mode The Slave becomes the Transmitter and sends out the data from the last accessed Page / Word address incremented by 1 After reading a byte, within the same Memory-Page the Word-Address is automatically incremented by 1. If “acknowledge” is not received, no auto increment of the address is executed and a following reading transmits data of the same address Example of Reading Data at the last accessed Page & Word address incremented by 1 1) Master sends out the “Start Condition” 2) Master sends out the “Slave Address”, ADh for the RV-3029; the R/ W bit = “1” for read mode 3) Acknowledgement from the RV-3029: At this point, the Master becomes a Receiver, the Slave becomes the Transmitter 4) The RV-3029 sends out the “Data” from the last accessed Page / Word Address incremented by 1 5) Acknowledgement from the Master 6) Steps 4) and 5) can be repeated if necessary. Within the same Page-Address, the Word-Address will be incremented by 1 automatically 7) The Master, addressed as Receiver, can stop data transmission by not generating an acknowledge on the last byte that has been sent from the Slave-Transmitter. In this event, the Slave-Transmitter must leave the data line HIGH to enable the Master to generate a “Stop condition” 8) Master sends out the “Stop Condition” 2 3 S SLAVE ADDRESS 1 A 4 5 DATA A 6 DATA 7 8 1 P R/W 1 Acknowledge from the Master Acknowledge from the RV-3029 Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 52 www.emmicroelectronic.com 420010-D01, 2.0 603002 7. ELECTRICAL CHRACTERISTICS 7.1. ABSOLUTE MAXIMUM RATINGS In accordance with the Absolute Maximum Rating System IEC 60134 PARAMETER SYMBOL Supply voltage Supply current Input voltage VDD IDD ; ISS VI >GND / <VDD VDD Pin Input Pin GND -0.3 -50 GND -0.3 +6.0 +50 VDD +0.3 Output voltage VO INT / CLKOUT GND -0.5 VDD +0.5 V -10 -10 +10 +10 300 +125 +125 ±2000 ±300 200 mA mA mW °C °C V V mA DC Input current DC Output current Total power dissipation Operating ambient temperature range Storage temperature range II IO PTOT TOPR TSTO Electro Static Discharge voltage VESD Latch-up current ILU3) CONDITIONS Stored as bare product HBM1) MM2) MIN. MAX. -40 -55 UNIT V mA V 1) HBM: Human Body Model, according to JESD22-A114. MM: Machine Model, according to JESD22-A115. 3) Latch-up testing, according to JESD78. 2) Stresses above these listed maximum ratings may cause permanent damage to the device. Exposure beyond specified operating conditions may affect device reliability or cause malfunction. 7.2. FREQUENCY AND TIME CHARACTERISTICS VDD= 3.0 V; VSS= 0 V; Tamb= +25°C; fOSC= 32.768 kHz PARAMETER SYMBOL CONDITIONS TYP. MAX. UNIT +/-10 +/-20 ppm +/-0.5 +/-1.0 ppm/V 32.768 kHz Oscillator Characteristics Frequency accuracy Δf/f Frequency vs. voltage characteristics Δf/(fΔV) Frequency vs. temperature characteristics Δf/TOPR Turnover temperature Aging first year max. TO Δf/f Oscillator start-up voltage VStart Oscillator start-up time TStart CLKOUT duty cycle FCLKOUT = 32.7678 kHz Tamb = +25°C VDD = 3.0 V Tamb = +25°C VDD = 1.4 V to 5.5 V TOPR = -40°C to +125°C VDD = 3.0 V Tamb = +25°C Tamb = +25°C TStart < 10 s Tamb = -40°C to +85°C Tamb = -40°C to +125°C FCLKOUT = 32.7678 kHz TAMB = +25°C -0.035ppm/°C2 (TOPR-T0)2 (+/-10%) +25 20 - 30 +/-3 1.0 ppm °C ppm V 0.5 1 3 3 s 50 40/60 % +/-1 +/-2 +/-3 +/-4 +/-5 +/-1 +/-3 +/-5 +/-10 +/-15 +/-3 +/-4 +/-5 +/-6 +/-8 +/-3 +/-5 +/-10 +/-25 +/-30 Time accuracy, DTCXO Digitally Temperature Compensated Time accuracy Opt: A Δt/t Time accuracy Opt: B Δt/t Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 Tamb Tamb Tamb Tamb Tamb Tamb Tamb Tamb Tamb Tamb 53 = +25°C = 0°C to +50°C = -10°C to +65°C = -40°C to +85°C = -40°C to +125°C = +25°C = 0°C to +50°C = -10°C to +65°C = -40°C to +85°C = -40°C to +125°C ppm ppm www.emmicroelectronic.com 420010-D01, 2.0 603002 7.3. STATIC CHARACTERISTICS VDD= 1.4 V to 5.5 V; VSS= 0 V; Tamb= -40°C to +125°C; fOSC= 32.768 kHz PARAMETER SYMBOL CONDITIONS MIN. TYP. MAX. UNIT 1.4 5.5 V 3.0 1.8 1.0 5.5 2.1 1.4 V V V Supplies Supply voltage VDD Minimum supply voltage detection Minimum supply voltage detection Main Supply to Backup Supply Switchover Hysteresis VLOW1 VLOW2 Time-keeping mode I2C bus reduced speed I2C bus full speed Tamb = -40°C to +125°C Tamb = -40°C to +125°C VHYST VDD to VBACK = 3.0 V Supply current 2 I C bus inactive CLKOUT disabled VBACK = 0 V or VDD = 0 V IDD (VBACK = 0 V) or IBACK (VDD = 0 V) Supply current I2C bus active CLKOUT disabled IDD Current consumption IDD32K VDD = 5.0V VDD = 3.3V VDD = 1.4V VIL VIH VDD = 1.4 V to 5.0V 2 I C bus inactive CLKOUT = 32.768kHz, CLOAD = 7.5pF Inputs LOW level input voltage HIGH level input voltage Input leakage current VSS > VI < VDD IL Input capacitance Outputs CI HIGH level output voltage VOH LOW level output voltage VOL HIGH level output current LOW level output current IOH IOL Output leakage current ILO Operating Temperature Range Operating temperature range 20 VDD = 1.4 V Tamb = -40°C to +85°C VDD = 1.4 V Tamb = -40°C to +125°C VDD = 3.3 V Tamb = -40°C to +85°C VDD = 3.3 V Tamb = -40°C to +125°C VDD = 5.0 V Tamb = -40°C to +85°C VDD = 5.0 V Tamb = -40°C to +125°C SCL = 100 kHz VDD = 1.4 V Tamb = -40°C to +85°C SCL = 100 kHz VDD = 1.4 V Tamb = -40°C to +125°C SCL = 400 kHz VDD = 3.3 V Tamb = -40°C to +85°C SCL = 400 kHz VDD = 3.3 V Tamb = -40°C to +125°C SCL = 400 kHz VDD = 5.0 V Tamb = -40°C to +85°C SCL = 400 kHz VDD = 5.0 V Tamb = -40°C to +125°C 0.6 0.8 0.9 2.5 1.5 1.1 1.5 µA 4.6 µA 2.0 µA 5.2 µA 2.2 µA 5.5 µA 12 µA 15 µA 35 µA 40 µA 50 µA 60 µA 3.4 2.2 1.6 µA µA µA Tamb = -40°C to +85°C 80% VDD -1 20% +1 V V µA Tamb = -40°C to +125°C -1.5 +1.5 µA 7 pF Pins: SCL, SDA, CLKOE VDD = 1.4V; IOH = 0.1mA VDD = 3.3V; IOH = 1.5mA VDD = 5.0V; IOH = 2.0mA VDD = 1.4V; IOL = 0.4mA VDD = 3.3V; IOL = 1.5mA VDD = 5.0V; IOL = 5.0mA VOH = 4.5 V / VDD = 5 V VOL = 0.8 V / VDD = 5 V VO = VDD or VSS Tamb = -40°C to +85°C VO = VDD or VSS Tamb = -40°C to +125°C TOPR Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 mV 1.0 2.7 4.5 V 0.2 0.25 0.8 2.0 -5.0 -1 0 +1 -1.5 0 +1.5 V mA mA µA -40 54 VDD +125 °C www.emmicroelectronic.com 420010-D01, 2.0 603002 PARAMETER SYMBOL CONDITIONS EEPROM Characteristics Read voltage Programming voltage VRead VProg EEPROM Programming Time TProg EEPROM Programming Time TProg EEPROM Programming Time TProg EEPROM write / erase cycles Trickle charger VHYST Tamb = -40°C to +125°C Tamb = -40°C to +125°C Tamb = -40°C to +125°C 1 Byte EEPROM User Tamb = -40°C to +125°C 1 Byte EEPROM Control Tamb = -40°C to +125°C 2-4 Byte EEPROM Control VDD to VBACK = 3.0 V R80k R20k R5k R1.5k Tamb Tamb Tamb Tamb TE Tamb = -40°C to +85°C Tamb = -40°C to +125°C Current limiting resistors VDD = 5.0V VBACK = 3.0V MIN. TYP. MAX. UNIT 1.4 2.2 V V 35 ms 100 ms 135 ms 5000 Cycles = 25°C = 25°C = 25°C = 25°C 80 20 5 1.5 kΏ +/-4 +/-6 °C Thermometer Thermometer precision 7.4. I2C INTERFACE TIMING CHARACTERISTICS START condition (S) STOP condition (P) BIT 7 MSB (A7) PROTOCOL tSU ; STA tLOW BIT 6 BIT LSB (R/W) (A6) tHIGH START condition (S) ACK (A) 1/fSCL tSU ; STA SCL tr tBUF tf SDA tHD ; STA Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 tSU ; DAT tHD ; DAT tSP 55 tSU ; STO tHD ; STA www.emmicroelectronic.com 420010-D01, 2.0 603002 VSS= 0 V; Tamb= -40°C to +125°C. All timing values are valid within the operating supply voltage range and references to VIL and VIH with an input voltage swing from VSS to VDD. PARAMETER SYMBOL SCL Clock Frequency fSCL Start Condition Set-up Time tSU ; STA Start Condition Hold Time tHD ; STA Data Set-up Time tSU ; DAT Data Hold Time tHD ; DAT Data Valid Time tVD ; DAT Data Valid Acknowledge Time tVD ; ACK Stop Condition Set-up Time tSU ; STO Bus Free Time between STOP and START condition tBUF SCL “LOW time” tLOW SCL “HIGH time” tHIGH SCL and SDA Rise Time tr SCL and SDA Fall Time tf Tolerance Spike Time on Bus SCL and SDA I/O Capacitance Capacitive Load Bus Lines tSP CI/O CB Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 CONDITIONS VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V VDD ≥ 1.4V VDD ≥ 1.8V VDD ≥ 3.0V 56 MIN MAX UNIT 100 300 400 kHz 50 30 20 µs 0.2 µs 100 80 50 50 30 20 4.0 1.5 1.2 3.5 1.1 0.9 50 30 20 1.0 0.5 0.4 4.5 1.7 1.3 0.6 0.5 0.4 ns ns µs µs ns µs µs µs 1.0 0.3 0.2 0.4 0.3 0.2 50 10 200 µs µs ns pF pF www.emmicroelectronic.com 420010-D01, 2.0 603002 8. APPLICATION INFORMATION Operating RV-3029 without VBACKUP Supply: VDD 10 nF 2 VDD VBACKUP INT INT SDA SDA SCL SCL μ Controller RV-3029 1 CLKOUT 3 CLKOE GPIO VSS VSS 1 2 3 When operating the RV-3029 without Backup Supply Voltage, it is recommended to tie VBACKUP pin to GND, 10 kOhm resistor is recommended. Pull-up resistor of the INT signal can be tied directly to supply voltage VDD. CLKOUT is enabled when CLKOE input is high. It either can be permanently enabled with a pull-up resistor to supply voltage VDD or actively controlled by the μController. If no clock function is needed, it is recommended to disable CLKOUT by permanently tie CLKOE pin with a pull-down resistor to GND. Operating RV-3029 with Backup Supply Voltage VBACKUP: VDD VBACKUP 10 nF 4 VDD VBACKUP VBACKUP 5 INT INT SDA SDA SCL SCL μ Controller RV-3029 CLKOUT CLKOE VSS 4 5 GPIO VSS When operating the RV-3029 with either Supercap or Lithium Battery as Backup Supply, the INT signal also works when the device operates on VBACKUP supply voltage. Therefore it is recommended to tie the INT pull-up resistor to VBACKUP. When a Lithium Battery is used, it is recommended to insert a protection resistor of 100 - 1’000 Ohm to limit battery current and to prevent damage in case of soldering issues causing short between supply pins. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 57 www.emmicroelectronic.com 420010-D01, 2.0 603002 8.1. RECOMMENDED REFLOW TEMPERATURE (LEADFREE SOLDERING) Maximum Reflow Conditions in accordance with IPC/JEDEC J-STD-020C “Pb-free” Temperature Profile Average ramp-up rate Ramp down Rate Time 25°C to Peak Temperature Preheat Temperature min Temperature max Time Tsmin to Tsmax Soldering above liquidus Temperature liquidus Time above liquidus Peak temperature Peak Temperature Time within 5°C of peak temperature Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 Symbol (Tsmax to Tp) Tcool Tto-peak Condition 3°C / second max 6°C / second max 8 minutes max Tsmin Tsmax ts 150 200 60 - 180 °C °C Sec TL tL 217 60 – 150 °C sec Tp tp 260 20 - 40 °C sec 58 Unit °C / s °C / s m www.emmicroelectronic.com 420010-D01, 2.0 603002 9. PACKAGE 9.1. DIMENSIONS AND SOLDERPADS LAYOUT C3 Package: Package dimensions (bottom view): Recommended solderpad layout: All dimensions in mm typical. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 59 www.emmicroelectronic.com 420010-D01, 2.0 603002 9.2. MARKING AND PIN #1 INDEX C3 Package: Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 60 www.emmicroelectronic.com 420010-D01, 2.0 603002 10.PACKING INFORAMTION 10.1. CARRIER TAPE 12 mm Carrier-Tape: Material: Polystyrene / Butadine or Polystyrol black, conductive Cover Tape: Base Material: Adhesive Material: Polyester, conductive 0.061 mm Pressure-sensitive Synthetic Polymer C3 Package: User Direction of Feed Tape Leader and Trailer: 300 mm minimum. All dimensions in mm. Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 61 www.emmicroelectronic.com 420010-D01, 2.0 603002 10.2. PARTS PER REEL C3 Package: Reels: Diameter 7” 7” Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 Material Plastic, Polystyrol Plastic, Polystyrol 62 RTC’s per reel 1’000 3’000 www.emmicroelectronic.com 420010-D01, 2.0 603002 10.3. REEL 13 INCH FOR 12 mm TAPE Reel: Diameter Material 13” Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 Plastic, Polystyrol 63 www.emmicroelectronic.com 420010-D01, 2.0 603002 10.4. REEL 7 INCH FOR 12 mm TAPE Reel: Diameter Material 7” Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 Plastic, Polystyrol 64 www.emmicroelectronic.com 420010-D01, 2.0 603002 11.HANDLING PRECAUTIONS FOR CRYSTALS OR MODULES WITH EMBEDDED CRYSTALS The built-in tuning-fork crystal consists of pure Silicon Dioxide in crystalline form. The cavity inside the package is evacuated and hermetically sealed in order for the crystal blank to function undisturbed from air molecules, humidity and other influences. Shock and vibration: Keep the crystal / module from being exposed to excessive mechanical shock and vibration. EM guarantees that the crystal / module will bear a mechanical shock of 5000g / 0.3 ms. The following special situations may generate either shock or vibration: Multiple PCB panels - Usually at the end of the pick & place process the single PCBs are cut out with a router. These machines sometimes generate vibrations on the PCB that have a fundamental or harmonic frequency close to 32.768 kHz. This might cause breakage of crystal blanks due to resonance. Router speed should be adjusted to avoid resonant vibration. Ultrasonic cleaning - Avoid cleaning processes using ultrasonic energy. These processes can damages crystals due to mechanical resonance of the crystal blank. Overheating, rework high temperature exposure: Avoid overheating the package. The package is sealed with a seal ring consisting of 80% Gold and 20% Tin. The eutectic melting temperature of this alloy is at 280°C. Heating the seal ring up to >280°C will cause melting of the metal seal which then, due to the vacuum, is sucked into the cavity forming an air duct. This happens when using hot-air-gun set at temperatures >300°C. Use the following methods for rework: Use a hot-air- gun set at 270°C. Use 2 temperature controlled soldering irons, set at 270°C, with special-tips to contact all solder-joints from both sides of the package at the same time, remove part with tweezers when pad solder is liquid. EM Microelectronic-Marin SA (“EM”) makes no warranties for the use of EM products, other than those expressly contained in EM's applicable General Terms of Sale, located at http://www.emmicroelectronic.com. EM assumes no responsibility for any errors which may have crept into this document, reserves the right to change devices or specifications detailed herein at any time without notice, and does not make any commitment to update the information contained herein. No licenses to patents or other intellectual property rights of EM are granted in connection with the sale of EM products, neither expressly nor implicitly. In respect of the intended use of EM products by customer, customer is solely responsible for observing existing patents and other intellectual property rights of third parties and for obtaining, as the case may be, the necessary licenses. Important note: The use of EM products as components in medical devices and/or medical applications, including but not limited to, safety and life supporting systems, where malfunction of such EM products might result in damage to and/or injury or death of persons is expressly prohibited, as EM products are neither destined nor qualified for use as components in such medical devices and/or medical applications. The prohibited use of EM products in such medical devices and/or medical applications is exclusively at the risk of the customer Copyright 2014, EM Microelectronic-Marin SA 603002.doc, Version 1.0, 5-Mai-14 65 www.emmicroelectronic.com 420010-D01, 2.0