uart

xod/uart/uart

Constructor of HardwareUart, provides serial communication on default hardware serial ports.
uart
@/uart
Constructor of HardwareUart, provides serial communication on default hardware serial ports.
BAUDnumber
Speed of data transmission in bits per second (baud rate).
INITpulse
Begin UART communication
uart
UART
DONE
BAUD
INIT
DONEpulse
Pulses when UART communication began
UART@/uart
An UART object

C++ implementation

node {
    meta {
        using Type = Uart*;
    }

    uint8_t mem[sizeof(HardwareUart)];
    HardwareUart* uart;

    void evaluate(Context ctx) {
        if (isSettingUp()) {
            auto baud = (uint32_t)getValue<input_BAUD>(ctx);
    #ifdef SERIAL_PORT_HARDWARE_OPEN
            auto serial = SERIAL_PORT_HARDWARE_OPEN;
    #else
            auto serial = SERIAL_PORT_HARDWARE;
    #endif
            uart = new (mem) HardwareUart(serial, baud);
            emitValue<output_UART>(ctx, uart);
        }

        if (isInputDirty<input_INIT>(ctx)) {
            uart->begin();
            emitValue<output_DONE>(ctx, 1);
        }
    }
}