/**
  @page OutputCompareActiveMode AN2592 OutputCompareActiveMode Readme file
  
  @verbatim
  ******************** (C) COPYRIGHT 2009 STMicroelectronics *******************
  * @file     OutputCompareActiveMode/readme.txt 
  * @author   MCD Application Team
  * @version  V3.0.0
  * @date     04/27/2009
  * @brief    Description of the AN2592 Application note's OutputCompareActiveMode
  *           example.
  ******************************************************************************
  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
  * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
  * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
  * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
  ******************************************************************************
   @endverbatim

@par Example Description 

This example demonstrates how to perform a long range output compare, active mode,
using timer link system.

Two timers are used for this example TIM2 and TIM3, they are synchronized as follows:

- TIM2 is configured to be used as slave for the TIM3.
- TIM2 is used in One Pulse Mode: at each pulse received on its input, a pulse 
  will be generated after the delay loaded in the corresponding registers (TIM2_CCRx). 
- TIM3 generates the input signal for TIM2.
  TIM3 OC1 signal is used as Trigger Output(TRGO), this event will trigger the slave
  Timer (TIM2) counter, so the slave mode is the Trigger mode.
  
  TIM3 Configuration: 
  - Output Compare Active Mode: the TIM3 delay is the LSB part of the TIM2 output signal.
  - TIM3CLK = 72MHz
  - Prescaler = 0

  TIM2 Configuration: 
  - Output Compare Active Mode: the TIM2 delays are the MSB parts of the TIM2 output signals.
  - TIM2CLK = 72MHz
  - Prescaler = 65535 
 
  TIM2 Output Compare delays compute:

  - CC1 delay = (MSB1*65535 + LSB) / TIM2CLK  
              = 44.74 s

  - CC2 delay = (MSB2*65535 + LSB) / TIM2CLK 
              = 37.28 s 

  - CC3 delay = (MSB3*65535 + LSB) / TIM2CLK 
              = 29.82 s 

The delay correspond to the time difference between PB.00 and TIM2_CHx signal rising edges

@par Directory contents 

  - OutputCompareActiveMode/inc/stm32f10x_conf.h  Library Configuration file
  - OutputCompareActiveMode/src/stm32f10x_it.c    Interrupt handlers
  - OutputCompareActiveMode/inc/stm32f10x_it.h    Interrupt handlers header file
  - OutputCompareActiveMode/src/main.c            Main program

@par Hardware and Software environment 

  - This example runs on STM32F10x High-Density, STM32F10x Medium-Density and
    STM32F10x Low-Density Devices.
  
  - This example has been tested with STMicroelectronics STM3210E-EVAL (STM32F10x 
    High-Density) and STM3210B-EVAL (STM32F10x Medium-Density) evaluation boards 
    and can be easily tailored to any other supported device and development 
    board.

  - STM3210E-EVAL and STM3210B-EVAL Set-up 
    - Connect the following pins to an oscilloscope to monitor the different waveform.
        - PA.00 (TIM2_CH1)
        - PA.01 (TIM2_CH2)
        - PA.02 (TIM2_CH3)
        - PB.00 
  	         
@par How to use it ? 

 - RVMDK 
    - Open the Timer_OutputCompare_Active.Uv2 project
    - In the build toolbar select the project config:
        - STM3210B-EVAL: to configure the project for STM32 Medium-density devices
        - STM3210E-EVAL: to configure the project for STM32 High-density devices
    - Rebuild all files: Project->Rebuild all target files
    - Load project image: Debug->Start/Stop Debug Session
    - Run program: Debug->Run (F5)    

 - EWARMv5 
    - Open the Timer_OutputCompare_Active.eww workspace.
    - In the workspace toolbar select the project config:
        - STM3210B-EVAL: to configure the project for STM32 Medium-density devices
        - STM3210E-EVAL: to configure the project for STM32 High-density devices
    - Rebuild all files: Project->Rebuild all
    - Load project image: Project->Debug
    - Run program: Debug->Go(F5)

 - RIDE 
    - Open the Timer_OutputCompare_Active.rprj project.
    - In the configuration toolbar(Project->properties) select the project config:
       - STM3210B-EVAL: to configure the project for STM32 Medium-density devices
       - STM3210E-EVAL: to configure the project for STM32 High-density devices
    - Rebuild all files: Project->build project
    - Load project image: Debug->start(ctrl+D)
    - Run program: Debug->Run(ctrl+F9)  

@note
 - Low-density devices are STM32F101xx and STM32F103xx microcontrollers where
   the Flash memory density ranges between 16 and 32 Kbytes.
 - Medium-density devices are STM32F101xx and STM32F103xx microcontrollers where
   the Flash memory density ranges between 32 and 128 Kbytes.
 - High-density devices are STM32F101xx and STM32F103xx microcontrollers where
   the Flash memory density ranges between 256 and 512 Kbytes.

 * <h2><center>&copy; COPYRIGHT 2009 STMicroelectronics</center></h2>
 */
