C++_8——开源串口库

博客介绍了如何在Linux环境下利用开源库CppLinuxSerial进行串口通信。首先,通过git clone获取源码,然后编译并安装到/usr/local。接着展示了如何创建SerialPort对象,设置波特率和超时时间,以及发送和接收数据的基本操作。测试代码中展示了如何打开、写入、读取和关闭串口。
摘要由CSDN通过智能技术生成

C++_8——开源串口库

For Linux

CppLinuxSerial

一个简单好用的serial库 https://github.com/gbmhunter/CppLinuxSerial

  1. 下载、编译、安装如下
git clone https://github.com/gbmhunter/CppLinuxSerial.git
cd CppLinuxSerial/ && mkdir build && cd build 
cmake ..
make
sudo make install
  1. 安装位置如下,生成了一个静态库,头文件也只有俩
Installing: /usr/local/lib/libCppLinuxSerial.a
-- Installing: /usr/local/include/CppLinuxSerial
-- Installing: /usr/local/include/CppLinuxSerial/SerialPort.hpp
-- Installing: /usr/local/include/CppLinuxSerial/Exception.hpp
  1. 测试
// serial库的头文件,需要在CmakeLists.txt里面添加库,或这在编译时添加库
#include <CppLinuxSerial/SerialPort.hpp>

using namespace mn::CppLinuxSerial;

int main() {
	// 创建对象
	// 自定义波特率 SerialPort serialPort("/dev/ttyACM0", 13000);
	SerialPort serialPort("/dev/ttyUSB0", BaudRate::B_57600);
	
	// 接收超时时间
	// 阻塞接收:		输入为0,代表非阻塞;	输入为-1代表阻塞接收
	serialPort.SetTimeout(-1); // Block when reading until any data is received
	
	// 打开
	serialPort.Open();

	// 发送
	serialPort.Write("Hello");

	// 接收
	std::string readData;
	serialPort.Read(readData);

	// 关闭
	serialPort.Close();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值