Reduced MicroC Framework for C (SMXF)

You can generate MicroC application code and build it with the reduced MXF_C framework (SMXF). The SMXF framework is a reduced version of the MicroC Framework (MXF), better compliant to MISRA-C that avoids #ifdef , and other potentially dead code.

SMXF framework and requirements traceability

The SMXF framework addresses predefined requirements and includes traces back to these requirements. The SMXF framework and its requirements are represented in a Rhapsody model that you can find in the Rhapsody installation directory. The SMXF model is located at ...\Share\LangC\mxf_c folder. This Rhapsody model can be used for generating the SMXF C source files, and to have each requirement represented as a comment alongside the code that answers it.

The following image shows the mxf_c model from the installation directory of Rhapsody, and the SMXF C source code that it can generate.converter

You can start using the SMXF framework by opening a MicroC model. Then you may generate code with one of the MxfCConfigurations:
  • MxfCMainloopNTConfiguration – for Mainloop NT environment
  • MxfCVxWorks653Configuration - for VxWorks 653 environment

The following image shows the mxf_c framework application applied to the Dishwasher model: converter

Note: You can find the Dishwasher model in the Rhapsody installation directory: ..\Samples\CSamples\Dishwasher.
Because it is a reduced framework, the SMXF has the following limitations:
  • No Animation, Tracing, Target-Monitoring
  • No General Utilities and Data-Structures such as Collection, Heap, List, Map, Queue, Stack, String, MemAlloc
  • No Additional Auxiliaries such as FixedPoint, Rapid, or Multicast Ports
  • No Ports supported
  • No Memory Manager, Dynamic Memory, Cleanup
  • No Backward compatibility for Event Generation and Statechart macros. Supported macros: RiCGEN, RiCGEN_ISR, RiCREPLY, IS_IN, IS_COMPLETEDMore

Feedback