Console
- group console_api
Console API.
Functions
-
int console_init(void)
Initialize console device.
This function should be called once to initialize pull-style access to console via console_getchar() function and buffered output using console_putchar() function. This function supersedes, and incompatible with, callback (push-style) console handling (via console_input_fn callback, etc.).
- Returns:
0 on success, error code (<0) otherwise
-
ssize_t console_read(void *dummy, void *buf, size_t size)
Read data from console.
- Parameters:
dummy – ignored, present to follow read() prototype
buf – buffer to read data to
size – maximum number of bytes to read
- Returns:
>0, number of actually read bytes (can be less than size param) =0, in case of EOF <0, in case of error (e.g. -EAGAIN if timeout expired). errno variable is also set.
-
ssize_t console_write(void *dummy, const void *buf, size_t size)
Write data to console.
- Parameters:
dummy – ignored, present to follow write() prototype
buf – buffer to write data to
size – maximum number of bytes to write
- Returns:
=>0, number of actually written bytes (can be less than size param) <0, in case of error (e.g. -EAGAIN if timeout expired). errno variable is also set.
-
int console_getchar(void)
Get next char from console input buffer.
Return next input character from console. If no characters available, this function will block. This function is similar to ANSI C getchar() function and is intended to ease porting of existing software. Before this function can be used, console_init() should be called once. This function is incompatible with native Zephyr callback-based console input processing, shell subsystem, or console_getline().
- Returns:
0-255: a character read, including control characters. <0: error occurred.
-
int console_putchar(char c)
Output a char to console (buffered).
Puts a character into console output buffer. It will be sent to a console asynchronously, e.g. using an IRQ handler.
- Returns:
<0 on error, otherwise 0.
-
void console_getline_init(void)
Initialize console_getline() call.
This function should be called once to initialize pull-style access to console via console_getline() function. This function supersedes, and incompatible with, callback (push-style) console handling (via console_input_fn callback, etc.).
-
char *console_getline(void)
Get next line from console input buffer.
Return next input line from console. Until full line is available, this function will block. This function is similar to ANSI C gets() function (except a line is returned in system-owned buffer, and system takes care of the buffer overflow checks) and is intended to ease porting of existing software. Before this function can be used, console_getline_init() should be called once. This function is incompatible with native Zephyr callback-based console input processing, shell subsystem, or console_getchar().
- Returns:
A pointer to a line read, not including EOL character(s). A line resides in a system-owned buffer, so an application should finish any processing of this line immediately after console_getline() call, or the buffer can be reused.
-
int console_init(void)