werwere

Dependencies:   FreescaleIAP SimpleDMA mbed-rtos mbed

Fork of COM_MNG_TMTC_SIMPLE_pl123 by Siva ram

Files at this revision

API Documentation at this revision

Comitter:
ee12b079
Date:
Mon Jan 25 06:22:29 2016 +0000
Parent:
94:611c066467a1
Child:
96:4ca92f9775e0
Commit message:
Using common function to transmit :; transmit_adf instead of adf_not_sdcard and adf_snd_sdcard.

Changed in this revision

COM_MNG_TMTC.h Show annotated file Show diff for this revision Revisions of this file
COM_POWER_ON_TX.h Show annotated file Show diff for this revision Revisions of this file
COM_SND_TM.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
ThreadsAndFunctions.h Show annotated file Show diff for this revision Revisions of this file
adf.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/COM_MNG_TMTC.h	Sun Jan 24 13:30:11 2016 +0000
+++ b/COM_MNG_TMTC.h	Mon Jan 25 06:22:29 2016 +0000
@@ -1230,7 +1230,7 @@
                             }\
                             /*Sending OBOSC TM to GS*/\
                             /*snd_tm.head_pointer(obosc_tm_head);*/\
-                            /*adf_not_SDcard();*/\
+                            /*transmit_adf;*/\
                             /*DELETE THE TM AFTER USE*/\
                             obosc_tm_current = obosc_tm_head;\
                             int overCount = 0;\
@@ -1304,7 +1304,7 @@
                         }\ 
                         /*Send only call sign, ACK_L1 to GS*/\
                         /*snd_tm.head_pointer(tm_ptr_head);*/\
-                        /*adf_not_SDcard;*/\
+                        /*transmit_adf;*/\
                         /*DELETE THE TM AFTER USE*/\
                         tm_ptr = tm_ptr_head;\
                         int overflowCountExecute = 0;\
@@ -1438,8 +1438,8 @@
                                 tm_ptr = tm_ptr->next_TM;\
                             }\
                             /*SEND call sign, ACK_L1, NON OBSRS TM TO GS*/\
-                            /*snd_tm.head_pointer(tm_ptr_head);*/\
-                            /*adf_not_SDcard;*/\ 
+                            snd_tm.head_pointer(tm_ptr_head);\
+                            transmit_adf;\ 
                             /*DELETE THE TM AFTER USE*/\
                             tm_ptr = tm_ptr_head;\
                             overflowCountExecute = 0;\
@@ -1465,7 +1465,7 @@
                             /*execute_obsrs(current_TC, put_tm_here)*/\
                             /*read_TC(current_TC);*/\
                             execute_OBSRS_TC(current_TC);\
-                            adf_SND_SDCard();\
+                            transmit_adf;\
                             uint8_t tempExec = TC_STATE_SUCCESSFULLY_EXECUTED;\
                             PUTexec_status(current_TC, tempExec);\
                             /*PENDING: ABORT ON NACK CHECK, gMASTER_STATE VERIFICATION WITH SD CARD, session timeout, last executed ack l234*/\
--- a/COM_POWER_ON_TX.h	Sun Jan 24 13:30:11 2016 +0000
+++ b/COM_POWER_ON_TX.h	Mon Jan 25 06:22:29 2016 +0000
@@ -73,7 +73,7 @@
         /*PENDING: TRANSMIT ABOVE TM*/\
         /*Call Sign, ACK_L1, TC_LIST*/\
         /*snd_tm.head_pointer(power_on_tm_head);*/\
-        /*adf_not_SDcard;*/\
+        /*transmit_adf;*/\
         /*deleting the telemetry*/\
         power_on_tm = power_on_tm_head;\
         overFlowCountADF = 0;\
--- a/COM_SND_TM.h	Sun Jan 24 13:30:11 2016 +0000
+++ b/COM_SND_TM.h	Mon Jan 25 06:22:29 2016 +0000
@@ -26,7 +26,7 @@
  
  
  
- 
+bool sent_tmfrom_SDcard;
  
  
  
@@ -293,6 +293,7 @@
             type0_frame_flag = true;
             make_DataStream_f = true;
             transmit_data_f = true;
+            sent_tmfrom_SDcard = false;
             diff_prev = 0;
             data_number();
         }
