NUCLEO_STM32L4R5ZI 学习日记 串口打印 CubeMx hal库
创建工程,具体可见上一篇学习日记
还是使用默认配置。(刚开始使用的是usart3,没有反应,后来查阅手册知道因为板载stlink 连接的是lpuart1串口)
这里附上手册链接MB1312A 144pin 使用手册
5.11这里说到stlink连接的是LPUart1
lpuuart1 串口中断使能,设置优先级。
打开工程
添加.S文件(每次生成完就要添加一下,这里我也不知道怎么修改)
双击Drivers,添加startup_stm32.s文件,不然会报错。
代码
第一步
// 主函数头文件要包含
#include <stdio.h>
在main函数外面写这个函数
int fputc(int c, FILE *stream) //重写fputc函数
{
/*
hlpuart1是工具生成代码定义的UART1结构体,
如果以后要使用其他串口打印,只需要把这个结构体改成其他UART结构体。
*/
HAL_UART_Transmit(&hlpuart1, (unsigned char *)&c, 1, 1000);
return 1;
}
while(1)里面写上
while (1)
{
/* USER CODE END WHILE */
printf("Hallo word!\r\n");
HAL_Delay(500);
/* USER CODE BEGIN 3 */
}
查看窗口打印数据
注意设置波特率,我这里默认是209700
可以在配置里看到
串口的发送和接收待更新,我还没搞懂怎么用,如有错误还望大家指正