Low Energy Timer. AN Application Note. Introduction

Similar documents
AN0026.0: EFM32 and EZR32 Wireless MCU Series 0 Low Energy Timer

AN0026.1: EFM32 and EFR32 Wireless SOC Series 1 Low Energy Timer

Hardware Design Considerations

Table 1. TS1100 and MAX9634 Data Sheet Specifications. TS1100 ±30 (typ) ±100 (typ) Gain Error (%) ±0.1% ±0.1%

Figure 1. Low Voltage Current Sense Amplifier Utilizing Nanopower Op-Amp and Low-Threshold P-Channel MOSFET

Si21xxx-yyy-GM SMIC 55NLL New Raw Wafer Suppliers

TS3003 Demo Board FEATURES COMPONENT LIST ORDERING INFORMATION. TS3003 Demo Board TS3003DB

Figure 1. LDC Mode Operation Example

Normal Oscillator Behavior (Device A) Figure 1. Normal Oscillator Behavior (Device A) ft = f0 1 + TC1 T T0

TS1105/06/09 Current Sense Amplifier EVB User's Guide

TS3004 Demo Board FEATURES COMPONENT LIST ORDERING INFORMATION. TS3004 Demo Board TS3004DB. 5V Supply Voltage FOUT/PWMOUT Output Period Range:

Hardware Design for Capacitive Touch

AN599. Si4010 ARIB STD T-93 TEST RESULTS (315 MHZ) 1. Introduction. 2. Relevant Measurements Limits DKPB434-BS Schematic and Layout

AN862: Optimizing Jitter Performance in Next-Generation Internet Infrastructure Systems

Hardware Design Considerations

UG175: TS331x EVB User's Guide

Low Energy Sensor Interface - Resistive sense

32-bit ARM Cortex-M0, Cortex-M3 and Cortex-M4F microcontrollers

Change of Substrate Vendor from SEMCO to KCC

IN1/XA C PAR IN2/XB. Figure 1. Equivalent Crystal Circuit

INPUT DIE V DDI V DD2 ISOLATION ISOLATION XMIT GND2. Si8710 Digital Isolator. Figure 1. Si8710 Digital Isolator Block Diagram

Description. Benefits. Logic Control. Rev 2.1, May 2, 2008 Page 1 of 11

When paired with a compliant TCXO or OCXO, the Si5328 fully meets the requirements set forth in G.8262/Y ( SyncE ), as shown in Table 1.

Assembly Site Addition (UTL3)

AN656. U SING NEC BJT(NESG AND NESG250134) POWER AMPLIFIER WITH Si446X. 1. Introduction. 2. BJT Power Amplifier (PA) and Match Circuit

UG123: SiOCXO1-EVB Evaluation Board User's Guide

AN1093: Achieving Low Jitter Using an Oscillator Reference with the Si Jitter Attenuators

Oscillator Design Considerations

Si4825-DEMO. Si4825 DEMO BOARD USER S GUIDE. 1. Features. Table 1. Si4825 Band Sequence Definition

AN985: BLE112, BLE113 AND BLE121LR RANGE ANALYSIS

profile for maximum EMI Si50122-A5 does not support Solid State Drives (SSD) Wireless Access Point Home Gateway Digital Video Cameras REFOUT DIFF1

AN31. I NDUCTOR DESIGN FOR THE Si41XX SYNTHESIZER FAMILY. 1. Introduction. 2. Determining L EXT. 3. Implementing L EXT

Table MHz TCXO Sources. AVX/Kyocera KT7050B KW33T

FlexTimer and ADC Synchronization

AN959: DCO Applications with the Si5341/40

AN3332 Application note

AN255. REPLACING 622 MHZ VCSO DEVICES WITH THE Si55X VCXO. 1. Introduction. 2. Modulation Bandwidth. 3. Phase Noise and Jitter

FR FAMILY MB91460 PULSE FREQUENCY MODULATOR 32-BIT MICROCONTROLLER APPLICATION NOTE. Fujitsu Microelectronics Europe Application Note

Optocoupler 8. Shield. Optical Receiver. Figure 1. Optocoupler Block Diagram

