//创建PCI1752更新输出及输出状态回读类的实例 /// <summary> /// 创建PCI1752更新输出及输出状态回读类的实例 /// </summary> /// <param name="TargetDeviceNumber">目标PCI1752设备卡号</param> /// <param name="DLLPassword">使用此DLL的密码</param> public PCI1752(int TargetDeviceNumber, string DLLPassword) // Automation.BDaq.AccessMode TargetAccessMode,<param name="TargetAccessMode">访问模式</param> { SuccessBuiltNew = false; PasswordIsCorrect = false; try { if (TargetDeviceNumber < 0) { MessageBox.Show("'TargetDeviceNumber'设备卡号不能小于0,请改为正确参数。", "参数错误"); return; } //if (TargetAccessMode == AccessMode.ModeRead) // { // ReadOnlyFlag = true; // } //else // { // ReadOnlyFlag = false; // } //ErrCode = Automation.BDaq.BDaqDevice.Open(TargetDeviceNumber, // TargetAccessMode, out TargetDevice); ErrCode = BDaqDevice.Open(TargetDeviceNumber, AccessMode.ModeWriteWithReset, out TargetDevice); if (ErrCode == ErrorCode.Success) { ErrCode = TargetDevice.GetModule(0, out TargetDOCard); if (ErrCode == ErrorCode.Success) { TempDeviceNumber = TargetDeviceNumber; SuccessBuiltNew = true; NeedFormControlFlag = false; } else { SuccessBuiltNew = false; return; } } else { SuccessBuiltNew = false; return; } } catch (Exception ex) { SuccessBuiltNew = false; MessageBox.Show("创建类的实例时出现错误!\r\n" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } }
//创建PCI1754更新输入类的实例 /// <summary> /// 创建PCI1754更新输入类的实例 /// </summary> /// <param name="TargetDeviceNumber">目标PCI1754设备卡号</param> /// <param name="DLLPassword">使用此DLL的密码</param> public PCI1754(int TargetDeviceNumber) { SuccessBuiltNew = false; try { if (TargetDeviceNumber < 0) { MessageBox.Show("'TargetDeviceNumber'设备卡号不能小于0,请改为正确参数。", "参数错误"); return; } ErrCode = BDaqDevice.Open(TargetDeviceNumber, AccessMode.ModeWriteWithReset, out TargetDevice); if (ErrCode == ErrorCode.Success) { ErrCode = TargetDevice.GetModule(0, out TargetDICard); if (ErrCode == ErrorCode.Success) { TempDeviceNumber = TargetDeviceNumber; SuccessBuiltNew = true; NeedFormControlFlag = false; } else { SuccessBuiltNew = false; return; } } else { SuccessBuiltNew = false; return; } } catch (Exception ex) { SuccessBuiltNew = false; MessageBox.Show("创建类的实例时出现错误!\r\n" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } }
override public bool Init(HardWareInfoBase infoHardWare) { AdvanceInputInfo hardWareInfo = (AdvanceInputInfo)infoHardWare; iCardNo = hardWareInfo.iCardNo; ErrorCode ret; try { ret = BDaqDevice.Open(iCardNo, AccessMode.ModeWriteWithReset, out m_device); if (ErrorCode.Success == ret) { ret = m_device.GetModule(0, out m_dio); if (ErrorCode.Success == ret) { bInitOK = true; } else { bInitOK = false; return(false); } } else { bInitOK = false; return(false); } } catch { bInitOK = false; return(false); } System.Threading.Thread threadScan = new System.Threading.Thread(ScanThreadFunction); threadScan.IsBackground = true; threadScan.Start(); return(true); }