欢迎来到天天文库
浏览记录
ID:22421229
大小:66.00 KB
页数:9页
时间:2018-10-29
《利用delphi 3.0开发微机数据采集与处理软》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、利用Delphi3.0开发微机数据采集与处理软摘要:结合开发“无线务模拟训练系统”PC系列)使用的板卡级数据采集产品的大量出现,以微机为核心的可编程数据采集与处理技术得到迅速发展。现在的微机,只需在其扩展槽内插上一块数据采集板,并辅以应用软件,即可组成一套微机数据采集与处理系统,实现信息处理和实时控制功能。数据采集与数据处理 数据采集与处理技术主要研究模数、数模转换(A/D、D/A)、数据处理等问题,需要计算机硬件电路和软件编程知识。数据采集:为对温度、压力、流量、速度、位移、振动、噪声等物理量进行测控,首先通过传感器把上述物理量转换成模拟电信号,而后由A/D—D/A板将模拟
2、电信号转换成时间、数值上量化且离散的数字量输入计算机系统。数据采集的核心是A/D转换。数据处理:计算机根据被测控对象的需要,对采集到的数据进行数学分析运算,处理结果一方面送至显示器、打印机等外设,一方面由A/D—D/A板将数字量转换成模拟电信号输出,对外部物理量进行实时监控。数据处理的核心是数值处理和D/A转换。2、微机数据采集与处理系统硬件组成系统主要由被测控对象(设备)、A/D—D/A通道、开关量I/O通道、微机等组成,如图1所示。较复杂的系统包括单片机等多机系统。图1微机数据采集与处理系统硬件组成3、与IBMPC兼容
3、的板卡级数据采集产品利用IBMPC系列微机及其兼容机I/O通道开放的设计特点,许多厂商已经设计出采用板卡级结构的数据采集产品。这类产品在一块印刷电路板上包括了模拟多路开关(MUX)、采样保持电路(S/H)、模数、数模转换器(ADC、DAC)等部件(有的板型还提供并行I/O接口8255,定时/计数器678910118254/8254等通用可编程芯片),采用IBMPC总线,可直接插入微机任一扩展槽。本文介绍台湾AXIOM公司生产的AX5412高速数据采集板,以及利用Delphi开发该产品A/D—D/A接口软件的方法。软件系统设计㈠、预备知识软件开发工具的选择为开发基于Window
4、s95/NT/98操作平台的32位数据采集与处理系统,软件设计应符合以下需求:⑴具有在Windows下实时访问80x86CPUI/O端口、硬件中断调用等功能;⑵支持32位编程;⑶代码执行速度快、界面友好、使用方便;⑷开发周期短、代码可重用性好、效费比高。综上所述,根据VC5.0、VB5.0、Delphi3.0(或其最新版Delphi4.0)三种流行RAD工具的不同特点,在开发Windows版“无线务模拟训练系统”软件过程中选择了Delphi3.0,利用Delphi的IDE环境编写VCL构件,结合虚拟设备驱动程序(.vxd)实现⑴的功能。2、VCL构件主要属性、方法、事件、过程
5、介绍⑴通用属性、方法、过程·ActiveHW:Boolean:该属性只读且运行时有效,如果虚拟设备驱动程序正常工作,则ActiveHW为True,否则为False。·OpenDriver:该方法加载虚拟设备驱动程序,为其分配内存,使程序具有直接访问系统硬件的能力。如果虚拟设备驱动程序加载成功,ActiveHW属性被设置为True,否则为False。·CloseDriver:该方法关闭虚拟设备驱动程序,释放为其分配的内存。如果虚拟设备驱动程序关闭成功,ActiveHW67891011ce=宋体>被设置为False。⑵I/O端口访问·HardAccess:Boolean:该属性决
6、定虚拟设备驱动程序采用何种方式访问I/O端口。如果HardAccess为False,I/O访问速度较快,但若指定I/O地址已被其它驱动程序占用,I/O访问可能失败;如果HardAccess为True,I/O访问速度稍慢,但能保证若指定I/O地址已被其它驱动程序占用,I/O访问仍能进行。·Port[Index:yInpute:=Port[$2F9];//从地址为2F9H的I/O端口读一个字节的数据,并赋给变量//myInpute{...}end;⑶硬件中断调用与DOS不同,在Windober:Byte:该属性指定欲调用的中断号(IRQ1—15),不支持0号中断(IRQ0—系统时
7、钟)。·SetIRQ:该方法将IRQNumber指定的中断分配给OnHaskInterrupt:该方法解除asked属性设置为False。·MaskInterrupt:该方法恢复asked属性设置为True。·DestroyIRQ:该方法释放为解除屏蔽由IRQNumber指定中断分配的内存空间,并将IsIRQSet属性设置为False,Masked属性设置为True。·IsIRQSet:Boolean:该属性只读,如果SetIRQ设置中断成功,IsIRQSet属性被设置为True,否则为False。·M
此文档下载收益归作者所有