?? pci2006.h
字號:
//*************************************************************************************
// 用于AD轉換的硬件參數
// AD通道和AD增益,它們將構成采樣參數
// 陣列(請參考下面的PCI2006_PARA_AD)
#ifndef _CHANNEL_ARRAY_AD
typedef struct _CHANNEL_ARRAY_AD
{
DWORD ADChannel; // AD通道號
DWORD ADGains; // AD增益
} CHANNEL_ARRAY_AD;
#endif
// 用于AD采樣的實際硬件參數
#ifndef _PCI2006_PARA_AD
typedef struct _PCI2006_PARA_AD
{
DWORD ADMode; // 連續采集和分組采集方式選擇
DWORD ChannelCount; // 通道總數(1-32)
CHANNEL_ARRAY_AD ChannelArray[32]; // 采樣陣列(包括通道和增益)
DWORD Frequency; // AD采集頻率(Hz)
DWORD GroupInterval; // 分組采樣時,相鄰組的時間間隔(uS)
DWORD TriggerSource; // 內觸發和外觸發方式選擇
DWORD OutTriggerEdge; // 外觸發上升沿和下降沿類型選擇
DWORD OutDigitAnalog; // 外觸發數字和模擬方式選擇
DWORD ClockSource; // 允許使用外部時鐘
}PCI2006_PARA_AD,*PPCI2006_PARA_AD;
#endif
//***********************************************************
// AD參數(PCI2006_PARA_AD)中的ADMode使用的采集方式選項
#define PCI2006_SEQUENCE_MODE 0x0000 //連續采集
#define PCI2006_GROUP_MODE 0x0001 //分組采集
//***********************************************************
// AD硬件參數PCI2006_PARA_AD中的TriggerSource成員變量所使用AD啟動觸發源選項
#define PCI2006_IN_TRIGGER 0x0000 // 內觸發方式
#define PCI2006_OUT_TRIGGER 0x0001 // 外觸發方式
//***********************************************************
// AD硬件參數PCI2006_PARA_AD中的OutTriggerEdge成員變量所使用的觸發沿方式選擇控制字選項
#define PCI2006_RISING_EDGE 0x0000 // 外觸發上升沿觸發方式
#define PCI2006_FALLING_EDGE 0x0001 // 外觸發下降沿觸發方式
//***********************************************************
// AD硬件參數PCI2006_PARA_AD中的OutDigitAnalog成員變量所使用的數字和模擬外觸發選項
#define PCI2006_ANALOG_TRIGGER 0x0000 // 模擬量外觸發
#define PCI2006_DIGIT_TRIGGER 0x0001 // 數字量外觸發
//***********************************************************
// AD硬件參數PCI2006_PARA_AD中的ClockSource成員變量所使用內部和外部時鐘源選項
#define PCI2006_IN_CLOCK 0x0000 // 內部時鐘定時觸發
#define PCI2006_OUT_CLOCK 0x0001 // 外部時鐘定時觸發
//*************************************************************************************
// 用于開關量的參數結構
#ifndef _PCI2006_PARA_DO
typedef struct _PCI2006_PARA_DO // 數字量輸出參數
{
BYTE DO0; // 0通道
BYTE DO1; // 1通道
BYTE DO2; // 2通道
BYTE DO3; // 3通道
BYTE DO4; // 4通道
BYTE DO5; // 5通道
BYTE DO6; // 6通道
BYTE DO7; // 7通道
BYTE DO8; // 8通道
BYTE DO9; // 9通道
BYTE DO10; // 10通道
BYTE DO11; // 11通道
BYTE DO12; // 12通道
BYTE DO13; // 13通道
BYTE DO14; // 14通道
BYTE DO15; // 15通道
} PCI2006_PARA_DO,*PPCI2006_PARA_DO;
#endif
#ifndef _PCI2006_PARA_DI
typedef struct _PCI2006_PARA_DI // 數字量輸入參數
{
BYTE DI0; // 0通道
BYTE DI1; // 1通道
BYTE DI2; // 2通道
BYTE DI3; // 3通道
BYTE DI4; // 4通道
BYTE DI5; // 5通道
BYTE DI6; // 6通道
BYTE DI7; // 7通道
BYTE DI8; // 8通道
BYTE DI9; // 9通道
BYTE DI10; // 10通道
BYTE DI11; // 11通道
BYTE DI12; // 12通道
BYTE DI13; // 13通道
BYTE DI14; // 14通道
BYTE DI15; // 15通道
} PCI2006_PARA_DI,*PPCI2006_PARA_DI;
#endif
//######################## 常量定義 #################################
// CreateFileObject所用的文件操作方式控制字(可通過或指令實現多種方式并操作)
#define PCI2006_modeRead 0x0000 // 只讀文件方式
#define PCI2006_modeWrite 0x0001 // 只寫文件方式
#define PCI2006_modeReadWrite 0x0002 // 既讀又寫文件方式
#define PCI2006_modeCreate 0x1000 // 如果文件不存可以創建該文件,如果存在,則重建此文件,并清0
#define PCI2006_typeText 0x4000 // 以文本方式操作文件
//***********************************************************
// 用于DA的復位方式(適用于PCI2006_InitDevProDA函數的ResetMode參數)
#define PCI2006_RESET_MODE_NEGATIVE 0x0000 // 負滿度(-5V或-10V...)
#define PCI2006_RESET_MODE_ZERO 0x0001 // 零點(0V)
//***********************************************************
// 用戶函數接口
#ifndef DEFINING
#define DEVAPI __declspec(dllimport)
#else
#define DEVAPI __declspec(dllexport)
#endif
#ifdef __cplusplus
extern "C" {
#endif
//######################## 常規通用函數 #################################
// 適用于本設備的最基本操作
DEVAPI HANDLE FAR PASCAL PCI2006_CreateDevice(int DeviceID = 0); // 創建設備對象
DEVAPI int FAR PASCAL PCI2006_GetDeviceCount(HANDLE hDevice); // 取得設備總臺數
DEVAPI BOOL PCI2006_ListDeviceDlg(HANDLE hDevice); // 列表系統當中的所有的該PCI設備
DEVAPI BOOL FAR PASCAL PCI2006_ReleaseDevice(HANDLE hDevice); // 關閉設備,禁止傳輸,且釋放資源
//####################### AD數據讀取函數 #################################
// 適于大多數普通用戶,這些接口最簡單、最快捷、最可靠,讓用戶不必知道設備
// 低層復雜的硬件控制協議和繁多的軟件控制編程,僅用下面的初始化設備和讀取
// AD數據兩個函數便能輕松高效地實現高速、連續的數據采集
DEVAPI BOOL FAR PASCAL PCI2006_InitDeviceProAD( // 初始化設備,當返回TRUE后,設備即刻開始傳輸.
HANDLE hDevice, // 設備對象
PPCI2006_PARA_AD pADPara); // 硬件參數, 它僅在此函數中決定硬件狀態
DEVAPI BOOL FAR PASCAL PCI2006_StartDeviceProAD( // 在初始化之后,啟動設備
HANDLE hDevice); // 設備對象句柄
DEVAPI BOOL FAR PASCAL PCI2006_SetDevFreqencyAD( // 在AD轉換過程中,動態改變采樣頻率
HANDLE hDevice, // 設備對象句柄
DWORD nADFrequency); // AD采樣頻率(Hz)
DEVAPI ULONG FAR PASCAL PCI2006_ReadDeviceProAD_NotEmpty( // 用非空標志讀取設備上的AD數據
HANDLE hDevice, // 設備句柄
PSHORT pADBuffer, // 將用于接受數據的用戶緩沖區
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -