Repository for CDMS code

Dependencies:   SimpleDMA mbed-rtos mbed eeprom

Fork of COM_MNG_TMTC_SIMPLE by Shreesha S

Files at this revision

API Documentation at this revision

Comitter:
krishanprajapat
Date:
Sun Feb 07 05:28:56 2016 +0000
Parent:
121:bd7263168ee4
Child:
123:457d6fd9ac37
Commit message:
updated

Changed in this revision

COM_MNG_TMTC.h Show annotated file Show diff for this revision Revisions of this file
OBSRS.h Show annotated file Show diff for this revision Revisions of this file
common_functions.h Show annotated file Show diff for this revision Revisions of this file
--- a/COM_MNG_TMTC.h	Sat Feb 06 20:06:25 2016 +0000
+++ b/COM_MNG_TMTC.h	Sun Feb 07 05:28:56 2016 +0000
@@ -37,29 +37,9 @@
 // typeof tm_ptr: Base_tm
 // typeof tc_ptr: Base_tc
 // typeof temp_xxxx: uint8_t
-#define fill_l1_ack(tm_ptr) {\
-    tm_ptr->next_TM = NULL;\
-    tm_ptr->TM_string[0] = TMID_ACK_L1 << 4;\
-    /*PENDING: PA TEMPERATURE*/\
-    tm_ptr->TM_string[1] = gTOTAL_INCORRECT_SIZE_TC & 0xFF;\
-    tm_ptr->TM_string[2] = gTOTAL_CRC_FAIL_TC & 0xFF;\
-}
+
 
-#define put_crc_l1_ack(tm_ptr) {\
-    tm_ptr->TM_string[2] = gTOTAL_CRC_FAIL_TC & 0xFF;\
-    /*TC LIST STATUS*/\
-    tm_ptr->TM_string[3] |= (gMASTER_STATE << 5) & 0xE0;\
-    /*PA HOT*/\
-    if( gFLAGS & COM_PA_HOT_FLAG ){\
-        tm_ptr->TM_string[3] |= (1 << 4);\
-    }\
-    else{\
-        tm_ptr->TM_string[3] &= ~(1 << 4);\
-    }\
-    uint16_t crc_checksum = crc16_gen(tm_ptr->TM_string, TM_SHORT_SIZE-2);\
-    tm_ptr->TM_string[TM_SHORT_SIZE-2] = (crc_checksum >> 8) & 0xFF;\
-    tm_ptr->TM_string[TM_SHORT_SIZE-1] = crc_checksum & 0xFF;\
-}
+
 
 #define detect_ack(tm_ptr, temp_ack, tc_psc) {\
     if( tm_ptr != NULL ){\
@@ -113,10 +93,7 @@
     }\
 }
 
-#define isPAhot(returnHere){\
-    /*PENDING : COMPLETE THIS FUNCTION*/\
-    returnHere = 0xFF;\
-}
+
 
 void after_cooling_pa(){
     gCOM_MNG_TMTC_THREAD->signal_set(COM_MNG_TMTC_SIGNAL_UART_INT);
--- a/OBSRS.h	Sat Feb 06 20:06:25 2016 +0000
+++ b/OBSRS.h	Sun Feb 07 05:28:56 2016 +0000
@@ -188,9 +188,10 @@
                 }\
                 else if(T_frame_Ack_andcallsign_sent < T_frame_in_Ackandcallsign){\
                     make_T_frame_Ack_andcallsign;\
+                    enable_SCH = true;\
                 }\
                 else{\
-                    /*cout<<"error in send_Ack_andcallsign if T_frames_sent < T_frames_in_segment"<<ENDL;*/\  
+                    /*cout<<"error in send_Ack_andcallsign if T_frames_sent < T_frames_in_segment"<<ENDL;*/\
                 }\
             }\
             if(T_frames_sent == T_frames_in_segment){\
@@ -206,7 +207,7 @@
                     }\
                 }\
                 else{\
-                    send_EoS_and_stop = true; \  
+                    send_EoS_and_stop = true; \
                 }   \
             }\
         }\
@@ -464,8 +465,10 @@
             if(create_Ack_andcallsign){
                 create_Ack_L234;
                 Base_tm *ack_and_callsign = callsign;
+                get_ack_l1(ack_and_callsign->next_TM);
                 snd_tm.head_pointer(ack_and_callsign);
                 T_frame_in_Ackandcallsign = 2*snd_tm.make_shor_tm();
+                enable_SCH = true;
                 create_Ack_andcallsign = false;
             }    
             send_Ack_andcallsign;
--- a/common_functions.h	Sat Feb 06 20:06:25 2016 +0000
+++ b/common_functions.h	Sun Feb 07 05:28:56 2016 +0000
@@ -105,6 +105,35 @@
     }\
 }
 
+#define put_crc_l1_ack(tm_ptr) {\
+    tm_ptr->TM_string[2] = gTOTAL_CRC_FAIL_TC & 0xFF;\
+    /*TC LIST STATUS*/\
+    tm_ptr->TM_string[3] |= (gMASTER_STATE << 5) & 0xE0;\
+    /*PA HOT*/\
+    if( gFLAGS & COM_PA_HOT_FLAG ){\
+        tm_ptr->TM_string[3] |= (1 << 4);\
+    }\
+    else{\
+        tm_ptr->TM_string[3] &= ~(1 << 4);\
+    }\
+    uint16_t crc_checksum = crc16_gen(tm_ptr->TM_string, TM_SHORT_SIZE-2);\
+    tm_ptr->TM_string[TM_SHORT_SIZE-2] = (crc_checksum >> 8) & 0xFF;\
+    tm_ptr->TM_string[TM_SHORT_SIZE-1] = crc_checksum & 0xFF;\
+}
+
+#define fill_l1_ack(tm_ptr) {\
+    tm_ptr->next_TM = NULL;\
+    tm_ptr->TM_string[0] = TMID_ACK_L1 << 4;\
+    /*PENDING: PA TEMPERATURE*/\
+    tm_ptr->TM_string[1] = gTOTAL_INCORRECT_SIZE_TC & 0xFF;\
+    tm_ptr->TM_string[2] = gTOTAL_CRC_FAIL_TC & 0xFF;\
+}
+
+#define isPAhot(returnHere){\
+    /*PENDING : COMPLETE THIS FUNCTION*/\
+    returnHere = 0xFF;\
+}
+
 #define get_call_sign(tm_ptr) {\
     Base_tm* call_sign_tm = new Short_tm;\
     call_sign_tm->next_TM = NULL;\