AN2581 Application note

Migrate PWM from MC56F8013 to MC How to set up the PWM peripheral on the MC56F8247 using the setting of the PWM on the MC56F8013

FR FAMILY MB91460 PROGRAMMABLE PULSE GENERATOR 32-BIT MICROCONTROLLER APPLICATION NOTE. Fujitsu Microelectronics Europe Application Note

F²MC-16FX FAMILY ALL SERIES PROGRAMMABLE PULSE GENERATOR 16-BIT MICROCONTROLLER APPLICATION NOTE. Fujitsu Microelectronics Europe Application Note

Figure 1. Typical System Block Diagram

UG310: XBee3 Expansion Kit User's Guide

AN523. OVERLAY CONSIDERATIONS FOR THE Si114X SENSOR. 1. Introduction. 2. Typical Application

F²MC-16FX FAMILY ALL SERIES PROGRAMMABLE PULSE GENERATOR 16-BIT MICROCONTROLLER APPLICATION NOTE. Fujitsu Microelectronics Europe Application Note

UG310: LTE-M Expansion Kit User's Guide

AN0014: EFM32 Timers TIMER

WT11I DESIGN GUIDE. Monday, 28 November Version 1.1

APPLICATION NOTE. AT11009: Migration from ATxmega64D3/128D3/192D3/256D3 Revision E to Revision I. Introduction. Features.

Low Jitter and Skew 10 to 220 MHz Zero Delay Buffer (ZDB) Description. Benefits. Low Power and Low Jitter PLL. (Divider for -2 only) GND

XGATE Library: PWM Driver Generating flexible PWM signals on GPIO pins

Course Introduction. Content 20 pages 3 questions. Learning Time 30 minutes

AN933: EFR32 Minimal BOM

90 µa max supply current 9 µa shutdown current Operating Temperature Range: 40 to +85 C 5-pin SOT-23 package RoHS-compliant

CprE 288 Introduction to Embedded Systems (Output Compare and PWM) Instructors: Dr. Phillip Jones

Hello and welcome to this Renesas Interactive Course that provides an overview of the timers found on RL78 MCUs.

High Resolution Pulse Generation

Using the Z8 Encore! XP Timer

Microcontroller: Timers, ADC

LP3943/LP3944 as a GPIO Expander

Si Data Short

The 500 Series Z-Wave Single Chip ADC. Date CET Initials Name Justification

TS A 0.65V/1µA Nanopower Voltage Detector with Dual Outputs DESCRIPTION FEATURES APPLICATIONS TYPICAL APPLICATION CIRCUIT

UM0791 User manual. Demonstration firmware for the DMX-512 communication protocol receiver based on the STM32F103Zx. Introduction

AVR42778: Core Independent Brushless DC Fan Control Using Configurable Custom Logic on ATtiny817. Features. Introduction. AVR 8-bit Microcontroller

ATF15xx Power-On Reset Hysteresis Feature. Abstract. Features. Complex Programmable Logic Device APPLICATION NOTE

AN0025: Peripheral Reflex System (PRS)

Examples of using etimer on Power Architecture devices

AN1104: Making Accurate PCIe Gen 4.0 Clock Jitter Measurements

Si Data Short

Edition Published by Infineon Technologies AG Munich, Germany 2010 Infineon Technologies AG All Rights Reserved.

BGM13P22 Module Radio Board BRD4306A Reference Manual

TSM9634F. A 1µA, SOT23 Precision Current-Sense Amplifier DESCRIPTION FEATURES APPLICATIONS TYPICAL APPLICATION CIRCUIT

Using the Break Controller (BC) etpu Function Covers the MCF523x, MPC5500, and all etpu-equipped Devices

LM4: The timer unit of the MC9S12DP256B/C

AN3252 Application note

Dual FOC Servo Motor Control on i.mx RT

AN614 A SIMPLE ALTERNATIVE TO ANALOG ISOLATION AMPLIFIERS. 1. Introduction. Input. Output. Input. Output Amp. Amp. Modulator or Driver

AT15291: Migrating QTouch Designs from SAM D MCUs to SAM C MCUs. Scope. Features. QTouch APPLICATION NOTE

