This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/TMS320F28377S: TMS320F28377S: SCI-A SCITXDA WRONG SIGNALS

Part Number: TMS320F28377S

Tool/software: Code Composer Studio

1. Which is the suitable BAUD rate for 28377s : 9600 or  19200 ?

2. Can wrong BAUD rate be a main reason of wrong appearing of TXDA signals ?

Thanks in advance !

  • Hi Ed,

    eeddii iiiiii said:
    1. Which is the suitable BAUD rate for 28377s : 9600 or  19200 ?

    Generally, these are the baud rates universally preferred: 4800, 9600, 14400, 19200, 38400, 57600, 115200

    9600 being the default rate majorly.

    eeddii iiiiii said:
    2. Can wrong BAUD rate be a main reason of wrong appearing of TXDA signals ?

    Setting the wrong baud rate can confuse the receiver which would lead to no data display or garbage data display.

    Regards,

    Gautam

  • Ok

    If 9600 is normal rate , I will try to set it Can you confirm the code whether is correct ?

    SciaRegs.SCICCR.all = 0x0007; // 1 stop bit, No loopback No parity,8 char bits, async mode, idle-line protocol
    SciaRegs.SCICTL1.all = 0x0003; // enable TX, RX, internal SCICLK, Disable RX ERR, SLEEP, TXWAKE
    SciaRegs.SCICTL2.all = 0x0003;

    SciaRegs.SCICTL2.bit.TXINTENA = 1;
    SciaRegs.SCICTL2.bit.RXBKINTENA = 1;

    SciaRegs.SCIHBAUD.bit.BAUD = 0x0000; // 9600 baud @LSPCLK = 10MHz //(40 MHz SYSCLK).
    SciaRegs.SCILBAUD.bit.BAUD = 0x0081;
    SciaRegs.SCICTL1.all = 0x0023; // Relinquish SCI from Reset

    2 . Is the BAUD rate be TXDA signals frequency ?
  • When you check the TX waveforms, are you observing 9600 baud?
  • no .....there are variable frequencies up to 46 kHz.....
  • Gautam !

    If real BAUD rate and set BAUD rate by source code ar not matching , what will be the reason ?
  • eeddii iiiiii said:
    If real BAUD rate and set BAUD rate by source code ar not matching , what will be the reason ?

    If they're variable, there will be no data transfer. So, you need to match the baud rates!

  • Really ?

    I havn't known ....

    I think I;ve made correct coding regarding BAUD rate . Here is the code look please :

    DELAY_US(1000);
    SciaRegs.SCICCR.all = 0x0007; // 1 stop bit, No loopback, No parity,8 char bits, async mode, idle-line protocol
    SciaRegs.SCICTL1.all = 0x0003; // enable TX, RX, internal SCICLK, Disable RX ERR, SLEEP, TXWAKE
    SciaRegs.SCICTL2.all = 0x0003; // Disable RxErr, Sleep, TX Wake, disable Rx Interrupt, Tx Interrupt

    SciaRegs.SCIHBAUD.bit.BAUD = 0x0000; // 19200 baud @LSPCLK = 22.5MHz.
    SciaRegs.SCILBAUD.bit.BAUD = 0x0092; // BRR = (LSPCLK/(SCI Asynchronous Baud * 8))-1, SCI Asynchronous Baud = (LSPCLK/(BRR+1)*8)
    SciaRegs.SCICTL1.all = 0x0023; // Relinquish SCI from Reset
  • Gautam !

    May be the code part regarding BAUD rate is not enough to have correct BAUD rate and true TXDA data ?

    May be there is an additionally some code part I should add to the SCI initialisation ?

    Because as I said earlier another versions of MCUs ( 28335 , 28069 and 28027 ) are working perfectly . But in case of 28377S there would be a some code part to add .......