社区
C#
帖子详情
c# 串口接收大量数据后,我要每50组数据处理一次应该怎么办?
mwn_3517
2014-02-11 03:04:15
我用串口接收数据,数据是每50ms发送一组数据,一组数据的大小事50byte,我利用事件来接收数据,接收数据远远大于50byte,但是我想每50byte处理一次,应该怎么办?
...全文
527
6
打赏
收藏
c# 串口接收大量数据后,我要每50组数据处理一次应该怎么办?
我用串口接收数据,数据是每50ms发送一组数据,一组数据的大小事50byte,我利用事件来接收数据,接收数据远远大于50byte,但是我想每50byte处理一次,应该怎么办?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mwn_3517
2014-02-12
打赏
举报
回复
我说的接收的比发送的多指的设备一直在发送数据,而我需要每50组处理一次,我想将接收的数据放在队列中,然后每次取出50组进行处理
大湿级
2014-02-12
打赏
举报
回复
是用SerialPort这个控件来收发数据的吗! comP.BytesToRead得到接受的数据,然后一个循环将每50个byte输入到数组,操作数组就好了; 你得到的数据比接受的多,你还得看看。。。
编程有钱人了
2014-02-12
打赏
举报
回复
设置缓冲区啊,每次读 byte[] by=new byte[50]
mwn_3517
2014-02-12
打赏
举报
回复
具体是这样的,我要通过串口读取设备的数据,该设备是每隔50ms发送一次,停止位是oD,OA,一次发送50组,我采用SerialPort和线程实现?我想每隔50ms读取一次,然后处理。下面是代码?但是里面存在一些问题,首先是接收的数据远远大于50组,另外,我想将接收的数据处理之后,显示到界面上,但是出现不在同一线程上 private void 接收ToolStripMenuItem_Click(object sender, EventArgs e) { string rece = "SO1/n"; Serial_4612.Write(rece); ReceiveThread = new Thread(new ThreadStart(Serial_4612_DataReceived)); ReceiveThread.Start(); Thread.Sleep(50); } private void Serial_4612_DataReceived() { Byte[] receive=new Byte[4096]; int n=Serial_4612.Read(receive, 0, Serial_4612.ReadBufferSize); ByteList.Enqueue(receive); if (receive!=null) { Byte[] received = new Byte[50]; received = ByteList.Dequeue(); ProcessData(received); m++; } } private void ProcessData(Byte[] received) { int[] Channel = new int[6]; int j = 0; for (int i = 0; i < 33; i++) { if (i % 6 == 0) { Channel[j++] = received[i] * 65536 + received[i + 1] * 256 + received[i + 2]; } } if (m % 20 == 0) { txt_Channel1.Text = Channel[0].ToString(); txt_Channel2.Text = Channel[1].ToString(); txt_Channel3.Text = Channel[2].ToString(); txt_Channel4.Text = Channel[3].ToString(); txt_Channel5.Text = Channel[4].ToString(); txt_Channel6.Text = Channel[5].ToString(); } }
zhpfaff
2014-02-11
打赏
举报
回复
事件来接收数据,发多少就收多少,怎么可能收得比发得多?
C#
异步
数据
接收串口操作
串口,即串行接口,是计算机硬件上的一个接口,用于设备间的
数据
传输。常见的串口参数包括波特率、
数据
位、停止位和校验位,这些参数需要在通信双方设置一致,以确保
数据
正确传输。
C#
本身并不直接提供对串口的低级...
C#
串口
数据
接收
【
C#
串口
数据
接收】是使用
C#
编程语言在.NET框架下,通过Visual Studio 2010(VS2010)开发的一个应用程序,主要用于实现计算机与外部设备之间的串行通信。串口通信是一种常见的硬件接口技术,用于设备间的
数据
传输,...
C#
实现串口发送接收
数据
本篇文章将深入探讨如何利用
C#
实现串口发送与接收
数据
,以及在不同场景下可能涉及的不同实现方式。 首先,我们要了解什么是串口。串口,也称为串行端口,是一种
数据
通信接口,通过串行
数据
传输方式进行通信。在
C#
中...
C#
上位机
串口接收
数据
并绘图
在本文中,我们将深入探讨如何使用
C#
语言开发一个上位机程序,该程序能够接收来自下位机(如FPGA频率计)的
数据
,并将这些
数据
实时地绘制成曲线图表。我们将围绕“
C#
”、“串口通信”、“上位机编程”以及“绘图”这...
C#
串口收发测试 软件创建串口
组
件,实现独立线程接收和
数据
处理
。
在IT领域,尤其是在嵌入式系统、物联网(IoT)或者工业自动化中,串口通信是一种常见的硬件接口技术,用于设备间的通信。
C#
作为.NET框架下的编程语言,提供了丰富的库来支持串口通信,使得开发者能够方便地实现串口...
C#
111,094
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章