serial_ports.qbk 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. [/
  2. / Copyright (c) 2003-2019 Christopher M. Kohlhoff (chris at kohlhoff dot com)
  3. /
  4. / Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. /]
  7. [section:serial_ports Serial Ports]
  8. Boost.Asio includes classes for creating and manipulating serial ports in a portable
  9. manner. For example, a serial port may be opened using:
  10. serial_port port(my_io_context, name);
  11. where name is something like `"COM1"` on Windows, and `"/dev/ttyS0"` on POSIX
  12. platforms.
  13. Once opened, the serial port may be used as a [link boost_asio.overview.core.streams
  14. stream]. This means the objects can be used with any of the [link
  15. boost_asio.reference.read read()], [link boost_asio.reference.async_read async_read()],
  16. [link boost_asio.reference.write write()], [link boost_asio.reference.async_write
  17. async_write()], [link boost_asio.reference.read_until read_until()] or [link
  18. boost_asio.reference.async_read_until async_read_until()] free functions.
  19. The serial port implementation also includes option classes for configuring the
  20. port's baud rate, flow control type, parity, stop bits and character size.
  21. [heading See Also]
  22. [link boost_asio.reference.serial_port serial_port],
  23. [link boost_asio.reference.serial_port_base serial_port_base],
  24. [link boost_asio.reference.serial_port_base__baud_rate serial_port_base::baud_rate],
  25. [link boost_asio.reference.serial_port_base__flow_control serial_port_base::flow_control],
  26. [link boost_asio.reference.serial_port_base__parity serial_port_base::parity],
  27. [link boost_asio.reference.serial_port_base__stop_bits serial_port_base::stop_bits],
  28. [link boost_asio.reference.serial_port_base__character_size serial_port_base::character_size].
  29. [heading Notes]
  30. Serial ports are available on all POSIX platforms. For Windows, serial ports
  31. are only available at compile time when the I/O completion port backend is used
  32. (which is the default). A program may test for the macro
  33. `BOOST_ASIO_HAS_SERIAL_PORT` to determine whether they are supported.
  34. [endsect]