--- a/OBSRS.h	Sun Jan 24 13:30:11 2016 +0000
+++ b/OBSRS.h	Mon Jan 25 06:22:29 2016 +0000
@@ -268,7 +268,7 @@
 //   // return 0x86; // invalid TC
 //}
 
-void send_tm_from_SD_card(){
+void send_tm_from_SD_card_fun(){
     for(counter_buffer_112=0;counter_buffer_112<112;counter_buffer_112++){
         if(enable_new_segment){                     // starting new segment
             send_S_frame;
@@ -490,6 +490,8 @@
 }
 
 void execute_OBSRS_TC(Base_tc *tcp){
+    sent_tmfrom_SDcard = true;
+    
 //    short_TC = true;
     //pc.printf("WELCOME\n\r");
     FCTN_CDMS_SD_INIT();/* sd card initialization*/
@@ -497,7 +499,7 @@
 //    FSC =10;
 //    no_of_frames =1;
 //    short_TC = true;
-//    adf_SND_SDCard();
+//    transmit_adf();
 
     if( GETshort_or_long_tc(tcp) == SHORT_TC_CODE ){
         short_TC = true;
--- a/ThreadsAndFunctions.h	Sun Jan 24 13:30:11 2016 +0000
+++ b/ThreadsAndFunctions.h	Mon Jan 25 06:22:29 2016 +0000
@@ -270,37 +270,37 @@
 }
 
 
-uint8_t payload_data[6723];
+//uint8_t payload_data[6723];
  
-void SCIENCE_FUN(void const *args){
-    uint8_t *ptr;
-    gPC.puts("haha\r\n");
-    ptr = &(payload_data[3]);
-    gPC.puts("haha2\r\n");
-    int counter = 0;
-    gPC.puts("haha3\r\n");
-    payload_data[2] = 0;//for mode
-    for(int i = 0; i<60 ;i++){      //for mode 0.....callibra
-        for(int j= 0; j<48; j++){   //2 byte values
-            ptr[counter++] = 0;     ptr[counter++] = 65;
-        }
-        for(int j=96; j <100 ; j++){
-            ptr[counter++] = 0;     ptr[counter++] = 0;     ptr[counter++] = 0;     ptr[counter++] = 65;    
-        }
-        ptr = ptr+112;
-        counter = 0;
-    }
-    srp(payload_data);
-    
-     gPC.puts("data given to payload");
-    while(true){
-        gSCIENCE_THREAD->wait(osWaitForever);
-    }
+//void SCIENCE_FUN(void const *args){
+//    uint8_t *ptr;
+//    gPC.puts("haha\r\n");
+//    ptr = &(payload_data[3]);
+//    gPC.puts("haha2\r\n");
+//    int counter = 0;
+//    gPC.puts("haha3\r\n");
+//    payload_data[2] = 0;//for mode
+//    for(int i = 0; i<60 ;i++){      //for mode 0.....callibra
+//        for(int j= 0; j<48; j++){   //2 byte values
+//            ptr[counter++] = 0;     ptr[counter++] = 65;
+//        }
+//        for(int j=96; j <100 ; j++){
+//            ptr[counter++] = 0;     ptr[counter++] = 0;     ptr[counter++] = 0;     ptr[counter++] = 65;    
+//        }
+//        ptr = ptr+112;
+//        counter = 0;
+//    }
+//    srp(payload_data);
+//    
+//     gPC.puts("data given to payload");
+//    while(true){
+//        gSCIENCE_THREAD->wait(osWaitForever);
+//    }
 //    while(true){
 //        gSCIENCE_THREAD->signal_wait(SCIENCE_SIGNAL);
 //        srp(payload_data);
 //    }
-}
+//}
 
 
 
--- a/adf.h	Sun Jan 24 13:30:11 2016 +0000
+++ b/adf.h	Mon Jan 25 06:22:29 2016 +0000
@@ -2,7 +2,6 @@
 InterruptIn IRQ(ADF_IRQ);
 //Ticker ticker;
  
-bool sent_tmfrom_SDcard;
 bool loop_on;
 bool ADF_off;
 bool buffer_state;
@@ -246,19 +245,19 @@
  
 #define send_data {\
 if(sent_tmfrom_SDcard){\
-        send_tm_from_SD_card();\
+        send_tm_from_SD_card_fun();\
     }else{\
         snd_tm.transmit_data(buffer_112,&last_buffer);\
     }\
     write_data;\
     if(sent_tmfrom_SDcard){\
-        send_tm_from_SD_card();\
+        send_tm_from_SD_card_fun();\
     }else{\
         snd_tm.transmit_data(buffer_112,&last_buffer);\
     }\
     write_data;\
     if(sent_tmfrom_SDcard){\
-        send_tm_from_SD_card();\
+        send_tm_from_SD_card_fun();\
     }else{\
         snd_tm.transmit_data(buffer_112,&last_buffer);\
     }\
@@ -296,10 +295,11 @@
     gLEDR = !gLEDR;\
 }
  
-#define adf_not_SDcard {\
-    sent_tmfrom_SDcard = false;\
+#define transmit_adf {\
     configure_adf;\
-    signal = COM_MNG_TMTC_SIGNAL_ADF_NSD;\
+    if(sent_tmfrom_SDcard)\
+    signal = COM_MNG_TMTC_SIGNAL_ADF_SD;\
+    else signal = COM_MNG_TMTC_SIGNAL_ADF_NSD;\
     send_data;\
     while(loop_on){\
         wait_ms(COM_TX_TICKER_LIMIT);\
@@ -312,47 +312,19 @@
                     gCS_ADF=1;\
                     SPI_mutex.unlock();\
                     loop_on = false;\
-                    /*gPC.puts("Transmission done\r\n");*/\
+                    gPC.puts("Transmission done\r\n");\
                 }\
                 else{\
                     ADF_off = true;\
                 }\
             }else{\   
                 write_data;\
-                snd_tm.transmit_data(buffer_112,&last_buffer);\
+                if(sent_tmfrom_SDcard)\
+                send_tm_from_SD_card_fun();\
+                else snd_tm.transmit_data(buffer_112,&last_buffer);\ 
             }\
         }\
     }\
     /*gPC.puts("after while loop\r\n");*/\
 }
 
