#ifndef _DEFINES_H #define _DEFINES_H #ifndef NULL #define NULL 0 #endif //Integer definition #ifndef int8 #ifdef __int8 #define int8 __int8 #else #define int8 char #endif #endif #ifndef int16 #ifdef __int16 #define int16 __int16 #else #define int16 int #endif #endif #ifndef int32 #ifdef __int32 #define int32 __int32 #else #define int32 long #endif #endif #ifndef int64 #ifdef __int64 #define int64 __int64 #else #define int64 long long #endif #endif //Unsigned #ifndef uint8 #define uint8 unsigned int8 #endif #ifndef uint16 #define uint16 unsigned int16 #endif #ifndef uint32 #define uint32 unsigned int32 #endif #ifndef uint64 #define uint64 unsigned int64 #endif //Constants #define SPEED_PER_PWM 1 #define DISTANCE_PER_VALUE 1 //IO Module Names enum IOModuleNames { //General IO_START, //Engines IO_ENGINE_START = IO_START, IO_ENGINE_DRIVE_LEFT = IO_ENGINE_START, IO_ENGINE_DRIVE_RIGHT, IO_ENGINE_DRIVE_BACK, IO_ENGINE_END, //Dribbler IO_DRIBBLER_START = IO_ENGINE_END, IO_DRIBBLER_MAIN = IO_DRIBBLER_START, IO_DRIBBLER_END, //Kicker IO_KICKER_START = IO_DRIBBLER_END, IO_KICKER_MAIN = IO_KICKER_START, IO_KICKER_END, //Sensors IO_SENSOR_START = IO_KICKER_END, IO_SENSOR_IR_0_DEG = IO_SENSOR_START, IO_SENSOR_IR_30_DEG, IO_SENSOR_IR_60_DEG, IO_SENSOR_IR_100_DEG, IO_SENSOR_IR_180_DEG, IO_SENSOR_IR_260_DEG, IO_SENSOR_IR_300_DEG, IO_SENSOR_IR_330_DEG, IO_SENSOR_DISTANCE_0_DEG, IO_SENSOR_DISTANCE_90_DEG, IO_SENSOR_DISTANCE_180_DEG, IO_SENSOR_DISTANCE_270_DEG, IO_SENSOR_END, //Leds IO_LED_START = IO_SENSOR_END, IO_LED_MAIN = IO_LED_START, IO_LED_END, //Displays IO_DISPLAY_START = IO_LED_END, IO_DISPLAY_MAIN = IO_DISPLAY_START, IO_DISPLAY_END, //General IO_END = IO_DISPLAY_END, }; #endif