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
  • If I understand correctly, do you want your master to transmit and receive data simultaneously ? That is not possible in LIN as it has only 1 wire bus and it is half duplex.  The LIN transceiver converts the full-duplex RXD/TXD interface into a 1-wire half-duplex interface.

Children