2019-07-15 15:37:15 +01:00

119 lines
5.2 KiB
Plaintext

/**
@page UART_Printf UART Printf example
@verbatim
******************** (C) COPYRIGHT 2016 STMicroelectronics *******************
* @file UART/UART_Printf/readme.txt
* @author MCD Application Team
* @brief Description of the UART Printf example.
******************************************************************************
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
@endverbatim
@par Example Description
This example shows how to re-route the C library printf function to the UART.
The UART outputs a message on the HyperTerminal.
Board: STM32F303ZE-Nucleo Rev B
Tx Pin: PD.08
Rx Pin: PD.09
_________________________
| ______________| _______________
| |USART | | HyperTerminal |
| | | | |
| | TX |______________________|RX |
| | | | |
| | | ST-Link Cable | |
| | | | |
| | RX |______________________|TX |
| | | | |
| |______________| |_______________|
| |
| |
| |
| |
|_STM32_Board_____________|
LED2 is ON when there is an error occurrence.
The USART is configured as follows:
- BaudRate = 9600 baud
- Word Length = 8 Bits (7 data bit + 1 parity bit)
- One Stop Bit
- Odd parity
- Hardware flow control disabled (RTS and CTS signals)
- Reception and transmission are enabled in the time
@note USARTx/UARTx instance used and associated resources can be updated in "main.h"
file depending hardware configuration used.
@note When the parity is enabled, the computed parity is inserted at the MSB
position of the transmitted data.
@par Directory contents
- UART/UART_Printf/Inc/stm32f3xx_hal_conf.h HAL configuration file
- UART/UART_Printf/Inc/stm32f3xx_it.h IT interrupt handlers header file
- UART/UART_Printf/Inc/main.h Header for main.c module
- UART/UART_Printf/Src/stm32f3xx_it.c Interrupt handlers
- UART/UART_Printf/Src/main.c Main program
- UART/UART_Printf/Src/stm32f3xx_hal_msp.c HAL MSP module
- UART/UART_Printf/Src/system_stm32f3xx.c STM32F3xx system source file
@par Hardware and Software environment
- This example runs on STM32F303xE devices.
- This example has been tested with STM32F303ZE-Nucleo Rev B board and can be
easily tailored to any other supported device and development board.
- STM32F303ZE-Nucleo Rev B Set-up:
Connect ST-Link cable to the PC USB port to display data on the HyperTerminal.
A virtual COM port will then appear in the HyperTerminal.
@note Make sure that :
SB5 is ON and SB6 is ON for USART3 communication between target and ST-Link (by default)
- Hyperterminal configuration:
- Data Length = 7 Bits
- One Stop Bit
- Odd parity
- BaudRate = 9600 baud
- Flow control: None
@par How to use it ?
In order to make the program work, you must do the following :
- Open your preferred toolchain
- Rebuild all files and load your image into target memory
- Run the example
* <h3><center>&copy; COPYRIGHT STMicroelectronics</center></h3>
*/