利用STM32CubeMX快速创建点灯带调试输出工程案例

Posted perseverance52

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用STM32CubeMX快速创建点灯带调试输出工程案例相关的知识,希望对你有一定的参考价值。

利用STM32CubeMX快速创建点灯带调试输出工程案例


  • ✨这里以创建芯片STM32F103C8T6工程为例。
  • 🌿关于STM32CubeMX软件安装这里就不做介绍了。
  • 📍STM32CubeMX软件下载: https://www.st.com/zh/development-tools/stm32cubemx.html#get-software

📑配置过程

🎉由于录制的gif文件过大没法传上来,只能以图文介绍。

1. 🌿配置RCC时钟

  • ⏰HSE配置为外部晶振
  • 📌在时钟树配置页,HCLK直接配置为72MHz

2. 🌿GPIO输出引脚配置

📖将PC13 IO口配置为输出,模式为推挽,IO口输出速度和初始状态可以根据需求配置。

3. 🌿串口1配置

选择异步串口,波特率可以自定义设定,这里选择默认的115200

4. 🌿配置SYS调试DEBUG选项

⌛如果你是采用串口烧录方式,此选型必须开启Serial Wire,才能在下次烧录时可以使用串口进行烧录。

5. 🌿工程保存设置项


📚设置好以上内容后,可以点击GENERATE CODE生成工程

串口重定向,实现printf打印

  • 📋在usart.c文件中添加串口重定向代码:
#include "stdio.h"
/*可调用printf*/
int fputc(int ch,FILE *f)

    /*&huart1指的是串口1,如果用别的串口就修改数字*/
    HAL_UART_Transmit(&huart1 , (uint8_t *)&ch , 1 , 0xffff);
    return ch;

  • ✨在Keil菜单上的魔术棒图标选项-Target中勾选Use MicroLIB库。
  • 🔖在调用printf函数的地方包含#include "stdio.h"

📝main函数代码

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 */

  /* USER CODE END 2 */

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

    /* USER CODE BEGIN 3 */
				HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET);
			HAL_Delay(1000);
		HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET);
			HAL_Delay(1000);
		printf("Perseverance51 \\n");
  
  /* USER CODE END 3 */

⛳案例源码

链接:https://pan.baidu.com/s/1pJ6nXW1yHItYrHyWCBGmfw 
提取码:j0g9

以上是关于利用STM32CubeMX快速创建点灯带调试输出工程案例的主要内容,如果未能解决你的问题,请参考以下文章

003_STM32CubeMX点灯

003_STM32CubeMX点灯

STM32CubeMX使用之实现点灯大业

STM32F103VET6基于STM32CubeMX利用EXTI外部中断测量PWM频率

STM32 CubeMX 学习:001-GPIO的使用

STM32CubeMX快速构造工程模板