Latest FM Code with EEPROM
Dependencies: FreescaleIAP SimpleDMA eeprom mbed-rtos mbed
Fork of CDMS_QM_03MAR2017_Flash_with_obsrs by
Diff: adf.h
- Revision:
- 356:4484bf39526f
- Parent:
- 354:eb6c863756a8
--- a/adf.h Tue Mar 28 08:50:07 2017 +0000 +++ b/adf.h Sat Feb 24 10:28:56 2018 +0000 @@ -34,6 +34,7 @@ uint8_t firstbyte; uint8_t secondbyte; unsigned char buffer_112[112]; +int loop_conter = 0; //ADF temperature reading #define temp_correction_value 0 @@ -407,6 +408,7 @@ #define write_data {\ counter++;\ + /*gPC.printf("%d\r\n",counter);*/\ if(counter==584){\ finish_write_data=true;\ restart_adf_flag=true;\ @@ -668,13 +670,19 @@ bool configure = true; void transmit_adf(){ configure =true; - while(retransmit||configure){ configure =0; retransmit=0; + loop_conter = 0;//to prevent from going into infinite while loop while(power_reset_count<POWER_RESET_THRS){ restart_adf_flag=false; bool tx_err=false; + if(sent_tmfrom_SDcard == false){ + if(COM_RST>100){ + gPC.printf("\r\nSTUCK IN LOOP EXITING\r\n "); + break; + } + } configure_adf; send_data; /*PA MCR level*/; @@ -682,13 +690,20 @@ spi.write(0x1B); spi.write(0x07); // spi.write(0x35); - spi.write(0x36); + // spi.write(0x36); + spi.write(0x38); //PA Output = 30.8 gCS_ADF=1; CMD(CMD_PHY_TX); wait_us(2000); T.start(); while(loop_on){ - wait_us(20); + if(sent_tmfrom_SDcard == false){ + if(COM_RST>100){ + gPC.printf("\r\nSTUCK IN LOOP EXITING\r\n "); + break; + } + } + wait_us(15); check; if(data_irq_err||tx_err){ hw_reset_err_cnt++; @@ -703,6 +718,8 @@ break; } gPC.puts("after while looprn"); + loop_conter++; + if (loop_conter > 2){break;gPC.printf("\nERROR: TM DROPPED");}//to prevent from going into infinite while loop } if(restart_adf_flag){