am13e23019-uart-console.ino

BeagleConnect QuadESC : Contrôleur BLDC 4 canaux · Fichier : am13e23019-uart-console.ino · Langage : C · Usage : Mettre en place une console série pour le débogage et l'envoi de commandes.

Implémentation d'une interface série interactive pour le diagnostic temps réel des moteurs et capteurs.

Utilise le pilote UART du SDK. Connectez un adaptateur USB-TTL aux broches UART du module Torque. Réglez le terminal sur 115200 bauds. Permet d'interroger l'état des drivers 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);
            }
        }
    }
}

← Retour à la fiche