publishing to check changes in cdms code
Dependencies: FreescaleIAP SimpleDMA mbed-rtos mbed
Fork of CDMS_CODE_samp_23SEP_DMA_flag by
Diff: OBSRS.h
- Revision:
- 143:d81df402a016
- Parent:
- 142:83f48d1a1bc5
- Child:
- 146:d9ce37c49409
diff -r 83f48d1a1bc5 -r d81df402a016 OBSRS.h --- a/OBSRS.h Tue Mar 29 14:22:55 2016 +0000 +++ b/OBSRS.h Tue Mar 29 17:30:38 2016 +0000 @@ -8,7 +8,7 @@ // Illegal TC Case 3 ackl234new->TM_string[2] = (000_0010) = 0x_2; spare = 0 00000010 = 0x02 invalid SID #define TMID_ACK_L234 0xB -#define T_frames_in_segment 40 +#define T_frames_in_segment 20 using namespace std; Base_tc *current_obsrs_tc = NULL; @@ -38,6 +38,7 @@ bool enable_FCCH = false; bool enable_DS = false; bool half_buffer = 0; +bool TM_sent = false; //bool session_over = gFLAGS & COM_SESSION_TIMEOUT_FLAG; uint8_t SID ; @@ -54,7 +55,7 @@ uint8_t counter_FCCH80 = 0; uint8_t counter_S_frame = 0; uint8_t T_frame_Ack_andcallsign_sent = 0; -uint8_t T_frame_in_Ackandcallsign = 2; // needs to get from sukhdeep depends on size of Ack_L1 +uint8_t T_frame_in_Ackandcallsign ; // needs to get from sukhdeep depends on size of Ack_L1 uint32_t block_counter = 0; uint8_t no_of_frames =0; @@ -149,7 +150,7 @@ counter_FCCH80 = 0;\ counter_S_frame = 0;\ T_frame_Ack_andcallsign_sent = 0;\ - T_frame_in_Ackandcallsign = 4;\ + T_frame_in_Ackandcallsign ;\ block_counter = 0;\ no_of_frames =0;\ } @@ -172,9 +173,10 @@ buffer_112[counter_buffer_112] = interleave_data[half_buffer][counter_interleavedata++];\ if (counter_interleavedata == 144)\ { \ - gPC.printf("Ads sent\r\n");\ + gPC.printf("Ads sent %d\r\n",half_buffer);\ enable_DS = false;\ enable_FCCH = true;\ + counter_interleavedata = 0;\ }\ }\ else if (enable_FCCH)\ @@ -184,20 +186,23 @@ {\ gPC.printf("Afcch80 sent\r\n");\ enable_FCCH = false;\ + counter_FCCH80 = 0;\ + enable_SCH = true;\ if(half_buffer == 0){\ - enable_SCH = true;\ half_buffer = 1;\ - counter_FCCH80 = 0;\ - counter_interleavedata = 0;\ + }\ + else{\ + half_buffer =0;\ + TM_sent=true;\ }\ }\ }\ - if((counter_interleavedata == 144 ) && (half_buffer == 1)){\ - counter_interleavedata = 0;\ - half_buffer = 0;\ + if(TM_sent){\ + TM_sent =false;\ T_frames_sent = T_frames_sent +2;\ if(repeat_last_2T_frames){\ - /*cout<<"repeated last two T frames"<<" ";*/\ + enable_SCH = true;\ + gPC.printf("repeated last 2 tframes\r\n");\ /*cout<<"T_frames_sent = "<<T_frames_sent<<ENDL;*/\ }\ else{\ @@ -212,7 +217,7 @@ enable_SCH = true;\ }\ else{\ - /*cout<<"error in send_Ack_andcallsign if T_frames_sent < T_frames_in_segment"<<ENDL;*/\ + gPC.printf("error in send ack\r\n");\ }\ }\ if(T_frames_sent == T_frames_in_segment){\ @@ -229,7 +234,7 @@ }\ else{\ send_EoS_and_stop = true; \ - } \ + }\ }\ }\ }\ @@ -357,8 +362,6 @@ }\ } - - void send_tm_from_SD_card_fun(){ gPC.printf("\n\rsend tm sd called\r\n"); for(counter_buffer_112=0;counter_buffer_112<112;counter_buffer_112++){ @@ -491,10 +494,6 @@ adf_limit = false; } } - else if(stop){ -// cout<<"Done bro"<<ENDL; - break; - } else if(enable_ackandcallsign){ if(create_Ack_andcallsign){ gPC.printf("cr ack\r\n"); @@ -515,6 +514,7 @@ snd_tm.head_pointer_sdcard(ack_head); gPC.printf("test 4\r\n"); T_frame_in_Ackandcallsign = 2*snd_tm.make_shor_tm(); + gPC.printf(" T_frame_in_Ackandcallsign = %d\r\n",T_frame_in_Ackandcallsign); Base_tm *ack_l234 = ack_and_callsign->next_TM; uint8_t temp2 = TC_STATE_SUCCESSFULLY_EXECUTED; // see all the possible cases PUTexec_status(current_obsrs_tc, temp2); @@ -538,17 +538,19 @@ } gPC.printf("test 5\r\n"); ack_and_callsign = ack_head->next_TM; - delete ack_head; - gPC.printf("test 6\r\n"); - while(ack_and_callsign != NULL){ - Base_tm *temp = ack_and_callsign->next_TM; - delete ack_and_callsign; - ack_and_callsign = temp; - } + gPC.printf("ex cr ack\r\n"); } send_Ack_andcallsign; } + else if(last_buffer){ +// delete ack_head; +// while(ack_and_callsign != NULL){ +// Base_tm *temp = ack_and_callsign->next_TM; +// delete ack_and_callsign; +// ack_and_callsign = temp; +// } + } else if(enable_EoS){ // send_EoS(); buffer_112[counter_buffer_112] = EoS[counter_EoS++];