[STM32U3] 【STM32U385RG 测评】——2.串口USART1打印测试

[复制链接]
 楼主| 龙鳞铁碎牙 发表于 2025-7-10 09:15 | 显示全部楼层 |阅读模式
本帖最后由 龙鳞铁碎牙 于 2025-7-12 10:14 编辑

#申请原创# #技术资源# #每日话题# #申请开发板#  根据原理图可以,使用的串口是USART1 对应引脚是PA9 PA10。 55584686f144df2955.png
下面我开始从0到1完成整个USART1工程创建到打印测试的整个流程
1.打开cubumx
79453686f1497967ef.png 59761686f14badd2e0.png 18233686f14c873a75.png
2.选择外部时钟
26547686f14edd9aec.png 91682686f15269ada3.png
3.选择好串口USART1
66769686f1551cd154.png
3.选择用户LED PA5
15185686f1583539f1.png 97388686f159d98dfb.png 35276686f15d336605.png 53370686f163335643.png 14565686f1647cc65d.png
4.配置工程参数
34394686f1615ea7ee.png
5.打开KEIL工程
先重定义printf
先添加头文件#include <stdio.h>
67673686f16c1df2ce.png
在串口USART1.c文件添加
/* USER CODE BEGIN 1 */
int fputc(int ch, FILE *f)
{
  HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);
  return ch;
}
/* USER CODE END 1 */

到此完成了printf的重定义
5.在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 */


  printf("欢迎来到STM32意法半导体公司 \n\r");
  printf("【NUCLEO-STM32U385RG】——2.串口USART1打印测试\n\r");
  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

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

编译烧录代码
6.打开串口助手,115200波特率
64327686f17acec940.png 31588686f17ce0aa0f.png
可以看到串口prinf工程测试正常
7.附件是我的工程代码
USART1.zip (1.36 MB, 下载次数: 0)
小小蚂蚁举千斤 发表于 2025-7-28 22:42 | 显示全部楼层
串口打印很重要的信息记录
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

47

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部