I found a workaround this problem. Basically, I commented the lines of the code in rtwtypes.h which were producing the problem. Personally, I don't like this solution too much as I would prefer something more automatized. However, I leave this here in case someone else face the same problem.
Conflict bewteen rtwtypes and tmwtypes
17 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I'm testing the embedded coder app in Simulink. I have generated C code for a simple adder which takes two numbers and add them. I succesfully generated the C code for this simulink model, and now I'm trying to make it work in the S-function builder. When I build the code, the following errors appears:
line 1: rtwtypes.h:77:16: error: conflicting types for 'byte_T' typedef char_T byte_T;
line 2: tmwtypes.h:580:16: note: previous declaration of 'byte_T' was here typedef BYTE_T byte_T;
I understand that "byte_T" is being defined in two different header files. However, I don't know how to avoid this. The answer given in this question suggest to include the following lines of code:
#if defined(MATLAB_MEX_FILE)
#include "tmwtypes.h"
#include "simstruc_types.h"
#else
#include "rtwtypes.h"
#endif
However, this lines of code are already included in the wrapper generated by the S-function builder. How could I avoid this clash between rtwtypes.h and tmwtypes.h?
3 Commenti
Abhaya
il 23 Dic 2024
Hi Felipe, Could you share the C file and wrapper generated by S- function builder?
Abhaya
il 24 Dic 2024
Modificato: Abhaya
il 24 Dic 2024
Hi Felipe,
I tried to reproduce the model, and here are the steps I followed:
- I added two 'Constant' blocks as inputs and a 'Display' block as output.
- I included an 'S-function Builder' block in the model.
- I implemented the addition functionality in the 'S-function Builder' in the 'Editor' tab. Here’s the code I used:
void delS_Outputs_wrapper(const real_T *u0,
const real_T *u1,
real_T *y0)
{
/* Output_BEGIN */
/* This sample sets the output equal to the input */
y0[0]=u0[0]+u1[0];
/* Output_END */
}

The model works fine on my end.
I suspect that the error you're encountering may be related to the inclusion of the rtwtypes.h file. In the 'Editor' tab of the S-function Builder, if you have included 'rtwtypes.h' file, this could be causing the issue.
Risposte (0)
Vedere anche
Categorie
Scopri di più su Simulink Coder in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!