MATLAB: S-function – related Code Generation problem with the LaunchPad F28379D

c2000Embedded Coderf28379dgenarate codes-functionsimulink

Hello,
I am trying to build an S-function for reading the "CANB Error and Status" register of the LaunchPad F28379D. The Simulink generates code and the program is loaded to the target properly. But, I dont get the correct output when it is executed on the target. When I am importing the generated Project in CCS and build it ,I get a warning for the output variable of the S-function block. "a value of type "uint32_t" cannot be assigned to an entity of type "uint32_T *". After modify the wrapper function, by removing the pointer input argument completly and assign a global variable for returning the result of the function, I was able to get the desirable result. A dropbox link include a file with the project data. Test Any help will be appreciated.

Best Answer

y is a pointer. You need to dereference y when assigning a value to it. Change your code to this:
*y = CANStatusGet(CANB_BASE, CAN_STS_CONTROL);