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

📄 adt8940.~h

📁 运动控制卡的详细开发资料
💻 ~H
字号:
#ifndef	_ADT8940_H__
#define	_ADT8940_H__

#if  defined _WINDOWS   ||  defined _Windows
    #define  _MSWINDOWS_
#else
    #undef   _MSWINDOWS_   
#endif 

//0x540---BCB4
#if __BORLANDC__  >  0x540
    #define __FORBCB__
#else
    #undef __FORBCB__
#endif    


#ifdef   _MSWINDOWS_
	#ifdef  ADT8940_EXPORTS
		#define ADTDLLAPI __declspec(dllexport)
	#else
		#define ADTDLLAPI __declspec(dllimport)
	#endif
	#define  CALLTYPE  __stdcall
#else
	#define  ADTDLLAPI
	#define  CALLTYPE 
#endif


#ifdef __FORBCB__
extern "C"
{
#endif

ADTDLLAPI int CALLTYPE adt8940_initial(void);
ADTDLLAPI int CALLTYPE get_lib_version(void);
ADTDLLAPI int CALLTYPE set_pulse_mode(int cardno,int axis,int value,int logic,int dir_logic);
ADTDLLAPI int CALLTYPE set_limit_mode(int cardno,int axis,int v1,int v2,int logic);
ADTDLLAPI int CALLTYPE set_stop0_mode(int cardno,int axis,int v,int logic);
ADTDLLAPI int CALLTYPE set_stop1_mode(int cardno,int axis,int v,int logic);

//----------------------------------------------------//
//               驱动状态检查函数                     //
//----------------------------------------------------//

ADTDLLAPI int CALLTYPE get_status(int cardno,int axis,int *v);
ADTDLLAPI int CALLTYPE get_inp_status(int cardno,int *v);

//----------------------------------------------------//
//               运动参数设定函数                     //
//----------------------------------------------------//
ADTDLLAPI int CALLTYPE set_range(int cardno, int axis,long Value);
ADTDLLAPI int CALLTYPE set_acc(int cardno, int axis,long add);
ADTDLLAPI int CALLTYPE set_startv(int cardno, int axis,long speed);
ADTDLLAPI int CALLTYPE set_speed(int cardno, int axis,long speed);
ADTDLLAPI int CALLTYPE set_command_pos(int cardno, int axis,long pos);
ADTDLLAPI int CALLTYPE set_actual_pos(int cardno, int axis,long pos);
//----------------------------------------------------//
//               运动参数检查函数                     //
//----------------------------------------------------//

ADTDLLAPI int CALLTYPE get_command_pos(int cardno,int axis,long *pos);
ADTDLLAPI int CALLTYPE get_actual_pos(int cardno,int axis,long *pos);
ADTDLLAPI int CALLTYPE get_speed(int cardno,int axis,long *speed);

//----------------------------------------------------//
//                   驱动函数                         //
//----------------------------------------------------//

ADTDLLAPI int CALLTYPE pmove(int cardno,int axis,long pos);
ADTDLLAPI int CALLTYPE dec_stop(int cardno,int axis);
ADTDLLAPI int CALLTYPE sudden_stop(int cardno,int axis);
ADTDLLAPI int CALLTYPE(int cardno,int axis1,int axis2,long pulse1,long pulse2);
ADTDLLAPI int CALLTYPE inp_move3(int cardno,int axis1,int axis2,int axis3,long pulse1,long pulse2,long pulse3);
ADTDLLAPI int CALLTYPE inp_move4(int cardno,long pulse1,long pulse2,long pulse3,long pulse4);
ADTDLLAPI int CALLTYPE read_bit(int cardno,int number);
ADTDLLAPI int CALLTYPE write_bit(int cardno,int number,int value);


ADTDLLAPI int CALLTYPE adt8940_init_board(void);
ADTDLLAPI int CALLTYPE home1(int axis,FUNCTION pfn);
ADTDLLAPI int CALLTYPE home2(int axis1,int axis2,FUNCTION pfn);
ADTDLLAPI int CALLTYPE home3(int axis1,int axis2,int axis3,FUNCTION pfn);
ADTDLLAPI int CALLTYPE home4(FUNCTION pfn);
ADTDLLAPI int CALLTYPE work_move1(int axis,float d,int oppmode,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE work_move2(int axis1,float d1,int axis2,float d2,int oppmode,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE work_move3(int axis1,float d1,int axis2,float d2,int axis3,float d3,int oppmode,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE work_move4(float d1,float d2,float d3,float d4,int oppmode,int speedmode,FUNCTION pfn);

ADTDLLAPI int CALLTYPE work_inp2(int axis1,float d1,int axis2,float d2,int oppmode,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE work_inp3(int axis1,float d1,int axis2,float d2,int axis3,float d3,int oppmode,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE work_inp4(float d1,float d2,float d3,float d4,int oppmode,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE work_arc(int axis1,int axis2,float cood[],int speedmode,FUNCTION pfn);

ADTDLLAPI int CALLTYPE hand_move(int axis,int dir,FUNCTION pfn);

ADTDLLAPI int CALLTYPE continue_move1(int axis,int dir,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE continue_move2(int axis1,int dir1,int axis2,int dir2,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE continue_move3(int axis1,int dir1,int axis2,int dir2,int axis3,int dir3,int speedmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE continue_move4(int dir1,int dir2,int dir3,int dir4,int speedmode,FUNCTION pfn);

ADTDLLAPI int CALLTYPE free_move1(int axis,float d,float startv,float speed,float addtime,int oppmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE free_move2(int axis1,float d1,float startv1,float speed1,float addtime1,int axis2,float d2,float startv2,float speed2,float addtime2,int oppmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE free_move3(int axis1,float d1,float startv1,float speed1,float addtime1,int axis2,float d2,float startv2,float speed2,float addtime2,int axis3,float d3,float startv3,float speed3,float addtime3,int oppmode,FUNCTION pfn);
ADTDLLAPI int CALLTYPE free_move4(float d1,float startv1,float speed1,float addtime1,float d2,float startv2,float speed2,float addtime2,float d3,float startv3,float speed3,float addtime3,float d4,float startv4,float speed4,float addtime4,int oppmode,FUNCTION pfn);

ADTDLLAPI int CALLTYPE one_stop(int axis,int mode);
ADTDLLAPI int CALLTYPE all_stop(int mode);

ADTDLLAPI float CALLTYPE get_logical_pos(int axis,int mode);
ADTDLLAPI float CALLTYPE get_fact_pos(int axis,int mode);
ADTDLLAPI float CALLTYPE get_move_speed(int axis,int mode);
ADTDLLAPI int CALLTYPE get_input(int number);
ADTDLLAPI int CALLTYPE set_output(int number,int value);

#ifdef __FORBCB__
}              
#endif

#endif

⌨️ 快捷键说明

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