基于VB的数据采集卡的应用(813B).docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VB的数据采集卡的应用(813B)

基于VB的数据采集卡的应用(813B) 作者:济南大学…????文章来源:今日电子????点击数: 1915????更新时间:2006-1-3 摘 要:本文介绍了研华813B数据采集卡及其工作原理,VB在计算机测控系统中对硬件I/O端口访问的方法,并给出了用VB开发数据采集软件的实例,具有一定的实用性。 关键词:VB;数据采集;动态链接库 ---PCL-813B(简称813B)是研华公司推出的高性能、多功能数据采集卡。VB是一种高效、易学易用的开发工具。在一些工业测控系统中,需要计算机从现场获取实际数据或发出控制命令,这就需要计算机实现对I/O端口的控制与访问,但是VB不具备直接对硬件地址进行访问的功能,可以利用VC++编写访问I/O接口地址的程序,创建动态链接库(DLL),利用DLL进行调用来实现端口访问与控制。本文以此卡为例,详细介绍了在VB环境下的应用。 813B数据采集卡简介 ---813B是基于ISA结构的,采用了12位分辨率A/D转换器AD574,转换时间为25μs,数据传送速率达25kbps,输入范围为双极性±5V、±2.5V、±1.25V和±0.625V,单极性为0~10V、0~5V、0~2.5V和0~1.25V,A/D转换触发方式为软件触发,支持32路单端隔离模拟量输入,最大连续过压为±30V。卡上的一个DIP开关(SW1)和1个跳线器(JP100)可由用户自行设置,以满足不同的需要。 I/O基地址设置 ---813B使用16个连续的I/O地址,其I/O基地址由开关SW1选择,有效地址从000到3F0(十六进制)。SW1开关共有6个微型拨码开关,其拨码组合与对应的基地址有关系。 ---如使用单极性输入,把开关置在“U”位置,此时允许0~10V、0~5V、0~1.25V模拟量输入。如放大倍数是1,允许输入0~10V;放大倍数是2,允许输入0~5V;放大倍数8,允许输入0~1.25V。放大倍数由软件控制。 DLL的编写 ---在VB中要利用DLL进行调用来实现板卡的访问与控制,首先要编写DLL。在工业控制中对计算机的底层硬件进行访问,以及利用各种控制接口板进行数据采集和控制时间,仅靠VB是无法解决的,需要使用动态链接库来实现。 ---创建一个DLL应包括三个基本成分,分别是入口函数Libmain、出口函数WEP和用户自己的功能函数。 ---C++5.0开发的DLL的完整的程序清单如下。 ∥DLL源文件IO.CPP #include windows.h #includeconio.h int FAR PASCAL outport(unsigned) short port; int FAR PASCAL outport(unsigned short port,int databyte); ∥D11EntryPoint函数 BOOL WINAPI D11EntryPoint (HINSTANCE hD11, DWORDdwReason, LPVOID Reserved) {    switch(dwReason) { case DLL_PROCESS_ATTACH:    {      break;    } case DLL_PROCESS_DETACH:    {      break;    } } return TRUE; } ∥两个功能函数 int FAR PASCAL inport(unsigned short port) {    reture(_inp(port); ) int FAR PASCAL outport(unsigned short port,int databyte) { int a; a=_outp(port,databyte); return a; } ∥模块定义文件IO.DEF CODE PRELOAD MOVEABLE DISCARDABLE DATA PRELOAD SINGLE EXPORTS inport outport VB中的DLL调用 ---DLL函数或过程必须在全局模块(*.BAS)中正确说明才有效。VB是用Declare语句把一个DLL函数引入VB中的,它告诉VB在哪里找到DLL函数,并且让VB知道DLL需要哪种类型的参数,同时返回哪种类型的值。当某个DLL函数用Declare语句正确声明以后,就可以像使用其他函数一样使用这个DLL函数。 ---在VB应用程序的全局模块中声明IO.DLL并将其放入Windows\system目录下,这样就可以像使用Windows API一样使用其中的inport和outport函数了。 --- Declare Function inport Libio.d11 (ByVal port As Integer)As Long

文档评论(0)

liudao + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档