nestle libreria library drink descargar bebida c++ boost

c++ - libreria - descargar boost



Boost Asio serial_port-necesito ayuda con yo (3)

Así que he estado tratando de aprender cosas de boost :: asio para comunicarme con un dispositivo serial usando RS232. La documentación es escasa y los ejemplos son inexistentes. No se puede averiguar exactamente cómo comunicarse con el dispositivo. El dispositivo no puede enviar datos, por lo que todo lo que tengo que hacer es escribir, pero otros proyectos requieren una comunicación real de ida y vuelta, por lo que se agradecerá su ayuda. ¿Qué código tengo hasta ahora?

#include <boost/asio/serial_port.hpp> using namespace::boost::asio; int main() { io_service io; serial_port port( io, "COM3" ); port.set_option( serial_port_base::baud_rate( 19200 ) ); unsigned char commands[4] = { 1, 128, 240, 0 }; // write the commands to the device return 0; }

En resumen: necesita ayuda con la parte io del puerto serie.


Además de la velocidad en baudios, también puede necesitar establecer otras opciones como: character_size, flow_control, parity y stop_bits. Para escribir sus datos en el puerto serie, puede hacer lo siguiente:

boost::asio::write(port, boost::asio::buffer(commands, 4));

La aceptación de bibliotecas de tipos de búfer es muy flexible y es posible que desee leer más sobre este tema aquí: Buffers .


Gracias a la ayuda de aquí y de otros lugares lo conseguí trabajando. Escribió un pequeño programa que podría ayudar a algunas personas a descubrir el impulso del puerto serie también.

boostserialportdemo.cpp


Si se está preguntando por qué su ejemplo genera un error de compilación, cambie CSIZE a C_SIZE en ambas líneas. Este es probablemente el único buen ejemplo de programa en la web.
Gracias