我被要求使用 POSIX 调用读取和写入半双工串行连接(更具体地说,在 Linux 2.6.x 上用 C 语言编写)。我在查找有关该特定模型的详细信息时遇到了一些麻烦(大多数页面都集中在全双工上),并且由于阅读时出现轻微异常,我想检查一下我是否在这里做错了。
使用半双工串行连接,我只能读或写。这不是问题,因为线路上没有未经请求的传入数据 - 唯一一次将任何包裹发送给我(供阅读)是我事先要求它们时。
所以我的代码所做的就是在需要发送某些东西时将其写入()到端口。如果这些数据导致响应(我事先知道的),我只需读取()。我没有调用特殊函数 - 但也许我应该调用?这种方法正确吗?即当线路空闲时写?