Objective c 在类unix串行模式中设置IOCTL\u串行\u设置\u手流
我需要与流量控制装置(也称为RTS/CTS)进行双向通信。我已经配置了termios结构以获得正确的流控制,但无法初始化通信。 我用windows软件嗅探数据包,在win上发送数据包之前还有其他设置:Objective c 在类unix串行模式中设置IOCTL\u串行\u设置\u手流,objective-c,unix,serial-port,setting,Objective C,Unix,Serial Port,Setting,我需要与流量控制装置(也称为RTS/CTS)进行双向通信。我已经配置了termios结构以获得正确的流控制,但无法初始化通信。 我用windows软件嗅探数据包,在win上发送数据包之前还有其他设置: 1 000004: I/O Request (DOWN), 23.01.2015 17:30:53.934 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1)) IOCTL_SERIAL_SET_QUEUE_SIZE: Set qu
1 000004: I/O Request (DOWN), 23.01.2015 17:30:53.934 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
IOCTL_SERIAL_SET_QUEUE_SIZE: Set queue size
InSize=4096
OutSize=4096
2 000006: I/O Request (DOWN), 23.01.2015 17:30:53.934 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
IOCTL_SERIAL_PURGE: Purge requests
Purge mask=TXABORT: Read requests, RXABORT: Receive buffer, TXCLEAR: Write requests, RXCLEAR: Write buffer
3 000024: I/O Request (DOWN), 23.01.2015 17:30:53.934 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
IOCTL_SERIAL_SET_BAUD_RATE: Set baud rate
Baud Rate=1200
4 000030: I/O Request (DOWN), 23.01.2015 17:30:53.940 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
IOCTL_SERIAL_SET_LINE_CONTROL: Set line control
WordLength=8
StopBits=1 stop bit
Parity=Odd parity
5 000032: I/O Request (DOWN), 23.01.2015 17:30:53.942 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
IOCTL_SERIAL_SET_CHARS: Set special characters
EofChar=0x0
ErrorChar=0x0
BreakChar=0x0
EventChar=0x0
XonChar=0x11
XoffChar=0x13
6 000034: I/O Request (DOWN), 23.01.2015 17:30:53.942 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
IOCTL_SERIAL_SET_HANDFLOW: Set handshake information
ControlHandShake=2147483649
FlowReplace=0
XonLimit=2048
XoffLimit=512
7 000038: I/O Request (DOWN), 23.01.2015 17:30:53.946 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
IOCTL_SERIAL_SET_TIMEOUTS: Set timeouts
ReadIntervalTimeout=0
ReadTotalTimeoutMultiplier=20
ReadTotalTimeoutConstant=90
WriteTotalTimeoutMultiplier=10
WriteTotalTimeoutConstant=50
000053: I/O Request (UP), 23.01.2015 17:30:54.343 +0.0 (1. Device: Prolific USB-to-Serial Comm Port (COM1))
如何在类似*nix的操作系统中模拟这种配置(IOCTL\u SERIAL\u SET\u QUEUE\u SIZE、IOCTL\u SERIAL\u PURGE、IOCTL\u SERIAL\u SET\u HANDFLOW和IOCTL\u SERIAL\u SET\u timeout)?您看过PERL的设备::SerialPort吗。它完成了所有这一切,并且有很多很好的文档可以“复制”windows设置。最新版本有purge_tx、purge_rx。初始化后,设置波特率、停止位、奇偶校验和数据位