Hello, and welcome to this presentation of the FlexTimer or FTM module for Kinetis K series MCUs. In this session, you ll learn about the FTM, its

CE PSoC 6 MCU Breathing LED using Smart IO

AMBA Generic Infra Red Interface

AN905 EXTERNAL REFERENCES: OPTIMIZING PERFORMANCE. 1. Introduction. Figure 1. Si5342 Block Diagram. Devices include: Si534x Si5380 Si539x

Table 1: Cross Reference of Applicable Products. INTERNAL PIC NUMBER Arm Cortex M0+ UT32M0R PWM Module QS30

AVR1311: Using the XMEGA Timer/Counter Extensions. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

Using the High Voltage Physical Layer In the S12ZVM family By: Agustin Diaz

TSM6025. A +2.5V, Low-Power/Low-Dropout Precision Voltage Reference FEATURES DESCRIPTION APPLICATIONS TYPICAL APPLICATION CIRCUIT

AN4112 Application note

EP93xx RTC Oscillator Circuit

Features + DATAIN + REFCLK RATESEL1 CLKOUT RESET/CAL. Si DATAOUT DATAIN LOS_LVL + RATESEL1 LOL LTR SLICE_LVL RESET/CAL

M16C/26 APPLICATION NOTE. Using Timer A in One-Shot Mode. 1.0 Abstract. 2.0 Introduction

AN114. Scope. Safety. Materials H AND SOLDERING TUTORIAL FOR FINE PITCH QFP DEVICES. Optional. Required. 5. Solder flux - liquid type in dispenser

AN4507 Application note

16-Bit Hardware Pulse Width Modulator Data Sheet

TC7W04FU, TC7W04FK TC7W04FU/FK. 3 Inverters. Features. Marking TOSHIBA CMOS Digital Integrated Circuit Silicon Monolithic

Hello, and welcome to this presentation of the STM32G0 digital-to-analog converter. This block is used to convert digital signals to analog voltages

Low-Power Single/Dual-Supply Dual Comparator with Reference. A 5V, Low-Parts-Count, High-Accuracy Window Detector

M16C/26 APPLICATION NOTE. Using The M16C/26 Timer in PWM Mode. 1.0 Abstract. 2.0 Introduction

Transcription:

...the world's most energy friendly microcontrollers Low Energy Timer AN0026 - Application Note Introduction This application note gives an overview of the Low Energy Timer (LETIMER) and demonstrates how to use its features to generate pulses, PWM and other waveforms while remaining in EM2 to achieve high energy efficiency. This application note includes: This PDF document Source files (zip) Example C-code Multiple IDE projects

1 Introduction...the world's most energy friendly microcontrollers The unique LETIMER TM, the Low Energy Timer, is a 16-bit timer that is available in energy mode EM2 in addition to EM1 and EM0. Because of this, it can be used for timing and output generation when most of the device is powered down, allowing simple tasks to be performed while the power consumption of the system is kept at an absolute minimum. The LETIMER runs from the LFACLK which can be clocked by the LFXO, LFRCO or HFCORECLK LE /2. If clocked by the HFCORECLK LE /2 the LETIMER and other peripherals running from the LFACLK will not be available in EM2. The LETIMER can be used to output a variety of waveforms with minimal software intervention.the waveforms include PWM, pulses with the duraction of one LFACLK LETIMER period and variable frequency waveforms. The LETIMER is also connected to the Real Time Counter (RTC), and can be configured to start counting on compare matches from the RTC. An overview of the LETIMER module is shown in Figure 1.1 (p. 2). The LETIMER is a 16-bit down-counter with two compare registers, LETIMERn_COMP0 and LETIMERn_COMP1. The LETIMERn_COMP0 register can optionally act as a top value for the counter. The repeat counter LETIMERn_REP0 allows the timer to count a specified number of times before it stops. Both the LETIMERn_COMP0 and LETIMERn_REP0 registers can be double buffered by the LETIMERn_COMP1 and LETIMERn_REP1 registers to allow continuous operation. The timer can generate a single pin output, or two linked outputs. Figure 1.1. LETIMER Overview Peripheral bus LETIMER Control and Status COMP1 (Top Buffer) = COMP1 Match (COMP1 interrupt flag) RTC event SW LFACLK LETIMERn Start Update Reload COMP0 (Top) CNT (Counter) Top load logic = 0 = COMP0 Match (COMP0 interrupt flag) Pulse Control Underflow (UF interrupt flag) pin LETn_O0 ctrl Stop 0 Pulse Control pin ctrl LETn_O1 REP0 (Repeat) Buffer Written REP1 (Repeat Buffer) = 1 Update Repeat load logic = 1 REP0 Zero (REP0 interrupt flag) REP1 Zero (REP1 interrupt flag) 2011-10-21 - an0026_rev1.01 2 www.energymicro.com

