SWO Debug
Description
Serial Wire Output Debug Configuration.
Initializes Serial Wire Output using the DWT and ITM peripherals of Cortex-M processors. Configures output of Program Counter samples, interrupt events, and data over any ITM channel.
Functions |
|
| sl_status_t | sl_debug_swo_init (void) |
|
Initialize SWO Debug.
|
|
| sl_status_t | sl_debug_swo_enable_itm (uint32_t channel) |
|
Enable an ITM channel.
|
|
| sl_status_t | sl_debug_swo_disable_itm (uint32_t channel) |
|
Disable an ITM channel.
|
|
| sl_status_t | sl_debug_swo_write (uint32_t channel, uint8_t c) |
|
Write a byte to an ITM channel.
|
|
Function Documentation
◆ sl_debug_swo_init()
| sl_status_t sl_debug_swo_init | ( | void |
|
) |
Initialize SWO Debug.
Initializes SWO debug using configuration parameters for frequency, as well as whether PC sample events and interrupt events should be emitted.
- Note
- This function does not enable any software stimulus ports in the ITM. This can be done by calling sl_debug_swo_enable_itm or by using sl_debug_swo_write which enables the necessary ports automatically.
- Returns
- Status code
- Return values
-
SL_STATUS_OKSWO initialized successfully
◆ sl_debug_swo_enable_itm()
| sl_status_t sl_debug_swo_enable_itm | ( | uint32_t |
channel
|
) |
Enable an ITM channel.
Enables the given ITM channel in the Trace Enable Register.
- Parameters
-
[in] channelITM channel number
- Returns
- Status code
- Return values
-
SL_STATUS_OKITM channel enabled successfully
◆ sl_debug_swo_disable_itm()
| sl_status_t sl_debug_swo_disable_itm | ( | uint32_t |
channel
|
) |
Disable an ITM channel.
Disables the given ITM channel in the Trace Enable Register.
- Parameters
-
[in] channelITM channel number
- Returns
- Status code
- Return values
-
SL_STATUS_OKITM channel disabled successfully
◆ sl_debug_swo_write()
| sl_status_t sl_debug_swo_write | ( | uint32_t |
channel,
|
| uint8_t |
c
|
||
| ) |
Write a byte to an ITM channel.
Writes the given byte to the given ITM channel
- Note
- This function ensures that the ITM channel is enabled, and enables it if it wasn't already.
- Parameters
-
[in] channelITM channel number [in] cByte to send
- Returns
- Status code
- Return values
-
SL_STATUS_OKByte sent successfully SL_STATUS_NOT_INITIALIZEDITM has not been enabled, call sl_debug_swo_init first.