What kind of data type is a CAN message?

I am trying to run a Stateflow model with VNT blocks, which will transmit CAN messages periodically. I cannot build the model because Stateflow says I need to explicitly define a data type for CAN message.
I tried the following, but to no success. A) can.Message B) CAN_MESSAGE(found this in a simulink CAN example) I am successful if I use Simulink only, as I can set the data type to "Inherit". But I need to use Stateflow for my model.
I am not sure what the exact data type is. Any help is appriciated.

1 Comment

If you need to you could cast it to a byte array I suspect.

Sign in to comment.

 Accepted Answer

Hi,
The CAN message is a MATLAB Object. But it cannot be directly used within Stateflow. You could use the pack/unpack blocks to convert into a double array and back.

More Answers (1)

Thank you, I plan on using pack/unpack to get around this issue. My other option was to create a bus/structure to store CAN message object.

Community Treasure Hunt

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

Start Hunting!