/******************** (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 white noise 
*                      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 white noise. This method 
consists on sampling the input signal OSR times and shifting the result by the 
required additional bits. 
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).
After OSR DMA transfer from the ADC data register to a buffer in RAM, the new 
sample is computed. 

When uncommenting the line #define 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 
         
How to use it
=============

+ EWARMv5:
    - Open the OVERSAMPLING_AN_WhiteNoiseMethod.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_WhiteNoiseMethod.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_WhiteNoiseMethod.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_WhiteNoiseMethodP.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******
