使用VS2013编写的研华PCI1761测试程序源码
/*
* 研华PCI1761测试程序
* 作者:IT专家
* 版本:1.0
* 日期:2023年3月12日
*/
#include
#include
// PCI设备基地址
#define BASE_ADDR 0x3100
// 寄存器偏移量
#define REG_OFFSET 0x02
// 寄存器位偏移量
#define BIT_OFFSET 0x01
// 寄存器写入值
#define WRITE_VALUE 0x01
// 寄存器读取值
#define READ_VALUE 0x00
using namespace std;
// PCI设备初始化函数
bool init() {
// 初始化PCI设备
if (!Initialize()) {
cout << "初始化PCI设备失败" << endl;
return false;
}
// 确定设备基地址
if (!SetDeviceBaseAddress(BASE_ADDR)) {
cout << "设置设备基地址失败" << endl;
return false;
}
return true;
}
// 打开继电器
void openRelay(int relayNum) {
// 确定寄存器地址
int regAddr = REG_OFFSET + relayNum * BIT_OFFSET;
// 写入寄存器
WriteReg(regAddr, WRITE_VALUE);
}
// 关闭继电器
void closeRelay(int relayNum) {
// 确定寄存器地址
int regAddr = REG_OFFSET + relayNum * BIT_OFFSET;
// 写入寄存器
WriteReg(regAddr, READ_VALUE);
}
int main() {
// 初始化PCI设备
if (!init()) {
return 1;
}
// 打开继电器1
openRelay(1);
// 等待3秒
Sleep(3000);
// 关闭继电器1
closeRelay(1);
// 释放PCI设备
Release();
return 0;
}
下载地址
用户评论