搜索
bottom↓
回复: 7

VB中该如何循环执行一个事件?【恢复】

[复制链接]

出0入0汤圆

发表于 2009-1-9 20:59:34 | 显示全部楼层 |阅读模式
因为看到组态软件都可以随时监控到外部PLC的状态,因此想了解实现这样的方法是怎么样的,自己想在VB中也实现对只有收发两线的串口监听,用定时方式应该是很耗资源也是很容易出错的方式吧,请教各位是否有什么样的办法?

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2009-1-11 21:02:59 | 显示全部楼层
但是外面的设备是不会主动发数据到主机的,非得主机时时刻刻去查询才可以呀,又不想让串口查询耽误了时间响应又不想事件响应耽误了串口查询,不知道这样的东西是怎么样搞的。

出1070入962汤圆

发表于 2009-1-10 22:25:57 | 显示全部楼层
楼主试试MSCOMM吧,这个控件有自己的缓冲区和监视线程,收到串口数据会放在缓冲区中,并且通过消息通知你的。你的程序没有看串口也不会有数据丢失的。

如果windows连这点IO都处理不了,那还真不如单片机操作系统了。试试吧。

出0入0汤圆

 楼主| 发表于 2009-1-10 21:25:34 | 显示全部楼层
我的想法是这样的:在处理其它事物完成后能够自己转到监控上来但又不能影响其它的事物响应,串口是被动的不会主动发送数据而需要主动去通过串口去查询外部串口设备的状态,用中断和定时方式似乎都很容易引起丢失或不完整吧,个人想法没试过的,看到别的论坛上说在C里可以开进程但VB没有这个功能,我又不会C就想请教各位高手讲解学习了。

出0入0汤圆

发表于 2009-1-10 14:57:37 | 显示全部楼层
VB和VC里头玩串口都是一样的,找个串口控件就行了,有数据过来的时候串口会自动向进程发消息.至于串口的底层是用中断还是查询,你不需关心.

出0入22汤圆

发表于 2009-1-9 21:33:34 | 显示全部楼层
那使用串口中断吧,

出0入0汤圆

 楼主| 发表于 2009-1-9 21:17:58 | 显示全部楼层
小马哈好快啊,用定时方式受不了,我既想它能一直监控串口有不影响到其它事件的执行,这样的循环用定时怕是免为其难了点。

出0入22汤圆

发表于 2009-1-9 21:01:00 | 显示全部楼层
timer?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-20 16:43

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表