2 LETIMER Features 2.1 Compare Registers...the world's most energy friendly microcontrollers The LETIMER has two compare match registers, LETIMERn_COMP0 and LETIMERn_COMP1. Each of these compare registers are capable of generating an interrupt when the counter value LETIMERn_CNT becomes equal to their value. When LETIMERn_CNT becomes equal to the value of LETIMERn_COMP0, the interrupt flag COMP0 in LETIMERn_IF is set, and when LETIMERn_CNT becomes equal to the value of LETIMERn_COMP1, the interrupt flag COMP1 in LETIMERn_IF is set. The compare values can be set using the LETIMER_CompareSet(LETIMER_TypeDef *letimer, unsigned int comp, uint32_t value) from the efm32lib. 2.2 Top Value If COMP0TOP in LETIMERn_CTRL is set, the value of LETIMERn_COMP0 acts as the top value of the timer, and LETIMERn_COMP0 is loaded into LETIMERn_CNT on timer underflow. Otherwise the timer wraps around to 0xFFFF. The underflow interrupt flag UF in LETIMERn_IF is set when the timer reaches zero. If BUFTOP in LETIMERn_CTRL is set, the value of LETIMERn_COMP0 is buffered by LETIMERn_COMP1. In this mode, the value of LETIMERn_COMP1 is loaded into LETIMERn_COMP0 every time LETIMERn_REP0 is about to decrement to 0. 2.3 Repeat Modes By default, the timer wraps around to the top value or 0xFFFF on each underflow, and continues counting. The repeat counters can be used to get more control of the operation of the timer, including defining the number of times the counter should wrap around. There are four repeat modes available which are detailed in Table 2.1 (p. 3). Table 2.1. LETIMER Repeat Modes REPMODE Mode Description 00 Free The timer runs until it is stopped 01 One-shot The timer runs as long as LETIMERn_REP0!= 0. LETIMERn_REP0 is decremented at each timer underflow. 10 Buffered The timer runs as long as LETIMERn_REP0!= 0. LETIMERn_REP0 is decremented on each timer underflow. If LETIMERn_REP1 has been written, it is loaded into LETIMERn_REP0 when LETIMERn_REP0 is about to be decremented to 0. 11 Double The timer runs as long as LETIMERn_REP0!= 0 or LETIMERn_REP1!= 0. Both LETIMERn_REP0 and LETIMERn_REP1 are decremented at each timer underflow. The interrupt flags REP0 and REP1 in LETIMERn_IF are set whenever LETIMERn_REP0 or LETIMERn_REP1 are decremented to 0 respectively. REP0 is also set when the value of LETIMERn_REP1 is loaded into LETIMERn_REP0 in buffered mode. 2011-10-21 - an0026_rev1.01 3 www.energymicro.com

