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.

SCI Baud Rate Calculation Error

Other Parts Discussed in Thread: TMS320F28377S, TMS320F28335

Looking at the technical reference manual for the TMS320F28377S microcontroller, it shows common bit rates for SCI communication.

When  plug in the equation given in the baud-select registers, the baud rates do not agree with the equation given.

The Eequation is:

SCI Asynch Baud = LSPCLK/(BRR+1) * 8)

According to the table, setting BRR to 487 with a LSPCLK of 200 MHz the baud rate should be 9600, which is much lower than what the equation would generate.

I think I am missing an important concept along the way. Any explanation would be greatly appreciated.

Thanks!


  • Arsh,

    I don't think you're missing anything.  I think the TRM, spruhx5c, Table 18-3 is incorrect.  The table indicates these are the BRR values with LSPCLK=200 MHz, but it seems they are for when LSPCLK=37.5 MHz.  This is probably some sort of cut-and-paste error from an existing user's guide for an older device that ran at 150 MHz, and had LSPCLK=150/4 = 37.5 MHz by default (e.g., TMS320F28335).  This same error exists in the F2837xD TRM spruhm8e Table 19-3, and the F2807x TRM spruhm9b Table 18-3.

    Stick with the formula given in the baud rate register bit descriptions that you cited, that is:

    baud = LSPCLK/((BRR+1)*8)

    The formula is correct.

    I will get the C2000 team to correct the documentation.

    Regards,

    David