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){

}

}

相关推荐
心中有国也有家13 分钟前
hccl 架构拆解:昇腾集合通信库到底在做什么?
人工智能·经验分享·笔记·分布式·算法·架构
平凡灵感码头13 分钟前
芯片合封是个嘛?
单片机·嵌入式硬件
小O的算法实验室44 分钟前
2026年MCS,Q-learning增强MOPSO与改进DWA融合算法+复杂三维地形下特定移动机器人动态路径规划
算法
Peter·Pan爱编程2 小时前
10. new_delete 不是 malloc_free 的包装
c++·人工智能·算法
Sakuyu434682 小时前
STM32基础
stm32·单片机·嵌入式硬件
桑榆肖物2 小时前
ImprovWifi 跨平台传输层设计:把协议层做薄,把宿主层做稳
嵌入式硬件·wifi·.net·ble
故事和你913 小时前
洛谷-【动态规划1】动态规划的引入2
开发语言·数据结构·c++·算法·动态规划·图论
重生之我是Java开发战士3 小时前
【动态规划】背包问题:完全背包,二位费用的背包问题,似包非包
算法·动态规划
LabVIEW开发3 小时前
LabVIEW实现FDTD 电磁仿真
算法·labview·labview知识·labview功能·labview程序
Together_CZ4 小时前
DTSemNet :Vanilla Gradient Descent for Oblique Decision Trees——用于倾斜决策树的普通梯度下降
算法·决策树·机器学习·vanilla·gradient·dtsemnet·用于倾斜决策树的普通梯度