Skip to content

UART write never blocks and doesn't actually write to GPIO pins #115

Open
@c1570

Description

@c1570

Writing to the UART never blocks at the moment:

return (this.rxFIFO.full ? RXFF : 0) | (this.rxFIFO.empty ? RXFE : 0) | TXFE;

This also means that printf() using pico_stdio_uart is way faster in emulation than in reality quite often (basically whenever the silicon 8 byte TX buffer is exhausted).

Additionally, using the UART doesn't actually change the GPIO pins but only triggers the onByte() callback:

this.onByte?.(value & 0xff);

Probably not a big deal but worth documenting anyways.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions