前言
我们在开发串口程序的过程中有时候会遇到多个串口,并且多个串口也需要在多个线程进行操作,本文就来讲解如何实现多个串口在多线程下的安全发送与接收。
1、操作界面与测试过程
我们首先使用虚拟串口助手虚拟COM1、COM2这一对串口;COM3、COM4这一对串口,然后使用代码操作COM1,然后打开一个串口助手操作COM2,当我们使用COM1发送“111”以后,使用串口助手回复“222”,这时可以看到我们的软件接收到COM2发送过来的“222”;使用Com3发送“333”以后,使用串口助手操作COM4,COM4返回“444”,如下图:
上述代码就是实现了对COM1、COM3的操作
2、多串口多线程类的定义
我们定义一个类,该类定义好以后,对于不同的串口,new这个类的对象即可,然后对该类进行打开串口、发送数据、接收数据等操作,对于不同的串口,只是打开串口的时候传入不同的串口名称即可
class MultiSerialPort
{
public