am13e23019-uart-console.ino

BeagleConnect QuadESC: Controlador BLDC de 4 canales · Archivo : am13e23019-uart-console.ino · Lenguaje : C · Uso : Mettre en place une console série pour le débogage et l'envoi de commandes.

Implementación de una interfaz serie interactiva para el diagnóstico en tiempo real de motores y sensores.

Usa el controlador UART del SDK. Conecte un adaptador USB-TTL a los pines UART del módulo Torque. Configure el terminal en 115200 baudios. Permite consultar el estado de los controladores DRV8323S.

am13e23019-uart-console.ino

#include <ti/drv/uart/UART.h>
#include <ti/drv/uart/UART_stdio.h>
#include <string.h>

#define BUFFER_SIZE 64
char rxBuffer[BUFFER_SIZE];

void uart_console_task(void) {
    UART_Handle uart;
    UART_Params uartParams;

    UART_Params_init(&uartParams);
    uartParams.writeDataMode = UART_DATA_BINARY;
    uartParams.readDataMode = UART_DATA_BINARY;
    uartParams.readReturnMode = UART_RETURN_FULL;
    uartParams.readEcho = UART_ECHO_OFF;
    uartParams.baudRate = 115200;

    uart = UART_open(UART_INSTANCE_0, &uartParams);
    if (uart == NULL) {
        while (1);
    }

    UART_stdioInit(UART_INSTANCE_0);
    UART_printf("Console prête. Tapez une commande:\n");

    while (1) {
        int bytesRead = UART_read(uart, rxBuffer, BUFFER_SIZE);
        if (bytesRead > 0) {
            rxBuffer[bytesRead] = '\0';
            if (strcmp(rxBuffer, "status") == 0) {
                UART_printf("Système OK\n");
            } else {
                UART_printf("Commande inconnue: %s\n", rxBuffer);
            }
        }
    }
}

← Volver a la ficha