⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mccl_fun.h

📁 机械手IPC控制器伺服运动程序
💻 H
📖 第 1 页 / 共 3 页
字号:
#ifdef __cplusplus
extern "C" {
#endif


#ifndef _EPCIO_INI_H_

#define ENC_TRIG_FIRST					   0x0
#define ENC_TRIG_LAST	                   0x1
#define ENC_TRIG_NO	                    0x0000
#define ENC_TRIG_INDEX0					0x0001
#define ENC_TRIG_INDEX1					0x0002
#define ENC_TRIG_INDEX2					0x0004
#define ENC_TRIG_INDEX3					0x0008
#define ENC_TRIG_INDEX4					0x0010
#define ENC_TRIG_INDEX5					0x0020
#define ENC_TRIG_INDEX6					0x0040
#define ENC_TRIG_INDEX7					0x0080
#define ENC_TRIG_INDEX8					0x0100
#define ENC_TRIG_LDI0					0x0200
#define ENC_TRIG_LDI1					0x0400
#define ENC_TRIG_RDI0					0x0800
#define ENC_TRIG_RDI1					0x1000
#define ENC_TRIG_ADC0					0x2000
#define ENC_TRIG_ADC1					0x4000

#define LIO_INT_RISE					   0x0
#define LIO_INT_FALL					   0x1
#define LIO_INT_LEVEL					   0x2

#define LIO_LDI0						   0x0
#define LIO_LDI1						   0x1
#define LIO_LDI2						   0x2
#define LIO_LDI3						   0x3
#define LIO_LDI4						   0x4
#define LIO_LDI5						   0x5
#define LIO_LDI6						   0x6

#define DAC_TRIG_ENC0	            0x00000001
#define DAC_TRIG_ENC1	            0x00000002
#define DAC_TRIG_ENC2	            0x00000004
#define DAC_TRIG_ENC3	            0x00000008
#define DAC_TRIG_ENC4	            0x00000010
#define DAC_TRIG_ENC5	            0x00000020
#define DAC_TRIG_ENC6	            0x00000040
#define DAC_TRIG_ENC7	            0x00000080
#define DAC_TRIG_ADC0	            0x00000100
#define DAC_TRIG_ADC1	            0x00000200
#define DAC_TRIG_ADC2	            0x00000400
#define DAC_TRIG_ADC3	            0x00000800
#define DAC_TRIG_ADC4	            0x00001000
#define DAC_TRIG_ADC5	            0x00002000
#define DAC_TRIG_ADC6	            0x00004000
#define DAC_TRIG_ADC7	            0x00008000
#define DAC_TRIG_LDI0	            0x00010000
#define DAC_TRIG_LDI1	            0x00020000
#define DAC_TRIG_LDI2	            0x00040000
#define DAC_TRIG_LDI3	            0x00080000
#define DAC_TRIG_DFI0	            0x00100000
#define DAC_TRIG_DFI1	            0x00200000
#define DAC_TRIG_DFI2	            0x00400000
#define DAC_TRIG_DFI3	            0x00800000
#define DAC_TRIG_R0DI0	            0x01000000
#define DAC_TRIG_R0DI1	            0x02000000
#define DAC_TRIG_R0DI2	            0x04000000
#define DAC_TRIG_R0DI3	            0x08000000
#define DAC_TRIG_R1DI0	            0x10000000
#define DAC_TRIG_R1DI1	            0x20000000
#define DAC_TRIG_R1DI2	            0x40000000
#define DAC_TRIG_R1DI3	            0x80000000

#define ADC_COMP_RISE				       0x0
#define ADC_COMP_FALL	                   0x1
#define ADC_COMP_LEVEL	                   0x2
#define ADC_TYPE_BIP	                   0x0
#define ADC_TYPE_UNI	                   0x1
#define ADC_MODE_SINGLE                    0x0
#define ADC_MODE_FREE	                   0x1
#define ADC_MASK_NO	                       0x0
#define ADC_MASK_BIT1	                   0x1
#define ADC_MASK_BIT2	                   0x2
#define ADC_MASK_BIT3	                   0x3

#define RIO_SET0						   0x0
#define RIO_SET1						   0x1
#define RIO_SLAVE0						   0x0
#define RIO_SLAVE1						   0x1
#define RIO_SLAVE2						   0x2
#define RIO_SLAVE3						   0x3
#define RIO_PORT0						   0x0
#define RIO_PORT1						   0x1
#define RIO_PORT2						   0x2
#define RIO_PORT3						   0x3
#define RIO_DI0							   0x0
#define RIO_DI1							   0x1
#define RIO_DI2							   0x2
#define RIO_DI3							   0x3

#define RIO_INT_RISE					   0x0
#define RIO_INT_FALL					   0x1
#define RIO_INT_LEVEL					   0x2


#endif


#ifndef _EPCIO_DEV_H_

typedef struct _LIO_INT_EX
{
	BYTE LDI0;
	BYTE LDI1;
	BYTE LDI2;
	BYTE LDI3;
	BYTE LDI4;
	BYTE LDI5;
	BYTE LDI6;
	BYTE TIMER;
} LIOINT_EX;

typedef struct _ENC_INT_EX
{
	BYTE COMP0;
	BYTE COMP1;
	BYTE COMP2;
	BYTE COMP3;
	BYTE COMP4;
	BYTE COMP5;
	BYTE INDEX0;
	BYTE INDEX1;
	BYTE INDEX2;
	BYTE INDEX3;
	BYTE INDEX4;
	BYTE INDEX5;
} ENCINT_EX;

typedef struct _RIO_INT_EX
{
	BYTE SET0_DI0;
	BYTE SET0_DI1;
	BYTE SET0_DI2;
	BYTE SET0_DI3;
	BYTE SET0_FAIL;
	BYTE SET1_DI0;
	BYTE SET1_DI1;
	BYTE SET1_DI2;
	BYTE SET1_DI3;
	BYTE SET1_FAIL;
} RIOINT_EX;

typedef struct _PCL_INT
{
	BYTE OV0;
	BYTE OV1;
	BYTE OV2;
	BYTE OV3;
	BYTE OV4;
	BYTE OV5;
} PCLINT;

typedef struct _ADC_INT
{
	BYTE COMP0;
	BYTE COMP1;
	BYTE COMP2;
	BYTE COMP3;
	BYTE COMP4;
	BYTE COMP5;
	BYTE COMP6;
	BYTE COMP7;
	BYTE CONV;
	BYTE TAG;
} ADCINT;

typedef void(_stdcall *LIOISR_EX)(LIOINT_EX*);
typedef void(_stdcall *ENCISR_EX)(ENCINT_EX*);
typedef void(_stdcall *RIOISR_EX)(RIOINT_EX*);
typedef void(_stdcall *PCLISR)(PCLINT*);
typedef void(_stdcall *ADCISR)(ADCINT*);

#endif

typedef void(_stdcall *CYCLE_INTERRUPT_ISR)();


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//  System Management

//  Get Library Version
_declspec(dllexport)void   _stdcall MCC_GetVersion(char *strVersion);

//  Set Configure Parameters
_declspec(dllexport)int    _stdcall MCC_SetGroupConfig(SYS_GROUP_CONFIG *pstConfig);

//  Set/Get Mechanism & Encoder & Home Parameters
_declspec(dllexport)int    _stdcall MCC_SetMacParam(SYS_MAC_PARAM *pstMacConfig, WORD wChannel, WORD wCardIndex = 0);
_declspec(dllexport)int    _stdcall MCC_GetMacParam(SYS_MAC_PARAM *pstMacConfig, WORD wChannel, WORD wCardIndex = 0);
_declspec(dllexport)int    _stdcall MCC_SetEncoderConfig(SYS_ENCODER_CONFIG *pstEncoderConfig, WORD wChannel, WORD wCardIndex = 0);
_declspec(dllexport)int    _stdcall MCC_SetHomeConfig(SYS_HOME_CONFIG *pstHomeConfig, WORD wChannel, WORD wCardIndex = 0);
_declspec(dllexport)int    _stdcall MCC_UpdateParam();

//  Initialize/Close System
_declspec(dllexport)int    _stdcall MCC_InitSystem(int nInterpolateTime, SYS_CARD_CONFIG *psCardConfig, WORD wCardNo);
_declspec(dllexport)int    _stdcall MCC_InitSystemEx(double dfInterpolateTime, SYS_CARD_CONFIG *pstCardConfig, WORD wCardNo);
_declspec(dllexport)int    _stdcall MCC_InitPCI(int nInterpolateTime);
_declspec(dllexport)int    _stdcall MCC_CloseSystem();

//  Reset MCCL
_declspec(dllexport)int    _stdcall MCC_ResetMotion();

//  Enable/Disable Dry Run
_declspec(dllexport)int    _stdcall MCC_EnableDryRun();
_declspec(dllexport)int    _stdcall MCC_DisableDryRun();
_declspec(dllexport)int    _stdcall MCC_CheckDryRun();

//  Set/Get Max. Feed Speed
_declspec(dllexport)int    _stdcall MCC_SetSysMaxSpeed(double dfMaxSpeed);
_declspec(dllexport)double _stdcall MCC_GetSysMaxSpeed();


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//  Local I/O Control

//  Servo On/Off
_declspec(dllexport)int    _stdcall MCC_SetServoOn(WORD wChannel, WORD wCardIndex = 0);
_declspec(dllexport)int    _stdcall MCC_SetServoOff(WORD wChannel, WORD wCardIndex = 0);
_declspec(dllexport)int    _stdcall MCC_SetPosHere(WORD wChannel, WORD wGroupIndex = 0);
_declspec(dllexport)int    _stdcall MCC_DefinePosHere(WORD wGroupIndex = 0);

//  Enable/Disable Position Ready
_declspec(dllexport)int    _stdcall MCC_EnablePosReady(WORD wCardIndex = 0);
_declspec(dllexport)int    _stdcall MCC_DisablePosReady(WORD wCardIndex = 0);

//  Get Emergency Stop Status
_declspec(dllexport)int    _stdcall MCC_GetEmgcStopStatus(WORD *pwStatus, WORD wCardIndex = 0);

//  Input Signal Trigger
_declspec(dllexport)int    _stdcall MCC_SetLIORoutineEx(LIOISR_EX pfnLIORoutine, WORD wCardIndex = 0);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -