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/LAUNCHXL-F28069M: SCI Break detection

Part Number: LAUNCHXL-F28069M

Tool/software: Code Composer Studio

I was wondering if anybody has experience detecting break line with SCI UART.

Reading the documentation it appears to me that line break is a complete "NO, NO" for these microcontrollers. Break line is considered as an error rather than a method of signalling.

I would like to detect line break and be able to generate a line break.

So far generation of line break is possible by tricking the SCI to send 0x00 byte at much lower baud rate than the required.

However, the detection of line break doesn't work for me. Even if I short RX to ground I get Frame error instead of BRKDT in SCIRXST register. I have tried setting SCI in both idle mode and address mode.

Ultimately I would like to use address mode. In address mode all bytes are received correctly as they should coming from an MSP432 MCU.

  • DDimov ABZ,

    that is true, recovering from a break detect or frame error requires resetting the SCI. 

    "So far generation of line break is possible by tricking the SCI to send 0x00 byte at much lower baud rate than the required."

    Yes, that should work... alternatively you could change to the GPIO function and force low for a period of time.

    "However, the detection of line break doesn't work for me. Even if I short RX to ground I get Frame error instead of BRKDT in SCIRXST register. I have tried setting SCI in both idle mode and address mode."

    When I connect SCIRX to ground I see RXERROR = BRKDT = FE = 1. How long did you force your RX GPIO low? You should need to receive a FE, then after 10 bit times you should receive a BRKDT.

    Have you considered using some data framing instead of forcing framing errors?


    Regards,
    Cody 

  • Thanks Cody,

    I was checking if there is anything I might have missed when reading the documentation.

    MSP432 is a totally different and more flexible MCU to which I have become very much used to and adapted to.

    I have no choice, I have to change my protocol to remove the line breaks. 

    Cheers