RTX51 is a real-time kernel for the 8051 family of microcontrollers that is designed to solve two problems common to embedded programs.
Multitasking: several operations must execute simultaneously.
Real-time control: operations must execute within a defined period of time.
Preemptive task switching and task priorities
These operations are organized as independent computer processes that are referred to as tasks. While it is possible to implement an embedded program without using a real-time kernel, a well-established, proven kernel, like RTX51, saves time and makes software development easier.
The RTX (full RTOS) has been discontinued but the RTX-tiny is still available.
RTX51 Tiny is a small real-time kernel designed for single-chip applications where code size is the most important factor. The RTX51 Tiny kernel requires only 900 bytes of code space and is well-suited for applications that don't need RTOS features like messaging, semaphores, and memory pool management. RTX51 Tiny is included in the PK51 Professional Developer's Kit. RTX51 Tiny is royalty-free.
Feature |
Product |
|
|---|---|---|
RTX51 (discontinued) |
RTX51 Tiny |
|
Features |
||
Kernel Source Code |
||
Code Banking Support |
||
CAN Driver |
||
Multitasking |
||
Round-Robin |
||
Preemptive |
||
Cooperative |
||
Task Specifications |
||
Priority Levels |
4 |
1 |
Defined Tasks (max) |
256 |
16 |
Active Tasks (max) |
19 |
16 |
Interrupt Latency |
< 50 |
< 20 |
Fast Task Switch Time |
70-100 |
N/A |
Standard Task Switch Time |
180-700 |
100-700 |
Memory Requirements |
||
Code Space |
6K-8K Bytes |
900 Bytes |
Data Space |
40-46 Bytes |
7 Bytes |
Stack (IDATA) Space |
20-200 Bytes |
3 Bytes per task |
XDATA Space |
650 Bytes min |
0 Bytes |
Timers/Signals/Events |
||
Timeouts |
||
Intervals |
||
Signals |
||
Timer Used |
0,1,2 |
0 |
System Clock Divisor |
1,000-40,000 |
1,000-65,535 |
Inter-Task Communication |
||
Semaphores (binary) |
||
Semaphores (max) |
8 |
|
Mailboxes |
||
Mailboxes (max) |
8 |
|
Mailbox Size |
8 |
|
Memory Pools |
||
Memory Pools (max) |
16 |
|