boost 串口通讯

boost库有一个asio,支持串口通讯。async

步骤:spa

  一、产生一个boost::asio::io_service(前摄模式,相似于完成端口,不过,能够针对不一样IO对象)对象

  二、构造一个boost::asio::serial_port,有两种方法:it

      (一)boost::asio::serial_port m_serialPort(m_IoService, "COM1");io

      (二)boost::asio::serial_port m_serialPort(m_IoService);service

         m_serialPort.open("COM1");  方法

  三、设置串口参数:波特率、奇偶校验 位、中止位、字符大小和流量控制,经过set_option方法 通信

    • boost::asio::serial_port::baud_rate      波特率
    • boost::asio::serial_port::parity            奇偶校验,能够为serial_port::parity::none / odd / even。
    • boost::asio::serial_port::flow_control      流量控制, 能够为serial_port::flow_control::type,enum类型,能够是none software hardware
    • boost::asio::serial_port::stop_bits          中止位,    能够为serial_port::stop_bits::one /onepointfive /two
    • boost::asio::serial_port::character_size   字符大小

  四、数据读写数据

    read_sometop

    write_some

      async_read_some

    async_write_some

相关文章
相关标签/搜索