SerialPort.Parity=串行奇偶校验。即使不工作,UWP+;覆盆子皮&x2B;Windows 10物联网核心&x2B;C#

SerialPort.Parity=串行奇偶校验。即使不工作,UWP+;覆盆子皮&x2B;Windows 10物联网核心&x2B;C#,uwp,raspberry-pi,windows-10-iot-core,Uwp,Raspberry Pi,Windows 10 Iot Core,我正试图通过串口从我的raspberry pi向PC发送一个字符串 案例1:我的PC终端设置:BD 9600、无奇偶校验、8个数据位、1个停止位和Raspberry Pi也配置为相同的设置,并且我的字符串从Rpi传输到PC没有任何问题 案例2:我的PC终端设置:BD 9600、偶校验、8个数据位、1个停止位和Raspberry Pi也配置为相同的设置,PC终端接收到垃圾值 案例3:我的PC终端设置:BD 9600,无奇偶校验,8个数据位,1个停止位和为BD 9600配置的Raspberry Pi

我正试图通过串口从我的raspberry pi向PC发送一个字符串

案例1:我的PC终端设置:BD 9600、奇偶校验、8个数据位、1个停止位和Raspberry Pi也配置为相同的设置,并且我的字符串从Rpi传输到PC没有任何问题

案例2:我的PC终端设置:BD 9600、偶校验、8个数据位、1个停止位和Raspberry Pi也配置为相同的设置,PC终端接收到垃圾值

案例3:我的PC终端设置:BD 9600,奇偶校验,8个数据位,1个停止位和为BD 9600配置的Raspberry Pi,奇偶校验,8个数据位,1个停止位和我的字符串从Rpi传输到PC,没有任何问题

据我了解,在案例1和案例2中,字符串必须被传输,而在案例3中,PC终端可能会接收垃圾值

我使用下面的例子

这是一个已知的问题还是我遗漏了什么。 请导游


谢谢您

您可以尝试了解C#库(或底层dll)或(USB-)设备驱动程序(例如CH340)中是否存在问题

使用MODE命令检查端口:

C:>mode COM3

Status for device COM3:
-----------------------
    Baud:            9600
    Parity:          None
    Data Bits:       7
    Stop Bits:       1
    Timeout:         OFF
    XON/XOFF:        OFF
    CTS handshaking: OFF
    DSR handshaking: OFF
    DSR sensitivity: OFF
    DTR circuit:     ON
    RTS circuit:     ON

使用MODE命令配置端口,如果可以手动设置奇偶校验,请重试:

C:>help mode
Configures system devices.

Serial port:       MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]
                                [to=on|off] [xon=on|off] [odsr=on|off]
                                [octs=on|off] [dtr=on|off|hs]
                                [rts=on|off|hs|tg] [idsr=on|off]
...
注意
有两个参数(dcb.Paritydcb.fParity)控制奇偶校验设置,必须设置这两个参数。

对于案例2,您可以尝试在PC终端上设置7个数据位,其他设置保持不变。案例1和案例3之间有什么区别?您好,感谢您的回复,我将尝试您的解决方案。对不起,案例3我已编辑,谢谢您指出。实际上,在案例3中,Raspberry Pi配置为BD 9600,偶数奇偶校验,8个数据位,1个停止位。我尝试按照您的建议将PC中的案例2数据位更改为7,但仍然收到垃圾值。我已尝试更改pi和uart转换器,但仍然无法隔离问题区域。如果我的解决方法不适用于您,您可能需要避免当前使用奇偶校验功能。我已经在内部报告了这个问题。
C:\>mode COM3 PARITY=E DATA=8

Status for device COM3:
----------------------
    Baud:            9600
    Parity:          Even
    Data Bits:       8
    Stop Bits:       1
    Timeout:         OFF
    XON/XOFF:        OFF
    CTS handshaking: OFF
    DSR handshaking: OFF
    DSR sensitivity: OFF
    DTR circuit:     ON
    RTS circuit:     ON