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

📄 robotapi.h

📁 智能小车导航
💻 H
字号:
/*
*-----------------------------------------------------------------------------
*       Name            RobotAPI.H
*       Purpose         Device Driver Interface for Win32s
*       
*       Development Kit Microsoft Win32 SDK, Visual C++ 6.00 
*       Author          zouwei
*       Date          	2005/4/10
*
*
*       Description
*
*       
*-----------------------------------------------------------------------------
*/

/* By C++ language compiler */

#ifdef __cplusplus
extern "C" {
#endif
	typedef BYTE RRESULT; 

	typedef struct
	{
		int m_approach1;
		int m_approach2;
		int m_approach3;
		int m_approach4;
		int m_approach5;
		int m_approach6;
		int m_approach7 ;
		int m_approach9 ;
		int m_approach8 ;
		int m_approach10;
		int m_approach11;
		int m_approach12;
		int m_approach13;
		int m_approach14;
		int m_approach15;
		int m_approach16;
	}INFRARED_SENSOR_DATA;

	typedef float ULTRASONIC_VALUE;

	typedef struct
	{
		ULTRASONIC_VALUE m_approach1;
		ULTRASONIC_VALUE m_approach2;
		ULTRASONIC_VALUE m_approach3;
		ULTRASONIC_VALUE m_approach4;
		ULTRASONIC_VALUE m_approach5;
		ULTRASONIC_VALUE m_approach6;
		ULTRASONIC_VALUE m_approach7 ;
		ULTRASONIC_VALUE m_approach9 ;
		ULTRASONIC_VALUE m_approach8 ;
		ULTRASONIC_VALUE m_approach10;
		ULTRASONIC_VALUE m_approach11;
		ULTRASONIC_VALUE m_approach12;
		ULTRASONIC_VALUE m_approach13;
		ULTRASONIC_VALUE m_approach14;
		ULTRASONIC_VALUE m_approach15;
		ULTRASONIC_VALUE m_approach16;
		ULTRASONIC_VALUE m_approach17;
		ULTRASONIC_VALUE m_approach18;
		ULTRASONIC_VALUE m_approach19;
		ULTRASONIC_VALUE m_approach20;
		ULTRASONIC_VALUE m_approach21;
		ULTRASONIC_VALUE m_approach22;
		ULTRASONIC_VALUE m_approach23;
		ULTRASONIC_VALUE m_approach24;	
	}ULTRASONIC_SENSOR_DATA;

	typedef int PSD_SENSOR_DATA; 
	
	typedef struct
	{
		PSD_SENSOR_DATA m_approach1;
		PSD_SENSOR_DATA m_approach2;
		PSD_SENSOR_DATA m_approach3;
		PSD_SENSOR_DATA m_approach4;
	}PSD_SENSOR_DATA_ALL;

	typedef short  ORIENT_SENSOR_DATA;
	typedef int  POWER_INFO;

	typedef struct 
	{
		BYTE m_approach1;	
		BYTE m_approach2;
		BYTE m_approach3;
		BYTE m_approach4;
		BYTE m_approach5;
		BYTE m_approach6;
		BYTE m_approach7;
		BYTE m_approach8;
	}REMOTE_CONTROL_STATE;

	typedef struct 
	{
		INFRARED_SENSOR_DATA m_InfraredData;
		ULTRASONIC_SENSOR_DATA m_UltrasonicData;
		PSD_SENSOR_DATA_ALL m_PSDData;
		ORIENT_SENSOR_DATA m_OrientData;
		POWER_INFO m_PowerInfo;
		REMOTE_CONTROL_STATE m_RemoteControlState;
	}ROBOT_SENSOR_INFO;


	typedef struct
	{
		float m_LeftDist;
		float m_RightDist;                
	}ROBOT_MOTION_DIST;

	typedef struct
	{
		float m_Vel;
		short m_Dir;                      
		BYTE  m_PosFlag;               
	}ROBOT_MOTION_STATUS;

	typedef short ROBOT_VISIONPLAT_DIR;


	extern "C" __declspec (dllimport) RRESULT _stdcall RobotInitial(BYTE btDriveComNo,BYTE btSensorComNo);
	extern "C" __declspec (dllimport) RRESULT _stdcall RobotRelease();
	extern "C" __declspec (dllimport) RRESULT _stdcall RobotShutDown();
	extern "C" __declspec (dllimport) RRESULT _stdcall RobotRunSensorModule();
	extern "C" __declspec (dllimport) RRESULT _stdcall RobotStopSensorModule();

	extern "C" __declspec (dllimport) INFRARED_SENSOR_DATA* _stdcall QueryInfraRedData();
	extern "C" __declspec (dllimport) ULTRASONIC_VALUE* _stdcall QuerySingleUltraSonicData(int nIndex);
	extern "C" __declspec (dllimport) PSD_SENSOR_DATA* _stdcall QueryPSDData(int nIndex);
	extern "C" __declspec (dllimport) ORIENT_SENSOR_DATA* _stdcall QueryOrientData();
	extern "C" __declspec (dllimport) POWER_INFO* _stdcall QueryPowerInfo();
	extern "C" __declspec (dllimport) REMOTE_CONTROL_STATE* _stdcall QueryRemoteControlState();
	extern "C" __declspec (dllimport) ROBOT_SENSOR_INFO* _stdcall QueryAllSensorData();
	
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Forward(float V);
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Velocity(short phei, float V);		
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Forward_Position(float V, short distance);
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Rotate_Position(short angle, float V);
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Set_Motion_Mode(short mode);
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Move_Position(short phei, float V, short distance);
	extern "C" __declspec (dllimport) ROBOT_MOTION_STATUS* _stdcall Drive_Status_Query();
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Vision_Hor(short phei);
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Vision_Ver(short phei);
	extern "C" __declspec (dllimport) ROBOT_VISIONPLAT_DIR* _stdcall Drive_Vision_Hor_Dir_Query();
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_Vision_Hor_Stop();
	extern "C" __declspec (dllimport) ROBOT_MOTION_DIST* _stdcall Drive_Distance_Query();
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_To_Velocity(float V_l, float V_r, float a_l, float a_r);

	extern "C" __declspec (dllimport) ROBOT_MOTION_DIST* _stdcall TestStopThread();
	extern "C" __declspec (dllimport) ROBOT_MOTION_DIST* _stdcall TestBeginThread();

	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_RFID_Hor(float v,short flag);
	extern "C" __declspec (dllimport) RRESULT _stdcall Drive_RFID_Ver(float v, short flag, short delay);
	
#define  ROBOT_NO_ERROR           100
#define  ROBOT_ERROR_DRIVECOM     101
#define  ROBOT_ERROR_SENSORCOM    102
#define  ROBOT_ERROR_ALLCOM       103
	
	
#define  ROBOT_ERROR_SHUTDOWN     104
#define  ROBOT_ERROR_INIT         105
#define  ROBOT_ERROR_SENDATA      106
#define  ROBOT_ERROR_PARA         107	
		
#ifdef __cplusplus
}
#endif

⌨️ 快捷键说明

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