This another bug that has been killing me all day and have not found a work-around. I have three separate signals that come from different sources and have different widths. They are joined by a mux and then passed on to a C-Function call. The problem is that the signal is overall 46 bytes wide, but it only allocates space in the code generation for the first one that goes into the mux (26) so when I try to read all the input, after 26 bytes I get junk. I wonder what the global input parameter does in the C-Function call, because I explicitly say 46 (otherwise it would no let me compile) but the code that is generated, reuses the output from my first block, the GPS parser.
Code: Select all
uint8_T GPSSentenceParser_o1[27]; /* '<S2>/GPS Sentence Parser' */
Thanks