I am working on MPC5777M EVM board for LIN module implementation. For this I want to transmit the data from LINFlexD_1(Master) side to LINFlexD_0(Slave) side using interrupts. I has done interrupt portion and GPIO configuration . But i am not sure for GPIO part so please find the following GPIO configuration and make sure it that correct or not ?
SIUL2.MSCR_IO.B.SSS = 0x04u; // Pad PC: Source signal is LIN1_TXD
SIUL2.MSCR_IO.B.ODC = 0x2u; // Pad PC: push-pull Output.
SIUL2.MSCR_IO.B.OERC = 0x3u; // Pad PC: Maximum Skew rate
SIUL2.MSCR_IO.B.ILS = 0x0u; // Pad PC: Automotive enable
SIUL2.MSCR_IO.B.IBE = 0x1u; /* Pad PA: Enable pad for input - LIN0_RXD */
SIUL2.MSCR_MUX[848u-512u].B.SSS = 0x01u;
I done the configuration as per the the RM guideline but still some issue is there in code.so Please find the configurations and make me sure where I am going wrong ?
If the PA is used as LIN0_RXD, then MSCR_IO must be configured.
But you must set both the RX and TX pins of the module for proper operation. The RX pin must be able to monitor the TX transmitted signal.
If you want to test communication between modules and as there is only single LIN transceiver available on the EVB, LINFlex modules could be connected together before this transceiver in the way TX pins together and RX pins together.
TX pins must be configured as open drain and use a pullup resistor. Transceiver must be powered for sure.