基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf

本文基于正点原子的阿波罗F429开发版.
利用STM32CubeMX生成初始化代码.为后面的工程做好铺垫.

1.建立项目

1.下载安装STM32CubeMX和STM32F4的代码库(自行百度)
2.新建一个项目.打开STM32CubeMX------>File------>New Project.进入到如下图的界面.
基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第1张图片
3.在(1)处输入"F429IG"双击(2)处.
基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第2张图片
4.开启高速外部晶振.

5基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第3张图片
5.配置JTAG
基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第4张图片
6配置串口
基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第5张图片
7.配置系统时钟:在(3)处输入180按回车键即可基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第6张图片
8.配置工程1.(1)是工程名字.2是所在文件夹,不要放在有中文名的文件夹,防止出错.基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第7张图片
9.配置工程2.
基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第8张图片
10点击(1)生成代码,点击(2)打开代码.
11.点击Project------>Options for target------>Debug------>Settings(界面右上角的那个)------>flash DOwnload------>Reset and Run打上勾即可,如下图所示.
基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第9张图片
12.打开main.c,在头文件下方添加一个:#include "stdio.h"的头文件

/* Includes ------------------------------------------------------------------*/
#include "main.h"
#include "usart.h"
#include "gpio.h"

/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include "stdio.h"
/* USER CODE END Includes */

再在main函数上面添加一个发送回调函数:

/* USER CODE BEGIN 0 */
int fputc(int ch, FILE *f)
{
	if (ch == '\n') 
	{
		HAL_UART_Transmit(&huart1, (void *)"\r", 1,30000);
	}
	HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);
	return ch;
}
/* USER CODE END 0 */

在main函数添加一个发送代码:

  /* USER CODE BEGIN WHILE */
  printf("程序开始\r\n");
  while (1)
  {
    /* USER CODE END WHILE */

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

编译代码.
13.拿开发版把烧录器和串口连接到电脑,打开电脑串口监控软件.把程序烧录进去…串口监听软件记得波特率选对.正确的话就能看到接收到"程序开始".
基于正点原子阿波罗STM32F429+STM32CubeMX实现串口printf_第10张图片
源码下载地址:https://download.csdn.net/download/u013809244/12066171
点击跳转到源码下载地址

你可能感兴趣的:(STM32)