当前位置:编程学习 > C#/ASP.NET >>

serialport收到数据后再继续发,怎么处理?

各位大侠,在做热量表的上位机软件时,软件定时自动抄收数据,也就是通过串口发抄收命令给一个终端,正确接收数据后,再给另一个终端发送命令,等接收后再发下一个,依次循环直到全部抄收。我点击自动抄收button后,serialport控件就会开始发送抄收命令,终端返回数据时利用serialport的接收事件进行处理接收到的数据。
我的问题就是:我利用接收事件接收并处理完数据后,怎么去抄收下一个终端,也就是怎么转到button事件里去发送下一个命令?如果不是转到按钮事件里,那该怎么发送下一个命令呢?请各位赐教!谢谢 --------------------编程问答-------------------- 帮帮忙给个解决方式吧!谢谢各位了! --------------------编程问答-------------------- 最好使用异步通信架构,在接收端设置数据转发队列,主线程只负责向队列压入数据及判断队列是否过大,由另一个线程处理数据发送,逐一从队列中取出数据数组,发送到目的地, --------------------编程问答--------------------
引用 2 楼 etudiant6666 的回复:
最好使用异步通信架构,在接收端设置数据转发队列,主线程只负责向队列压入数据及判断队列是否过大,由另一个线程处理数据发送,逐一从队列中取出数据数组,发送到目的地,

谢谢您的回复!用serialport的接收事件也是异步的吧,都是收了再发,可是,我不知道怎么再发? --------------------编程问答-------------------- --------------------编程问答-------------------- 各位大侠帮帮忙啊!! --------------------编程问答-------------------- 一种方法可以设定个定时器,第一次按键开启,之后靠接收数据处理触发还是怎么样就你自己决定了
还一种方法就是接收后处理完直接触发下一个发送子程序。 --------------------编程问答--------------------
引用 6 楼 dixdsq827 的回复:
一种方法可以设定个定时器,第一次按键开启,之后靠接收数据处理触发还是怎么样就你自己决定了
还一种方法就是接收后处理完直接触发下一个发送子程序。

谢谢您的回复!您说的第一种方法就是,发送完一次后开启定时器,定时一段时间后在定时事件里发送下一次数据,是吗?第二种方法就是在接收事件里直接发送下一个指令对么?谢谢@
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,