AnsweredAssumed Answered

INIT UART LINFlex_0 gives IVOR1 error MPC5744P

Question asked by Prasanna Kalyan Vellanki on May 24, 2018
Latest reply on May 27, 2018 by Petr Stancik

We are testing UART of MPC5744P

we didn't  get any error while using channel 1 " initLINFlexD_1" 

but for initLINFlexD_0,  we are getting IVOR1 error at Register 0x1001010.

 

It is stopping at

void initLINFlexD_0 ( unsigned int MegaHertz, unsigned int BaudRate ) {
  unsigned int Fraction;
  unsigned int Integer;

  LINFlexD_0.LINCR1.B.INIT = 1;     /* Enter Initialization Mode */ ///////////////STOPPING HERE//////////////////


  LINFlexD_0.LINCR1.B.SLEEP = 0;    /* Exit Sleep Mode */
  LINFlexD_0.UARTCR.B.UART = 1;     /* UART Enable- Req'd before UART config.*/
  LINFlexD_0.UARTCR.R = 0x0033;     /* UART Ena, 1 byte tx, no parity, 8 data*/
  LINFlexD_0.UARTSR.B.SZF = 1;      /* CHANGE THIS LINE   Clear the Zero status bit */
  LINFlexD_0.UARTSR.B.DRFRFE = 1;   /* CHANGE THIS LINE  Clear DRFRFE flag - W1C */

 

  BaudRate  = (MegaHertz * 1000000) / BaudRate;
  Integer   = BaudRate / 16;
  Fraction  = BaudRate - (Integer * 16);

 

  LINFlexD_0.LINIBRR.R = Integer;
  LINFlexD_0.LINFBRR.R = Fraction;

 

  LINFlexD_0.LINCR1.B.INIT = 0;     /* Exit Initialization Mode */

 

  UARTFirstTransmitFlag_0 = 1;        /* Indicate no Tx has taken place yet */

 

  /* Configure LINFlexD_0 TxD Pin. */
  SIUL2.MSCR[PB2].B.SSS = 0b0001; //Pad PF14: Set to LINFlex_0 TxD. Must choose this option because F14 leads to LIN PHY of motherboard
  SIUL2.MSCR[PB2].B.OBE = 1; //Enable output buffer
  SIUL2.MSCR[PB2].B.SRC = 3; //Full drive-strength without slew rate control

 

  /* Configure LINFlexD_0 RxD Pin. */
  SIUL2.MSCR[PB3].B.IBE = 1; //Pad PF15: Enable input buffer
  SIUL2.IMCR[165].B.SSS = 0b0001; //Connect LINFlexD_0 signal to PTB3
}

 

Did anybody faced this error, if yes how to solve it?

Thanks in advance,

Vella

Outcomes