C# 串口的DataReceived事件无法触发?

现需要通过串口从一台设备接收数据。用串口调试助手能正常收到设备发来的数据。然后用虚拟串口工具模拟设备发送数据(和串口调试助手从设备收到的数据一样)给C#程序,C#程序也能... 现需要通过串口从一台设备接收数据。
用串口调试助手能正常收到设备发来的数据。
然后用虚拟串口工具模拟设备发送数据(和串口调试助手从设备收到的数据一样)给C#程序,C#程序也能正常收到数据。 但是C#无法收到实际设备发来的任何数据,DataReceived事件一直不触发。 调试了半天也没解决。
请教: 可能是什么原因?
展开
 我来答
柯乐章0KE
2017-05-03 · TA获得超过392个赞
知道小有建树答主
回答量:311
采纳率:57%
帮助的人:37.2万
展开全部
你这种情况我以前也遇到过,根据实际情况有很多解决办法:1.你可以在接收事件函数的开始位置延迟一段时间,根据数据长度的不同可以适当改变延迟的时间。2.根据你接收的数据格式可以使用不同的Read方法。ReadTo()方法是直到读到相应的字符为止,ReadLine()方法是读到一个新行,Read()读取缓冲区的字节数。希望对你有帮助。不懂的话可以继续问。
追问

现在不是读取不到数据或数据不完整的问题。 而是触发不了DataReceived 事件。

用虚拟串口发送数据能正常接收(COM7发送,COM8接收),但是连接到设备就 触发不了DataReceived 事件。进不到SP_DataReceived方法里面。

TableDI
2024-07-18 广告
VLOOKUP是Excel中用于垂直查找的函数,其基本用法包括四个参数:1. 查找值:即在数据表首列中需要搜索的值。2. 数据表:包含查找值的单元格区域或数组。3. 返回值所在列数:指定返回查询区域中第几列的值。4. 查找方式:选择精确匹配... 点击进入详情页
本回答由TableDI提供
车易查车知识分享
2018-06-27
知道答主
回答量:12
采纳率:0%
帮助的人:3.9万
展开全部
我也有这样的问题,你的解决了吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yangxv951
2018-05-19
知道答主
回答量:2
采纳率:0%
帮助的人:1459
展开全部
serialPort1.DtrEnable = true; 初始化时吧DTR打开 就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式