Index: firmware/App/Drivers/ConductivityTeensy.h =================================================================== diff -u -r133bb277d0f518f13e74a57c4edabaf22bc0ebe7 -r64ca86ddd949d0ae1c02fa10dfb3b8bb6e0c9f6c --- firmware/App/Drivers/ConductivityTeensy.h (.../ConductivityTeensy.h) (revision 133bb277d0f518f13e74a57c4edabaf22bc0ebe7) +++ firmware/App/Drivers/ConductivityTeensy.h (.../ConductivityTeensy.h) (revision 64ca86ddd949d0ae1c02fa10dfb3b8bb6e0c9f6c) @@ -62,71 +62,47 @@ typedef enum Conductivity_Parse_Status { - CONDUCTIVITY_PARSE_SUCCESS = 0, + CONDUCTIVITY_PARSE_NONE = 0, CONDUCTIVITY_PARSE_ERROR_NULL_BUFFER, CONDUCTIVITY_PARSE_ERROR_INVALID_LENGTH, - CONDUCTIVITY_PARSE_ERROR_INVALID_SENSOR_NUM + CONDUCTIVITY_PARSE_ERROR_INVALID_SENSOR_NUM, + CONDUCTIVITY_PARSE_SUCCESS, } CONDUCTIVITY_PARSE_STATUS; -/// Enumeration of FPGA states. +/// Enumeration of Conductivity Communication states. typedef enum Conductivity_Comm_States { COND_COMM_STATE_IDLE = 0, - COND_COMM_STATE_SEND_CMD, - COND_COMM_STATE_RCV_RSPNS, + COND_COMM_STATE_TX, + COND_COMM_STATE_RX, + COND_COMM_STATE_FAILED, NUM_OF_COND_COMM_STATES } CONDUCTIVITY_COMM_STATE_T; -typedef enum Conductivity_TX_States +/// Update EEPROM status +typedef enum Conductivity_Update_Eeprom_Status { - COND_COMM_STATE_SEND_CMD_INIT_SENSOR = 0, - COND_COMM_STATE_SEND_CMD_GET_INIT_STATUS, - COND_COMM_STATE_SEND_CMD_UPDATE_EEPROM_DATA, - COND_COMM_STATE_SEND_CMD_GET_EEPROM_DATA, - COND_COMM_STATE_SEND_CMD_UPDATE_MEASUREMENT_SETTINGS, - COND_COMM_STATE_SEND_CMD_GET_MEASUREMENT_SETTINGS, - COND_COMM_STATE_SEND_CMD_GET_MEASUREMENT, - COND_COMM_STATE_SEND_CMD_STOP_MEASUREMENT, - COND_COMM_STATE_SEND_CMD_GET_ALL_MEASUREMENTS, - COND_COMM_STATE_SEND_CMD_SELECT_SENSOR, - COND_COMM_STATE_SEND_CMD_GET_SINGLE_MEASUREMENT, - NUM_OF_COND_COMM_TX_STATES -} CONDUCTIVITY_TX_STATE_T; + COND_UPDATE_EEPROM_STATUS_UNITIALIZED = 0, ///< The initialization process has not started. + COND_UPDATE_EEPROMSTATUS_IN_PROGRESS, ///< The initialization process has started. + COND_UPDATE_EEPROM_STATUS_INITIALIZED, ///< Initialization process completed and all the sensors were initialized successfully. + COND_UPDATE_EEPROM_STATUS_FAILED ///< Initialization process completed but one or more sensor was not initialized properly. +}CONDUCTIVITY_UPDATE_EEPROM_STATUS_T; -typedef enum Conductivity_RX_States +// Update Measurement Settings Status +typedef enum Update_mst_Status { - COND_COMM_STATE_RCV_RSPNS_INIT_SENSOR = 0, - COND_COMM_STATE_RCV_RSPNS_GET_INIT_STATUS, - COND_COMM_STATE_RCV_RSPNS_UPDATE_EEPROM_DATA, - COND_COMM_STATE_RCV_RSPNS_GET_EEPROM_DATA, - COND_COMM_STATE_RCV_RSPNS_UPDATE_MEASUREMENT_SETTINGS, - COND_COMM_STATE_RCV_RSPNS_GET_MEASUREMENT_SETTINGS, - COND_COMM_STATE_RCV_RSPNS_GET_MEASUREMENT, - COND_COMM_STATE_RCV_RSPNS_CMD_STOP_MEASUREMENT, - COND_COMM_STATE_RCV_RSPNS_GET_ALL_MEASUREMENTS, - COND_COMM_STATE_RCV_RSPNS_SELECT_SENSOR, - COND_COMM_STATE_RCV_RSPNS_GET_SINGLE_MEASUREMENT, - NUM_OF_COND_COMM_RX_STATES -} CONDUCTIVITY_RX_STATE_T; + COND_MST_STATUS_ERR_UNRECOGNIZED_PARAM = 0, // Invalid parameter was passed with the command + COND_MST_STATUS_ERR_UPDATED_TO_DEFAULT_TIA, // Invalid value of "rtia" was passed with the command. So it was updated to its default value. + COND_MST_STATUS_ERR_UPDATED_TO_DEFAULT_PGA, // Invalid value of "pga" was passed with the command. So it was updated to its default value. + COND_MST_STATUS_ERR_UPDATED_TO_DEFAULT_DFT_NUM, // Invalid value of "dftnum" was passed with the command. So it was updated to its default value. + COND_MST_STATUS_ERR_UPDATED_TO_DEFAULT_AVG_NUM, // Invalid value of "avgnum" was passed with the command. So it was updated to its default value. + COND_MST_STATUS_SUCCESS +}CONDUCTIVITY_UPDATE_MST_STATUS_T;; -static const U08* teensyCmd[] = { "a", ///< COND_COMM_STATE_SEND_CMD_INIT_SENSOR - "l", ///< COND_COMM_STATE_SEND_CMD_GET_INIT_STATUS - "save", ///< COND_COMM_STATE_SEND_CMD_UPDATE_EEPROM_DATA, - "e", ///< COND_COMM_STATE_SEND_CMD_GET_EEPROM_DATA, - "cfg", ///< COND_COMM_STATE_SEND_CMD_UPDATE_MEASUREMENT_SETTINGS, - "k", ///< COND_COMM_STATE_SEND_CMD_GET_MEASUREMENT_SETTINGS, - "m", ///< COND_COMM_STATE_SEND_CMD_GET_MEASUREMENT, - "n", ///< Stop getting measurements - "g", ///< Get measurements of all the sensors - "j", ///< Select a sensor. ex : "j 1" selects sensor number 1 - "h" ///< Get that of selected sensor. (First Execute command "j".) - }; - typedef struct { TEENSY_CMD_INDEX_T cmdIdx; U08* teensyCMD; - } CONDUCTIVITY_CMD_DATA_T; typedef struct