我正在尝试通过串行端口读取数据,但是读取操作始终返回0。
// Opening COM port and m_fd returned a valid number
m_fd = open (m_com_port, O_RDWR | O_NOCTTY | O_SYNC);
//Read operation
length = read(m_fd, &ch, 1); // length is always zero
setserial -g /tmp/xdl/serial/com_7
# /tmp/xdl/serial/com_7, UART: undefined, Port: 0x0000, IRQ: 45
可以指出我正在做什么错误以及为什么setserial命令给出未定义
最佳答案
您的BUFFER_SIZE可能太小,必须提供足够大的缓冲区。
BUFFER_SIZE是读取功能的第三个参数。
关于linux - 串行端口“读取”操作不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30024077/