robot

Dependencies:   FastPWM3 mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers errors.h Source File

errors.h

00001 #ifndef __ERRORS_H
00002 #define __ERRORS_H
00003 
00004 #include "prefs.h"
00005 
00006 #define _MASK_MODE_CFG (1 << (MODE_CFG))
00007 #define _MASK_MODE_RUN (1 << (MODE_RUN))
00008 #define _MASK_MODE_ZERO (1 << (MODE_ZERO))
00009 #define _MASK_MODE_CHR (1 << (MODE_CHR))
00010 
00011 #define _MASK_OP_TORQUE (1 << (NUM_MODES + OP_TORQUE))
00012 #define _MASK_OP_DRIVING (1 << (NUM_MODES + OP_DRIVING))
00013 #define _MASK_OP_SPEED (1 << (NUM_MODES + OP_SPEED))
00014 #define _MASK_OP_POSITION (1 << (NUM_MODES + OP_POSITION))
00015 
00016 #define _MASK_SRC_RC (1 << (NUM_MODES + NUM_OPS + CMD_SRC_RC))
00017 #define _MASK_SRC_ANALOG (1 << (NUM_MODES + NUM_OPS + CMD_SRC_ANALOG))
00018 #define _MASK_SRC_TERMINAL (1 << (NUM_MODES + NUM_OPS + CMD_SRC_TERMINAL))
00019 #define _MASK_SRC_SERIAL (1 << (NUM_MODES + NUM_OPS + CMD_SRC_SERIAL))
00020 #define _MASK_SRC_CAN (1 << (NUM_MODES + NUM_OPS + CMD_SRC_CAN))
00021 #define _MASK_SRC_INTERNAL (1 << (NUM_MODES + NUM_OPS + CMD_SRC_INTERNAL))
00022 
00023 #define _mask_mode(x) (1 << (x))
00024 #define _mask_op(x) (1 << (NUM_MODES + x))
00025 #define _mask_src(x) (1 << (NUM_MODES + NUM_OPS + x))
00026 
00027 #define NUM_ERRORS 3
00028 enum {
00029     ERR_THROTTLE_DISABLED,
00030     ERR_POS_INVALID,
00031     ERR_NOT_DRIVING,
00032 };
00033 
00034 extern int errors, moded_errors;
00035 extern int masks[32];
00036 
00037 void init_masks();
00038 bool checks_passed();
00039 
00040 #endif