Open Source Software for Embedded Components( abbreviation:OSS-EC )

Hardware components classification

Hardware is classified according to the hardware architecture configuration as shown in the table below.

Hardware components :H-CMPComponents Exp
ystem Components:S-CMPSensor , Actuator , Motor , Switch , Relay , etc
Circuit/IC Components:C-CMPModulation circuit , Transformer circuit , Control ICC , etc
Microcontroller Unit:M-CMPIO Port , ADC , IC , OC , PWM , DMA , Ethernet , SPI , I2C , etc

Program Classification

OSS-EC programs are grouped into program components (P-CMP) for each components, and programs are classified within the program components according to the above hardware architecture classification as shown in the table below.

Program Classification:P-CMPOverview
S-CMP Program:SPS-CMP compliant programs
C-CMP Program:CPC-CMP compliant programs
M-CMP Program :MPM-CMP compliant programs

P-CMP Architecture

The architecture of P-CMP categorizes the functions as shown in the table below. A wide variety of Components and a wide variety of RTOS are supported by the software hierarchy and the Wrapper to make standard parts of the program.

Layer abbreviationOverviewFunction
P-CMP pcmp Interface (wrapper) function that abstracts P-CMP from Application.Matching of P-CMP function names with interface variables, etc.
SP Wrapper SPWWrapper function to abstract SP from other programs.Matching SP function names to interface variables, etc.
SP LayerSPLSP LayerMainly S-CMP conversion function
CP WrapperCPWWrapper function to abstract CP from other programs.Matching CP function names to interface variables, etc.
CP LayerCPLCP LayerMainly C-CMP conversion function and sequence control function.
MP Wrapper MPWWrapper functions to abstract MP from other programs.Matching MP function names to interface variables, etc.
MP LayerMPLMP LayerMainly control functions of M-CMP.

Programming Language

The programming language is C. However, in the case of Mbed, the file extension is cpp because it is in c++ language.

P-CMP Customize

OSS-EC provides the following functional customized P-CMPs to meet the needs of each product. The following P-CMP specifications can be selected. The following P-CMP specifications can be selected and will be developed sequentially to meet your needs.

OS Type
Multi-Thread ( Mbed )
Multi-Task ( AUTOSAR )
Calculation accuracyfloating-point calculation
integer calculation
Property Conversion
linear equation
Non-linear equations(2D Table)
Non-linear equations(3D Table)

Exponential moving average(EMA) y = k * x + ( 1 – k ) * yn-1
Simple moving average(SMA) y = ( xn + xn-1 + xn-2 + … ) / n
Weighted moving average(WMA) y = ( xn * kn + xn-1 * kn-1 + xn-2 * kn-2 + … ) / ( kn + kn-1 + kn-2 + …)
Error detection

MP Error detection
CP Max/Min Error detection
SP Max/Min Error detection
Non-Error detection

OS type : Different operating systems are supported by the Wrapper

P-CMP File

main.c ( Mbeb main.cpp) Sample main Function File
pcmp.c ( Mbed pcmp.cpp)
P-CMP(SPLおよびCPL、MPL、CPW、MPW(HAL含む)、Library)Function File
pcmp.hmain.c & pcmp.c interface Header File
oss_ec.hOSS-EC Header File