编辑: xiong447385 2019-07-05
收稿日期: 2006-01-12 作者简介: 王立文 ( 1976-),男 ,讲师 ,博士 ,主要从事设施环境计算机控制研究 .

第21卷第 9期徐州工程学院学报2006年 9月 Vol.

21 No.

9 Journal of Xuzhou Institute of Technology SEP.

2006 PCL系列多功能数据采集卡驱动程序的改进 王立文 ,邵晓根 (徐州工程学院 , 江苏 徐州 221008) 【 摘要】 PCL系列多功能数据采集卡是国内应用较多的计算机板卡 ,但其原有的驱动程序 存在着难以理解和使用不便的缺点.文章在原有驱动程序的基础上 ,给出了新的驱动程序 .新驱动 程序易于理解 ,使用方便 ,值得推广. 【 关键词】 PCL;

多功能数据采集卡;

驱动程序 【 中图分类号】 TP368.

1 【 文献标识码】 A 【 文章编号】 1673-0704( 2006) 09-0009-03 现代数据采集卡一般集成了信号采集、信号转换和信号输出功能.大多数数据采集卡具有较好的封装和 较高的硬件集成度 ,可适应不同的信号采集与控制信号输出场合.但控制部件的灵活性和易用性往往产生矛 盾 ,即控制部件的功能越强大 ,使用越灵活 ,对操作人员的专业知识和经验要求也越高 . PCL系列多功能数 据采集卡是深圳 EVOC公司开发的产品 ,在国内具有较大的市场占有率.这类产品的多数使用者在利用其 数字输出功能时往往不能正确理解和使用原来的驱动程序 ,原因在于这类产品的驱动程序中数字信号输出 驱动函数编写不够完善 .笔者在原有数字输出函数的基础上 ,编写了新的驱动函数.新驱动函数易于理解掌 握 ,使用方便 ,值得推广 .笔者将以 PCL711B卡为例说明此类数据采集卡驱动程序的改进方法.

1 PCL系列数据采集卡驱动程序存在的问题 在PCL711B多功能数据采集卡的 C语言驱动程序中 ,有一条数字信号输出指令 ,其原型为: int W 711B DO(int port number, unsigned char data);

在该函数原型中 , port number代表数据采集卡的高 8位数字输出通道或低 8位数字输出通道 ,若该值 取0,则代表对低 8位数字输出通道进行操作;

若该值取 1,则代表对高 8位数字输出通道进行操作. data参 数表示向高 8位或低 8位数字输出通道写入的数据 . 这个数据的写入将影响到 8个数字输出通道的输出状 态.初次使用该函数的编程者对此函数的使用往往感到困惑: 许多情况下往往只需要对某一个数字输出通道 的状态进行更改 ,而其它通道的状态需要维持不变 ,这时应如何使用该函数?面对这种困惑 ,编程者往往无从 下手.

2 解决问题的方法 其实 ,只要理解了 W 711B DO函数是对 8个数字输出通道的输出状态同时设置 ,就可以利用此函数 重新编写新的驱动函数.例如 ,若要将第 5个和第 0个数字输出通道的状态设为 1,而其它低 8位数字输出 通道的状态设置为 0,则应使用以下命令: W 711B DO( 0, 00100001B);

该函数中 ,第一个参数 0表示对低 8位数字输出通道进行操作 ,第二个参数中末尾的 B表示本数是一个 二进制数 ,第二个参数中第一个 (右数第五个 ,基数为零 ) 1表示第五个数字输出通道的目标状态是 1,第二个 (右数第零个 ) 1表示第零个数字输出通道的目标状态是 1,其它位数为 0表示对应通道的目标输出状态都是 ・

9 ・ 0.此语句执行后 ,将把低 8位数字输出通道中第 0个、第 5个通道状态设置成 1,其它通道输出状态设置成 0. 在上面的例子中 ,函数第二个参数用二进制数表示的目的是为了更清楚地说明此函数的用法.若将此函 数用十进数表示 ,则此十进制数为 [1 ] :

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题