【发布时间】:2011-02-21 19:52:31
【问题描述】:
我们使用unistd.h 中的read() 方法在Linux 环境中从串行端口接收数据。专门从/dev/ttys1 读取数据。
我们收到的部分数据包括字符0x0A(换行)和0x0B(垂直制表符),但库似乎忽略了它们。
我的意思是,我们使用unsigned char[]来存储从端口获取的数据,并且数组包含除了这些字符之外的所有数据。
你认为可能有什么问题?
【问题讨论】:
-
你是如何打开文件描述符的?有时,
open()调用的某些选项会影响您在读取时从文件中获取的数据。 -
unistd.h 不是库。它是一个标题。
-
serial_fd = open(SerialPort, O_RDWR | O_NOCTTY | O_NONBLOCK );
-
@WilliamPursell 好的,我明白了。
标签: c++ linux serial-port std unistd.h