gpt4 book ai didi

c++ - 如何使用 boost 从 com 端口读取未定义数量的字节?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:12:47 25 4
gpt4 key购买 nike

我正在尝试从 com 端口写入和读取数据。我正在使用

    write(*ioboard.port, buffer(cpayload, cpayload.size()));

为了写作,我在收到答案时遇到了一些麻烦。我尝试了不同的变体

int m = read(*ioboard.port, buffer(answer, 1));
int m = read(*ioboard.port, buffer(answer, 1024));

int m = ioboard.port->read_some(buffer(answer));

在第一种情况下,我在第一次调用写入-读取对后收到答复,但在第二次调用后没有收到答复:幻想读取故障。在第二种情况下,我在第一次通话后没有收到答复:再次由于读取功能。第三个工作方式与第一个相同。所以现在我需要重新启动我的设备以向它发送两个命令!

我应该如何读取,如果我知道最大数据大小,但不知道有多少字节,我将以特定方式获取。

最佳答案

它的发生是因为那个端口没有任何东西。我对发生的事情没有深入的了解,但我现在通过创建到/dev/ttyACM0 的符号链接(symbolic link)并连接到它来解决这个问题。不明白为什么会这样——似乎只有描述符被改变了。 – voronwe

关于c++ - 如何使用 boost 从 com 端口读取未定义数量的字节?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27626707/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com