我正在尝试通过串口与控制机械闸门的PLC进行通信,以完成行业中的一项任务。由于对这个主题没有太多的经验,而且很匆忙,我没有意识到存储旧设置并在程序退出时恢复它们的重要性。在更改了termios结构中的一些字段后,我不再能够从端口读取任何内容,即使在使用了与我对另一个端口(ttyD0)完全相同的打开端口函数之后,也无法再从端口读取任何内容。有什么建议可以让ttyD1恢复到正常工作的状态吗?用于打开端口的代码如下:
int OpenPor
我正试图为我的充电控制器开发一些软件,但我唯一可以使用的设备是我的raspberry pi (因为我不想让我的PC下楼),它通过远程设备上的/dev/ttyUSBX进行通信。另外,如果它可以是一个守护进程,也会很好,这样它就会像一个完整的过路。
我已经查看了socat和ser2net,但是要么没有传递数据,要么在发送一个命令之后socat就会关闭。
init问题和这里的旧讨论:VTIME似乎工作正常:serial_opts.c_cc[VTIME]=60; //6 seconds我已经实现了超时的时间测量超时似乎是正确的,调试输出是(显示最后2个read()操作,以及读取的字节):
SERIAL: DATA read 11 bytes and a total of 12262 .注意,最后一个字节接收是一个有效的ascii char (0x30,