#include <stdio.h>
#include "pico/stdlib.h"
#include "hardware/uart.h"
// Definição dos pinos da UART
#define UART0_TX_PIN 0 // GPIO0 é o UART0 TX
#define UART0_RX_PIN 1 // GPIO1 é o UART0 RX
#define UART1_TX_PIN 8 // GPIO8 é o UART1 TX
#define UART1_RX_PIN 9 // GPIO9 é o UART1 RX
int main() {
stdio_init_all();
uart_init(uart0, 115200); // Inicializa a UART0 com baud rate de 115200
gpio_set_function(UART0_TX_PIN, GPIO_FUNC_UART); // Configura pino 0 como TX
gpio_set_function(UART0_RX_PIN, GPIO_FUNC_UART); // Configura pino 1 como RX
uart_init(uart1, 115200); // Inicializa a UART1 com baud rate de 115200
gpio_set_function(UART1_TX_PIN, GPIO_FUNC_UART); // Configura pino 8 como TX
gpio_set_function(UART1_RX_PIN, GPIO_FUNC_UART); // Configura pino 9 como RX
while (true) {
char mensagem_enviada[1000]; // armazenar o dado recebido
char mensagem_recebida[1000]; // armazenar o dado enviado
int i = 0;
printf("UART0: ");
scanf("%s", mensagem_enviada);
uart_puts(uart0, mensagem_enviada); // Envia a mensagem pela UART0
printf("\n");
sleep_ms(500);
while (uart_is_readable(uart1)) {
mensagem_recebida[i++] = uart_getc(uart1); // Recebe a mensagem pela UART1
}
printf("UART1: %s", mensagem_recebida); // // Imprime a mensagem pela UART1
sleep_ms(500);
}
return 0;
}