Micrium is a global RTOS leader and a top choice of embedded engineers building microprocessor, microcontroller, and DSP-based devices. Micriµm's flagship µC/OS family is recognized for a variety of features and benefits including unparalleled reliability, performance, dependability, impeccable source code, and vast documentation. In addition, several Micriµm components contain certifications that meet the rigorous safety-critical standards demanded by several industries.
Micrium μC/GUI™ Embedded Graphical User Interface™ is a universal graphical software for embedded applications that provides an efficient processor and LCD controller-independent GUI to applications using a graphical LCD. Designed for single and multi-task environments, μC/GUI is adaptable to nearly any size physical or virtual display with an LCD controller and CPU, and is delivered with all source code. Micrium μC/GUI™ Embedded Graphical User Interface™ is compatible with nearly all CPUs and, unlike other GUIs that require a C++ compiler, μC/GUI is written entirely in ANSI-C. Processors ranging from 8- to 32-bits run μC/GUI, and 16-bit CPUs (or better) achieve optimal performance.
The USB communication protocol is on one hand the most popular to integrate, and on the other, one of the most difficult communications interfaces to embed. While the USB controller is an important consideration, the largest portion of the USB design rests on implementation in software. Micrium's software expertise and unfailing attention to coding standards and naming conventions is apparent in the µC/USB™ Device & Host Stacks they offer.
The Micrium μC/USB Device is a USB device stack designed for embedded systems equipped with a USB device controller. A hardware abstraction layer makes it easy to port μC/USB-Device to new USB controllers by simply modifying existing hardware access routines. Drivers for several common device classes (Mass Storage, CDC, HID) are offered, supplemented by a framework for easily developing new class drivers.
The Micrium μC/USB Host is a real-time USB host software stack designed for embedded systems equipped with a USB host or OTG controller. μC/USB Host is a full-featured, high performance, small footprint USB host software stack. Kernel independent, μC/USB Host includes API, class drivers (MSC, HID, and CDC ACM) and framework for developing custom class drivers. Both the μC/USB Device and Host stacks can run with or without an RTOS.
Micrium µC/TCP-IP™ Embedded Protocol Stacks are compact, reliable, high-performance TCP/IP protocol stacks, optimized for embedded systems. Built from the ground up with Micrium quality, scalability, and reliability, μC/TCP-IP enables the rapid configuration of required network options to minimize time-to-market. Micrium µC/TCP-IP™ Embedded Protocol Stacks allow for adjustment of the memory footprint based upon design requirements. μC/TCP-IP can be configured to include only those network components necessary to the system. When a component is not used, it is not included in the build, saving valuable memory space.
The μC/TCP-IP design introduces a new concept--large and small buffers. A large buffer is of the size required to transport a complete Ethernet frame. This is what other TCP/IP stacks do. But, in an embedded system, it is quite possible that the amount of information to transmit and receive does not require the use of a full Ethernet frame. In this case using buffers of the size of full Ethernet frames is a waste of RAM. μC/TCP-IP allows the designer to maximize the system performance by defining different quantities of small and large buffers.
Micrium µC/OS-III™ Real-Time Operating System is designed to save time on embedded system projects. In addition to the features inherent in μC/OS-II, μC/OS-III also manages a nearly unlimited number of application tasks, and features an interrupt disable time of near zero. Micrium µC/OS-III™ Real-Time Operating System supports ARM7/9, Cortex-MX, Nios-II, PowerPC, Coldfire, i.MX, Microblaze, RX600, H8, SH, M16C, M32C, Blackfin, and more. Ported code is available for download from the Micrium website.
μC/OS-III manages seemingly unlimited application tasks, constrained only by a processor's access to memory. μC/OS-III also supports a nearly unlimited number of priority levels. Typically, configuring μC/OS-III for between 32 and 256 different priority levels is adequate for most embedded applications. μC/OS-III allows for nearly unlimited tasks, semaphores, mutexes, event flags, message queues, timers, and memory partitions. The user allocates all kernel objects at run time. μC/OS-III provides features to allow stack growth of tasks to be monitored. While task size is not limited, they need to have a minimum size based on the CPU used.
Micrium µC/OS-II™ Real-Time Operating System Kernels are portable, ROMable, scalable, preemptive, real-time deterministic multitasking kernels for microprocessors, microcontrollers, and DSPs. Offering unprecedented ease-of-use, μC/OS-II is delivered with complete 100% ANSI C source code and in-depth documentation. μC/OS-II runs on the largest number of processor architectures, with ports available for download from the Micrium website.
The Micrium µC/OS-II™ Real-Time Operating System Kernels manage up to 250 application tasks and include semaphores; event flags; mutual-exclusion semaphores that eliminate unbounded priority inversions; message mailboxes and queues; task, time, and timer management; and fixed sized memory block management. μC/OS-II's footprint can be scaled (between 5kb to 24kb) to only contain the features required for a specific application. The execution time for most services provided by μC/OS-II is both constant and deterministic; execution times do not depend on the number of tasks running in the application.