利用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快速创建点灯带调试输出工程案例的主要内容,如果未能解决你的问题,请参考以下文章