项目使用研华的IO卡PCL-725,找了一会方法,现记录如下
环境:xp sp3 + vs2008 sp1
项目架构:SDI (对话框的也测试过)
======================================================
1、将研华给的头文件及lib库文件添加到工程文件夹里。本站下载在这里
2、工程属性-linker-input-additinal dependencies里添加adsapi32.lib,工程属性-linker-general-additinal library dependencies里添加adsapi32.lib所在目录
3、工程.h文件里包含头文件#include "Driver.h"
4、.h文件里声明(机器上只有1个卡 通道号是0 掩码是0xFF)
LRESULT m_lrErrCode; LONG m_lDriverHandle; // driver handle BYTE m_byOutData ; PT_DioWritePortByte m_ptDioWritePortByte; // DioWritePortByte table
5、.cpp文件里打开卡:(这里进行了最简单的简化,复杂情况不考虑 详细见研华的手册)
m_lrErrCode = DRV_DeviceOpen(0,(LONG far *)&m_lDriverHandle);
DRV_DeviceClose((LONG far *)&m_lDriverHandle);
6、开关量输出
BYTE m_byOutData = 0x01; m_ptDioWritePortByte.port = 0; m_ptDioWritePortByte.mask = 0xff; m_ptDioWritePortByte.state = m_byOutData; DRV_DioWritePortByte(m_lDriverHandle,(LPT_DioWritePortByte)&m_ptDioWritePortByte);