Team Fox / Mbed 2 deprecated BAE_QM_MAR9

Dependencies:   FreescaleIAP mbed-rtos mbed

Fork of workinQM_5thJan_azad by Team Fox

Revision:
58:c4203e162d12
Parent:
57:60e8f00d93c3
Child:
59:0fc0bfafaa9f
Child:
62:3a4a37d3d4a7
--- a/TCTM.cpp	Sun Sep 04 13:08:33 2016 +0000
+++ b/TCTM.cpp	Sun Sep 04 18:05:31 2016 +0000
@@ -431,14 +431,15 @@
                                                                 telemetry[40] = actual_data.power_mode;
                                                                 telemetry[41] = HTR_CYCLE_COUNTER;//new to : implement
                                                                 
-                                                                telemetry[42] = BAE_I2C_COUNTER;
-                                                                telemetry[43] = BAE_I2C_COUNTER>>8;
-                                                                telemetry[44] = ACS_MAIN_COUNTER;
-                                                                telemetry[45] = ACS_MAIN_COUNTER>>8;
-                                                                telemetry[46] = BCN_TX_MAIN_COUNTER;
-                                                                telemetry[47] = BCN_TX_MAIN_COUNTER>>8;
-                                                                telemetry[48] = EPS_MAIN_COUNTER;
-                                                                telemetry[49] = EPS_MAIN_COUNTER>>8;
+                                                                // GS changed order has to be updated in the telemetry sheet or jithin should change the order
+                                                                telemetry[43] = BAE_I2C_COUNTER;
+                                                                telemetry[42] = BAE_I2C_COUNTER>>8;
+                                                                telemetry[45] = ACS_MAIN_COUNTER;
+                                                                telemetry[44] = ACS_MAIN_COUNTER>>8;
+                                                                telemetry[47] = BCN_TX_MAIN_COUNTER;
+                                                                telemetry[46] = BCN_TX_MAIN_COUNTER>>8;
+                                                                telemetry[49] = EPS_MAIN_COUNTER;
+                                                                telemetry[48] = EPS_MAIN_COUNTER>>8;
                                                                 
                                                                 uint8_t days,hours,mins;
                                                                 RETURN_UPTIME(BAE_uptime.read(),&days,&hours,&mins);
@@ -457,22 +458,28 @@
                                                                 //sending in uint can be converted back to int by direct conversion for +values
                                                                 //make sure to convert baack to int for getting negative values
                                                                 //algo for that done 
-                                                                telemetry[52] = (uint16_t)actual_data.bit_data_acs_mm[0];
-                                                                telemetry[53] = (uint16_t)actual_data.bit_data_acs_mm[0]>>8;
-                                                                telemetry[54] = (uint16_t)actual_data.bit_data_acs_mm[1];
-                                                                telemetry[55] = (uint16_t)actual_data.bit_data_acs_mm[1]>>8;
-                                                                telemetry[56] = (uint16_t)actual_data.bit_data_acs_mm[2];
-                                                                telemetry[57] = (uint16_t)actual_data.bit_data_acs_mm[2]>>8;
-                                                                printf("\n\r  the actual_data.bit_data_acs_mm[0] is %d",actual_data.bit_data_acs_mm[0]);
-                                                                printf("\n\r  the actual_data.bit_data_acs_mm[0] is %d",(uint16_t)actual_data.bit_data_acs_mm[0]);
+                                                                
+                                                                uint16_t scaled;
                                                                 
