/ / Porta serial Comunicação C ++ Linux [fechado] - c ++, linux, porta serial, g ++

Comunicação em Porta Serial C ++ Linux [fechado] - c ++, linux, porta serial, g ++

Eu estou procurando um fácil de usar librairie C ++ para dialogar com a porta serial no Linux.

Eu olhei para Boost :: Asio, mas parece muito complicado para o meu pequeno uso. Eu só quero receber algumas informações sobre a porta serial e gravá-las em um banco de dados.

Você conhece um simples Librairie Serial Port (com um exemplo, seria o melhor)

obrigado

Respostas:

6 para resposta № 1

O Boost.Asio é realmente bom. O problema é que sua documentação é muito complexa e organizada de forma irregular. Se você só precisa fazer a programação de porta serial mais simples, você não precisa usar todos os recursos avançados.

Exemplo de uso do bloqueio de E / S na porta serial.

static boost::asio::io_service ios;
boost::asio::serial_port sp(ios, "/dev/ttyS2");
sp.set_option(boost::asio::serial_port::baud_rate(115200));
// You can set other options using similar syntax
char tmp[64];
auto length = sp.read_some(boost::asio::buffer(tmp));
// process the info received
std::string message = "hello, world";
sp.write_some(boost::asio::buffer(message));
sp.close();

2 para resposta № 2

RS232 is used for serial communication. Você pode se referir ligação ou você pode tentar Aumente as portas seriais da Asio e compila isso em uma biblioteca para ser vinculada ao seu aplicativo C. Ele afirma ser POSIX compatível e OSX é POSIX.


1 para resposta № 3

A maior parte do que você precisa estará no termios.h cabeçalho. Dê uma olhada Aqui.