发 帖  
原厂入驻New

labview如何让一个循环运行时另一个循环自动暂停

229 电子仪器
分享
本帖最后由 MakeyNa 于 2020-10-29 18:15 编辑

       用VISA控制一个电子负载,将实时轮检(读取电压电流和故障)放在循环A,将即时操作(拉载、设置量程和继电器等)用时间结构放入另一个循环B,两个循环的速率不一致。
       如果在即时操作B的时候,实时轮检的循环A正在执行,在VISA底层里就可能同时存在多个读取/写入从而报错,我希望最好在运行即时操作的循环B时,实时轮检循环A暂停,即时操作B完毕后实时轮检A继续运行。
       我目前的做法是,在即时操作前给一个布尔原件赋值T,结束后赋值F,实时轮检循环A检测到布尔T就跳过轮检什么也不做,检测到F就正常轮检,这样即时操作B的过程中轮检A就会暂停。运行时功能是满足了,但有时候操作太快响应会很慢。
       请问坛友labview有没有类似的功能直接满足我的要求?因为我的程序不接硬件运行不了就不上传了。

0
Snipaste_2020-10-29_16-43-34.png
2020-10-29 16:44:22   评论 分享淘帖 邀请回答
4个回答
2020-10-29 18:41:51 评论

举报

用队列操作应该比较好。
2020-10-30 16:30:26 评论

举报

X循环停止了就不能再运行了
2020-10-30 23:53:54 评论

举报

可以利用消息的方式吧,操作B循环的时候,发现停止消息给A循环等待,B循环操作完成后,发现启动消息给A
2020-10-31 15:07:24 评论

举报

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
我要提问
关闭

站长推荐 上一条 /9 下一条

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