private bool CounterBoardInit(out string returnCode) { int Status; int Number = 0; // 接続デバイス数取得 Status = EPX18QC.EPX18QC_GetNumberOfDevices(ref Number); if (Status != EPX18QC.EPX18QC_OK) { returnCode = "EPX18QC_GetNumberOfDevices() Error"; return(false); } if (Number == 0) { returnCode = "DeviceNumber = 0"; return(false); } // デバイス接続 Status = EPX18QC.EPX18QC_Open(ref hDevice); if (Status != EPX18QC.EPX18QC_OK) { returnCode = "EPX18QC_Open() Error"; return(false); } returnCode = "EPX18QC Init Succesed"; return(true); }
public void close()//todo ちゃんとかく { for (int i = 0; i < 2; i++) { dio.Exit(dioId[i]); } for (int i = 0; i < 2; i++) { aio.Exit(aioId[i]); } EPX18QC.EPX18QC_Close(hDevice); }
public bool GetCounterValue(byte CH, ref int value, out string returnCode) { int Status; // カウンタ値取得 Status = EPX18QC.EPX18QC_GetCounterValue(hDevice, CH, ref value); if (Status != EPX18QC.EPX18QC_OK) { EPX18QC.EPX18QC_Close(hDevice); // デバイス切断 returnCode = "EPX18QC_GetCounterValue() Error"; return(false); } returnCode = "EPX18QC_GetCounterValue() Succesed"; return(true); }
private bool CounterCHSetting(byte CH, out string returnCode) { int Status; // カウンタ動作モード設定 Status = EPX18QC.EPX18QC_SetCounterMode(hDevice, CH, EPX18QC.EPX18QC_CNT_MODE_2PHASE); // 2相パルス入力モード if (Status != EPX18QC.EPX18QC_OK) { EPX18QC.EPX18QC_Close(hDevice); // デバイス切断 returnCode = "EPX18QC_SetCounterMode() Error"; return(false); } // カウント方向設定 Status = EPX18QC.EPX18QC_SetCounterDirection(hDevice, CH, EPX18QC.EPX18QC_CNT_DIR_UP); // アップカウント if (Status != EPX18QC.EPX18QC_OK) { EPX18QC.EPX18QC_Close(hDevice); // デバイス切断 returnCode = "EPX18QC_SetCounterDirection() Error"; return(false); } // カウンタリセット Status = EPX18QC.EPX18QC_ResetCounter(hDevice, CH); if (Status != EPX18QC.EPX18QC_OK) { EPX18QC.EPX18QC_Close(hDevice); // デバイス切断 returnCode = "EPX18QC_ResetCounter() Error"; return(false); } // カウンタ動作有効 Status = EPX18QC.EPX18QC_SetCounterControl(hDevice, CH, EPX18QC.EPX18QC_CNT_ENABLE); if (Status != EPX18QC.EPX18QC_OK) { EPX18QC.EPX18QC_Close(hDevice); // デバイス切断 returnCode = "EPX18QC_SetCounterControl() Error"; return(false); } returnCode = $"EPX18QC CH{CH} Setting Succesed"; return(true); }