We detect you are using an unsupported browser. For the best experience, please visit the site using Chrome, Firefox, Safari, or Edge. X
Maximize Your Experience: Reap the Personalized Advantages by Completing Your Profile to Its Fullest! Update Here
Stay in the loop with the latest from Microchip! Update your profile while you are at it. Update Here
Complete your profile to access more resources.Update Here!

Part Number: SW300031

CMX-RTX FOR DSPIC30F


Key features of the CMX-RTX™ for dsPIC30F include:

  • The smallest footprint
  • The fastest context switch times
  • The lowest interrupt latency times
  • True preemption
  • Scheduler and interrupt handler written in assembly for speed and optimization
  • Optional co-operative and time-slicing scheduling
  • Nested interrupts
  • All functions contained in a library
  • Interrupt callable functions
  • Scalability
  • Free source code provided
  • Integrated with CMX-MicroNet™ for optional networking connectivity

Overview


This product is no longer available for sale.

In some cases, well-structured linear programming is sufficient for a product. However, in most cases, programmers appreciate not having to worry about structuring their code to perform all necessary tasks in a timely manner. CMX-RTX™ helps by allowing tasks (pieces of code that do specific duties) to run quasi-concurrently. That is, tasks seem to run at the same time - doing many specific jobs simultaneously.

CMX-RTX takes the headaches out of real-time programming. The software lets the programmer concentrate on the overall application while it takes care of the details. CMX-RTX lets you finish projects faster and more efficiently.

Some real-time operating systems offer only cooperative scheduling, which means that the running task is required to call the scheduler to perform a task switch. Others offer time slicing in which each task runs for a given period of time and then must switch tasks, regardless of conditions. Also others claim to be fully preemptive, yet they do not allow any interrupt to cause a preemption. All of these models will fail at one point or another.

CMX-RTX allows a task of higher priority that is able to run (whether starting or resuming) to preempt the running task. The scheduler saves the context of the running (lower priority) task and restores the context of the higher priority task so that it is now running. A truly preemptive RTOS allows interrupts to cause an immediate task switch, which means that the interrupts now have the added ability of using the RTOS's functions.

Additional Resources


Additional Information

CMX-RTX Specifications for dsPIC® DSC Products

Flash   3696 bytes 
All CMX Functions:  936 bytes  
CMX Initialize Module:  645 bytes  
CMX Assembly Module (scheduler):   28 bytes  
RAM, Each Task Control Block:   137 cycles (resuming a task) 
Min. Context Switch:  92 cycles (starting a task) 



CMX Functions are contained in a library, thus reducing code size, if not referenced