-void adf_SND_SDCard() {
-    sent_tmfrom_SDcard = true;
-    configure_adf;
-    signal = COM_MNG_TMTC_SIGNAL_ADF_SD;
-    send_data;
-    while(loop_on){
-        wait_ms(COM_TX_TICKER_LIMIT);
-        if(IRQ || bypass_adf){
-            if(finish_write_data){
-                if(ADF_off){
-                    SPI_mutex.lock(); 
-                    gCS_ADF=0;
-                    spi.write(0xB1);
-                    gCS_ADF=1;
-                    SPI_mutex.unlock();
-                    loop_on = false;
-                    gPC.puts("Transmission done\r\n");
-                }
-                else{
-                    ADF_off = true;
-                }
-            }else{
-                write_data;
-                send_tm_from_SD_card();
-            }
-        }
-    }
-    /*gPC.puts("after while loop\r\n");*/
-}
-
--- a/main.cpp	Sun Jan 24 13:30:11 2016 +0000
+++ b/main.cpp	Mon Jan 25 06:22:29 2016 +0000
@@ -18,7 +18,7 @@
 #include "COM_MNG_TMTC.h"
 #include "COM_POWER_ON_TX.h"
 #include "COM_POWER_OFF_TX.h"
-#include "Compression.h"
+//#include "Compression.h"
 #include "ThreadsAndFunctions.h"
 
 int main()
@@ -62,9 +62,9 @@
     gCOM_MNG_TMTC_THREAD = new Thread(COM_MNG_TMTC_FUN);
     gCOM_MNG_TMTC_THREAD->set_priority(osPriorityAboveNormal);
     gPC.puts("allocating threads\r\n");
-    gSCIENCE_THREAD = new Thread(SCIENCE_FUN);
+    //gSCIENCE_THREAD = new Thread(SCIENCE_FUN);
    // gPC.puts("step one complete\r\n");
-    gSCIENCE_THREAD->set_priority(osPriorityAboveNormal);
+    //gSCIENCE_THREAD->set_priority(osPriorityAboveNormal);
     gPC.puts("competed allocating threads\r\n");
     // *******************INITIALISATIONS END********************