IAR Embedded Workbench
Plug-in
The kernel awareness plug-in gives perfect insight into embOS.
Thread Aware Debugging
By default, when halting a target system in the debugger, the current registers (program counter, stackpointer etc.) as well as the current call-stack are shown. When running embOS, most of the time, the system will be in the Idle task. So the chance is fairly high that, when halting the system, it will be in Idle and not much information is gained by seeing the current registers and callstack.
Thread aware debugging specifies the capability of a debugger to show all existing tasks of embOS, running on the embedded system when the target system is halted by the debugger. It further allows to select a specific task in the IDE to show the current CPU registers as well as the call stack of that task.
SEGGER's embOS plug-in for the IAR Embedded Workbench provides embOS awareness during debugging sessions. This enables you to inspect the state of several embOS primitives such as the task list, semaphores, mailboxes, and software timers. The embOS plug-in allows to monitor not the active task only, but inactive tasks, too.
Task sensitivity
The source code window, the disassembly window, the register window, and the call stack window of the C-SPY debugger are task sensitive. This means they display the current position in the code, the content of the general-purpose registers and the call stack for the selected task. By default, the selected task is the running task, which is the usual behavior that the user expects from a debugger. You may, however, examine any task by double-clicking on the corresponding row in the plug-in window. The selected task will be highlighted in yellow and the call stack and preserved general-purpose registers of the suspended task are rebuilt.
Downloads
Each download of embOS for IAR Embedded Workbench contains the latest embOS plug-in. You may also download the plug-in from the list below.
embOS port | IAR version | Compatible plug-in |
---|---|---|
78K0 | ≤ 4.80 | |
= 4.81 | ||
8051 | ≤ 8.30 | |
≥ 9.10 & ≤ 9.30 | ||
≥ 10.10 & < 10.40 | ||
= 10.40 | ||
ARM7/ARM9/Cortex-A/R/M | ≤ 6.70 | |
≥ 7.10 & ≤ 7.40 | ||
≥ 7.50 & ≤ 7.80 | ||
≥ 8.10 & ≤ 8.22 | ||
≥ 8.30 & ≤ 8.32 | ||
≥ 8.40 & ≤ 8.50 | ||
≥ 9.10 & ≤ 9.20 | ||
≥ 9.30 & ≤ 9.32 | ||
≥ 9.30 & ≤ 9.50 | ||
AVR | ≤ 6.40 | |
≥ 6.50 & ≤ 6.80 | ||
= 7.10 | ||
AVR32 | ≤ 4.21 | |
= 4.30 | ||
Coldfire | Any | |
CR16C | ≤ 3.20 | |
= 3.30 | ||
H8 | Any | |
M16C | ≤ 3.60 | |
= 3.70 | ||
M32C | Any | |
MSP430 | ≤ 5.60 | |
≥ 6.10 & ≤ 6.50 | ||
≥ 7.10 & ≤ 7.12 | 8.10.5.3 | |
= 7.20 | ||
R32C | Any | |
RH850 | ≤ 1.30 | |
= 1.40 | ||
= 2.10 | 8.10.5.3 | |
= 2.20 | 8.30.5.3 | |
RL78 | ≤ 1.30 | |
≥ 1.40 & ≤ 2.21 | ||
= 3.10 | ||
≥ 4.10 & ≤ 4.21 | ||
= 5.10 | 9.30.6.3 | |
RX | ≤ 2.50 | |
≥ 2.60 & ≤ 2.90 | ||
= 3.10 | ||
= 4.10 | ||
= 5.10 | 9.30.6.3 | |
SH | Any | |
STM8 | ≤ 1.42 | |
≥ 2.10 & ≤ 2.20 | ||
= 3.10 | ||
= 3.11 | ||
V850 | ≤ 4.10 | |
= 4.20 |
.