[STM32L5] 【STM32L562E_DK开发板】--3.串口打印
2026/5/2 9:24:24 网站建设 项目流程

本篇讲述串口打印功能。
一.原理与准备
1.开发板套件配有一个PMOD扩展板,上面有串口接线端子CN2.硬件接线如下。


2.由扩展板接到主板上,反向找出串口引脚PC10、PC11,查阅datasheet分别为UART3 TX、RX.如下图红框所示。


3.开发板上使用到了STG3692QTR两路复用开关,如上图绿框所示,对应MCU控制引脚如下。我们使用到串口,将这两引脚置高。



二.代码准备
1.串口配置


2.复用开关引脚配置


3.生成代码。在Keil下,切记要勾选MicroLIB如下,要不然输出打印不出来。


4.修改代码。这里在main.c修改,包含添加头文件,串口映射,两路复用开关置高,循环打印串口日志。源文件附在附件见文末。

复制
  1. #include"main.h"
  2. #include"stdio.h"
  3. /*
  4. main函数
  5. */
  6. intmain(void)
  7. {
  8. /* USER CODE BEGIN 1 */
  9. /* USER CODE END 1 */
  10. /* MCU Configuration--------------------------------------------------------*/
  11. /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  12. HAL_Init();
  13. /* USER CODE BEGIN Init */
  14. /* USER CODE END Init */
  15. /* Configure the system clock */
  16. SystemClock_Config();
  17. /* USER CODE BEGIN SysInit */
  18. /* USER CODE END SysInit */
  19. /* Initialize all configured peripherals */
  20. MX_GPIO_Init();
  21. MX_USART3_UART_Init();
  22. MX_ICACHE_Init();
  23. HAL_GPIO_WritePin(GPIOF, GPIO_PIN_11, GPIO_PIN_SET);
  24. HAL_GPIO_WritePin(GPIOF, GPIO_PIN_12, GPIO_PIN_SET);
  25. HAL_Delay(500U);
  26. /* USER CODE BEGIN 2 */
  27. printf("Are You OK !\r\n");
  28. /* USER CODE END 2 */
  29. /* Infinite loop */
  30. /* USER CODE BEGIN WHILE */
  31. while(1)
  32. {
  33. /* USER CODE END WHILE */
  34. printf("Welcome to use STM32L562E_DK Board !\r\n");
  35. HAL_Delay(2000U);
  36. /* USER CODE BEGIN 3 */
  37. }
  38. /* USER CODE END 3 */
  39. }
复制
  1. /*
  2. 串口重映射
  3. */
  4. intfputc(intch, FILE *f)
  5. {
  6. HAL_UART_Transmit(&huart3, (uint8_t*)&ch,1,0xFFFF);
  7. returnch;
  8. }



三.测验
编译烧录,设置打开串口助手,复位开发板,可以看到串口日打印如下。



至此,实现串口日志打印功能,可以方便调试测验。

main.zip(2.41 KB, 下载次数: 0)



---------------------
作者:dirty123
链接:https://bbs.21ic.com/forum.php?mod=viewthread&tid=3435870
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询