为了账号安全,请及时绑定邮箱和手机立即绑定

求问C# 串口接收数据的问题!

求问C# 串口接收数据的问题!

C# C
慕侠2389804 2021-11-03 11:07:37
有form1和form2两个窗体,是用comm.DataReceived += comm_DataReceived;接收数据的,怎么样可以让form1和form2都可以正常收到数据。(用的都是同个串口如COM1)注:现在的问题是,如果先打开form1,form1可以正常通讯,但是再打开form2,发送数据后,接收到的数据显示在form1上了。
查看完整描述

2 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

comm这个对象是form1的成员吧
串口是串口 窗口是窗口
关联好就行

查看完整回答
反对 回复 2021-11-07
?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

using System.Runtime.InteropServices; /// /// (C)2003-2005 C2217 Studio 保留所有权利 /// /// 文件名称: IbmsSerialPort.cs /// 文件ID: /// 文件说明: /// 封装动态链接库IbmsSerialPort.dll的功能,提供在.NET环境中 /// 串口异步接收和发送数据的功能。 /// /// 当前版本: 1.0 /// /// 作者: 邓杨均 /// 创建日期: 2005-2-2 /// 最后修改日期: 2005-2-2 /// /// 历史修改记录: /// /// namespace Ibms.Tool.IO { /// /// 当串口接收到数据时,会产生一个事件。 /// SPRecvDataArgs就是该事件的参数,参数中的RecvData包含接收到的数据。 /// 使用方法: /// public class SPRecvDataArgs:EventArgs { /// /// 接收到的数据组成的字节数组 /// private byte[] recvData; /// /// 构造函数,需要一个包含数据的byte[]作为初始化参数来实例化 SPRecvDataArgs /// /// public SPRecvDataArgs(byte[] recvData) { if( recvData == null) { throw(new ArgumentNullException()); } this.recvData = recvData; } /// /// 返回接收到的数据内容 /// public byte[] RecvData { get { return recvData; } } } /// /// 封装动态链接库IbmsSerialPort.dll的功能,提供在.NET环境中异步 /// 串口接收和发送功能。特别实现的是异步通过信号自动接收数据的模式。 /// public class IbmsSerialPort:IDisposable { #region 平台调用声明代码 /// /// 声明IbmsSerialPort.dll的Ibms_OpenPort函数 /// /// /// /// [DllImport("IbmsSerialPort.dll")] public static extern IntPtr Ibms_OpenPort(int nPort, int nRate); /// /// 声明IbmsSerialPort.dll的Ibms_Close函数 /// [DllImport("IbmsSerialPort.dll")] publi



查看完整回答
反对 回复 2021-11-07
  • 2 回答
  • 0 关注
  • 278 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信