新闻中心

EEPW首页>测试测量>设计应用> 基于虚拟仪器的汽车检测仪设计与实现

基于虚拟仪器的汽车检测仪设计与实现

作者: 时间:2009-12-03 来源:网络 收藏

当需要暂停设备时,执行StopDeviceProAD,当需要关闭 A/D设备时,ReleaseDeviceProAD便可实现,但设备对象hDevice依然存在。ReadDeviceProAD_Half函数在半满状态有效时也可以单点或几点的方式读取A/D数据,只是到下一次半满信号到来时的时间间隔会变得非常短,而不再是半满间隔。
2.4 用中断方式采集数据
用CreateDevice函数创建设备对象,同时调用CreateSystemEvent函数创建一个内核事件对象句柄hEvent赋给InitDeviceIntAD的相应参数,它将作为接收A/D半满中断事件的变量。启动A/D部件,开始A/D采样,接着调用Win32 API函数WaitForSingleObject等待hEvent中断事件的发生,在中断未到时,自动使所在线程进入睡眠状态(不消耗CPU时间),反之,则立即唤醒所在线程,执行它下面的代码,此时您便可用ReadDeviceIntAD函数读取一批半满长度(或半满以下)的A/D数据,然后再接着等待FIFO的半满中断事件,若有效再读取,就这样反复读取A/D数据即可实现连续不间断采样。用同样函数可暂停和关闭A/D设备。

3 软件编程
3.1 编程框图
软件总体框图如图3所示。

3.2 程序界面设计
虚拟式的软件界面如图4所示。

软件启动画面有两个大内容,分别是示波器模式和电压表模式。示波器项可以显示各种电子部件产生的在线实时信号;电压表项可以显示信号的数据大小,要求输入通道数(最大为32个)和采集频率,左下框显示各通道电压波形的峰峰值和频率。



评论


相关推荐

技术专区

关闭