FINAL ACS TO BE USED FOR TESTING. COMMISSIONING, ACS MAIN, DATA ACQ ALL DONE.

Dependencies:   FreescaleIAP mbed-rtos mbed

Fork of ACS_FULL_Flowchart_BAE by Team Fox

Files at this revision

API Documentation at this revision

Comitter:
sakthipriya
Date:
Fri Dec 25 15:25:44 2015 +0000
Parent:
1:446a959e36ce
Child:
3:07e15677a75c
Commit message:
bg working

Changed in this revision

EPS.cpp Show annotated file Show diff for this revision Revisions of this file
EPS.h Show annotated file Show diff for this revision Revisions of this file
--- a/EPS.cpp	Thu Dec 24 20:01:31 2015 +0000
+++ b/EPS.cpp	Fri Dec 25 15:25:44 2015 +0000
@@ -21,6 +21,12 @@
 DigitalOut EN_BTRY_HT(BATT_HEAT);
 //DigitalIn BTRY_HT_OUTPUT(BATT_HEAT_OUTPUT);
 AnalogIn Vbatt_ang(VBATT);
+SPI spi_bt(PIN99,PIN100,PIN98); //MOSI,MISO,SLK
+DigitalOut ssn1(PIN19); //Slave select1
+DigitalOut ssn2(PIN21);//Slave select2
+//DigitalOut PS(PTB0);
+//DigitalOut HS(PTB1);
+
 
 //*********************************************************flags********************************************************//
 extern char EPS_INIT_STATUS ;
@@ -39,7 +45,7 @@
     EPS_INIT_STATUS = 's' ;             //set EPS_INIT_STATUS flag
    // FLAG();
     FCTN_BATTERYGAUGE_INIT();
-    //FCTN_EPS_BTEMP_INIT();
+    //FCTN_BATTTEMP_INIT();
     EN3V3A = 1;                             //enable dc dc converter A  
     char value=alertFlags();
     unsigned short value_u= (short int )value;
@@ -87,6 +93,7 @@
 void HK_main()
 {
     
+    
 }
 
 //............................................BATTERY GAUGE......................................//
@@ -377,10 +384,10 @@
         unsigned short value = read_soc(REG_SOC, ack);
  
         //Return SOC in percent
-       // if(ack == 0)
+        if(ack == 0)
         return value * 0.00390625;
-        //else 
-        //return 200;
+        else 
+        return 200;
     }
     
    
@@ -406,4 +413,46 @@
             return true;
         else
             return false;
-    }
\ No newline at end of file
+    }
+    
+//.............................Battery board Temp sensor........................//
+void FCTN_BATTTEMP_INIT()
+{
+    ssn1=1;ssn2=1;
+    //PS=0;
+    //HS=0;
+    spi_bt.format(8,3);
+    spi_bt.frequency(1000000);
+} 
+
+void FCTN_BATT_TEMP_SENSOR_MAIN(float temp[2])
+{
+    uint8_t MSB, LSB;
+    int16_t bit_data;
+    float sensitivity=0.0078125;   //1 LSB = sensitivity degree celcius
+    wait_ms(320);
+    ssn1=0;
+
+    spi_bt.write(0x80);//Reading digital data from Sensor 1
+    LSB = spi_bt.write(0x00);//LSB first
+    wait_ms(0);
+    MSB = spi_bt.write(0x00);
+    wait_ms(10);
+    pc_eps.printf("%d %d\n",MSB,LSB);
+    bit_data= ((uint16_t)MSB<<8)|LSB;
+    wait_ms(10);
+    temp[0]=(float)bit_data*sensitivity;//Converting into decimal value 
+    ssn1=1;
+    wait_ms(10);
+    ssn2=0;//Reading data from sensor 2
+    spi_bt.write(0x80);
+    LSB = spi_bt.write(0x00);
+    wait_ms(10);
+    MSB = spi_bt.write(0x00);
+    wait_ms(10);
+    bit_data= ((int16_t)MSB<<8)|LSB;
+    wait_ms(10);
+    temp[1]=(float)bit_data*sensitivity;
+    ssn2=1;
+    
+}
\ No newline at end of file
--- a/EPS.h	Thu Dec 24 20:01:31 2015 +0000
+++ b/EPS.h	Fri Dec 25 15:25:44 2015 +0000
@@ -1,6 +1,5 @@
 #include <mbed.h>
 
-
 #define tstart -40
 #define tstep 8
 #define tstep_thermistor 8                 //verify everything!!
@@ -9,8 +8,17 @@
 #define vstep 0.84667
 #define cstart 0.0691
 #define cstep 0.09133
+#define vcell_start 5                       //check
+#define vcell_step 0.0133                   //check
+#define soc_start 0
+#define soc_step 0.3921
+#define crate_start 0                   //check
+#define crate_step 1                     //check
+#define AngularSpeed_start 0             //check
+#define AngularSpeed_step 0.1            //check
 #define rsens 0.095
 
+
 #define m_ADDR       (0x6C)   //slave address
 
  //I2C register addresses 
@@ -41,6 +49,10 @@
 void HK_main();
 int quantiz(float start,float step,float x);
 
+void saveMin();
+void saveMax();
+void minMaxHkData();
+
 void FCTN_BATTERYGAUGE_INIT();
 void FCTN_BATTERYGAUGE_MAIN(float*Battery_parameters);
 
@@ -68,6 +80,9 @@
 bool alerting();
 void vResetThresholdSet();
 
+void FCTN_BATTTEMP_INIT();
+void FCTN_BATT_TEMP_SENSOR_MAIN();
+
 typedef struct BAE_HK_actual{
     float voltage_actual[16];
     float current_actual[12];