/******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
* File Name          : readme.txt
* Author             : MCD Application Team
* Version            : V1.0.1
* Date               : 06/20/2008
* Description        : Description of the AN2668 Application note's triangular 
*                      dither firmware.
********************************************************************************
* 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.
*******************************************************************************/
Firmware description
===================
This firmware gives the STM32 ADC oversampling using triangular dither. This method 
consists on adding a triangular signal to the input signal and sampling it with 
a rate of 1s. 
The timer TIM2 is used to generate the input signal sampling frequency. 
The STM32 ADC1 clock is configured to 14Mhz and the channel 10 is converted (PC.00).
The triangular dither is generated using the Timer TIM3. 
After OSR DMA transfer from the ADC data register to a buffer in RAM, the new 
sample is computed. 

When uncommenting the Thermal_Noise_Measure, the ADC thermal noise can be 
determined.

When uncommenting the line #define Oversampling_Test, the oversampled data is 
displayed on the hyperterminal and can be captured in a file for the evaluation.
results.
The Hyperterminal configuration is 115.2KB and 8-bit data with 1 stop bit.

Directory contents
==================
  + project : containing the project workspace and project
  
  + include : containing the user header files 
    - stm32f10x_conf.h  Library Configuration files
    - stm32f10x_it.h    Interrupt handlers header files
    - oversampling.h    oversampling header file
    
  + source  : containg the user source files 
    - oversampling.c    oversampling source file 
    - stm32f10x_it.c    Interrupt handlers
    - main.c            Main program

Hardware environment
====================
 - Connect the input signal to be converted on ADC Channel 10: PC.00 
 - Connect a RC signal on the TIM3 output channel  
 - Use a hardware network to add the input signal and the traingular signal 
   generated by the Timer TIM3. 
         
How to use it
=============


+ EWARMv5:
    - Open the OVERSAMPLING_AN_TriagularDitherMethod.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 OVERSAMPLING_AN_TriagularDitherMethod.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)

 + RVMDK
    - Open the OVERSAMPLING_AN_TriagularDitherMethod.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)
    
 + HiTOP     
    - Open the HiTOP toolchain, a "using projects in HiTOP" window appears.
    - Select open an existing project.
    - Browse to open the OVERSAMPLING_AN_TriagularDitherMethod.htp:
        - under STM32F10B_EVAL directory: to select the project for STM32 Medium-density devices.
        - under STM32F10E_EVAL directory: to select the project for STM32 High-density devices
    - Rebuild all files: Project->Rebuild all
    - Click on ok in the "download project" window.
    - Run program: Debug->Go(F5).
    Note: 
          - When using High-density devices, it is mandatory to reset the target
            before loading the project into  target.
          - It is recommended to run the reset script (click on TR button in the
            toolbar menu) after loading the project into target.

NOTE:
 - 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. 

******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE******
