pradeep shekhar / Mbed 2 deprecated 31_12_15_COM_MNG_TMTC_SIMPLE

Dependencies:   mbed-rtos mbed

Fork of COM_MNG_TMTC_SIMPLE by Shreesha S

Committer:
shekhar
Date:
Thu Dec 31 08:39:43 2015 +0000
Revision:
8:d1951bbdcdd8
Parent:
7:4e744637b2e8
Child:
9:9dbd59a6cc30
added adf.h and snd_tm;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
shekhar 8:d1951bbdcdd8 1 //without reset feature , with state checks.
shekhar 8:d1951bbdcdd8 2
shekhar 8:d1951bbdcdd8 3 //Adding following algo for reset feature
shekhar 8:d1951bbdcdd8 4 //1. Check for reset flag, if true then
shekhar 8:d1951bbdcdd8 5 //2. Modify values of the relevant flags
shekhar 8:d1951bbdcdd8 6 //3. Attach the new pointer to head_pointer of the class
shekhar 8:d1951bbdcdd8 7 //4. Ensure the values are modified.
shekhar 8:d1951bbdcdd8 8 //in restart_adf write 2 times writing and transmitting and detach-attach ticker
shekhar 8:d1951bbdcdd8 9
shekhar 8:d1951bbdcdd8 10 #include<iostream>
shekhar 8:d1951bbdcdd8 11 //#include"mbed.h"
shekhar 8:d1951bbdcdd8 12 #define ADF_IRQ PTA14
shekhar 8:d1951bbdcdd8 13 #define SPI_MOSI PTE1
shekhar 8:d1951bbdcdd8 14 #define SPI_MISO PTE3
shekhar 8:d1951bbdcdd8 15 #define SPI_CLK PTE2
shekhar 8:d1951bbdcdd8 16 #define SPI_CS_ADF PTA15
shekhar 8:d1951bbdcdd8 17
shekhar 8:d1951bbdcdd8 18
shekhar 8:d1951bbdcdd8 19 #include"stdio.h" // remove on adding "mbed.h"
shekhar 8:d1951bbdcdd8 20 FILE *fp;
shekhar 8:d1951bbdcdd8 21 //replace with spi.write(buffer_112[i]);\
shreeshas95 1:a0055b3280c8 22
shekhar 8:d1951bbdcdd8 23 //modified : if(sent_tmfrom_SDcard){\
shekhar 8:d1951bbdcdd8 24 }else{\
shekhar 8:d1951bbdcdd8 25 snd_tm.transmit_data(buffer_112,&last_buffer);\
shekhar 8:d1951bbdcdd8 26 }\
shekhar 8:d1951bbdcdd8 27 //took this from write_data and put to check
shekhar 8:d1951bbdcdd8 28 // commented IRQ
shekhar 8:d1951bbdcdd8 29 //commented send_TM_FROM_SDCARD in "sdcread.h"
shekhar 8:d1951bbdcdd8 30 //commented initiate
shekhar 8:d1951bbdcdd8 31 // deleted spi.write from write_data
shekhar 8:d1951bbdcdd8 32
shekhar 8:d1951bbdcdd8 33
shekhar 8:d1951bbdcdd8 34
shekhar 8:d1951bbdcdd8 35 //Serial gPC( USBTX, USBRX );
shekhar 8:d1951bbdcdd8 36 //gPC.baud(1200);
shekhar 8:d1951bbdcdd8 37 //InterruptIn IRQ(ADF_IRQ);
shekhar 8:d1951bbdcdd8 38 //Ticker ticker;
shekhar 8:d1951bbdcdd8 39 //SPI spi(PTE1, PTE3, PTE2);
shekhar 8:d1951bbdcdd8 40 //DigitalOut gCS_ADF(SPI_CS_ADF);
shekhar 8:d1951bbdcdd8 41 unsigned int Adf_data_counter=0;
shekhar 8:d1951bbdcdd8 42 unsigned char status =0;
shekhar 8:d1951bbdcdd8 43 unsigned int cmd_err_cnt=0;
shekhar 8:d1951bbdcdd8 44 unsigned int state_err_cnt=0;
shekhar 8:d1951bbdcdd8 45 unsigned int miso_err_cnt=0;
shekhar 8:d1951bbdcdd8 46 unsigned int hw_reset_err_cnt=0;
shekhar 8:d1951bbdcdd8 47 bool bcn_flag=0;
shekhar 8:d1951bbdcdd8 48 bool bbram_flag=0;
shekhar 8:d1951bbdcdd8 49
shekhar 8:d1951bbdcdd8 50 bool stop_transmission=false;
shreeshas95 1:a0055b3280c8 51 bool sent_tmfrom_SDcard;
shreeshas95 1:a0055b3280c8 52 bool loop_on;
shreeshas95 1:a0055b3280c8 53 bool ADF_off;
shreeshas95 1:a0055b3280c8 54 bool buffer_state;
shreeshas95 1:a0055b3280c8 55 uint8_t signal = 0x00;
shekhar 8:d1951bbdcdd8 56 uint8_t bbram_buffer[66]={0x19,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x00,0xF4,0xC2,0x10,0xC0,0x00,0x30,0x31,0x07,0x00,0x01,0x00,0x7F,0x00,0x0B,0x37,0x00,0x00,0x40,0x0C,0x00,0x05,0x00,0x00,0x18,0x12,0x34,0x56,0x10,0x10,0xC4,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00};
shekhar 8:d1951bbdcdd8 57 uint8_t Adf_data[100]={}; //Data to be transmitted
shekhar 8:d1951bbdcdd8 58 //uint8_t buffer_112[112];
shreeshas95 2:2caf2a9a13aa 59 //int initialise_card();
shreeshas95 2:2caf2a9a13aa 60 //int disk_initialize();
shreeshas95 1:a0055b3280c8 61
shekhar 8:d1951bbdcdd8 62
shekhar 8:d1951bbdcdd8 63 //void transmitdata(){ // copy the data to be transmitted to bufer_112
shekhar 8:d1951bbdcdd8 64 // for(int i=0;i<112;i++){
shekhar 8:d1951bbdcdd8 65 // buffer_112[i]=Adf_data[Adf_data_counter];
shekhar 8:d1951bbdcdd8 66 // if(100==Adf_data_counter){
shekhar 8:d1951bbdcdd8 67 // Adf_data_counter++;
shekhar 8:d1951bbdcdd8 68 // stop_transmission= true;
shekhar 8:d1951bbdcdd8 69 // break;
shekhar 8:d1951bbdcdd8 70 // }
shekhar 8:d1951bbdcdd8 71 // }
shekhar 8:d1951bbdcdd8 72 //}
shekhar 8:d1951bbdcdd8 73
shreeshas95 1:a0055b3280c8 74 #define bbram_write {\
shreeshas95 1:a0055b3280c8 75 gCS_ADF=0;\
shreeshas95 1:a0055b3280c8 76 spi.write(0xB0);\
shreeshas95 1:a0055b3280c8 77 wait_us(300);\
shreeshas95 1:a0055b3280c8 78 gCS_ADF=1;\
shreeshas95 1:a0055b3280c8 79 gCS_ADF=0;\
shreeshas95 1:a0055b3280c8 80 for(int i=0;i<66;i++){\
shreeshas95 1:a0055b3280c8 81 spi.write(bbram_buffer[i]);\
shreeshas95 1:a0055b3280c8 82 }\
shreeshas95 1:a0055b3280c8 83 gCS_ADF=1;\
shreeshas95 1:a0055b3280c8 84 }
shreeshas95 1:a0055b3280c8 85 //------------------------------------------------------------------------
shreeshas95 1:a0055b3280c8 86 // state checking functions
shreeshas95 1:a0055b3280c8 87 //bool assrt_phy_off( int, int, int);
shreeshas95 1:a0055b3280c8 88 //bool assrt_phy_on( int,int,int);
shreeshas95 1:a0055b3280c8 89 //bool assrt_phy_tx(int,int,int);
shreeshas95 1:a0055b3280c8 90
shreeshas95 1:a0055b3280c8 91 #define START_ADDRESS 0x020;
shreeshas95 1:a0055b3280c8 92 #define MISO_PIN PTE3
shreeshas95 1:a0055b3280c8 93 /**************Defining Counter Limits**************/
shreeshas95 1:a0055b3280c8 94 #define THRS 20
shreeshas95 1:a0055b3280c8 95 #define STATE_ERR_THRS 20
shreeshas95 1:a0055b3280c8 96 #define PHY_OFF_EXEC_TIME 300
shreeshas95 1:a0055b3280c8 97 #define PHY_ON_EXEC_TIME 300
shreeshas95 1:a0055b3280c8 98 #define PHY_TX_EXEC_TIME 600
shreeshas95 1:a0055b3280c8 99 /******DEFINING COMMANDS*********/
shreeshas95 1:a0055b3280c8 100 #define CMD_HW_RESET 0xC8
shreeshas95 1:a0055b3280c8 101 #define CMD_PHY_ON 0xB1
shreeshas95 1:a0055b3280c8 102 #define CMD_PHY_OFF 0xB0
shreeshas95 1:a0055b3280c8 103 #define CMD_PHY_TX 0xB5
shreeshas95 1:a0055b3280c8 104 #define CMD_CONFIG_DEV 0xBB
shreeshas95 1:a0055b3280c8 105
shreeshas95 1:a0055b3280c8 106 #define check_status {\
shreeshas95 1:a0055b3280c8 107 unsigned char stat=0;\
shreeshas95 1:a0055b3280c8 108 gCS_ADF=0;\
shreeshas95 1:a0055b3280c8 109 spi.write(0xFF);\
shreeshas95 1:a0055b3280c8 110 stat = spi.write(0xFF);\
shreeshas95 1:a0055b3280c8 111 gCS_ADF=1;\
shreeshas95 1:a0055b3280c8 112 status = stat;\
shreeshas95 1:a0055b3280c8 113 }
shreeshas95 1:a0055b3280c8 114
shreeshas95 1:a0055b3280c8 115 // all three arguments are int
shreeshas95 1:a0055b3280c8 116 #define assrt_phy_off(return_this) {\
shreeshas95 1:a0055b3280c8 117 int cmd_err_cnt = 0;\
shreeshas95 1:a0055b3280c8 118 int spi_err_cnt = 0;\
shreeshas95 1:a0055b3280c8 119 int state_err_cnt = 0;\
shreeshas95 1:a0055b3280c8 120 for(int i = 0 ; i < 40 ;i++){\
shreeshas95 1:a0055b3280c8 121 check_status;\
shreeshas95 1:a0055b3280c8 122 if(status == 0xB1){\
shreeshas95 1:a0055b3280c8 123 return_this = 0;\
shreeshas95 1:a0055b3280c8 124 break;\
shreeshas95 1:a0055b3280c8 125 }\
shreeshas95 1:a0055b3280c8 126 else if(cmd_err_cnt>THRS||spi_err_cnt>THRS){\
shreeshas95 1:a0055b3280c8 127 return_this = 1;\
shreeshas95 1:a0055b3280c8 128 break;\
shreeshas95 1:a0055b3280c8 129 }\
shreeshas95 1:a0055b3280c8 130 else if(state_err_cnt>STATE_ERR_THRS){\
shreeshas95 1:a0055b3280c8 131 return_this = 1;\
shreeshas95 1:a0055b3280c8 132 break;\
shreeshas95 1:a0055b3280c8 133 }\
shreeshas95 1:a0055b3280c8 134 else if( (status & 0xA0) == 0xA0 ){\
shreeshas95 1:a0055b3280c8 135 gCS_ADF=0;\
shreeshas95 1:a0055b3280c8 136 spi.write(CMD_PHY_OFF);\
shreeshas95 1:a0055b3280c8 137 gCS_ADF=1;\
shreeshas95 1:a0055b3280c8 138 wait_us(PHY_OFF_EXEC_TIME);\
shreeshas95 1:a0055b3280c8 139 state_err_cnt++;\
shreeshas95 1:a0055b3280c8 140 }\
shreeshas95 1:a0055b3280c8 141 else if(status&0x80==0x00){\
shreeshas95 1:a0055b3280c8 142 wait_ms(5);\
shreeshas95 1:a0055b3280c8 143 spi_err_cnt++;\
shreeshas95 1:a0055b3280c8 144 }\
shreeshas95 1:a0055b3280c8 145 else {\
shreeshas95 1:a0055b3280c8 146 wait_ms(1);\
shreeshas95 1:a0055b3280c8 147 cmd_err_cnt++;\
shreeshas95 1:a0055b3280c8 148 }\
shreeshas95 1:a0055b3280c8 149 }\
shreeshas95 1:a0055b3280c8 150 }
shreeshas95 1:a0055b3280c8 151
shreeshas95 1:a0055b3280c8 152
shreeshas95 1:a0055b3280c8 153
shreeshas95 1:a0055b3280c8 154
shreeshas95 1:a0055b3280c8 155 #define initial_adf_check {\
shreeshas95 1:a0055b3280c8 156 bbram_flag=1;\
shreeshas95 1:a0055b3280c8 157 }
shreeshas95 1:a0055b3280c8 158
shreeshas95 1:a0055b3280c8 159 //bool hardware_reset(int bcn_call){
shekhar 8:d1951bbdcdd8 160 // for(int i= 0; i < 20 ; i++){
shekhar 8:d1951bbdcdd8 161 // gCS_ADF=0;
shekhar 8:d1951bbdcdd8 162 // spi.write(CMD_HW_RESET);
shekhar 8:d1951bbdcdd8 163 // gCS_ADF=1;
shekhar 8:d1951bbdcdd8 164 // wait_ms(2);// Typically 1 ms
shekhar 8:d1951bbdcdd8 165 // int count=0;
shekhar 8:d1951bbdcdd8 166 // int temp_return = 0;
shekhar 8:d1951bbdcdd8 167 // while(count<10 && miso_err_cnt<10){
shekhar 8:d1951bbdcdd8 168 // if(MISO_PIN){
shekhar 8:d1951bbdcdd8 169 // assrt_phy_off(temp_return);
shekhar 8:d1951bbdcdd8 170 // if(!temp_return){
shekhar 8:d1951bbdcdd8 171 // return 0;
shekhar 8:d1951bbdcdd8 172 // }
shekhar 8:d1951bbdcdd8 173 // count++;
shreeshas95 1:a0055b3280c8 174 // }
shreeshas95 1:a0055b3280c8 175 // else{
shekhar 8:d1951bbdcdd8 176 // wait_us(50);
shekhar 8:d1951bbdcdd8 177 // miso_err_cnt++;
shreeshas95 1:a0055b3280c8 178 // }
shreeshas95 1:a0055b3280c8 179 // }
shekhar 8:d1951bbdcdd8 180 // }
shekhar 8:d1951bbdcdd8 181 // return 1;
shreeshas95 1:a0055b3280c8 182 //}
shekhar 8:d1951bbdcdd8 183 //for reseting the transmission call assert function after b5 and b1. after b1 assert_phi_on and after b5 assert_phi_tx.
shreeshas95 1:a0055b3280c8 184 //----------------------------------------------------------------------------
shekhar 8:d1951bbdcdd8 185 //
shekhar 8:d1951bbdcdd8 186 //# define initiate {\
shekhar 8:d1951bbdcdd8 187 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 188 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 189 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 190 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 191 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 192 // spi.write(0x08);\
shekhar 8:d1951bbdcdd8 193 // spi.write(0x14);\
shekhar 8:d1951bbdcdd8 194 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 195 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 196 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 197 // spi.write(0x08);\
shekhar 8:d1951bbdcdd8 198 // spi.write(0x15);\
shekhar 8:d1951bbdcdd8 199 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 200 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 201 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 202 // spi.write(0x09);\
shekhar 8:d1951bbdcdd8 203 // spi.write(0x24);\
shekhar 8:d1951bbdcdd8 204 // spi.write(0x20);\
shekhar 8:d1951bbdcdd8 205 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 206 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 207 // spi.write(0x09);\
shekhar 8:d1951bbdcdd8 208 // spi.write(0x37);\
shekhar 8:d1951bbdcdd8 209 // spi.write(0xE0);\
shekhar 8:d1951bbdcdd8 210 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 211 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 212 // spi.write(0x09);\
shekhar 8:d1951bbdcdd8 213 // spi.write(0x36);\
shekhar 8:d1951bbdcdd8 214 // spi.write(0x70);\
shekhar 8:d1951bbdcdd8 215 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 216 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 217 // spi.write(0x09);\
shekhar 8:d1951bbdcdd8 218 // spi.write(0x39);\
shekhar 8:d1951bbdcdd8 219 // spi.write(0x10);\
shekhar 8:d1951bbdcdd8 220 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 221 //}
shreeshas95 1:a0055b3280c8 222
shreeshas95 1:a0055b3280c8 223
shreeshas95 1:a0055b3280c8 224 #define write_data {\
shreeshas95 1:a0055b3280c8 225 if(buffer_state){\
shreeshas95 1:a0055b3280c8 226 for(unsigned char i=0; i<112;i++){\
shekhar 8:d1951bbdcdd8 227 fprintf(fp,"0x%02X,",buffer_112[i]);\
shekhar 8:d1951bbdcdd8 228 }\
shekhar 8:d1951bbdcdd8 229 }\
shekhar 8:d1951bbdcdd8 230 else\
shekhar 8:d1951bbdcdd8 231 {\
shekhar 8:d1951bbdcdd8 232 for(unsigned char i=0; i<112;i++){\
shekhar 8:d1951bbdcdd8 233 fprintf(fp,"0x%02X,",buffer_112[i]);\
shreeshas95 1:a0055b3280c8 234 }\
shreeshas95 1:a0055b3280c8 235 }\
shreeshas95 1:a0055b3280c8 236 buffer_state = !buffer_state;\
shreeshas95 1:a0055b3280c8 237 }
shekhar 8:d1951bbdcdd8 238 //void send_tm_from_SD_card(){
shekhar 8:d1951bbdcdd8 239 // }
shekhar 8:d1951bbdcdd8 240 //
shekhar 8:d1951bbdcdd8 241 //void check(){
shekhar 8:d1951bbdcdd8 242 // if(IRQ){
shekhar 8:d1951bbdcdd8 243 // if(!ADF_off){
shekhar 8:d1951bbdcdd8 244 // snd_tm.transmit_data(buffer_112,&last_buffer);
shekhar 8:d1951bbdcdd8 245 // write_data;
shekhar 8:d1951bbdcdd8 246 // }
shekhar 8:d1951bbdcdd8 247 // else{
shekhar 8:d1951bbdcdd8 248 // ticker.detach();
shekhar 8:d1951bbdcdd8 249 // gCS_ADF=0;
shekhar 8:d1951bbdcdd8 250 // spi.write(0xB1);
shekhar 8:d1951bbdcdd8 251 // gCS_ADF=1;
shekhar 8:d1951bbdcdd8 252 // gPC.puts("transmission done\r\n");
shekhar 8:d1951bbdcdd8 253 // loop_on=false;
shekhar 8:d1951bbdcdd8 254 // }
shekhar 8:d1951bbdcdd8 255 // }
shekhar 8:d1951bbdcdd8 256 //}
shekhar 8:d1951bbdcdd8 257 //
shekhar 8:d1951bbdcdd8 258 //#define send_data {\
shekhar 8:d1951bbdcdd8 259 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 260 // spi.write(0xBB);\
shekhar 8:d1951bbdcdd8 261 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 262 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 263 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 264 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 265 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 266 // if(sent_tmfrom_SDcard){\
shekhar 8:d1951bbdcdd8 267 // send_tm_from_SD_card();\
shekhar 8:d1951bbdcdd8 268 // }else{\
shekhar 8:d1951bbdcdd8 269 // transmitdata();\
shekhar 8:d1951bbdcdd8 270 // }\
shekhar 8:d1951bbdcdd8 271 // write_data;\
shekhar 8:d1951bbdcdd8 272 // if(sent_tmfrom_SDcard){\
shekhar 8:d1951bbdcdd8 273 // send_tm_from_SD_card();\
shekhar 8:d1951bbdcdd8 274 // }else{\
shekhar 8:d1951bbdcdd8 275 // transmitdata();\
shekhar 8:d1951bbdcdd8 276 // }\
shekhar 8:d1951bbdcdd8 277 // write_data;\
shekhar 8:d1951bbdcdd8 278 // if(sent_tmfrom_SDcard){\
shekhar 8:d1951bbdcdd8 279 // send_tm_from_SD_card();\
shekhar 8:d1951bbdcdd8 280 // }else{\
shekhar 8:d1951bbdcdd8 281 // transmitdata();\
shekhar 8:d1951bbdcdd8 282 // }\
shekhar 8:d1951bbdcdd8 283 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 284 // spi.write(0xB1);\
shekhar 8:d1951bbdcdd8 285 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 286 // wait_us(300);\
shekhar 8:d1951bbdcdd8 287 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 288 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 289 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 290 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 291 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 292 // spi.write(0xB5);\
shekhar 8:d1951bbdcdd8 293 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 294 // wait_us(300);\
shekhar 8:d1951bbdcdd8 295 // gCS_ADF=0;\
shekhar 8:d1951bbdcdd8 296 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 297 // spi.write(0xFF);\
shekhar 8:d1951bbdcdd8 298 // gCS_ADF=1;\
shekhar 8:d1951bbdcdd8 299 // ticker.attach_us(&check,32000);\
shekhar 8:d1951bbdcdd8 300 //}
shreeshas95 1:a0055b3280c8 301
shreeshas95 1:a0055b3280c8 302 #define send_data {\
shreeshas95 1:a0055b3280c8 303 snd_tm.transmit_data(buffer_112,&last_buffer);\
shreeshas95 1:a0055b3280c8 304 write_data;\
shreeshas95 1:a0055b3280c8 305 snd_tm.transmit_data(buffer_112,&last_buffer);\
shekhar 8:d1951bbdcdd8 306 write_data;\
shekhar 8:d1951bbdcdd8 307 while(loop_on)\
shekhar 8:d1951bbdcdd8 308 {\
shekhar 8:d1951bbdcdd8 309 if(!last_buffer && !snd_tm.reset_adf){\
shekhar 8:d1951bbdcdd8 310 snd_tm.transmit_data(buffer_112,&last_buffer);\
shekhar 8:d1951bbdcdd8 311 write_data;\
shekhar 8:d1951bbdcdd8 312 }else if(snd_tm.reset_adf && !last_buffer){\
shekhar 8:d1951bbdcdd8 313 restart_adf;snd_tm.reset_adf=false;\
shekhar 8:d1951bbdcdd8 314 }\
shekhar 8:d1951bbdcdd8 315 else if(last_buffer){\
shekhar 8:d1951bbdcdd8 316 loop_on=false;\
shekhar 8:d1951bbdcdd8 317 }\
shreeshas95 1:a0055b3280c8 318 }\
shreeshas95 1:a0055b3280c8 319 }
shekhar 8:d1951bbdcdd8 320 #define restart_adf
shreeshas95 1:a0055b3280c8 321 void adf_not_SDcard(){
shreeshas95 1:a0055b3280c8 322 buffer_state = true;
shreeshas95 1:a0055b3280c8 323 last_buffer = false;
shreeshas95 1:a0055b3280c8 324 loop_on = true;
shreeshas95 1:a0055b3280c8 325 ADF_off = false;
shreeshas95 1:a0055b3280c8 326 sent_tmfrom_SDcard = false;
shekhar 8:d1951bbdcdd8 327
shekhar 8:d1951bbdcdd8 328 // signal = COM_MNG_TMTC_SIGNAL_ADF_NSD;
shekhar 8:d1951bbdcdd8 329 // initial_adf_check;
shekhar 8:d1951bbdcdd8 330 // initiate;
shreeshas95 1:a0055b3280c8 331 send_data;
shreeshas95 2:2caf2a9a13aa 332 // gPC.puts("Inside adf transmission\r\n");
shreeshas95 2:2caf2a9a13aa 333 // ADF_non_responsive_timeout.attach(&ADF_non_responsive_fun, 10);
shreeshas95 1:a0055b3280c8 334
shreeshas95 1:a0055b3280c8 335 }