永发信息网

如何将printf函数映射到两个uart

答案:1  悬赏:30  手机版
解决时间 2021-03-07 22:44
  • 提问者网友:动次大次蹦擦擦
  • 2021-03-07 15:05
如何将printf函数映射到两个uart
最佳答案
  • 五星知识达人网友:忘川信使
  • 2021-03-07 15:28
方法如下:
#include <stdarg.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>

void uart_sendstring(char *pt)
{
while(*pt)
uart_putchar(*pt++);
}

void uart_printf(char *fmt,...)
{
va_list ap;
char string[256];
va_start(ap,fmt);
vsprintf(string,fmt,ap); //Use It Will Increase the code size, Reduce the efficiency
uart_sendstring(string);
va_end(ap);
}
说明:按照以上函数uart_printf就相当于C语言中的格式化输出函数printf,即uart_printf(“uart_printf num = %d \n”,100); 使用超级终端、串口调试助 手等 工具就能接收到。
uart_printf 函数中的一些类型,和函数如 va_list vsprintf() 都定义在头文件stdarg.h 中。
uart_putchar()是我们UART驱动中发送一个字节的函数,这个相信每个MCU都会有这个函数 voiduart_putchar (char data) 。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