Repository for CDMS code

Dependencies:   SimpleDMA mbed-rtos mbed eeprom

Fork of COM_MNG_TMTC_SIMPLE by Shreesha S

Committer:
chaithanyarss
Date:
Sun Jan 22 04:47:11 2017 +0000
Revision:
351:a89a46894ec0
EERPOM and BCN done

Who changed what in which revision?

UserRevisionLine numberNew contents of line
chaithanyarss 351:a89a46894ec0 1 #ifndef EEPROM_H
chaithanyarss 351:a89a46894ec0 2 #define EEPROM_H
chaithanyarss 351:a89a46894ec0 3
chaithanyarss 351:a89a46894ec0 4 #define ee_scl PIN86
chaithanyarss 351:a89a46894ec0 5 #define ee_sda PIN87
chaithanyarss 351:a89a46894ec0 6 #define check 10
chaithanyarss 351:a89a46894ec0 7
chaithanyarss 351:a89a46894ec0 8 EEPROM e2prom(ee_sda, ee_scl, 0, EEPROM::T24C512);
chaithanyarss 351:a89a46894ec0 9 int32_t INITIAL_EEPROM[32] = {1,1,1,1,1,0,0,0,0,35001,0xff,300,85,20,20,3,80000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
chaithanyarss 351:a89a46894ec0 10 uint32_t flasharray_thres[32];
chaithanyarss 351:a89a46894ec0 11
chaithanyarss 351:a89a46894ec0 12 void WRITE_TO_EEPROM(uint32_t address, int32_t data_block)
chaithanyarss 351:a89a46894ec0 13 {
chaithanyarss 351:a89a46894ec0 14 e2prom.write(address*4+10,data_block);
chaithanyarss 351:a89a46894ec0 15 }
chaithanyarss 351:a89a46894ec0 16
chaithanyarss 351:a89a46894ec0 17 void THRES_WRITE_TO_EEPROM(uint16_t mid, uint32_t* thres_data)
chaithanyarss 351:a89a46894ec0 18 {
chaithanyarss 351:a89a46894ec0 19 int8_t data[128];
chaithanyarss 351:a89a46894ec0 20 memcpy(data,&thres_data,128);
chaithanyarss 351:a89a46894ec0 21
chaithanyarss 351:a89a46894ec0 22 if(mid <11 & mid >1)
chaithanyarss 351:a89a46894ec0 23 {
chaithanyarss 351:a89a46894ec0 24 e2prom.write((uint32_t)(mid-1)*128,data,128);
chaithanyarss 351:a89a46894ec0 25 }
chaithanyarss 351:a89a46894ec0 26 }
chaithanyarss 351:a89a46894ec0 27
chaithanyarss 351:a89a46894ec0 28 uint32_t READ_FROM_EERPOM(uint32_t address)
chaithanyarss 351:a89a46894ec0 29 {
chaithanyarss 351:a89a46894ec0 30 int32_t data;
chaithanyarss 351:a89a46894ec0 31 e2prom.read(address*4+10, data);
chaithanyarss 351:a89a46894ec0 32 return (uint32_t)data;
chaithanyarss 351:a89a46894ec0 33 }
chaithanyarss 351:a89a46894ec0 34
chaithanyarss 351:a89a46894ec0 35 void INIT_EEPROM()
chaithanyarss 351:a89a46894ec0 36 {
chaithanyarss 351:a89a46894ec0 37 int32_t test_buffer;
chaithanyarss 351:a89a46894ec0 38 e2prom.ready();
chaithanyarss 351:a89a46894ec0 39 e2prom.read(2,test_buffer);
chaithanyarss 351:a89a46894ec0 40 if(test_buffer == 0)
chaithanyarss 351:a89a46894ec0 41 {
chaithanyarss 351:a89a46894ec0 42 for(int i=0;i<32;i++)
chaithanyarss 351:a89a46894ec0 43 WRITE_TO_EEPROM( i, INITIAL_EEPROM[i]);
chaithanyarss 351:a89a46894ec0 44
chaithanyarss 351:a89a46894ec0 45 e2prom.write(2,1);
chaithanyarss 351:a89a46894ec0 46 gPC.printf("starting flash");
chaithanyarss 351:a89a46894ec0 47 }
chaithanyarss 351:a89a46894ec0 48
chaithanyarss 351:a89a46894ec0 49 gPC.printf("Reading intial parametrs from flash\n");
chaithanyarss 351:a89a46894ec0 50 EPS_V_A_EN_STATUS = READ_FROM_EERPOM(0);
chaithanyarss 351:a89a46894ec0 51 BAE_STATUS = READ_FROM_EERPOM(1);
chaithanyarss 351:a89a46894ec0 52 SD_STATUS = READ_FROM_EERPOM(2);
chaithanyarss 351:a89a46894ec0 53 PL_STATUS = READ_FROM_EERPOM(3);
chaithanyarss 351:a89a46894ec0 54 PL_EPS_LATCH_SW_EN = READ_FROM_EERPOM(4);
chaithanyarss 351:a89a46894ec0 55 RTC_INIT_STATUS = READ_FROM_EERPOM(5);
chaithanyarss 351:a89a46894ec0 56 CDMS_RTC_DISABLE = READ_FROM_EERPOM(6);
chaithanyarss 351:a89a46894ec0 57 CDMS_RESET_COUNTER = READ_FROM_EERPOM(7);
chaithanyarss 351:a89a46894ec0 58 TIME_LATEST_CDSMS_RESET = READ_FROM_EERPOM(8);
chaithanyarss 351:a89a46894ec0 59 COM_TC_BYTES_LIMIT = READ_FROM_EERPOM(9);
chaithanyarss 351:a89a46894ec0 60 COM_RX_CURRENT_MAX = READ_FROM_EERPOM(10);
chaithanyarss 351:a89a46894ec0 61 COM_RX_DISABLE_TIMEOUT = READ_FROM_EERPOM(11);
chaithanyarss 351:a89a46894ec0 62 COM_PA_TMP_HIGH = READ_FROM_EERPOM(12);
chaithanyarss 351:a89a46894ec0 63 COM_PA_RECOVERY_TIMEOUT = READ_FROM_EERPOM(13);
chaithanyarss 351:a89a46894ec0 64 COM_SESSION_TIMEOUT = READ_FROM_EERPOM(14);
chaithanyarss 351:a89a46894ec0 65 COM_RSSI_MIN = READ_FROM_EERPOM(15);
chaithanyarss 351:a89a46894ec0 66 SD_LIB_BLK_CURRENT = READ_FROM_EERPOM(16);
chaithanyarss 351:a89a46894ec0 67 }
chaithanyarss 351:a89a46894ec0 68
chaithanyarss 351:a89a46894ec0 69 #endif