DELPHI MSCOMM 串口通讯接收数据延时如何设置 5

 我来答
sirouszlh
2014-08-12 · TA获得超过1651个赞
知道小有建树答主
回答量:1038
采纳率:100%
帮助的人:642万
展开全部
换成spcomm吧 好处理些

至于接收判断
1 是判断数据的有效性 如果根据规约没有接收完 那就等待
2 是有的控件本身有设置,间隔XX ms之内的数据都当做一帧来接收

如果非要用你说的延时方法,每次接收数据就记录在数组里
那我用个傻办法吧
方法1
每次接收数据都记录接收的时间 T1
然后在定时器里设置间隔为N毫秒 定时判断当前时间和T1的间隔
如果间隔大于XX毫秒 就取接收的数组作为接收的数据。
方法2
用while等待 也记录接收时间 判断多少时间没有接收到数据 就停止接收
while循环中可以用delay延时

procedure Delay(const uDelay: DWORD);
var
n: DWORD;
begin
n := GetTickCount;
while ((GetTickCount - n) <= uDelay) do
Application.ProcessMessages;
end;
疯狂的老贾
2014-08-12 · TA获得超过514个赞
知道小有建树答主
回答量:331
采纳率:83%
帮助的人:145万
展开全部
你可以写个while循环,直到接收到停止位的时候再进行操作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bob86403985
2014-08-20
知道答主
回答量:11
采纳率:0%
帮助的人:8.3万
展开全部
sleep(xxx);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
changjeff
2014-08-12 · TA获得超过804个赞
知道小有建树答主
回答量:2008
采纳率:54%
帮助的人:837万
展开全部
何谓接收数据延时
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式