TMS320F28335使用多个串口时,SCIRXST Register出现错误

TMS320F28335使用多个串口时,SCIRXST Register出现错误

串口转光部分,上下电会引起DSP里的串口接收数据报错SCIRXBUF BITS结构

Uint16 SCIFFPE:1;    //14 Receiver error flag
Uint16 SCIFFFE:1; // 15 Receiver error flag

解决方法如下:
其一
TMS320F28335使用多个串口时,SCIRXST Register出现错误_第1张图片
TMS320F28335使用多个串口时,SCIRXST Register出现错误_第2张图片
其二:
TMS320F28335使用多个串口时,SCIRXST Register出现错误_第3张图片
其三:

void ClearErrorState(void)
{
    if((SciaRegs.SCIRXST.bit.FE == 1)||(SciaRegs.SCIRXST.bit.BRKDT ==1))
    {
        SciaRegs.SCICTL1.bit.SWRESET = 0;
        SciaRegs.SCICTL1.bit.SWRESET = 1;
    }

    if((ScibRegs.SCIRXST.bit.FE == 1)||(ScibRegs.SCIRXST.bit.BRKDT ==1))
    {
        ScibRegs.SCICTL1.bit.SWRESET = 0;
        ScibRegs.SCICTL1.bit.SWRESET = 1;
    }

    if((ScicRegs.SCIRXST.bit.FE == 1)||(ScicRegs.SCIRXST.bit.BRKDT ==1))
    {
        ScicRegs.SCICTL1.bit.SWRESET = 0;
        ScicRegs.SCICTL1.bit.SWRESET = 1;
    }

}

你可能感兴趣的:(嵌入式,dsp开发)