如何从串口接收的字符中获取奇偶校验位?

时间:2011-08-21 11:40:14

标签: linux serial-port

我正在为通过串口连接的设备编写驱动程序。不幸的是,第9个数据位表示该字符是应该被解释为命令还是数据。

使用内置奇偶校验检查对我不起作用,因为错误由附加字符(NUL)指示。然后我不知道我收到了两个数据字节还是一个奇偶校验错误。

有没有办法在别处获得这个奇偶校验位?

编辑:显然,Windows上也存在此问题(请参阅http://gilzu.com/?p=6)。最终重写了串行驱动程序。这也是我在Linux上的唯一选择吗?

1 个答案:

答案 0 :(得分:0)

在我看来,您应该能够原样使用PARMRK,假设\377 \0模式不太可能出现在您的输入中。否则,是的,您可以修改您的串行驱动程序,以便为每个字节添加奇偶校验(或者更确切地说,如果此字节有奇偶校验错误)。不过,我会和前者一起去。