Files
witmotionDll/register.h
2022-06-01 20:42:53 +08:00

193 lines
3.1 KiB
C

#ifndef REGISTER_H
#define REGISTER_H
#define SAVE 0x00
#define CALSW 0x01
#define RSW 0x02
#define RRATE 0x03
#define BAUD 0x04
#define AXOFFSET 0x05
#define AYOFFSET 0x06
#define AZOFFSET 0x07
#define GXOFFSET 0x08
#define GYOFFSET 0x09
#define GZOFFSET 0x0a
#define HXOFFSET 0x0b
#define HYOFFSET 0x0c
#define HZOFFSET 0x0d
#define D0MODE 0x0e
#define D1MODE 0x0f
#define D2MODE 0x10
#define D3MODE 0x11
#define D0PWMH 0x12
#define D1PWMH 0x13
#define D2PWMH 0x14
#define D3PWMH 0x15
#define D0PWMT 0x16
#define D1PWMT 0x17
#define D2PWMT 0x18
#define D3PWMT 0x19
#define IICADDR 0x1a
#define LEDOFF 0x1b
#define MAGRANGX 0x1c
#define MAGRANGY 0x1d
#define MAGRANGZ 0x1e
#define BANDWIDTH 0x1f
#define GYRORANGE 0x20
#define ACCRANGE 0x21
#define SLEEP 0x22
#define ORIENT 0x23
#define AXIS6 0x24
#define FILTK 0x25
#define GPSBAUD 0x26
#define READADDR 0x27
#define BWSCALE 0x28
#define MOVETHR 0x28
#define MOVESTA 0x29
#define ACCFILT 0x2A
#define GYROFILT 0x2b
#define MAGFILT 0x2c
#define POWONSEND 0x2d
#define VERSION 0x2e
#define KEY 0x69
#define TIMEZONE 0x6B
/* KEY */
#define KEY_UNLOCK 0xB588
/* SAVE */
#define SAVE_PARAM 0x00
#define SAVE_SWRST 0xFF
/* algorithm */
enum ALGROITHM_ENUM {
ALGROITHM9 = 0,
ALGROITHM6 = 1
};
/* ORIENT */
enum ORIENT_ENUM {
ORIENT_HORIZONTAL = 0,
ORIENT_VERTICAL
};
/* ORIENT */
enum POWONSEND_ENUM {
CLOSE = 0,
OPEN
};
/* CALSW */
enum CAL_ENUM {
EXIT = 0,
GYROACC,
MAGNETIC,
ALTITUDE,
ALANGLEZ
};
#define EXITCAL 0x00
#define CALGYROACC 0x01
#define CALMAG 0x02
#define CALALTITUDE 0x03
#define CALANGLEZ 0x04
/* time zone */
enum TIMEZONE_ENUM {
UTC_N12 = 0,
UTC_N11,
UTC_N10,
UTC_N9,
UTC_N8,
UTC_N7,
UTC_N6,
UTC_N5,
UTC_N4,
UTC_N3,
UTC_N2,
UTC_N1,
UTC,
UTC_P1,
UTC_P2,
UTC_P3,
UTC_P4,
UTC_P5,
UTC_P6,
UTC_P7,
UTC_P8,//default
UTC_P9,
UTC_P10,
UTC_P11,
UTC_P12
};
/* RETURN CONTENT */
#define SetBit(VAR, Place) (VAR |= (1 << Place))
#define ClrBit(VAR, Place) (VAR &= ((1 << Place) ^ 255))
enum RETURN_CONTENT_ENUM {
TIME = 0,
ACCELERATION,
ANGULAR_VELOCITY,
EULER_ANGLE,
MAGNETIC_FIELD,
PORT_STATUS,
ATMOSPHERIC_PRESSURE_ALTITUDE,
LATITUDE_LONGITUDE,
GROUND_VELOCITY,
QUATERNION,//四元数
SATELLITE_ACCURACY
};
/* BAUD */
enum BAUD_ENUM {
WIT_BAUD_2400 = 0,
WIT_BAUD_4800,
WIT_BAUD_9600,//default
WIT_BAUD_19200,
WIT_BAUD_38400,
WIT_BAUD_57600,
WIT_BAUD_115200,
WIT_BAUD_230400,
WIT_BAUD_460800,
WIT_BAUD_921600
};
/**RRATE*****/
enum RRATE_ENUM {
RRATE_01HZ = 1,
RRATE_05HZ,
RRATE_1HZ,
RRATE_2HZ,
RRATE_5HZ,
RRATE_10HZ,//default
RRATE_20HZ,
RRATE_50HZ,
RRATE_100HZ,
RRATE_NONE,//保留
RRATE_200HZ,
RRATE_ONCE
};
/* 端口模式 */
enum MODEL_D0_D2_D3_ENUM {
AIN = 0,//default
DIN,
DOH,
DOL,
PWM
};
enum MODEL_D1_ENUM {
AIN_D1 = 0,//default
DIN_D1,
DOH_D1,
DOL_D1,
PWM_D1,
CLR_D1
};
#endif // REGISTER_H