RL78 - LIN communication - delay between 2 transmissions

Hi,

I'm using RL78 F13 48 pin controller with LIN.

LIN IC used is TJA1021 - Master.

2 slaves are connected to the master & in while loop in 50 ms timer interval i am trying to transmit header to both the slaves one by one to receive data.

If i add around 2.5 ms of delay between both transmissions - LIN communication is working fine.

Otherwise I'm unable to get data from LIN.

-------------------------------------------------------------------

Example: 

Works fine with a delay between 2 transmissions.

LIN_Master_HeaderTransmit(0x81);  //LIN Slave 1
for(int i =ZERO; i<=2500; i++) 
{
    Wait1us();
}
LIN_Master_HeaderTransmit(0x82);  //LIN Slave 2

----------------------------------------------------------------------

The below code does not work:

LIN_Master_HeaderTransmit(0x81);  //LIN Slave 1

LIN_Master_HeaderTransmit(0x82);  //LIN Slave 2

----------------------------------------------------------------------

We are not supposed to have a delay in the program, so kindly let me know your comments on this.

Is the delay expected ? or will it work without the delay?

Thank you.

Parents Reply
  • Thank you for the explanation.

    I have only one LIN bus(one master) so "waiting for one slave communication to complete before starting the next" resolves the problem. (1 Master - 2 LIN slaves)

    (Please correct me if my understanding is not correct)


    I have one more question, I have one LIN slave. LIN Master is trying to get data from LIN Slave and also trying to send data to same LIN Slave one after another. In this case the communication is failing.

    What can be done during such scenarios!

Children