/******************** (C) COPYRIGHT 2009 STMicroelectronics ********************
* File Name          : readme.txt
* Author             : MCD Application Team
* Version            : V1.0.0
* Date               : 02/19/2009
* Description        : Description of the AN2931: Implementing the ADPCM algorihtm
*                      in high-density STM32F103xx microcontrollers.
********************************************************************************
* THE PRESENT SOFTWARE 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 SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/

Firmware description
===================
This firmware has been developped on the STM3210E-EVAL board.
It gives an ADPCM playback demonstration.

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
    - main.h            main header file
    - adpcm.h           ADPCM algorithe header file
    - fsmc_nor.h        STM3210E-EVAL board NOR Flash memory driver header file           
    - i2s_codec.h       STM3210E-EVAL board audio codec driver header file
    - lcd.h             STM3210E-EVAL board LCD driver header file
    - fonts.h           LCD fontsize definition
                                             
  + source  : containing the user source files 
    - adpcm.c           ADPCM algorithm source file 
    - stm32f10x_it.c    Interrupt handlers
    - main.c            main program
    - fsmc_nor.c        STM3210E-EVAL board NOR Flash memory driver           
    - i2s_codec.c       STM3210E-EVAL board audio codec driver            
    - lcd.c             STM3210E-EVAL board LCD driver


Hardware environment
====================
 - STM3210E-EVAL board. 
 - A headphone should be connected to the audio jack of the STM3210E-EVAL board.
 - A PC and an USB cable to load the ADPCM file into the NOR Flash.
         
How to use it
=============


+ EWARM:
    - Open the ADPCM.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 ADPCM.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 ADPCM.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 ADPCM.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 2009 STMicroelectronics *****END OF FILE******
