我正在 Ubuntu 上开发一个串行通信应用程序。我正在使用 pl2303 转换器和libserial。
我的问题是我无法设置波特率。执行下面的源代码后,我得到错误状态 = 2。
我的源代码是:
bool setUpCom()
{
SerialStream my_serial_stream ;
my_serial_stream.Open( "/dev/ttyUSB0" ) ;
if ( ! my_serial_stream.good() )
{
printf("\nNo COM Port");
return false;
}
my_serial_stream.SetBaudRate( SerialStreamBuf::BAUD_115200 );
my_serial_stream.SetCharSize( SerialStreamBuf::CHAR_SIZE_8 ) ;
if ( ! my_serial_stream.good() )
{
std::cerr << "Error setting serial port state=2" ;
return false;
}
my_serial_stream.SetNumOfStopBits(1) ;
if ( ! my_serial_stream.good() )
{
std::cerr << "Error setting serial port state=3" ;
return false;
}
my_serial_stream.SetParity( SerialStreamBuf::PARITY_NONE ) ;
if ( ! my_serial_stream.good() )
{
std::cerr << "Error setting serial port state=4" ;
return false;
}
my_serial_stream.SetBaudRate( SerialStreamBuf::BAUD_115200 );
if ( ! my_serial_stream.good() )
{
std::cerr << "Error setting serial port state =5" ;
return false;
}
}