&“警告:GDB:设置控制终端失败:不合适 ioctl for device \ n“
bool rs485::rs485ConfigPort()
{
termios portSettings;
memset(&portSettings, 0, sizeof(portSettings));
portSettings.c_cflag |= (CLOCAL | CREAD);
cfsetispeed(&portSettings, B57600);
portSettings.c_cflag &= ~PARENB;
portSettings.c_cflag |= CS8;
portSettings.c_cflag &= ~CSIZE;
portSettings.c_cflag &= ~CSTOPB; //stop bit = 1
//cfmakeraw(&portSettings);
if (tcsetattr(fd, TCSANOW, &portSettings))
{
emit logMessage("Can not adjust port settings");
close(fd);
return false;
}
tcflush(fd, TCIFLUSH);
return true;
}
我发现了问题,这是因为tcsetattr()给出了输入/输出错误。 设备已打开并具有写入权限。而...当我做dmesg | grep ttyS0或S1-3,我什么都没收到!它有时也会出现错误“没有这样的设备”。
任何人都可以帮忙解决这个问题吗?