#include "stm32f10x.h"
#include "stdio.h"
void RCC_Configuration(void);//首先设置系统时钟为8MHZ
void GPIO_Configuration(void);
void USART_Configuration(void);
/*
Function Name : fputc
Description : 重定向这个C库中的(stdio) printf函数,文件流到串口流USART1
Input : ch,*f
Output : None
Return : None
*/
int fputc(int ch,FILE *f){
//ch送给USART1
USART_SendData(USART1, ch); //发送数据
//等待发送完毕
while(USART_GetFlagStatus(USART1, USART_FLAG_TXE)==RESET);
//返回ch
return(ch);
}
void delay1ms(u16 t){
u16 i,j;
for(i=0;i<t;i++)
for(j=1000;j>0;j++);
}
int main(void){
u8 i,data='A';
RCC_Configuration();
GPIO_Configuration();
USART_Configuration();
for(i=0;i<30;i++){
USART_SendData(USART1, data); //发送数据
data++;
//Status = USART_GetFlagStatus(USART1, USART_FLAG_TC);
while(USART_GetFlagSta
stm32 printf函数重定向
最新推荐文章于 2024-07-09 08:11:35 发布
这篇博客介绍了如何将C库中的printf函数重定向到STM32的串口USART1,通过设置RCC和GPIO配置,实现数据从USART1发送,并提供了fputc函数实现数据发送与等待发送完成的逻辑。
摘要由CSDN通过智能技术生成