-                                                                telemetry[58] = actual_data.bit_data_acs_mg[0];
-                                                                telemetry[59] = actual_data.bit_data_acs_mg[0]>>8;
-                                                                telemetry[60] = actual_data.bit_data_acs_mg[1];
-                                                                telemetry[61] = actual_data.bit_data_acs_mg[1]>>8;
-                                                                telemetry[62] = actual_data.bit_data_acs_mg[2];
-                                                                telemetry[63] = actual_data.bit_data_acs_mg[2]>>8;
-                                                                
+                                                                scaled = float_to_uint16(-1000,1000,actual_data.Bvalue_actual[0]);
+                                                                telemetry[52] = (scaled>>8); 
+                                                                telemetry[53] = scaled;
+                                                                scaled = float_to_uint16(-1000,1000,actual_data.Bvalue_actual[1]);
+                                                                telemetry[54] = (scaled>>8); 
+                                                                telemetry[55] = scaled;
+                                                                scaled = float_to_uint16(-1000,1000,actual_data.Bvalue_actual[2]);
+                                                                telemetry[56] = (scaled>>8); 
+                                                                telemetry[57] = scaled;
+                                                                scaled = float_to_uint16(-5000,5000,actual_data.AngularSpeed_actual[0]);
+                                                                telemetry[58] = (scaled>>8); 
+                                                                telemetry[59] = scaled;
+                                                                scaled = float_to_uint16(-5000,5000,actual_data.AngularSpeed_actual[1]);
+                                                                telemetry[60] = (scaled>>8); 
+                                                                telemetry[61] = scaled;
+                                                                scaled = float_to_uint16(-5000,5000,actual_data.AngularSpeed_actual[2]);
+                                                                telemetry[62] = (scaled>>8); 
+                                                                telemetry[63] = scaled;
+                                                
                                                                 telemetry[64] = BCN_TX_OC_FAULT;
                                                                 telemetry[64] = (telemetry[64]<<1) | ACS_TR_XY_ENABLE;
                                                                 telemetry[64] = (telemetry[64]<<1) | ACS_TR_Z_ENABLE;
@@ -524,20 +531,9 @@
                                                                 telemetry[124] = (uint8_t)(actual_data.Batt_gauge_actual[1]);
                                                                 telemetry[125] = quant_data.Batt_temp_quant[0];
                                                                 telemetry[126] = quant_data.Batt_temp_quant[1];
+                                                                
                                                                 telemetry[127] = BCN_TMP;
                                                                 
-                                                                //*  ANY USE?
-                                                                ///if(BCN_TX_STATUS==2)
-                                                                ///    telemetry[3] = telemetry[3]|0x20;
-                                                                ///else
-                                                                ///telemetry[3] = telemetry[3] & 0xDF;
-                                    
-                                                                //actual_data.AngularSpeed_actual[0]=5.32498;
-                                                                ///for(int i=0; i<3; i++)
-                                                                ///    FCTN_CONVERT_FLOAT((float)actual_data.Bvalue_actual[i],&telemetry[26+ (i*4)]);
-                                                                ///for(int i=0; i<3; i++)
-                                                                ///    FCTN_CONVERT_FLOAT((float)actual_data.AngularSpeed_actual[i],&telemetry[38+(i*4)]);
-                                                                ///    
                                                                 for (int i=128; i<132;i++)
                                                                     {
                                                                         telemetry[i] = 0x00;
@@ -846,8 +842,10 @@
                                                 {
                                                     case 0xE0:
                                                             {
-                                                                float mag_data_comm[3]={uint16_to_float(-1000,1000,ACS_MM_X_COMSN),uint16_to_float(-1000,1000,ACS_MM_Y_COMSN),uint16_to_float(-1000,1000,ACS_MM_Z_COMSN)};
-                                                                float gyro_data_comm[3]={uint16_to_float(-5000,5000,ACS_MG_X_COMSN),uint16_to_float(-5000,5000,ACS_MG_Y_COMSN),uint16_to_float(-5000,5000,ACS_MG_Z_COMSN)};
+                                                                //float mag_data_comm[3]={uint16_to_float(-1000,1000,ACS_MM_X_COMSN),uint16_to_float(-1000,1000,ACS_MM_Y_COMSN),uint16_to_float(-1000,1000,ACS_MM_Z_COMSN)};
+                                                                //float gyro_data_comm[3]={uint16_to_float(-5000,5000,ACS_MG_X_COMSN),uint16_to_float(-5000,5000,ACS_MG_Y_COMSN),uint16_to_float(-5000,5000,ACS_MG_Z_COMSN)};
+                                                                float mag_data_comm[3] = {ACS_MM_X_COMSN,ACS_MM_Y_COMSN,ACS_MM_Z_COMSN};
+                                                                float gyro_data_comm[3] = {ACS_MG_X_COMSN,ACS_MG_Y_COMSN,ACS_MG_Z_COMSN};
                                                                 float moment_comm[3];
                                                                 gpc.printf("ACS_COMSN SOFTWARE\r\n");
                                                                 //ACK_L234_telemetry