...the world's most energy friendly microcontrollers The function LETIMER_RepeatSet(LETIMER_TypeDef *letimer, unsigned int rep, uint32_t value) from the efm32lib can be used to set the values of the repeat registers. 2.3.1 Free Mode In the free running mode, the LETIMER acts as a regular timer, and the repeat counter is disabled. The LETIMER can be started by writing the START bit in LETIMERn_CMD and runs until it is stopped using the STOP bit in the same register. 2.3.2 One-shot Mode The one-shot repeat mode is the most basic repeat mode. In this mode, the repeat register LETIMERn_REP0 is decremented every time the timer underflows, and the timer stops when LETIMERn_REP0 goes from 1 to 0. In this mode, the timer counts down LETIMERn_REP0 times, i.e. the timer underflows LETIMERn_REP0 times. LETIMERn_REP0 can be written while the timer is running to allow the timer to run for longer periods at a time without stopping. 2.3.3 Buffered Mode The Buffered repeat mode allows buffered timer operation. When started, the timer runs LETIMERn_REP0 number of times. If LETIMERn_REP1 has been written since the last time it was used and it is nonzero, LETIMERn_REP1 is then loaded into LETIMERn_REP0, and counting continues the new number of times. The timer keeps going as long as LETIMERn_REP1 is updated with a nonzero value before LETIMERn_REP0 is finished counting down. If the timer is started when both LETIMERn_CNT and LETIMERn_REP0 are zero but LETIMERn_REP1 is non-zero, LETIMERn_REP1 is loaded into LETIMERn_REP0, and the counter counts the loaded number of times. 2.3.4 Double Mode The Double repeat mode works much like the one-shot repeat mode with the difference that the LETIMER counts as long as either LETIMERn_REP0 or LETIMERn_REP1 is larger than 0. 2.4 Clock Source The LETIMER clock source and its prescaler value are defined in the Clock Management Unit (CMU). The LFACLK LETIMERn has a frequency given by Equation 2.1 (p. 4) where the exponent LETIMERn is a 4 bit value in the CMU_LFAPRESC0 register. LETIMER Clock Frequency f LFACKL_LETIMERn = 32.768/2 LETIMERn (2.1) To use this module, the LE interface clock must be enabled in CMU_HFCORECLKEN0, in addition to the module clock. Clock enabling and prescaling is covered in AN0004 Clock Management Unit. 2.5 RTC Trigger The LETIMER can be configured to start on compare match events from the Real Time Counter (RTC). If RTCC0TEN in LETIMERn_CTRL is set, the LETIMER will start on a compare match on RTC compare channel 0. In the same way, RTCC1TEN in LETIMERn_CTRL enables the LETIMER to start on a compare match with RTC compare channel 1. 2.6 Underflow Output Action For each of the LETIMER outputs an underflow output action can be set. The configured output action is performed every time the counter underflows while the respective repeat register is nonzero. In PWM 2011-10-21 - an0026_rev1.01 4 www.energymicro.com

...the world's most energy friendly microcontrollers mode, the output is similarly only changed on COMP1 match if the repeat register is nonzero. The different output actions are shown in Table 2.2 (p. 5) Table 2.2. LETIMER Underflow Output Actions UF0A0/UF0A1 Mode Description 00 Idle The output is held at its idle value 01 Toggle The output is toggled on LETIMERn_CNT underflow if LETIMERn_REPx is nonzero 10 Pulse The output is held active for one clock cycle on LETIMERn_CNT underflow if LETIMERn_REPx is nonzero. It then returns to its idle value 11 PWM The output is set idle on LETIMERn_CNT underflow and active on compare match with LETIMERn_COMP1 if LETIMERn_REPx is nonzero. The LETIMER outputs must be routed to pins using the LETIMERn_ROUTE register. The selected pins must be enabled as output in the GPIO module. Pin configuration is covered in AN0012 GPIO 2.7 Interrupts There are 5 interrupts available in the LETIMER. One interrupt for when each of the Repeat Counters (REP0 and REP1) reaches zero, one when the LETIMER counter matches the value of each compare register (COMP0 and COMP1) and one when the LETIMER underflows. These interrupts can be enabled, disabled and cleared using the following functions from the efm32lib: LETIMER_IntEnable(LETIMER_TypeDef *letimer, uint32_t flags) enables interrupts LETIMER_IntDisable(LETIMER_TypeDef *letimer, uint32_t flags) disables interrupts LETIMER_IntClear(LETIMER_TypeDef *letimer, uint32_t flags) clears interrupts 2.8 Register Access and Synchronization Since the LETIMER is a Low Energy Peripheral and runs off a low frequency clock which is asynchronous to the HFCORECLK some register, writes need to be synchronized from the high frequency domain to the low frequency domain. The changes will not take effect until the synchronization is done and it takes 3 low frequency clock cycles to synchronize between the two domains. After writing to a register that requires synchronization the correspondent flag in the LETIMERn_SYNCBUSY register will be set while the synchronization is in progress. Writing to the same register before the synchronization is complete may result in undefined behavior and therefore a wait cycle must be performed to ensure the register was synchronized. This can be done using the LETIMER_Sync(LETIMER_TypeDef *letimer, uint32_t mask) function from the efm32lib. All efm32lib LETIMER functions check for synchronizations before writing the registers. 2011-10-21 - an0026_rev1.01 5 www.energymicro.com

