/**
  @page DMA_USARTTransfer Communication between two USART using DMA example
  
  @verbatim
  ******************** (C) COPYRIGHT 2014 STMicroelectronics *******************
  * @file    DMA/DMA_USARTTransfer/readme.txt 
  * @author  MCD Application Team
  * @version V1.4.0
  * @date    24-July-2014
  * @brief   Description of the USART Communication Data Exchange using DMA example.
  ******************************************************************************
  *
  * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
  * You may not use this file except in compliance with the License.
  * You may obtain a copy of the License at:
  *
  *        http://www.st.com/software_license_agreement_liberty_v2
  *
  * Unless required by applicable law or agreed to in writing, software 
  * distributed under the License is distributed on an "AS IS" BASIS, 
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  *
  ******************************************************************************
   @endverbatim

@par Example Description 

This example provides a basic communication between USART1 and USART2 using DMA2 
capability.

First, the DMA transfers data from TxBuffer2 buffer to USART2 Transmit data 
register, then this data is sent to USART1. Data received by USART1 is transferred
by DMA and stored in RxBuffer1 then compared with the send ones and the result 
of this comparison is stored in the "TransferStatus1" variable.
 
In the same time, the DMA transfers data from TxBuffer1 buffer to USART1 Transmit
data register, then this data is sent to USART2. Data received by USART2 is
transferred by DMA and stored in RxBuffer2 then compared with the send ones and
the result of this comparison is stored in the "TransferStatus2" variable. 

USART1 and USART2 configured as follow:
  - BaudRate = 9600 
  - Word Length = USART_WordLength_7b
  - Stop Bit = USART_StopBits_1
  - Parity = USART_Parity_No
  - Hardware flow control disabled (RTS and CTS signals)
  - Receive and transmit enabled

@par Directory contents 

  - DMA/DMA_USARTTransfer/stm32f0xx_conf.h    Library Configuration file
  - DMA/DMA_USARTTransfer/stm32f0xx_it.c      Interrupt handlers
  - DMA/DMA_USARTTransfer/stm32f0xx_it.h      Interrupt handlers header file
  - DMA/DMA_USARTTransfer/main.c              Main program
  - DMA/DMA_USARTTransfer/main.h              Main program header file
  - DMA/DMA_USARTTransfer/system_stm32f0xx.c  STM32F0xx system source file
  
@note The "system_stm32f0xx.c" is generated by an automatic clock configuration 
      tool and can be easily customized to meet user application requirements. 
      To select different clock setup, use the "STM32F0xx_Clock_Configuration_VX.Y.Z.xls" 
      provided with the AN4055 package available on <a href="http://www.st.com/internet/mcu/class/1734.jsp">  ST Microcontrollers </a>
                     
@par Hardware and Software environment

  - This example runs on STM32F0xx devices.
  
  - This example has been tested with STMicroelectronics STM32091C-EVAL including 
    respectively STM32F091VCT6 devices and can be easily tailored to any other 
    supported device and development board

  - STM32091C-EVAL Set-up
    - Connect USART1 TX pin (PA.09) to USART2 RX pin (PD.06)
    - Connect USART1 RX pin (PA.10) to USART2 TX pin (PD.05)

@par How to use it ? 

In order to make the program work, you must do the following :
 - Copy all source files from this example folder to the template folder under
   Project\STM32F0xx_StdPeriph_Templates
 - Open your preferred toolchain 
 - If the used device is STM32F091VCT6 choose STM32F091 project
 - Rebuild all files and load your image into target memory
 - Run the example

 * <h3><center>&copy; COPYRIGHT STMicroelectronics</center></h3>
 */
