working version
Dependencies: mbed mbed-rtos SimpleDMA FreescaleIAP eeprom
Fork of CDMS_CODE_FM_28JAN2017 by
Diff: OBSRS.h
- Revision:
- 356:197c93dc2012
- Parent:
- 354:eb6c863756a8
- Child:
- 357:f3d48d62e00e
--- a/OBSRS.h Tue Mar 28 08:50:07 2017 +0000 +++ b/OBSRS.h Sat Feb 10 09:06:26 2018 +0000 @@ -39,6 +39,7 @@ bool enable_DS = false; bool half_buffer = 0; bool TM_sent = false; +bool print_stuff = false; //bool session_over = gFLAGS & COM_SESSION_TIMEOUT_FLAG; uint8_t SID ; @@ -116,10 +117,37 @@ } } +#define print_PA_temp {\ + uint8_t pa_temp = 0;\ + float pa_temp1 = 0;\ + pa_temp1 = TempInput.read();\ + pa_temp1 = pa_temp1 * 3.3;\ + float resistance;\ + resistance = 24300 * pa_temp1/(3.3 - pa_temp1);\ + if(pa_temp1 < 1.378) {\ + pa_temp1 = (3694/log(24.032242*resistance))-273;\ + }\ + else{\ + pa_temp1 = (3365.4/log(7.60573*resistance))-273;\ + }\ + gPC.printf("\n%f\n",pa_temp1);\ + if (pa_temp1 > COM_PA_TMP_HIGH){\ + PA_HOT = 1;\ + gPC.puts("PA is measured HOT\r\n");\ + }\ + else{\ + PA_HOT = 0;\ + /*gPC.puts("PA is measured not HOT\r\n");*/\ + }\ +} + #define check_PA_temp {\ -/* pending temperature check function*/\ /* return 0 or 1*/\ - PA_HOT=0;\ + SelectLinec0=0;\ + SelectLinec1=0;\ + SelectLinec2=0;\ + SelectLinec3=1;\ + wait_ms(0.1);\ } @@ -341,7 +369,7 @@ new_session =false;\ /*cout<<"call_sign_sent"<<" ";*/\ T_frames_sent = T_frames_sent+2;\ - check_PA_temp;\ + print_PA_temp;\ /*cout<<"pa_hot = "<<PA_HOT<<ENDL;*/\ if(PA_HOT){\ enable_ackandcallsign = true;\ @@ -356,8 +384,30 @@ } void send_tm_from_SD_card_fun(unsigned char * buffer_112,bool & last_buffer){ -/* gPC.printf("\n\rsend tm sd called\r\n");*/ for(counter_buffer_112=0;counter_buffer_112<112;counter_buffer_112++){ + //if (print_stuff){ +// if (restart_adf_flag){ +// gPC.printf("restart_adf_flag");} +// if (enable_new_segment){ +// gPC.printf("enable_new_segment");} +// if (enable_call_sign){ +// gPC.printf("enable_call_sign");} +// if (enable_T_frame){ +// gPC.printf("enable_T_frame");} +// if (adf_limit){ +// gPC.printf("adf_limit");} +// if (enable_ackandcallsign){ +// gPC.printf("enable_ackandcallsign");} +// if (last_buffer){ +// gPC.printf("last_buffer");} +// if (enable_EoS){ +// gPC.printf("enable_EoS");} +// if (enable_read_block && (!last_block)){ +// gPC.printf("enable_read_block && (!last_block)");} +// if ((PA_HOT || (gFLAGS & COM_SESSION_TIMEOUT_FLAG) ||(ack_code != 0xA0))&&(!enable_ackandcallsign)&&(!last_buffer)){ +// gPC.printf("failed");} +// print_stuff = false; +// } if(restart_adf_flag) buffer_112[counter_buffer_112] = 0; else if(enable_new_segment){ // starting new segment @@ -435,12 +485,15 @@ // cout<<"new segment"<<ENDL; } } + //print_stuff = true; continue; + } else{ - check_PA_temp; + print_PA_temp; // cout<<"pa_hot = "<<PA_HOT<<" "; if(PA_HOT){ + gPC.printf("h1"); enable_T_frame = false; enable_read_block = false; enable_ackandcallsign = true; @@ -509,11 +562,11 @@ } create_Ack_andcallsign = false; Base_tm *ack_and_callsign = NULL; - Base_tm *ack_head = NULL; + //Base_tm *ack_head = NULL; // get_call_sign(ack_and_callsign); get_ack_l234(ack_and_callsign); ack_head = ack_and_callsign; - get_ack_l1(ack_and_callsign->next_TM); + get_ack_l1(ack_and_callsign->next_TM); while(ack_and_callsign->next_TM != NULL){ ack_and_callsign = ack_and_callsign->next_TM; } @@ -645,6 +698,7 @@ void execute_OBSRS_TC(Base_tc *tcp){ current_obsrs_tc = tcp; + check_PA_temp; flags_init; sent_tmfrom_SDcard = true; diff_prev = 0;