如何在boost asio下将serial_port flow_control设置为none

时间:2012-10-22 12:16:08

标签: c++ boost serial-port boost-asio flow-control

我发现了这条很好的代码:

serial_port_base :: flow_control FLOW(serial_port_base :: flow_control :: none);

现在,我需要将flow_control设置为硬件流控制 - 我该怎么做?

到目前为止还没有关于这方面的文档,我已经非常难过了,我必须使用Windows标头来解决我发送中断信号的问题。

请告诉我至少有一种方法可以在不使用Windows标头的情况下设置所有串口选项。

如果没有没有Windows标题的话,我也会在这里走脏路,所以请发布脏的例子。

1 个答案:

答案 0 :(得分:2)

如果您查看了boost文档中的header file itself,则会找到课程flow_control

class flow_control
  {
  public:
    enum type { none, software, hardware };
    BOOST_ASIO_DECL explicit flow_control(type t = none);
    type value() const;
    BOOST_ASIO_DECL boost::system::error_code store(
        BOOST_ASIO_OPTION_STORAGE& storage,
        boost::system::error_code& ec) const;
    BOOST_ASIO_DECL boost::system::error_code load(
        const BOOST_ASIO_OPTION_STORAGE& storage,
        boost::system::error_code& ec);
  private:
    type value_;
  };

您应该能够在该函数调用中使用serial_port_base::flow_control::hardware来启用硬件流控制。