问题标签 [libserial]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
275 浏览

c++ - 没有使用 libserial 读取数据

我无法通过串行连接进行通信。我正在尝试使用 LibSerial 库连接到机器人。我的代码似乎没有正确打开连接,我不知道为什么。机器人每秒通过串行连接自动发送多条消息。消息结构是!number:number,(感叹号后跟一个数字、一个冒号、另一个数字和一个逗号)。我已经使用 putty 和 HTerm 来验证机器人是否真的在发送数据。接收和发送命令都适用于 HTerm,但接收和发送都不适用于我的代码。这是串行连接的配置:

这样做后,serial_connector_.IsOpen()返回true。然后,我尝试使用以下命令从串行连接中读取:

read始终保持空字符串并 serial_connector_.rdbuf()->in_avail()评估为 1,即使考虑到消息结构,这没有多大意义。只读取一个字符也不起作用。

没有效果。这是我第一次处理串行连接,所以我可能犯了一个基本错误。非常感谢有关如何使通信正常工作的任何帮助!

0 投票
0 回答
175 浏览

c++ - 在 QT 中对 SerialStream::Open 的未定义引用

我正在尝试libserial在 qt 中使用我的项目。我已经安装了库并将其添加到我的 .pro 文件中LIBS += -L/usr/local/lib/ -lserial

我有一堂课

但是,当我构建它时,出现以下错误:undefined reference to `LibSerial::SerialStream::Open(std::__cxx11::basic_string, std::allocator >, std::_Ios_Openmode)'

起初我以为这与 libserial 有关,但没有出现错误

任何想法为什么会发生这种情况?

0 投票
1 回答
970 浏览

c++ - 总是得到读取超时

我目前正在尝试使 PIC32UBL Qt/Linux/Mac 端口通过串行端口工作。到目前为止,我在读取串行端口时总是会超时。

这是完整的PIC32UBL-qt开源项目。

/dev/ttyUSB0用作串口,这个适配器已经过测试。我还用逻辑分析仪验证了目标电路正在接收/发送数据到主机程序(PIC32UBL-qt)。它也完全适用于 PIC32UBL 的 Windows 版本。

有缺陷的部分在comport.cpp:156

所以Read总是抛出超时,尝试了不同的时间(100、1000):总是超时,还尝试了无限(0):永远不会退出。

问题是否与libserial正在使用信号处理程序并且我正在使用串行/usb FTDI 适配器有关?

0 投票
1 回答
1560 浏览

c++ - 到 Arduino 的 C++ libserial 串行连接

我正在尝试通过串行连接(USB)从我的 PC(Ubuntu 14.04)向 Arduino Uno 发送数据。Arduino 应显示接收到的数据以进行测试。(我很高兴,如果我收到任何东西......)

我使用 libserial 发送数据,但 Arduino 什么也没收到。在 Arduino IDE 的帮助下,我可以成功地将数据发送到 Arduino。使用普通控制台命令也可以发送数据。

这是我的 Arduino 代码:

这是 c++ 代码(在 PC 端):

你有什么想法为什么这不起作用?

谢谢!

0 投票
0 回答
167 浏览

c++ - 即使使用 -lserial 标志,GCC 也找不到 LibSerial [Ubuntu]

我试图让 LibSerial 工作,但是当我尝试使用 LibSerial 编译我的应用程序时,我遇到了一些链接器错误。错误如下:

我的小型安装应用程序代码是:

我正在编译:

但也尝试过:

来自的回应dpkg -L libserial0是:

谢谢参观!

0 投票
1 回答
1002 浏览

c++ - libserial 未定义对符号的引用

我在 Ubuntu 16.04 中从源代码编译了 libserial-0.6.0rc2,现在正在尝试编译一个简单的测试程序:

我收到以下错误:

我花了一些时间来编译 libserial,因为显然需要对 SIP 的依赖,而我并不知道。我可以使用提供的 makefile 构建示例,但我无法使用已安装的库构建我自己的示例。有没有人有任何想法?

0 投票
1 回答
104 浏览

c++ - 使用 libserial 库的 c++ 代码中的 std::out_of_range 错误

我是 C++ 的新手。我一直在使用一个名为 libserial 的库来处理 UNIX 环境中的串行通信。我做了一个非常简单的测试来尝试图书馆向外围设备写入一些东西并接收答案。测试进行得很顺利...代码如下所示:

由于我想要执行的不仅仅是写/读操作......我决定使用函数来优化代码并使其更容易更改。我的新优化版本如下所示:

问题是,不知何故,可能存在未在其中一个函数中验证的条件,并且在执行时抛出以下错误:

我不认为这与库的错误使用有关,而不是与我的功能创建不当有关。我一直在改变一些事情,但没有任何运气,如果您知道超出范围的情况发生在哪里,它真的会对我有所帮助。

0 投票
1 回答
149 浏览

c++ - C ++将连续字符存储到数组中

这可能是一个非常微不足道的问题,但我一直在寻找如何绕过它而没有太多运气。我有一个使用 libserial 函数从串行端口读取的函数,我得到的响应总是以回车符或“\r”结束,所以,为了阅读它,我在考虑逐个字符地比较 if它不是一个 \r 然后将每个字符存储到一个数组中以供以后使用。我的功能如下:

总之,可能我的问题应该是如何将连续的字符存储到一个数组中。非常感谢您的宝贵见解。

0 投票
0 回答
255 浏览

c++ - 使用 libserial 从串行端口读取时无法从 std::cin 读取

我正在尝试使用 libserial 从串行端口读取数据。该代码设置与传感器(arduino)的串行端口通信,然后要求用户输入以从串行端口读取数据固定次数。

代码编译并运行。但是,它忽略了从 std::cin 获取用户输入并继续运行到完成的行。它不会暂停使用 cin 捕获数据。每次我运行时,要从 cin 读取的值都设置为一些垃圾值,例如 -344969024、-1750564672、139065363 等。代码和示例输出如下:

我在 ubuntu 14.04,gcc-4.8.4。初始化串行端口后无法从标准输入中读取此行为也已报告

样本输出:

0 投票
1 回答
403 浏览

c++ - libi2c-dev、libserial-dev 如何添加到“Yocto”?

我有一个关于如何将两个库添加到“Yocto”的问题。这些库是:

  • libi2c-开发
  • 库串行开发

你们有没有人尝试将它添加到“Yocto”生成的系统中,并且可能对如何开始以及如何添加它有建议?目标是在用户空间应用程序中使用这两个库。