3 Configuration...the world's most energy friendly microcontrollers The LETIMER can be easily and quickly configured using the LETIMER_Init(LETIMER_TypeDef *letimer, const LETIMER_Init_TypeDef *init) function from the efm32lib. This function allows the configuration of the following parameters: Start counting when the initialization is complete Counter running during debug Start counting on RTC COMP0 match Start counting on RTC COMP1 match Use COMP0 register as TOP value Load COMP1 to COMP0 when REP reaches 0 Idle value for output 0 Idle value for output 1 Underflow output 0 action Underflow output 1 action Repeat mode 2011-10-21 - an0026_rev1.01 6 www.energymicro.com

4 Software Examples...the world's most energy friendly microcontrollers This application note contains two software examples demonstrating the LETIMER features. On project letimer_pwm_pulse the LETIMER runs in free mode and outputs a variable duty-cycle PWM signal on output 0 and pulses on output 1. On letimer_rtc_pulses project the LETIMER is triggered by the RTC and runs in One-shot mode with pulses output. The projects are intended for both the EFM32 Starter Kit (STK) and Development Kit (DK). 4.1 PWM and Pulses Output On letimer_pwm_pulse project the LETIMER is configured to run in Free mode with PWM on output 1 (pin PD6, P5.9 on the DK protoboard) and pulses on output 0 (pin PD7, P5.10 on the DK protoboard). The value of COMP0 is used as TOP value for the counter and is loaded after each underflow. Using underflow interrupts the value of COMP1 is decremented throughout the program execution resulting in a variable PWM duty-cycle. The PWM frequency and duty-cycle can be obtained using the formulas below. PWM Frequency Equation f PWM = 32768 / TOP (4.1) PWM Duty-cycle Equation DS PWM = COMP1 / COMP0 x 100 (4.2) The purpose of this example is to demonstrate how the LETIMER can be used to output PWM and/or pulses with little CPU intervention and keeping the energy consumption to a minimum 4.2 RTC Triggered Counter The letimer_rtc_pulses project demonstrates how the RTC can be used to trigger the LETIMER. The LETIMER is configured to start counting on RTC COMP0 match with pulses on output 0 (no action on output 1) and One-shot repeat mode. Figure 4.1 (p. 8) illustrates the program flow. 2011-10-21 - an0026_rev1.01 7 www.energymicro.com

...the world's most energy friendly microcontrollers Figure 4.1. RTC Trigger COMP0IF RTC_COMP0 RTC_CNT 0 LETIMER START UFIF UFIF UFIF UFIF UFIF LETIMER0_COMP0 LETIMER0_CNT 0 REP0 = 5 REP0 = 4 REP0 = 3 REP0 = 2 REP0 = 1 REP0 = 0 LETIM_OUT0 The RTC generates a compare match after 5 seconds (RTC_COMP0 = 5) of program execution which will trigger the LETIMER to start counting. The LETIMER will count-down while LETIMERn_REP0!=0 generating a pulse on each underflow. For this project LETIMER_REP0 has the value of 5 so there will be 5 pulses generated on pin PD6 (P5.9 on the DK protoboard). Note The RTC continues counting after the compare match. If it wraps around the top value and generates a new compare match the LETIMER will not be triggered because LETIMERn_REP0 = 0. 2011-10-21 - an0026_rev1.01 8 www.energymicro.com

