| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 | /**  ******************************************************************************  * @file    usart.c  * @brief   This file provides code for the configuration  *          of the USART instances.  ******************************************************************************  * @attention  *  * <h2><center>© Copyright (c) 2023 STMicroelectronics.  * All rights reserved.</center></h2>  *  * This software component is licensed by ST under BSD 3-Clause license,  * the "License"; You may not use this file except in compliance with the  * License. You may obtain a copy of the License at:  *                        opensource.org/licenses/BSD-3-Clause  *  ******************************************************************************  *//* Includes ------------------------------------------------------------------*/#include "usart.h"/* USER CODE BEGIN 0 */typedef struct __FILE FILE;/* USER CODE END 0 */UART_HandleTypeDef huart1;/* USART1 init function */void MX_USART1_UART_Init(void){  /* USER CODE BEGIN USART1_Init 0 */  /* USER CODE END USART1_Init 0 */  /* USER CODE BEGIN USART1_Init 1 */  /* USER CODE END USART1_Init 1 */  huart1.Instance = USART1;  huart1.Init.BaudRate = 115200;  huart1.Init.WordLength = UART_WORDLENGTH_8B;  huart1.Init.StopBits = UART_STOPBITS_1;  huart1.Init.Parity = UART_PARITY_NONE;  huart1.Init.Mode = UART_MODE_TX_RX;  huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;  huart1.Init.OverSampling = UART_OVERSAMPLING_16;  if (HAL_UART_Init(&huart1) != HAL_OK)  {    Error_Handler();  }  /* USER CODE BEGIN USART1_Init 2 */  /* USER CODE END USART1_Init 2 */}void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle){  GPIO_InitTypeDef GPIO_InitStruct = {0};  if(uartHandle->Instance==USART1)  {  /* USER CODE BEGIN USART1_MspInit 0 */  /* USER CODE END USART1_MspInit 0 */    /* USART1 clock enable */    __HAL_RCC_USART1_CLK_ENABLE();    __HAL_RCC_GPIOA_CLK_ENABLE();    /**USART1 GPIO Configuration    PA9     ------> USART1_TX    PA10     ------> USART1_RX    */    GPIO_InitStruct.Pin = GPIO_PIN_9;    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);    GPIO_InitStruct.Pin = GPIO_PIN_10;    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;    GPIO_InitStruct.Pull = GPIO_NOPULL;    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);  /* USER CODE BEGIN USART1_MspInit 1 */  /* USER CODE END USART1_MspInit 1 */  }}void HAL_UART_MspDeInit(UART_HandleTypeDef* uartHandle){  if(uartHandle->Instance==USART1)  {  /* USER CODE BEGIN USART1_MspDeInit 0 */  /* USER CODE END USART1_MspDeInit 0 */    /* Peripheral clock disable */    __HAL_RCC_USART1_CLK_DISABLE();    /**USART1 GPIO Configuration    PA9     ------> USART1_TX    PA10     ------> USART1_RX    */    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_9|GPIO_PIN_10);  /* USER CODE BEGIN USART1_MspDeInit 1 */  /* USER CODE END USART1_MspDeInit 1 */  }}/* USER CODE BEGIN 1 */#ifdef __GNUC__  /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf     set to 'Yes') calls __io_putchar() */  #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)#else  #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)#endif /* __GNUC__ *//**  * @brief  Retargets the C library printf function to the USART.  * @param  None  * @retval None  */PUTCHAR_PROTOTYPE{  /* Place your implementation of fputc here */  /* e.g. write a character to the EVAL_COM1 and Loop until the end of transmission */  HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);    return ch;}/* USER CODE END 1 *//************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
 |