How to have return value check for Rte_Write in generated C Code?

We generate C code through AUTOSAR and Simulink Coder for Simulink Model. We send signals in Simulink through AUTOSAR interface outport with DataAccessMode: ExplicitSend. We generate code through MATLAB script:
%Check model is loaded
load_system('ModelName');
% Generate code
rtwbuild('ModelName');
We want to implement safety through return value of Rte_Write, RTE_E_OK.
Currently, the generated C code is:
Rte_Write_PortName(&rtb_bus_creator_kk);
We want the generated C code to be similar to:
Consider a provided port, ra, containing a data element val of type SInt16 with the isQueued attribute set to “false”.
Std_ReturnType e = Rte_Write_ra_val(self, 23);
if (e == RTE_E_OK)
{
/* Transmission okay */
}
else{
/* Transmission failed. Execute safety*/
}
Second code is taken from ETAS RTA-RTE V6.2.0 Reference Manual.
We do not want to manually edit the C code since we have too many outports and they are subject to change over time.

2 comentarios

Does MathWorks have a unified solution for this widely existing problem?
any answer already?

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Deployment, Integration, and Supported Hardware en Centro de ayuda y File Exchange.

Productos

Versión

R2016b

Preguntada:

el 10 de Feb. de 2023

Comentada:

el 15 de Dic. de 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by