1.包含头文件 stdio.h和stdarg.h
2.实现函数
void Uart1_printf(char *str,...)
{
char buf[128];
unsigned char i = 0;
va_list ptr;
va_start(ptr,str);
vsprintf(buf,str,ptr);
while(buf[i])
{
Uart1_Tx(buf[i]);
i++;
}
}
int Uart1_scanf(const char *fmt,...)
{
int i = 0;
unsigned char c;
va_list args;
char buffer[1024];
while(1)
{
//从串口接收字符
c = UART_Read(1);
//Uart1_Tx(c);
if((c == 0x0d) || (c == 0x0a))
{
buffer[i] = ' ';
break;
}else{
buffer[i++] = c;
}
}
va_start(args,fmt);
i = sscanf(buffer,fmt,args);
va_end(args);
//send_char('r');
//send_char('n');
return i;
}
3.定义完这两个函数,就可以和pc上一样使用printf 和scanf了 ,别忘了打开串口调试助手哦
阅读(3026) | 评论(1) | 转发(0) |