/* * MCU_E2Prom.h * * Created on: Jul 21, 2019 * Author: shlomo */ #ifndef DRIVERS_FLASH_RAM_MCU_E2PROM_H_ #define DRIVERS_FLASH_RAM_MCU_E2PROM_H_ typedef enum { EEPROM_STORAGE_DATA_SIZE, EEPROM_STORAGE_DANCER_0, EEPROM_STORAGE_DANCER_1, EEPROM_STORAGE_DANCER_2, EEPROM_STORAGE_DRYER_CENTER, EEPROM_STORAGE_DRYER_CYCLES, EEPROM_STORAGE_MIDTANK_1_A, EEPROM_STORAGE_MIDTANK_1_B, EEPROM_STORAGE_MIDTANK_2_A, EEPROM_STORAGE_MIDTANK_2_B, EEPROM_STORAGE_MIDTANK_3_A, EEPROM_STORAGE_MIDTANK_3_B, EEPROM_STORAGE_MIDTANK_4_A, EEPROM_STORAGE_MIDTANK_4_B, EEPROM_STORAGE_MIDTANK_5_A, EEPROM_STORAGE_MIDTANK_5_B, EEPROM_STORAGE_MIDTANK_6_A, EEPROM_STORAGE_MIDTANK_6_B, EEPROM_STORAGE_MIDTANK_7_A, EEPROM_STORAGE_MIDTANK_7_B, EEPROM_STORAGE_MIDTANK_8_A, EEPROM_STORAGE_MIDTANK_8_B, //EEPROM_STORAGE_SERIAL_NUM, //EEPROM_STORAGE_MAC_ADDR, EEPROM_STORAGE_WINDER_CALIBRATION, EEPROM_STORAGE_EMBEDDED_VERSION, EEPROM_ALARM_SUPPORT, EEPROM_ORIFICE1_ZERO_VALUE, EEPROM_ORIFICE3_ZERO_VALUE, EEPROM_LOCAL_TIME, EEPROM_PULLER_TENSION_POSITION, EEPROM_WINDER_TENSION_POSITION, EEPROM_INIT_FAILURE_COUNTER, EEPROM_STORAGE_DANCER_3, EEPROM_STORAGE_DANCER_4, EEPROM_PRESSURE_SENSOR_V0_0, EEPROM_PRESSURE_SENSOR_V0_1, EEPROM_DRIER_LOADING_ARM_ANGLE, EEPROM_BTSR_FEEDING_TENSION, EEPROM_BTSR_EXIT_TENSION, EEPROM_BTSR_TYPE, EEPROM_BTSR_APPLICATION, EEPROM_BTSR_TENSION_ERROR, EEPROM_BTSR_LENGTH_OFFSET, EEPROM_BTSR_SPOOL_TENSION, MAX_EEPROM_STORAGE }EEPROM_STORAGE_USAGE_ENUM; #define MAX_SERIAL_NUM_LEN 5 //5*4 bytes #define MAX_MAC_ADDR_LEN 2 //2*4 bytes /*typedef enum { SERIAL_NUM_ADDR = EEPROM_STORAGE_SERIAL_NUM, MAC_ADDR_ADDR = (SERIAL_NUM_ADDR + MAX_SERIAL_NUM_LEN), DRYER_BACKLASH_ADDR = (MAC_ADDR_ADDR + MAX_MAC_ADDR_LEN), EMBEDDED_VERSION_ADDR, ALARM_SUPPORT_ADDR, ORIFICE1_ZERO_VALUE_ADDR, ORIFICE3_ZERO_VALUE_ADDR, }EEPROM_ADDRESSES;*/ #define EEPROM_RESET_REASON_HEAD_ADDRESS 300 #define EEPROM_RESET_REASON_MAX_DATA 80 #define DISPENSERS_MAP_IN_EEPROM 0x200 #define PROCESS_PARAMATERS_IN_EEPROM 0x400 uint32_t MCU_E2PromProgramChunk(int Address,uint16_t Length,uint32_t Data); uint32_t MCU_E2PromReadChunk(int Address,uint16_t Length,uint32_t *Data); void MCU_E2PromUpdateResetReason(int i); uint32_t MCU_E2PromProgram(int Address,uint32_t Data); uint32_t MCU_E2PromRead(int Address,uint32_t *Data); uint32_t MCU_E2PromProgramFloat(int Address,float Data); uint32_t MCU_E2PromReadFloat(int Address,float *Data); void MCU_E2PromProgramMidTank(int midtankId,float a,float b); float MCU_E2PromReadMidtank_A(int MidtankId); float MCU_E2PromReadMidtank_B(int MidtankId); void MCU_E2PromInit(void); void MainCardStoredItemRequestFunc(MessageContainer* requestContainer); void MainCardEEpromWriteRequestFunc(MessageContainer* requestContainer); void MainCardEEpromReadRequestFunc(MessageContainer* requestContainer); //uint32_t MCU_E2PromSerialNumProgram(char *Data); //uint32_t MCU_E2PromSerialNumRead(char* *Data); uint32_t MCU_E2PromEmbeddedVersionProgram(void); uint32_t MCU_E2PromEmbeddedVersionRead(); uint32_t BtsrReadParamsFromEeprom(void *); uint32_t BtsrSaveParamsToEeprom(void *); extern char Serial[21]; #endif /* DRIVERS_FLASH_RAM_MCU_E2PROM_H_ */