首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使boost::asio::serial_port_base::flow_control使用硬件流控制?

如何使boost::asio::serial_port_base::flow_control使用硬件流控制?
EN

Stack Overflow用户
提问于 2015-02-02 09:18:26
回答 1查看 1K关注 0票数 2

我想知道如何正确地启用boost::asio::serial_port上的硬件流控制!现在,在打开端口之后,我尝试设置这个选项

代码语言:javascript
复制
serial_.set_option(boost::asio::serial_port_base::flow_control(boost::asio::serial_port_base::flow_control::none));

但是,如果我运行该程序,就会得到一个错误,告诉我:

set_option: Operation not supported on socket

这对我来说不是一个非常有用的信息,因为理论上芯片应该支持硬件流控制。

我是不是错过了什么或者做错了什么?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2015-02-08 23:06:11

要启用硬件流控制,必须为flow_control选项使用flow_control值:

代码语言:javascript
复制
serial_port.set_option(boost::asio::serial_port::flow_control(
  boost::asio::serial_port::flow_control::hardware));

如果引发不支持该操作的异常,则可以:

  • 硬件不支持硬件流控制。
  • 虚拟串口不支持硬件流控制。
  • Boost.Asio不知道如何为检测到的系统启用硬件流控制。对于非Windows/cygwin配置,此片段显示只支持_BSD_SOURCE__QNXNTO__配置。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28274367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档