Both Simulink Coder generate C code from Simulink models, and both of them can put that C code in a C++ wrapper to be effectively integrated with other C++ code.
The main difference between these products is:
- Simulink Coder generates code with the purpose of the model being able to run standalone without a MATLAB license, or to verify the behavior of the generated code on a host computer.
- Embedded Coder generates readable code that can be much more finely configured, customized, and optimized through various settings and constructs. Embedded Coder also provides support for automatically building the generated code on embedded systems (hence its name).