stm32(HAL库)使用printf函数打印到串口

目录

1、简介

[2.1 基础配置](#2.1 基础配置)

[2.1.1 SYS配置](#2.1.1 SYS配置)

[2.1.2 RCC配置](#2.1.2 RCC配置)

[2.2 串口外设配置](#2.2 串口外设配置)

[2.3 项目生成](#2.3 项目生成)

3、KEIL端程序整合

4、效果测试

1、简介

在HAL库中,常用的printf函数是无法使用的。本文通过重映射实现在HAL库中进行printf函数。

2.1 基础配置

2.1.1 SYS配置

2.1.2 RCC配置

2.2 串口外设配置

2.3 项目生成

3、KEIL端程序整合

在usart.c函数最下方复制如下代码

cpp 复制代码
#ifdef __GNUC__
  #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
  #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif

PUTCHAR_PROTOTYPE
{
  HAL_UART_Transmit(&huart1,(uint8_t *)&ch,1,0xFFFF);//阻塞方式打印
  return ch;
}

接着在usart.h、main.h中分别调用如下头文件。

cpp 复制代码
#include "stdio.h"

最后设置如下

4、效果测试

在主函数中进行打印测试,代码如下

cpp 复制代码
printf("s");

串口调试助手显示如下图所示:

上文如有错误,恳请各位大佬指正。

相关推荐
国科安芯43 分钟前
商业航天与航空安全场景下抗辐射 MCU 选型、应用实践及发展趋势
单片机·嵌入式硬件·无人机·cocos2d·risc-v
Jun6263 小时前
【STM32】HMC5883驱动(带航向角计算)
stm32·单片机·嵌入式硬件
wearegogog1234 小时前
基于STM32的酒精检测仪设计
stm32·单片机·嵌入式硬件
Deitymoon4 小时前
STM32——led灯点亮
stm32·单片机·嵌入式硬件
Jack_02204 小时前
基于51单片机的双路倒车雷达测距报警系统设计_LCD1602显示+超声波
单片机·51单片机·雷达·超声波·倒车·lcd1602显示
小柯博客4 小时前
Amazon Kinesis Video Streams C WebRTC SDK 开发实战
c语言·开发语言·网络·stm32·嵌入式硬件·webrtc·yocto
HIZYUAN5 小时前
FPGA/CPLD漫谈:2K LUT的功能定位与典型方案(一)
stm32·单片机·嵌入式硬件·fpga开发·国产mcu+fpga
SunAqua5 小时前
《MCU与DSP芯片笔记》二、DSP芯片TI C2000系列TMS320F2800137
笔记·单片机·嵌入式硬件
d111111111d5 小时前
STM32-UART抽象层封装调试
笔记·stm32·单片机·嵌入式硬件·学习
xiangw@GZ5 小时前
ACF 异方性导电胶膜与传统锡焊互连工艺对比
单片机·嵌入式硬件