Proyecto ABInBev para la tarjeta Guaria 1/2.

Committer:
fmanzano_dtk
Date:
Thu Jul 07 16:17:25 2022 +0000
Revision:
19:5580a9a54ad5
Parent:
1:9e821e640117
Sincronizacion;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fmanzano_dtk 1:9e821e640117 1 /**
fmanzano_dtk 1:9e821e640117 2 * @file fingerprint_frame.hpp
fmanzano_dtk 1:9e821e640117 3 * @author Felícito Manzano (felicito.manzano@detektor.com.sv)
fmanzano_dtk 1:9e821e640117 4 * @brief
fmanzano_dtk 1:9e821e640117 5 * @version 0.1
fmanzano_dtk 1:9e821e640117 6 * @date 2020-09-28
fmanzano_dtk 1:9e821e640117 7 *
fmanzano_dtk 1:9e821e640117 8 * @copyright Copyright (c) 2020
fmanzano_dtk 1:9e821e640117 9 *
fmanzano_dtk 1:9e821e640117 10 */
fmanzano_dtk 1:9e821e640117 11
fmanzano_dtk 1:9e821e640117 12 #ifndef __FINGERPRINT_FRAME_HPP
fmanzano_dtk 1:9e821e640117 13 #define __FINGERPRINT_FRAME_HPP
fmanzano_dtk 1:9e821e640117 14
fmanzano_dtk 1:9e821e640117 15
fmanzano_dtk 1:9e821e640117 16 // Definiciones
fmanzano_dtk 1:9e821e640117 17 /**
fmanzano_dtk 1:9e821e640117 18 * @brief
fmanzano_dtk 1:9e821e640117 19 *
fmanzano_dtk 1:9e821e640117 20 */
fmanzano_dtk 1:9e821e640117 21
fmanzano_dtk 1:9e821e640117 22 // Tipo de trama
fmanzano_dtk 1:9e821e640117 23 #define TRAMA_AVL_FMU130 1
fmanzano_dtk 1:9e821e640117 24 #define TRAMA_SERVIDOR 2
fmanzano_dtk 1:9e821e640117 25
fmanzano_dtk 1:9e821e640117 26 // Eventos AVL
fmanzano_dtk 1:9e821e640117 27 #define AVLID_OVERSPEED 24
fmanzano_dtk 1:9e821e640117 28 #define AVLID_TOWING 246
fmanzano_dtk 1:9e821e640117 29 #define AVLID_JAMMING 249
fmanzano_dtk 1:9e821e640117 30 #define AVLID_IDLE 251
fmanzano_dtk 1:9e821e640117 31 #define AVLID_HARSH_BEHAVIOUR 253
fmanzano_dtk 1:9e821e640117 32 #define AVLID_WARNING_SPEED 255
fmanzano_dtk 1:9e821e640117 33 #define AVLID_CRASH 317
fmanzano_dtk 1:9e821e640117 34
fmanzano_dtk 1:9e821e640117 35 // ID Comandos Lector de Huellas
fmanzano_dtk 1:9e821e640117 36 #define CMD_FINGER_ADD 1
fmanzano_dtk 1:9e821e640117 37 #define CMD_FINGER_DELETE 2
fmanzano_dtk 1:9e821e640117 38 #define CMD_FINGER_DISABLE 3
fmanzano_dtk 1:9e821e640117 39 #define CMD_FINGER_ENABLE 4
fmanzano_dtk 1:9e821e640117 40 #define CMD_FINGERPRINT_QUERY 5
fmanzano_dtk 1:9e821e640117 41 #define CMD_FINGER_ENROLL_CNT 6
fmanzano_dtk 1:9e821e640117 42 #define CMD_CHECK_ENROLLED_ID 7
fmanzano_dtk 1:9e821e640117 43
fmanzano_dtk 1:9e821e640117 44 // ID Comandos Anulación de Lector de Huella
fmanzano_dtk 1:9e821e640117 45 #define CMD_FP_OVERRIDE_ENABLE 8
fmanzano_dtk 1:9e821e640117 46 #define CMD_FP_OVERRIDE_DISABLE 9
fmanzano_dtk 1:9e821e640117 47 #define CMD_FP_OVERRIDE_QUERY 10
fmanzano_dtk 1:9e821e640117 48 #define CMD_FP_OVERRIDE_COUNT 11
fmanzano_dtk 1:9e821e640117 49
fmanzano_dtk 1:9e821e640117 50 // ID Comandos de Parlante
fmanzano_dtk 1:9e821e640117 51 #define CMD_SET_VOLUME 12
fmanzano_dtk 1:9e821e640117 52 #define CMD_QUERY_VOLUME_LEVEL 13
fmanzano_dtk 1:9e821e640117 53
fmanzano_dtk 1:9e821e640117 54 // ID Comandos de Sensor de Lluvia
fmanzano_dtk 1:9e821e640117 55 #define CMD_RAIN_ENABLE 14
fmanzano_dtk 1:9e821e640117 56 #define CMD_RAIN_DISABLE 15
fmanzano_dtk 1:9e821e640117 57 #define CMD_RAIN_QUERY 16
fmanzano_dtk 1:9e821e640117 58 #define CMD_CHANGE_WSL 17
fmanzano_dtk 1:9e821e640117 59 #define CMD_CHANGE_WSW 18
fmanzano_dtk 1:9e821e640117 60 #define CMD_CHANGE_DSL 19
fmanzano_dtk 1:9e821e640117 61 #define CMD_CHANGE_DSW 20
fmanzano_dtk 1:9e821e640117 62 #define CMD_QUERY_SPEED_LIMIT 21
fmanzano_dtk 1:9e821e640117 63 #define CMD_CHANGE_RAIN_TIMER 22
fmanzano_dtk 1:9e821e640117 64 #define CMD_QUERY_RAIN_TIMER 23
fmanzano_dtk 1:9e821e640117 65 #define CMD_RAIN_SILENT_MODE_ENA 24
fmanzano_dtk 1:9e821e640117 66 #define CMD_RAIN_SILENT_MODE_DIS 25
fmanzano_dtk 1:9e821e640117 67 #define CMD_RAIN_SILENT_MODE_Q 26
fmanzano_dtk 1:9e821e640117 68
fmanzano_dtk 1:9e821e640117 69
fmanzano_dtk 1:9e821e640117 70 // ID Comandos de Cinturones
fmanzano_dtk 1:9e821e640117 71 #define CMD_SEATBELT_ENABLE 27
fmanzano_dtk 1:9e821e640117 72 #define CMD_SEATBELT_DISABLE 28
fmanzano_dtk 1:9e821e640117 73 #define CMD_SEATBELT_QUERY 29
fmanzano_dtk 1:9e821e640117 74 #define CMD_FORCE_BUCLKE_ENABLE 30
fmanzano_dtk 1:9e821e640117 75 #define CMD_FORCE_BUCLKE_DISABLE 31
fmanzano_dtk 1:9e821e640117 76 #define CMD_QUERY_FORCE_SEATBELT 32
fmanzano_dtk 1:9e821e640117 77 #define CMD_SET_INPUT_NORMAL_O 33
fmanzano_dtk 1:9e821e640117 78 #define CMD_SET_INPUT_NORMAL_C 34
fmanzano_dtk 1:9e821e640117 79 #define CMD_QUERY_DIN_CONFIG 35
fmanzano_dtk 1:9e821e640117 80 #define CMD_PILOT_BUCKLE_NO 36
fmanzano_dtk 1:9e821e640117 81 #define CMD_PILOT_BUCKLE_NC 37
fmanzano_dtk 1:9e821e640117 82 #define CMD_COPILOT_BUCKLE_NO 38
fmanzano_dtk 1:9e821e640117 83 #define CMD_COPILOT_BUCKLE_NC 39
fmanzano_dtk 1:9e821e640117 84 #define CMD_CREW_BUCKLE_NO 40
fmanzano_dtk 1:9e821e640117 85 #define CMD_CREW_BUCKLE_NC 41
fmanzano_dtk 1:9e821e640117 86 #define CMD_QUERY_PILOT_BT 42
fmanzano_dtk 1:9e821e640117 87 #define CMD_QUERY_COPILOT_BT 43
fmanzano_dtk 1:9e821e640117 88 #define CMD_QUERY_CREW_BT 44
fmanzano_dtk 1:9e821e640117 89
fmanzano_dtk 1:9e821e640117 90
fmanzano_dtk 1:9e821e640117 91 // ID Comandos de Apagado por Ralenti
fmanzano_dtk 1:9e821e640117 92 #define CMD_IDLE_SHUTDOWN_ENABLE 45
fmanzano_dtk 1:9e821e640117 93 #define CMD_IDLE_SHUTDOWN_DISABLE 46
fmanzano_dtk 1:9e821e640117 94 #define CMD_IDLE_SHUTDOWN_QUERY 47
fmanzano_dtk 1:9e821e640117 95 #define CMD_QUERY_IDLE_SHUTDOWN_T 48
fmanzano_dtk 1:9e821e640117 96 #define CMD_CHANGE_IDLE_SHUTDOWN_T 49
fmanzano_dtk 1:9e821e640117 97
fmanzano_dtk 1:9e821e640117 98 // ID Comandos de Recordatorio por Ralenti
fmanzano_dtk 1:9e821e640117 99 #define CMD_IDLE_REMINDER_ENABLE 50
fmanzano_dtk 1:9e821e640117 100 #define CMD_IDLE_REMINDER_DISABLE 51
fmanzano_dtk 1:9e821e640117 101 #define CMD_IDLE_REMINDER_QUERY 52
fmanzano_dtk 1:9e821e640117 102 #define CMD_CHANGE_IDLE_REMINDER_T 53
fmanzano_dtk 1:9e821e640117 103 #define CMD_QUERY_IDLE_REMINDER_T 54
fmanzano_dtk 1:9e821e640117 104
fmanzano_dtk 1:9e821e640117 105 // ID Comandos de Tip de Seguridad
fmanzano_dtk 1:9e821e640117 106 #define CMD_SAFETY_TIP_ENABLE 55
fmanzano_dtk 1:9e821e640117 107 #define CMD_SAFETY_TIP_DISABLE 56
fmanzano_dtk 1:9e821e640117 108 #define CMD_SAFETY_TIP_QUERY 57
fmanzano_dtk 1:9e821e640117 109 #define CMD_QUERY_SAFETY_TIP_TIME 58
fmanzano_dtk 1:9e821e640117 110 #define CHANGE_SAFETY_TIP_TIME 59
fmanzano_dtk 1:9e821e640117 111
fmanzano_dtk 1:9e821e640117 112 // ID Comandos de información ICS
fmanzano_dtk 1:9e821e640117 113 #define CMD_QUERY_HARDWARE_VER 60
fmanzano_dtk 1:9e821e640117 114 #define CMD_QUERY_FIRMWARE_VER 61
fmanzano_dtk 1:9e821e640117 115
fmanzano_dtk 1:9e821e640117 116 // ID Comandos para Notificacion de Geocercas
fmanzano_dtk 1:9e821e640117 117 #define CMD_GEO_WARNING_ENABLE 62
fmanzano_dtk 1:9e821e640117 118 #define CMD_GEO_WARNING_DISABLE 63
fmanzano_dtk 1:9e821e640117 119 #define CMD_GEO_WARNING_QUERY 64
fmanzano_dtk 1:9e821e640117 120 #define CMD_GEO_WARNING_GETIN 65
fmanzano_dtk 1:9e821e640117 121 #define CMD_GEO_WARNING_GETOUT 66
fmanzano_dtk 1:9e821e640117 122 #define CMD_GEO_WARNING_EVENT 67
fmanzano_dtk 1:9e821e640117 123
fmanzano_dtk 1:9e821e640117 124 // ID Comandos para Autoreset de Bluetooth
fmanzano_dtk 1:9e821e640117 125 #define CMD_BLE_AUTORESET_ENABLE 68
fmanzano_dtk 1:9e821e640117 126 #define CMD_BLE_AUTORESET_DISABLE 69
fmanzano_dtk 1:9e821e640117 127 #define CMD_BLE_AUTORESET_TIME 70
fmanzano_dtk 1:9e821e640117 128 #define CMD_BLE_AUTORESET_QUERY 71
fmanzano_dtk 1:9e821e640117 129
fmanzano_dtk 1:9e821e640117 130 // Cadenas de comandos
fmanzano_dtk 1:9e821e640117 131 extern const char SERVER_SEPARATOR[2];
fmanzano_dtk 1:9e821e640117 132 extern const char FINGER_CMD_BEGIN[2];
fmanzano_dtk 1:9e821e640117 133 extern const char FINGER_CMD_EOF[2];
fmanzano_dtk 1:9e821e640117 134
fmanzano_dtk 1:9e821e640117 135 // Cadenas CMD de Lector de Huella
fmanzano_dtk 1:9e821e640117 136 extern const char ADD_CMD[4];
fmanzano_dtk 1:9e821e640117 137 extern const char DEL_CMD[4];
fmanzano_dtk 1:9e821e640117 138 extern const char FINGERPRINT_DIS_CMD[4];
fmanzano_dtk 1:9e821e640117 139 extern const char FINGERPRINT_ENA_CMD[4];
fmanzano_dtk 1:9e821e640117 140 extern const char FINGERPRINT_QRY_CMD[4];
fmanzano_dtk 1:9e821e640117 141 extern const char FP_OVERRIDE_ENABLE[4];
fmanzano_dtk 1:9e821e640117 142 extern const char FP_OVERRIDE_DISABLE[4];
fmanzano_dtk 1:9e821e640117 143 extern const char FP_OVERRIDE_COUNT[4];
fmanzano_dtk 1:9e821e640117 144 extern const char Q_FP_OVERRIDE_CNT[4];
fmanzano_dtk 1:9e821e640117 145
fmanzano_dtk 1:9e821e640117 146 // Cadenas CMD de Sensor de Lluvia
fmanzano_dtk 1:9e821e640117 147 extern const char RAIN_ENA_CMD[4];
fmanzano_dtk 1:9e821e640117 148 extern const char RAIN_DIS_CMD[4];
fmanzano_dtk 1:9e821e640117 149 extern const char CHANGE_RAIN_TIMER[4];
fmanzano_dtk 1:9e821e640117 150 extern const char Q_RAIN_TIMER[4];
fmanzano_dtk 1:9e821e640117 151 extern const char RAIN_SILENT_ENABLE[4];
fmanzano_dtk 1:9e821e640117 152 extern const char RAIN_SILENT_DISABLE[4];
fmanzano_dtk 1:9e821e640117 153 extern const char RAIN_SILENT_QUERY[4];
fmanzano_dtk 1:9e821e640117 154
fmanzano_dtk 1:9e821e640117 155 // Cadenas CMD para Limites de Velocidad
fmanzano_dtk 1:9e821e640117 156 extern const char CHANGE_WSL_TXT[4];
fmanzano_dtk 1:9e821e640117 157 extern const char CHANGE_WSW_TXT[4];
fmanzano_dtk 1:9e821e640117 158 extern const char CHANGE_DSL_TXT[4];
fmanzano_dtk 1:9e821e640117 159 extern const char CHANGE_DSW_TXT[4];
fmanzano_dtk 1:9e821e640117 160 extern const char QUERY_SPEED_LIMIT[4];
fmanzano_dtk 1:9e821e640117 161
fmanzano_dtk 1:9e821e640117 162 // Cadenas CMD Cinturones de Seguridad
fmanzano_dtk 1:9e821e640117 163 extern const char SEATBELT_ENA_CMD[4];
fmanzano_dtk 1:9e821e640117 164 extern const char SEATBELT_DIS_CMD[4];
fmanzano_dtk 1:9e821e640117 165 extern const char SEATBELT_QUERY_CMD[4];
fmanzano_dtk 1:9e821e640117 166 extern const char FORCE_BUCLKE_ENA_CMD[4];
fmanzano_dtk 1:9e821e640117 167 extern const char FORCE_BUCLKE_DIS_CMD[4];
fmanzano_dtk 1:9e821e640117 168 extern const char INPUT_NORMALLY_OPEN[4];
fmanzano_dtk 1:9e821e640117 169 extern const char INPUT_NORMALLY_CLOSE[4];
fmanzano_dtk 1:9e821e640117 170 extern const char Q_DIGITAL_INPUT_CONF[4];
fmanzano_dtk 1:9e821e640117 171 extern const char PILOT_BUCKLE_N_OPEN[4];
fmanzano_dtk 1:9e821e640117 172 extern const char PILOT_BUCKLE_N_CLOSE[4];
fmanzano_dtk 1:9e821e640117 173 extern const char Q_PILOT_BUCLE_TYPE[4];
fmanzano_dtk 1:9e821e640117 174 extern const char COPILOT_BUCKLE_N_OPEN[4];
fmanzano_dtk 1:9e821e640117 175 extern const char COPILOT_BUCKLE_N_CLOSE[4];
fmanzano_dtk 1:9e821e640117 176 extern const char Q_COPILOT_BUCLE_TYPE[4];
fmanzano_dtk 1:9e821e640117 177 extern const char CREW_BUCKLE_N_OPEN[4];
fmanzano_dtk 1:9e821e640117 178 extern const char CREW_BUCKLE_N_CLOSE[4];
fmanzano_dtk 1:9e821e640117 179 extern const char Q_CREW_BUCLE_TYPE[4];
fmanzano_dtk 1:9e821e640117 180
fmanzano_dtk 1:9e821e640117 181 // Cadenas CMD Apagado por Ralentí
fmanzano_dtk 1:9e821e640117 182 extern const char IDLE_SHUTDOWN_ENA_CMD[4];
fmanzano_dtk 1:9e821e640117 183 extern const char IDLE_SHUTDOWN_DIS_CMD[4];
fmanzano_dtk 1:9e821e640117 184 extern const char IDLE_SHUTDOWN_QUERY[4];
fmanzano_dtk 1:9e821e640117 185 extern const char CHANGE_IDLE_TIMER[4];
fmanzano_dtk 1:9e821e640117 186 extern const char QUERY_IDLE_TIMER[4];
fmanzano_dtk 1:9e821e640117 187
fmanzano_dtk 1:9e821e640117 188 // Cadenas CMD Recordatorio por Ralentí
fmanzano_dtk 1:9e821e640117 189 extern const char IDLE_REMINDER_ENABLE[4];
fmanzano_dtk 1:9e821e640117 190 extern const char IDLE_REMINDER_DISABLE[4];
fmanzano_dtk 1:9e821e640117 191 extern const char QUERY_IDLE_REMINDER[4];
fmanzano_dtk 1:9e821e640117 192 extern const char IDLE_REMINDER_TIMER[4];
fmanzano_dtk 1:9e821e640117 193 extern const char QUERY_IDLE_REMINDER_T[4];
fmanzano_dtk 1:9e821e640117 194
fmanzano_dtk 1:9e821e640117 195 // Cadenas CMD de Volumen
fmanzano_dtk 1:9e821e640117 196 extern const char VOL_CMD[4];
fmanzano_dtk 1:9e821e640117 197
fmanzano_dtk 1:9e821e640117 198 // Cadenas CMD para Geocercas
fmanzano_dtk 1:9e821e640117 199 extern const char GEO_WARNING_ENABLE[4];
fmanzano_dtk 1:9e821e640117 200 extern const char GEO_WARNING_DISABLE[4];
fmanzano_dtk 1:9e821e640117 201 extern const char Q_GEO_WARNING_CONF[4];
fmanzano_dtk 1:9e821e640117 202 extern const char GEO_WARNING_GETIN[4];
fmanzano_dtk 1:9e821e640117 203 extern const char GEO_WARNING_GETOUT[4];
fmanzano_dtk 1:9e821e640117 204 extern const char GEO_WARNING_EVENT[4];
fmanzano_dtk 1:9e821e640117 205
fmanzano_dtk 1:9e821e640117 206 // Cadenas CMD para Autoreset de BLE
fmanzano_dtk 1:9e821e640117 207 extern const char BLE_AUTORESET_ENABLE[4];
fmanzano_dtk 1:9e821e640117 208 extern const char BLE_AUTORESET_DISABLE[4];
fmanzano_dtk 1:9e821e640117 209 extern const char BLE_AUTORESET_TIME[4];
fmanzano_dtk 1:9e821e640117 210 extern const char BLE_AUTORESET_QUERY[4];
fmanzano_dtk 1:9e821e640117 211
fmanzano_dtk 1:9e821e640117 212 // Tramas
fmanzano_dtk 1:9e821e640117 213 extern const int FINGER_CMD_START;
fmanzano_dtk 1:9e821e640117 214 extern const int FINGER_CMD_END;
fmanzano_dtk 1:9e821e640117 215 extern const int FINGER_ID_BEGIN;
fmanzano_dtk 1:9e821e640117 216 extern const int FINGER_ID_END;
fmanzano_dtk 1:9e821e640117 217 extern const int FINGER_PAYLOAD;
fmanzano_dtk 1:9e821e640117 218 extern const int FINGER_PAYLOAD_EOL;
fmanzano_dtk 1:9e821e640117 219 extern const int FINGER_PAYLOAD_START;
fmanzano_dtk 1:9e821e640117 220 extern const int FINGER_PAYLOAD_END;
fmanzano_dtk 1:9e821e640117 221
fmanzano_dtk 1:9e821e640117 222 // Funciones
fmanzano_dtk 1:9e821e640117 223 int strID_to_intID(char cadena[5]);
fmanzano_dtk 1:9e821e640117 224 bool verify_finger_payload(char payload[1011]);
fmanzano_dtk 1:9e821e640117 225 int strID_to_intID(char cadena[5]);
fmanzano_dtk 1:9e821e640117 226 bool parse_finger_payload(char payload[1011], char comando[4], int *id_huella, char huella_hex[997]);
fmanzano_dtk 1:9e821e640117 227 bool fingerprint_HEX2CHAR(char huella_hex[997], char huella_ascii[499]);
fmanzano_dtk 1:9e821e640117 228 int identify_server_cmd(char comando[4]);
fmanzano_dtk 1:9e821e640117 229
fmanzano_dtk 1:9e821e640117 230 #endif // __FINGERPRINT_FRAME_HPP