使用POSIX从SERIAL读取null也是如此

时间:2013-08-08 11:01:25

标签: c++ c serial-port posix

我有使用所有char标志进行通信的设备。我知道传输消息的固定长度,我使用termio.h与该设备通信。 问题是当一个符号数组是空符号(\ 0)时,我无法读取整个消息。读取功能此时停止,我的信息不完整。这很奇怪,因为我可以编写(使用函数write())尽可能多的空符号。 我知道每个字符串都假设为空结束但我需要读取这些空标志,有没有办法做到这一点? 谢谢!

1 个答案:

答案 0 :(得分:0)

以非规范模式打开您的串口

options.c_lflag& = ~ICANON;

如果您没有此标志,默认情况下,串行端口将以规范模式打开。

在非规范模式下,您将收到“原始”字节,如果您

我认为这就是您所需要的

正在接收各种角色。