STM32CubeMX串口配置及库printf打印

最新版STM32CubeMXV5.0.0已经上传到了网盘,或者自己通过软件在线升级。

    STM32CubeMX运行环境搭建包含两个部分。首先是 Java运行环境安装,其次是STM32CubeMX软件安装。Java 软件和STM32CubeMX 软件都可以在官网找到最新的下载。

        1. Java运行环境,大家可以到 Java 官网 www.java.com下载最新的 Java 软件;

        2.STM32CubeMX可以在ST官网www.st.com/content/st_com/zh.html下载最新的版本;

        3.或者在我网盘上下载全部所需软件资料,链接:https://pan.baidu.com/s/1kWUH08n 密码:4th4

 

新版的STM32CubeMXV5.0.0界面变化较大。

 

1、打开STM32CubeMXV5.0.0,创建工程,配置串口。

STM32CubeMX串口配置及库printf打印_第1张图片

STM32CubeMX串口配置及库printf打印_第2张图片

STM32CubeMX串口配置及库printf打印_第3张图片

 

STM32CubeMX串口配置及库printf打印_第4张图片

 

STM32CubeMX串口配置及库printf打印_第5张图片

 

STM32CubeMX串口配置及库printf打印_第6张图片

 

 

2、打开工程,编译。

/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include     //第一步包含头文件
/* USER CODE END Includes */

......
......
......

/* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */
int fputc(int c, FILE *stream)    //重写fputc函数
{
 /*
    huart1是工具生成代码定义的UART1结构体,
    如果以后要使用其他串口打印,只需要把这个结构体改成其他UART结构体。
*/
    HAL_UART_Transmit(&huart1, (unsigned char *)&c, 1, 1000);   
    return 1;
}
/* USER CODE END 0 */

......
......
......
int main(void)
{
  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_USART1_UART_Init();
  /* USER CODE BEGIN 2 */
  printf("sudaroot\r\n");        //使用库的printf
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

3、不成功的话,检查一下下面这个√有没有勾上。

STM32CubeMX串口配置及库printf打印_第7张图片

 

全篇完。

本人博客仅仅代表我个人见解方便记录成长笔记。

若有与 看官老爷见解有冲突,我坚信看官老爷见解是对的,我的是错的。

感谢~!

你可能感兴趣的:(STM32)