我在通过我的 comport 发送字节时遇到问题。它发送一个奇偶校验位,尽管它被明确关闭(我需要没有奇偶校验的字节与某些硬件通信)。我的代码非常简单:
Process p = Runtime.getRuntime().exec("cmd.exe /c mode com1: baud=115200 parity=n data=8 stop=1 to=off xon=off rts=off dtr=off");
p.waitFor();
fp = new RandomAccessFile("COM1","rw");
fp.write((byte)0x21);
我将振荡器连接到端口,无论我做什么,都有一个额外的位,这似乎是一个奇偶校验位。但正如你所看到的,我通过代码禁用了奇偶校验,也通过我的设备管理器禁用了它。我在振荡器上看到的是:0 0010 0001 11(包括开始和停止位)。我不知道,这个奇偶校验或额外比特来自哪里......有人有想法吗?