Cómo asignar la función printf a dos uarts
#include lt;stdarg.hgt;
#include lt;string.hgt
#include lt;stdlib.hgt;
p>
#include lt; stdio.hgt;
#include lt; ctype.hgt
void uart_sendstst.
p>#include lt ;ctype.hgt;
void uart_sendstring(char *pt)
{
mientras(*pt)
uart_putchar(*pt );
}
#include lt;stdlib.hgt;
#include lt;stdio
.void uart_printf(char * fmt,...)
{
va_list ap;
char string[256]; p>va_start(ap, fmt)
vsprintf(string, fmt, ap); // Usarlo aumentará el tamaño del código y reducirá la eficiencia
uart_sendstring(string); p>
va_end(ap );
}
}
Explicación: Según la función anterior, uart_printf es equivalente a la salida formateada en lenguaje C. function printf
Explicación: Según la función anterior, uart_printf es equivalente a la función de salida formateada printf en lenguaje C, es decir, uart_printf("uart_printf num = d \n", 100); como Asistente de depuración de puerto serie y Hyper Terminal para recibir.
Algunos tipos de la función uart_printf y funciones como va_list vsprintf() se definen en el archivo de encabezado stdarg.h.
Esta es la primera vez que se utiliza la función uart_printf.
uart_putchar() es la función que envía bytes en nuestro controlador UART. Creo que cada MCU tendrá esta función voiduart_putchar (datos de caracteres).