Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

replay

Retransmit messages from CAN bus

Syntax

replay(canch,message)

Description

example

replay(canch,message) retransmits the message or messages message on the channel canch, based on the relative differences of their timestamps. The replay function also replays messages from MATLAB® to Simulink®.

To understand the elements of a message, refer to canMessage.

Examples

collapse all

Use a loopback connection between two channels, so that:

  • The first channel transmits messages 2 seconds apart.

  • The second channel receives them.

  • The replay function retransmits the messages with the original delay.

The timestamp differentials between messages in the two receive arrays, msgRx1 and msgRx2, are equal.

ch1 = canChannel('Vector','CANcaseXL 1',1);
ch2 = canChannel('Vector','CANcaseXL 1',2);
start(ch1)
start(ch2)
msgTx1 = canMessage(500,false,8);
msgTx2 = canMessage(750,false,8);

% The first channel transmits messages 2 seconds apart.
transmit(ch1,msgTx1)
pause(2)
transmit(ch1,msgTx2)
%The second channel receives them
msgRx1 = receive(ch2,Inf);

% The replay function retransmits the messages with the original delay.
replay(ch2,msgRx1)
pause(2)
msgRx2 = receive(ch1,Inf);

Input Arguments

collapse all

CAN device channel, specified as a CAN channel object, on which to retransmit.

Example: canChannel('NI','CAN1')

Messages to replay, specified as an array of message objects.

See Also

Functions

Introduced in R2009a

Was this topic helpful?