![]() |
NEORV32 API Reference
The NEORV32 RISC-V Processor
|
NEORV32 Runtime Environment (RTE). More...
#include <neorv32.h>Macros | |
Terminal style modifier | |
| #define | RTE_TERM_HL_ON "\033[1;31m" |
| #define | RTE_TERM_HL_OFF "\033[0m" |
Functions | |
| static void | __neorv32_rte_puts (const char *s) |
| static void | __neorv32_rte_puth (uint32_t num) |
| static void | __neorv32_rte_panic (void) |
| static void | __neorv32_rte_core (void) |
| void | neorv32_rte_setup (void) |
| int | neorv32_rte_handler_install (uint32_t code, void(*handler)(void)) |
| int | neorv32_rte_handler_uninstall (uint32_t code) |
| uint32_t | neorv32_rte_context_get (int x) |
| void | neorv32_rte_context_put (int x, uint32_t data) |
Variables | |
| static volatile uint32_t | __neorv32_rte_vector_lut [2][32] |
NEORV32 Runtime Environment (RTE).
|
static |
Core of the NEORV32 RTE (first-level trap handler).
|
static |
Default trap handler printing debug information.
|
static |
Print 32-bit value as 8-char hexadecimal number (with "0x" suffix) via UART0.
| [in] | num | Value to print as hexadecimal. |
|
static |
Print a simple string via UART0.
| [in] | s | Pointer to string. |
| uint32_t neorv32_rte_context_get | ( | int | x | ) |
Read register from application context (on stack).
| [in] | x | Register number (0..31, corresponds to register x0..x31). |
| void neorv32_rte_context_put | ( | int | x, |
| uint32_t | data ) |
Write register to application context (on stack).
| [in] | x | Register number (0..31, corresponds to register x0..x31). |
| [in] | data | Data to be written to register x. |
| int neorv32_rte_handler_install | ( | uint32_t | code, |
| void(* | handler )(void) ) |
Install trap handler function (second-level trap handler).
| [in] | code | Trap code (MCAUSE CSR value) of the targeted trap. See NEORV32_EXCEPTION_CODES_enum. |
| [in] | handler | The actual handler function for the specified trap (function must be of type "void function(void);"). |
| int neorv32_rte_handler_uninstall | ( | uint32_t | code | ) |
Uninstall trap handler (second-level trap handler) and restore original debug handler.
| [in] | code | Trap code (MCAUSE CSR value) of the targeted trap. See NEORV32_EXCEPTION_CODES_enum. |
| void neorv32_rte_setup | ( | void | ) |
Setup NEORV32 runtime environment.
|
static |
global trap handler table (for all cores!)