5 Revision History...the world's most energy friendly microcontrollers 5.1 Revision 1.01 2011-10-21 Updated IDE project paths with new kits directory. 5.2 Revision 1.00 2010-12-17 Initial revision. 2011-10-21 - an0026_rev1.01 9 www.energymicro.com

A Disclaimer and Trademarks A.1 Disclaimer...the world's most energy friendly microcontrollers Energy Micro AS intends to provide customers with the latest, accurate, and in-depth documentation of all peripherals and modules available for system and software implementers using or intending to use the Energy Micro products. Characterization data, available modules and peripherals, memory sizes and memory addresses refer to each specific device, and "Typical" parameters provided can and do vary in different applications. Application examples described herein are for illustrative purposes only. Energy Micro reserves the right to make changes without further notice and limitation to product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included information. Energy Micro shall have no liability for the consequences of use of the information supplied herein. This document does not imply or express copyright licenses granted hereunder to design or fabricate any integrated circuits. The products must not be used within any Life Support System without the specific written consent of Energy Micro. A "Life Support System" is any product or system intended to support or sustain life and/or health, which, if it fails, can be reasonably expected to result in significant personal injury or death. Energy Micro products are generally not intended for military applications. Energy Micro products shall under no circumstances be used in weapons of mass destruction including (but not limited to) nuclear, biological or chemical weapons, or missiles capable of delivering such weapons. A.2 Trademark Information Energy Micro, EFM32, EFR, logo and combinations thereof, and others are the registered trademarks or trademarks of Energy Micro AS. ARM, CORTEX, THUMB are the registered trademarks of ARM Limited. Other terms and product names may be trademarks of others. 2011-10-21 - an0026_rev1.01 10 www.energymicro.com

B Contact Information...the world's most energy friendly microcontrollers B.1 Energy Micro Corporate Headquarters Postal Address Visitor Address Technical Support Energy Micro AS P.O. Box 4633 Nydalen N-0405 Oslo NORWAY www.energymicro.com Phone: +47 23 00 98 00 Fax: + 47 23 00 98 01 B.2 Global Contacts Energy Micro AS Sandakerveien 118 N-0484 Oslo NORWAY support.energymicro.com Phone: +47 40 10 03 01 Visit www.energymicro.com for information on global distributors and representatives or contact sales@energymicro.com for additional information. Americas Europe, Middle East and Africa Asia and Pacific www.energymicro.com/americas www.energymicro.com/emea www.energymicro.com/asia 2011-10-21 - an0026_rev1.01 11 www.energymicro.com

...the world's most energy friendly microcontrollers Table of Contents 1. Introduction... 2 2. LETIMER Features... 3 2.1. Compare Registers... 3 2.2. Top Value... 3 2.3. Repeat Modes... 3 2.4. Clock Source... 4 2.5. RTC Trigger... 4 2.6. Underflow Output Action... 4 2.7. Interrupts... 5 2.8. Register Access and Synchronization... 5 3. Configuration... 6 4. Software Examples... 7 4.1. PWM and Pulses Output... 7 4.2. RTC Triggered Counter... 7 5. Revision History... 9 5.1. Revision 1.01... 9 5.2. Revision 1.00... 9 A. Disclaimer and Trademarks... 10 A.1. Disclaimer... 10 A.2. Trademark Information... 10 B. Contact Information... 11 B.1. Energy Micro Corporate Headquarters... 11 B.2. Global Contacts... 11 2011-10-21 - an0026_rev1.01 12 www.energymicro.com

...the world's most energy friendly microcontrollers List of Figures 1.1. LETIMER Overview... 2 4.1. RTC Trigger... 8 2011-10-21 - an0026_rev1.01 13 www.energymicro.com

...the world's most energy friendly microcontrollers List of Tables 2.1. LETIMER Repeat Modes... 3 2.2. LETIMER Underflow Output Actions... 5 2011-10-21 - an0026_rev1.01 14 www.energymicro.com

...the world's most energy friendly microcontrollers List of Equations 2.1. LETIMER Clock Frequency... 4 4.1. PWM Frequency Equation... 7 4.2. PWM Duty-cycle Equation... 7 2011-10-21 - an0026_rev1.01 15 www.energymicro.com