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.

CC2642R: UART2 Driver cannot detect parity error

Part Number: CC2642R
Other Parts Discussed in Thread: SIMPLELINK-CC13X2-26X2-SDK

Team,

My customer who uses the CC2642R asks the UART2 driver in the SDK(3.40).

They uses the UART2 driver for 150 bytes transfer from the Host MCU, found a strange behavior during their system testing. Their setting 500kbps, 8bit data, even parity, no flow control as below:

UART2_Params_init(&urt2_prm);
urt2_prm.baudRate     = 500000;
urt2_prm.readTimeout   = 0;
urt2_prm.parityType   = UART2_Parity_EVEN;
urt2_prm.readReturnMode = UART2_ReadReturnMode_FULL;

urt2_prm.readMode = UART2_Mode_CALLBACK;
urt2_prm.readCallback = readCallback;
urt2_prm.writeMode = UART2_Mode_CALLBACK;
urt2_prm.writeCallback = writeCallBack;

urt2_hdl = UART2_open(0, &urt2_prm);
UART2_read(urt2_hdl, urt2_buf, 150, NULL);

It cannot detect the parity error in case of sending the odd parity data from the Host MCU. It also has same result even using the latest SDK 4.30.

Should they use the UART driver (not UART2, not use DMA) to detect the parity error?

Thank you for your advice on this.

Regards,
Nonaka

  • Hi Nonaka,

    The UART.h TI Driver does not include parity error detection.  The UART2.h TI Driver does but requires an event callback UART2_EVENT_PARITY to be observed with UART2_EventCallback.  Can the customer provide the implementation of this code alongside their initialization, and the further debugging process they've used to verify that it does not operate as intended?  The UART2.h solution has undergone several improvements since the SIMPLELINK-CC13X2-26X2-SDK v3.40 so I would recommend that they continue evaluating with the v4.30 SDK.

    Regards,
    Ryan