M3T-MR30/4 Real-time OS for M16C Series and R8C Family
Overview
This product is a real-time operating system (RTOS) conforming to the μITRON 4.0-specification, the predominant RTOS for embedded systems in Japan. Its compact resources, outstanding real-time features, and many service calls are suited for an embedded system with real-time ability and multi-tasking functions. In addition, its affinity for the Renesas C compiler package and the configurator which automatically generates startup files or makefile will help you greatly reduce development time and get to market faster.
- TRON Forum holds the copyright on the μITRON Specification.
- TRON, ITRON, and μITRON do not refer to any specific product or products.
Release Information
特性
- Conforms to industry standard μITRON 4.0 specifications
The μITRON arranges and standardizes the ITRON specifications for embedded systems. M3T-MR30/4 conforms to the μITRON 4.0 specifications, and provides service calls suitable for M16C/60, 50, 30, 20, 10, M16C/Tiny Series and R8C Family MCU functions. - Compact size for ROM
The M3T-MR30/4 kernel is provided in library format. You can link only the functions you need at the time of system generation and minimize application software size. - Fast interrupt response
For application requiring fast interrupt response time, M3T-MR30/4 is designed to realize fast response to an interrupt which does not issue a system call. - C and Assembly user interfaces
Using the C compiler M3T-NC30WA and the assembler AS30 for M16C/60, 50, 30, 20, 10, Tiny Series and R8C Family provides the following functions :- Kernel direct call (for NC30)
The M3T-MR30/4 kernel can be called without the C interface library. This function reduces code size and speeds up execution time.
*Some service calls uses C language interface. - Simplified coding tasks and handlers (for NC30)
Start functions of a task or handler can be specified in the C source file, allowing start and termination processing optimization. - Context selection function (for AS30)
A register to be saved at task-switching can be specified. This function eliminates unnecessary register saving, reduces stack usage, and offers improved execution speed.
- Kernel direct call (for NC30)
- Integrated development environment High-performance Embedded Workshop supported
From the Renesas integrated development environment "High-performance Embedded Workshop" (included in M3T-NC30WA) screen, OS-embedded applications can be developed using common operations of the Renesas MCU toolchain. - Easy configuration on GUI
Using the combination of GUI configurator and cfg30 configurator based command line lets you automatically generate makefiles or start-up programs that rely on development products by just creating a simple definition file (configuration file). This enables you to install the necessary libraries without omission so you can easily and reliably process parts specially suited to the product.
Functions
The M3T-MR30/4 kernel consists of the following modules. Each module is provided by functions (service calls) .
- Scheduler
Manages execution sequence of multiple tasks based on their priority levels. - Task management
Manages task status such as RUNNING, READY, WAITING or SUSPENDED. - Task-dependent synchronization
Changes task status from other task, and synchronizes tasks. - Interrupt processing
Returns from an interrupt handler, enables/disables an interrupt for each task, and so on. - Time management
Sets system timer used by M3T-MR30/4 kernel and starts user-defined alarm handler and cyclic handler. - System State Management
Reports information such as version number of M3T-MR308/4 kernel. - State management
Modifies and refers system status. - Synchronization/communication
Carries out synchronization and communication between tasks. The following function modules are available:- Event flag
Tasks are synchronized by the status of flags managed by the kernel. - Semaphore
Tasks are synchronized by the semaphore counter value managed by the kernel. - Mail box
Tasks are synchronized by sending or recieving a message. - Data queue
Tasks are synchronized by communicating 2-byte data.
- Event flag
- Memory pool management
Dynamically allocates/frees memory area used by tasks. Enables efficient use of memory. - Cyclic handler function
Controlls the execution of a handler activated periodically. - Alarm handler function
Controlls the execution of a handler activated at the specified relative-time.
Specifications
Target MCU | M16C/60, M16C/50, M16C/30, M16C/20, M16C/10, M16C/Tiny Series, R8C Family |
---|---|
Max. number of tasks | 255 |
Number of priority levels | 255 |
Max. number of eventflags | 255 |
Width of an eventflag | 16 bits |
Max. number of semaphores | 255 |
Type of semaphores | Counter type |
Max. number of mail boxes | 255 |
Max. number of data queue | 255 |
Data queue size | 16 bits (32 bits is supported as extended function.) |
Max. number of fixed-length memorypools | 255 |
Max. number of variable-length memorypools | 255 |
Max. number of cyclic handler | 255 |
Max. number of alarm handler | 255 |
Number of service call | 133 |
Kernel language | Assembly language, C language |
Performance (Time takes for a target task to be executed after the wup_tas is issued.) |
30 microseconds (M16C/60, 10MHz, embedded memory) |
Kernel code size | Approximately 3K to 21K bytes |
Kernel RAM usage per task | Data: 11 bytes Stack: 8 bytes |
Components of Evaluation License Package
Kernel library | mr30.lib |
---|---|
Kernel library source files | Not included. (* Included with Mass-production License Package) |
Configurator | cfg30 |
Utilities | mkmrtbl, echo30 |
Default configuration file | default.cfg |
C interface library | c30mr.lib |
C interface library source file and makefile | 25 files |
C language include file | itron.h, kernel.h, kernel_api.h |
Sample start-up program | [For NC30] crt0mr.a30 [For AS30] start.a30 |
Sample Section definition file | [For NC30] c_sec.inc [For AS30] asm_sec.inc |
System RAM area definition database file | sys_ram.inc |
Database file for generating makefile | makefile.dos |
Table database file | mrtable.tpl |
Service call file for issuing service call | isssys.mrc |
Include database file | mr30.inc |
M3T-MR30/4 version file | version |
Sample program | demo.c, smp.cfg |
Processing Flow

The automatic routine setup function for initializing timer does not support the following MCUs.
- R8C Family
- M16C/60 Series : M16C/63 Group, M16C/64 Group, M16C/64A Group, M16C/65 Group
目标设备
Information supporting development tools
Title | Description |
---|---|
My Renesas | Create a My Renesas account to use our tool download services, receive e-newsletter/update notifications, and take advantage of our other services. |
e-learning | Information for studying and learning about microcontrollers and microprocessors. |
FAQ | Frequently asked questions and useful hints for development. |
Forum | A forum and community site to share technical information, questions and opinions with others who use Renesas MCU's. |
Tool News | Tool release information and other important information. |
Operating Environment | Information on system requirements and operating environment for the latest version of tools. |
Info on Discontinued Products | A list of Renesas software and tools that have been discontinued and are no longer being offered for new projects. |