Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of CRAC-Strat_2017_homologation_gros_rob by
Instruction.h
00001 #ifndef CRAC_INSTRUCTION 00002 #define CRAC_INSTRUCTION 00003 00004 #include "global.h" 00005 00006 enum E_InstructionType 00007 { 00008 MV_COURBURE, // C -> Courbure 00009 MV_LINE, // L -> Ligne droite 00010 MV_TURN, // T -> Rotation sur place 00011 MV_XYT, // X -> Aller à 00012 MV_RECALAGE, // R -> Recalage bordure 00013 ACTION, // A -> Action 00014 UNKNOWN // Erreur, instruction inconnue 00015 }; 00016 enum E_InstructionDirection 00017 { 00018 NODIRECTION, // N -> Parametre absent 00019 BACKWARD, 00020 FORWARD, 00021 RELATIVE, 00022 ABSOLUTE, 00023 LEFT, 00024 RIGHT 00025 }; 00026 enum E_InstructionPrecisionOuRecalage 00027 { 00028 NOPRECISION,// N -> Parametre absent 00029 PRECISION, // P -> Precision, verifier la position à la fin du mouvement et refaire un XYT si erreur > 1cm 00030 RECALAGE_X, // X -> Recalage en X, indique un recalage sur l'axe X 00031 RECALAGE_Y // Y -> Recalage en Y, indique un recalage sur l'axe Y 00032 }; 00033 enum E_InstructionNextActionType 00034 { 00035 NONEXTACTION, // N -> Parametre absent 00036 JUMP, 00037 WAIT, 00038 ENCHAINEMENT 00039 }; 00040 enum E_InstructionNextActionJumpType 00041 { 00042 NONEXTACTIONJUMPTYPE, // N -> Parametre absent 00043 JUMP_TIME, 00044 JUMP_POSITION 00045 }; 00046 struct S_Instruction 00047 { 00048 short lineNumber;//Numéro de la ligne 00049 enum E_InstructionType order; //Type de l'instruction 00050 enum E_InstructionDirection direction; //BackWard ou Forward || Relative ou Absolu 00051 00052 unsigned short arg1; 00053 unsigned short arg2; 00054 signed short arg3; 00055 00056 enum E_InstructionPrecisionOuRecalage precision; 00057 enum E_InstructionNextActionType nextActionType; 00058 enum E_InstructionNextActionJumpType jumpAction; 00059 unsigned short JumpTimeOrX; 00060 unsigned short JumpY; 00061 unsigned short nextLineOK; 00062 unsigned short nextLineError; 00063 }; 00064 00065 /** 00066 * Convertir un char en type d'instruction 00067 **/ 00068 enum E_InstructionType charToInstructionType(char type); 00069 00070 /** 00071 * 00072 **/ 00073 enum E_InstructionDirection charToInstructionDirection(char type); 00074 00075 /** 00076 * Convertir un char 00077 **/ 00078 enum E_InstructionPrecisionOuRecalage charToInstructionPrecisionOuRecalage(char type); 00079 00080 /** 00081 * 00082 **/ 00083 enum E_InstructionNextActionType charToInstructionNextActionType(char type); 00084 00085 /** 00086 * 00087 **/ 00088 enum E_InstructionNextActionJumpType charToInstructionNextActionJumpType(char type); 00089 00090 /****************************************************************************************/ 00091 /* FUNCTION NAME: stringToInstruction */ 00092 /* DESCRIPTION : Conversion d'une ligne du fichier de strat en instruction */ 00093 /****************************************************************************************/ 00094 struct S_Instruction stringToInstruction(char line[]); 00095 00096 /****************************************************************************************/ 00097 /* FUNCTION NAME: loadAllInstruction */ 00098 /* DESCRIPTION : Charger toutes les instructions du fichier de stratégie */ 00099 /* Il faut utiliser strcpy(cheminFileStart,"/local/strat.txt"); */ 00100 /* pour indiquer le fichier à utiliser */ 00101 /****************************************************************************************/ 00102 void loadAllInstruction(void); 00103 00104 /****************************************************************************************/ 00105 /* FUNCTION NAME: FileExists */ 00106 /* DESCRIPTION : Permet de vérifier si un fichier existe */ 00107 /****************************************************************************************/ 00108 int FileExists(const char *fname); 00109 00110 00111 #endif
Generated on Tue Jul 12 2022 19:28:47 by
1.7.2
