问题:嵌入式系统中如何使用printf函数进行串口输出。
解答:寄存器版的/库函数版的。
第一步,#inlcude "stdio.h"
第二步,在主函数文件中重写fputc()和fgetc()函数,如下:
int fputc (intch,FILE*f)
{
while(!(USART1->SR & USART_FLAG_TXE));
USART1->DR =(ch & 0x1FF);
return (ch);}
int fgetc (FILE* f)
{
while (!(USART1->SR& USART_FLAG_RXNE));
return((int)(USART1->DR &0x1FF));
}
注释:fgetc 和 fgetc是C语言的标准函数(形参是标准的) FILE *f是文件指针,具备文件系统的操作系统有用。对于简单的无文件系统的嵌入式系统无用。