首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么实时读取外部硬件I/O的状态

2013-11-18 
怎样实时读取外部硬件I/O的状态?各位:现在给一个自动化设备写运动控制程序,需要实时检测一个外部物理按钮

怎样实时读取外部硬件I/O的状态?

各位:

    现在给一个自动化设备写运动控制程序,需要实时检测一个外部物理按钮的状态(按钮状态通过硬件捕获),然后再通过硬件提供的指令读取按钮的状态即1或0;(硬件与PC间通过PCI通信)

现想实时检测这个按钮的状态,当有变化时,立刻执行另一指令(让设备停止运动),因此对时实性要求较高。

现要两种实现方法,不知能否达到要求,请各位指点?

1:在Timer事件里检测这个按钮的状态;

2:单独开一个线程,在线程中执行While(true)循环,然后在循环中检测按钮的状态。

在下能想到的只有以上两种方法,但感觉也不是太好,尤其是用Time事件那种,不知各位有更好的没有,求指点。

开发平台:XP
开发环境:VS2010
语言: C# C#???实时性
[解决办法]
Windows不是实时操作系统,所以如果你要求的精度小于50毫秒,Windows办不到,无论什么语言。
[解决办法]
如果硬件(象gpio 卡..)支持中断 回调会更好

热点排行