STM32F407-串口通讯 USART--2实现printf函数功能

功能描述

通过usart 串口通能通讯,将printf数据输出到串口。
对printf函数进行改写,让其内部调用串口的发送功能。
通过重写 fputc()来实现。
同理,通过重写 fgetc(),读取串口数据,来实现 scanf 和getchar 函数

代码

int fputc(int ch, FILE *f)
{
		/* 发送一个字节数据到串口 */
		USART_SendData(USART1, (uint8_t) ch);
		
		/* 等待发送完毕 */
		while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);		
	
		return (ch);
}

int fgetc(FILE *f)
{
		/* 等待串口输入数据 */
		while (USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET);

		return (int)USART_ReceiveData(USART1);
}

你可能感兴趣的:(STM32,stm32,单片机,arm)