C# 串口接收事件是什么时候触发?

//注册接收事件serialPort1.DataReceived+=newSerialDataReceivedEventHandle(serialPort1_DataRe... //注册接收事件

serialPort1.DataReceived += new SerialDataReceivedEventHandle(serialPort1_DataReceived);

void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)

{

//接收数据

}

这是很多的串口接收的写法,我试了也能用。但是还是有一些问题:
接收事件一旦注册后,是不是就一直在实时监测串口接收缓冲区?不受其他程序步骤影响?
这个接收事件触发条件是什么?是串口缓冲区接收到一个Byte还是几个Byte?或者是接收到Bit就能触发?
展开
 我来答
szhaiwangxing
2014-02-04 · TA获得超过2334个赞
知道小有建树答主
回答量:712
采纳率:100%
帮助的人:573万
展开全部
  1. 是一直监测串口接收缓冲区,只要满足条件就接收数据

  2. 触发条件是你自己设定的,至于接收多少数据触发你自己在软件中设定的,有参数设定的,具体参数是:ReceivedBytesThreshold       获取或设置 DataReceived 事件发生前内部输入缓冲区中的字节数。 具体情况参考serialport类中的详细说明

runjiu
2014-02-04 · TA获得超过328个赞
知道小有建树答主
回答量:715
采纳率:50%
帮助的人:242万
展开全部
1、是事件,一直在监听,
2、接收到一个字节数据就会触发。接收到一位不会触发
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wuqilin5
2020-08-18
知道答主
回答量:14
采纳率:0%
帮助的人:1.2万
展开全部
类似于单片机的串口中断吧。接收到数据就会产生一次中断。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式