近期需要使用C++进行串口通讯,将Win32 API串口接口进行了下封装,可实现同步通讯,异步回调通讯
1、SerialportMy.h
#pragma once
#include <Windows.h>
#include <thread>
#include <atomic>
#include <functional>
#include <queue>
#include <iostream>
class SerialportMy
{
public:using DataReceivedCallback = std::function<void(const char*, size_t)>;// 模式选择:同步(阻塞)或异步(事件驱动)enum class Mode { Sync, Async };SerialportMy(const char* port = "\\\\.\\COM1", Mode mode = Mode::Sync);~SerialportMy();// 打开串口(波特率/数据位/停止位可配置)bool Open(int baudRate = 9600, int dataBits = 8, int stopBits = 1, bool isStartThread = true);//