stm32之12.如何使用printf打印输出

主函数增加这些代码即可实现printf打印输出

需要添加头文件

#include "stdio.h"


源码

struct __FILE { int handle; /* Add whatever you need here */ };

FILE __stdout;

FILE __stdin;

int fputc(int c, FILE *f)

{

/* 发送一个字节 */

USART_SendData(USART1,c);

/* 等待发送完毕 */

while(USART_GetFlagStatus(USART1,USART_FLAG_TXE) == RESET);

/* 返回发送的字符 */

return c;

}

int main(void)

{

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);

//抢占优先级0~3,支持4级!

//响应优先级0~3,支持4级!

key_init();

Led_init();

//初始化串口1波特率位115200bps,若发送/接收数据有乱码,请检查PLL

usart1_init(115200);

usart1_send_str("hello5555\r\n");

printf("请求");

while(1){

}

}

相关推荐
老当益壮梁奶奶7 分钟前
51单片机DS18B20温度传感器详解:单总线时序与C51驱动实现
笔记·stm32·单片机·嵌入式硬件·51单片机
Horn Still Sounds16 分钟前
ARM嵌入式基础|内核、寄存器、架构、存储、汇编移位全面梳理
arm开发·单片机·嵌入式硬件·硬件架构
GreenTea28 分钟前
OpenAI Agents API 上手实测:一次调用把整个 agent loop 甩给 OpenAI
前端·后端·算法
星栖与芯36 分钟前
LiteOS-M 切换汇编逐行图解(2):指令·异常机制·全景表
stm32·单片机·嵌入式硬件·harmonyos·鸿蒙系统
深圳满意度咨询1 小时前
医院满意度数字化测评系统:从数据采集到智能决策的技术实践
算法
xiangyun612 小时前
【408数据结构 08】队列:循环队列判空判满,408年年考,一次讲清
c语言·开发语言·数据结构·c++·算法
xiangyun612 小时前
【408数据结构 06】双链表、循环链表、静态链表
c语言·开发语言·数据结构·c++·算法
Brilliantwxx3 小时前
【STM32】 I2C阻塞通信实战与HAL源码(教程篇)
stm32
从零开始的嵌入式之旅3 小时前
day44
arm开发·经验分享·笔记·嵌入式硬件
硬禾科技4 小时前
连接世界的工程哲学
嵌入式硬件·测试工具·自动化·硬件工程