/**
  @page GPIO_SRAM AN2548 GPIO_SRAM Readme file
  
  @verbatim
  ******************** (C) COPYRIGHT 2009 STMicroelectronics *******************
  * @file GPIO_SRAM/readme.txt 
  * @author   MCD Application Team
  * @version  V2.0.0
  * @date     04/27/2009
  * @brief    Description of the AN2548 Application note's GPIO_SRAM.
  ******************************************************************************
  * 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 Description 

This example shows how the DMA can be used to acquire data from a GPIO (parallel) 
port, synchronised with an (external) clock signal. (for the sake of this demo, the
clock is generated by software toggling GPIOA pin 6). 
The control of the DMA channel is done through the TIM3 channel 1 (Input Capture 
Mode) which is using the DMA channel 6. 
This is a non standard utilisation of the DMA as the peripheral controlling the DMA 
request (TIM3) is neither the source, nor the destination of the DMA data transfer.
Instead, the data source is a GPIO port (PD0-PD15) - programmed in GPIO input mode
and the data destination is a RAM buffer (accessed by the DMA Channel 6 in circular mode)

The TIMCLK frequency is set to 72 MHz, and used in Input Capture/DMA Mode. 

The system clock is set to 72MHz.


@par Directory contents 

  - GPIO_SRAM/inc/stm32f10x_conf.h  Library Configuration file
  - GPIO_SRAM/src/stm32f10x_it.c    Interrupt handlers
  - GPIO_SRAM/inc/stm32f10x_it.h    Header for stm32f10x_it.c
  - GPIO_SRAM/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 STM3210B-EVAL  evaluation 
    boards and can be easily tailored to any other supported device and development 
    board.  
  
  - STM3210B-EVAL Set-up
     - Connect a signal generator on PD.00 to PD.15.
     - In the example, the PA.06 (capture clock signal) is driven internally (by SW).
       By removing the SW control on this pin (leaving the GPIO in input floating mode),
       an external clock signal can be used. Alternativelly, PA.06 may be driven externally
       (leaving PA.06 in input floating mode - alternate function).   

  
@par How to use it ? 

In order to load the GPIO_SRAM code, you have do the following:

 - EWARM: 
    - Open the GPIO_SRAM.eww workspace
    - In the workspace toolbar select the project config:
        - STM3210B-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 GPIO_SRAM.rprj project
    - In the configuration toolbar(Project->properties) select the project config:
        - STM3210B-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 GPIO_SRAM.Uv2 project
    - In the build toolbar select the project config:  
        - STM3210B-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)

@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>
 */
