CAN Bus Timeout C2000

3 次查看(过去 30 天)
Kyriakos Sampatakakis
Hi all,
I am trying to add a "Timeout" on the receive side of the CAN bus, so that when a specific amount of time is pass and there is no reception of a new CAN message, a default value will be present in the transmission side. Is that possible? Bellow there is a link with the Simulink Model: https://www.dropbox.com/s/rk1ipb45e6pc2aj/test_can_TO.slx?dl=0
Any answer will be appreciated!

回答(1 个)

Venkatesh Chilapur
Venkatesh Chilapur 2017-11-9
Hi,
You can create a counter and reset it when you get a CAN message (from the function call of the CAN block or an interrupt). If the counter reaches the timeout value before a CAN message is received, than we can trigger a specific subsystem. Regards,
Venkatesh Chilapur
  2 个评论
Kyriakos Sampatakakis
Hi,
Thank you for responding so quickly. I have tried many things using the Counter block(DSP Toolbox), but I can't figure it out how to reset it. The function-call "signal", can't reset or set any of these kind of blocks. Additionaly, I tried to use a Stateflow chart to achieve that, but nothing solid came out. Is there a direct way to convert this function call event into something that can reset a counter?
Best regards
Kyriakos Sampatakakis
Marek Laszlo
Marek Laszlo 2018-3-26
Hello, have you solved this timeout?
Best Regards, Marek Laszlo

请先登录,再进行评论。

标签

Community Treasure Hunt

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

Start Hunting!

Translated by