Changes done in ECG and BT

Dependencies:   SDFileSystem ds3231 eeprom_Nikita mbed testUniGraphic_150217

Fork of merged_code2_20sept_2017_4th_oct_2017 by nikita teggi

Committer:
avp2417
Date:
Sat Jul 29 11:23:19 2017 +0000
Revision:
36:00d96aa14658
Parent:
27:907f8ce0025e
Child:
41:1141a75eacc4
Added Suhasini's changes related to BP code and increase Bluetooth buffer from 150 samples to 600 Samples into 27th July 2017 code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nidhinvarghese 14:f5c62d30c6fc 1 // Exisiting code in Int_Demo_09May2017_suhasini/sdcard.cpp is deleted and replaced by new code
nidhinvarghese 14:f5c62d30c6fc 2 //Nidhin 1/6/2017
nidhinvarghese 14:f5c62d30c6fc 3
nidhinvarghese 14:f5c62d30c6fc 4
nikitateggi 1:8316c23ec6b9 5 #include "mbed.h"
nikitateggi 1:8316c23ec6b9 6 #include <stdio.h>
nikitateggi 1:8316c23ec6b9 7 #include "SDFileSystem.h"
nikitateggi 1:8316c23ec6b9 8 #include "sdcard.h"
nikitateggi 1:8316c23ec6b9 9 #include "rtc.h"
nidhinvarghese 14:f5c62d30c6fc 10 #include "struct.h"
nidhinvarghese 14:f5c62d30c6fc 11
nidhinvarghese 14:f5c62d30c6fc 12 Serial snd(USBTX,USBRX);
nikitateggi 24:d992ee8369f4 13 SDFileSystem sd(PTE1, PTE3, PTE2, PTE4, "sd");
nikitateggi 1:8316c23ec6b9 14
nikitateggi 24:d992ee8369f4 15
nidhinvarghese 14:f5c62d30c6fc 16
nidhinvarghese 14:f5c62d30c6fc 17 FILE *fpecg; // PPG and ECG File pointers for BP
nidhinvarghese 14:f5c62d30c6fc 18 FILE *fpppg; //"" ""
nidhinvarghese 14:f5c62d30c6fc 19
nidhinvarghese 14:f5c62d30c6fc 20 FILE *fpmain; // FILE pointer for main file
nidhinvarghese 14:f5c62d30c6fc 21
nidhinvarghese 14:f5c62d30c6fc 22 FILE *fpbg; // FILE pointer to BG file
nidhinvarghese 14:f5c62d30c6fc 23 FILE *fpeecg; // FILE pointer to ECG file
nidhinvarghese 14:f5c62d30c6fc 24 FILE *fpbp; // FILE pointer to BP file
nidhinvarghese 14:f5c62d30c6fc 25
nidhinvarghese 14:f5c62d30c6fc 26 FILE *fp; // FILE pointer for random use
nidhinvarghese 14:f5c62d30c6fc 27
nidhinvarghese 14:f5c62d30c6fc 28 //Function Added on 16/5/2017 by Nidhin
nikitateggi 22:ffa88619551d 29 void sd_open_mainfile(int32_t pid)
nidhinvarghese 14:f5c62d30c6fc 30 {
nidhinvarghese 14:f5c62d30c6fc 31 char buffer1[32];
nidhinvarghese 14:f5c62d30c6fc 32 sprintf(buffer1,"/sd/%d.csv",pid);
nidhinvarghese 14:f5c62d30c6fc 33 fp = fopen(buffer1,"a");
nidhinvarghese 14:f5c62d30c6fc 34 }
nidhinvarghese 14:f5c62d30c6fc 35 //------------------------------------------
nidhinvarghese 14:f5c62d30c6fc 36
nidhinvarghese 14:f5c62d30c6fc 37
nidhinvarghese 14:f5c62d30c6fc 38
nikitateggi 20:7c64e6ecad76 39 /*void sd_open_GLCfile(int pid) // opening the glc file
nikitateggi 1:8316c23ec6b9 40 {
nikitateggi 1:8316c23ec6b9 41
nikitateggi 1:8316c23ec6b9 42 char buffer[32];
nikitateggi 1:8316c23ec6b9 43 char buffer1[32];
nikitateggi 1:8316c23ec6b9 44 time_t epoch_time1;
nikitateggi 1:8316c23ec6b9 45 epoch_time1=rtc_read();
nikitateggi 1:8316c23ec6b9 46 // strftime(buffer, 32, "GLC_%s", pid);
nikitateggi 1:8316c23ec6b9 47
nikitateggi 4:6bd81bb1790d 48 sprintf(buffer1,"/sd/%d_GLC.csv",pid);
nikitateggi 1:8316c23ec6b9 49 fp = fopen(buffer1,"a");
nikitateggi 4:6bd81bb1790d 50 fprintf(fp,"%s\n",ctime(&epoch_time1) ); //writing the date, time into the file
nikitateggi 1:8316c23ec6b9 51
nikitateggi 1:8316c23ec6b9 52
nikitateggi 20:7c64e6ecad76 53 } */
nikitateggi 3:9a06c2bed650 54
nikitateggi 22:ffa88619551d 55 void sd_open_GLCfilee(int32_t pid) // only opening the glc file after entering TEST screen
nikitateggi 2:3b7b71bfc941 56 {
nikitateggi 2:3b7b71bfc941 57 char buffer1[32];
nikitateggi 4:6bd81bb1790d 58 sprintf(buffer1,"/sd/%d_GLC.csv",pid);
nidhinvarghese 14:f5c62d30c6fc 59 fpbg = fopen(buffer1,"a");
nidhinvarghese 14:f5c62d30c6fc 60 fclose(fpbg);
nidhinvarghese 14:f5c62d30c6fc 61 }
nikitateggi 1:8316c23ec6b9 62
nidhinvarghese 14:f5c62d30c6fc 63
nikitateggi 4:6bd81bb1790d 64
nikitateggi 20:7c64e6ecad76 65 /*void sd_open_ECGfile(int pid)
nikitateggi 1:8316c23ec6b9 66 {
nikitateggi 1:8316c23ec6b9 67
nikitateggi 1:8316c23ec6b9 68 // char buffer[32];
nikitateggi 1:8316c23ec6b9 69 char buffer1[32];
nikitateggi 1:8316c23ec6b9 70 time_t epoch_time1;
nikitateggi 1:8316c23ec6b9 71 epoch_time1=rtc_read();
nikitateggi 1:8316c23ec6b9 72 // strftime(buffer, 32, "ECG_%d", pid);
nikitateggi 1:8316c23ec6b9 73
nikitateggi 2:3b7b71bfc941 74 sprintf(buffer1,"/sd/%d_ECG.csv",pid);
nikitateggi 1:8316c23ec6b9 75 fp = fopen(buffer1,"a");
nikitateggi 1:8316c23ec6b9 76 fprintf(fp,"%s\n",ctime(&epoch_time1) );
nikitateggi 4:6bd81bb1790d 77
nikitateggi 1:8316c23ec6b9 78 }
nikitateggi 20:7c64e6ecad76 79 */
nikitateggi 22:ffa88619551d 80 void sd_open_ECGfilee(int32_t pid) // only opening the ECG file after entering TEST screen
nikitateggi 2:3b7b71bfc941 81 {
nikitateggi 2:3b7b71bfc941 82
nikitateggi 2:3b7b71bfc941 83 char buffer1[32];
nidhinvarghese 14:f5c62d30c6fc 84 sprintf(buffer1,"/sd/%d_ECG.csv",pid);
nidhinvarghese 14:f5c62d30c6fc 85 fpeecg = fopen(buffer1,"a");
nidhinvarghese 14:f5c62d30c6fc 86 //fclose(fpeecg);
nikitateggi 4:6bd81bb1790d 87
nikitateggi 2:3b7b71bfc941 88 }
nikitateggi 4:6bd81bb1790d 89
nikitateggi 4:6bd81bb1790d 90
nikitateggi 20:7c64e6ecad76 91 /*void sd_open_BPfile(int pid)
nikitateggi 1:8316c23ec6b9 92 {
nikitateggi 1:8316c23ec6b9 93
nikitateggi 1:8316c23ec6b9 94 char buffer[32];
nikitateggi 1:8316c23ec6b9 95 char buffer1[32];
nikitateggi 1:8316c23ec6b9 96 time_t epoch_time1;
nikitateggi 1:8316c23ec6b9 97 epoch_time1=rtc_read();
nikitateggi 1:8316c23ec6b9 98 // strftime(buffer, 32, "ECG_%d", pid);
nikitateggi 1:8316c23ec6b9 99
nikitateggi 2:3b7b71bfc941 100 sprintf(buffer1,"/sd/%d_BP.csv",pid);
nikitateggi 1:8316c23ec6b9 101 fp = fopen(buffer1,"a");
nikitateggi 1:8316c23ec6b9 102 fprintf(fp,"%s\n",ctime(&epoch_time1) );
nikitateggi 20:7c64e6ecad76 103 } */
nikitateggi 1:8316c23ec6b9 104
nikitateggi 22:ffa88619551d 105 void sd_open_BPfilee(int32_t pid) // only opening the BP file after entering TEST screen
nikitateggi 4:6bd81bb1790d 106 {
nikitateggi 4:6bd81bb1790d 107
nikitateggi 1:8316c23ec6b9 108
nikitateggi 4:6bd81bb1790d 109 char buffer1[32];
nikitateggi 4:6bd81bb1790d 110 sprintf(buffer1,"/sd/%d_BP.csv",pid);
nidhinvarghese 14:f5c62d30c6fc 111 fpbp = fopen(buffer1,"a");
nidhinvarghese 14:f5c62d30c6fc 112 //fprintf(fp,"PATIENT ID %d\n",pid ); Not required in new code as writing in hex
nidhinvarghese 14:f5c62d30c6fc 113 fclose(fpbp);
nidhinvarghese 8:adf2ba7e6412 114 }
nidhinvarghese 8:adf2ba7e6412 115
nidhinvarghese 8:adf2ba7e6412 116 void sd_write (int value) // writing data into the file
nidhinvarghese 8:adf2ba7e6412 117 {
nidhinvarghese 8:adf2ba7e6412 118 fprintf(fp,"%d\n", value);
nidhinvarghese 8:adf2ba7e6412 119 }
nidhinvarghese 8:adf2ba7e6412 120
nikitateggi 19:1650bbc923cc 121
nikitateggi 27:907f8ce0025e 122 uint8_t sd_open_read(int32_t pid) // opening the file for read // CHNAGED to return value
nikitateggi 19:1650bbc923cc 123 {
nikitateggi 19:1650bbc923cc 124
nikitateggi 19:1650bbc923cc 125 char buffer1[32];
nikitateggi 19:1650bbc923cc 126 sprintf(buffer1,"/sd/%d.csv",pid);
nikitateggi 19:1650bbc923cc 127 fp = fopen(buffer1,"r");
nikitateggi 19:1650bbc923cc 128 if (fp==NULL)
nikitateggi 19:1650bbc923cc 129 {
nikitateggi 19:1650bbc923cc 130 snd.printf("no");
nikitateggi 27:907f8ce0025e 131 return 0;
nikitateggi 19:1650bbc923cc 132 }
nikitateggi 19:1650bbc923cc 133
nikitateggi 19:1650bbc923cc 134 else
nikitateggi 19:1650bbc923cc 135 {
nikitateggi 19:1650bbc923cc 136 snd.printf("yes");
nikitateggi 27:907f8ce0025e 137 return 1;
nikitateggi 19:1650bbc923cc 138 }
nikitateggi 19:1650bbc923cc 139 }
nikitateggi 19:1650bbc923cc 140
nikitateggi 19:1650bbc923cc 141 void sd_read(uint32_t *v1, int size) //reading the data from the openend file
nikitateggi 19:1650bbc923cc 142 {
nikitateggi 19:1650bbc923cc 143 fread(v1,sizeof(v1),size,fp);
nikitateggi 19:1650bbc923cc 144 }
nikitateggi 19:1650bbc923cc 145
nikitateggi 19:1650bbc923cc 146 void setpos()
nikitateggi 19:1650bbc923cc 147 {
nikitateggi 19:1650bbc923cc 148 //fseek ( fp , 1 , SEEK_SET );
nikitateggi 19:1650bbc923cc 149 rewind (fp);
nikitateggi 19:1650bbc923cc 150 }
nikitateggi 19:1650bbc923cc 151
nikitateggi 19:1650bbc923cc 152 void setpos1(uint32_t position)
nikitateggi 19:1650bbc923cc 153 {
nikitateggi 19:1650bbc923cc 154 fseek ( fp , position, SEEK_SET );
nikitateggi 19:1650bbc923cc 155 //rewind (fp);
nikitateggi 19:1650bbc923cc 156 }
nikitateggi 19:1650bbc923cc 157
nikitateggi 19:1650bbc923cc 158
nikitateggi 19:1650bbc923cc 159 int file_size()
nikitateggi 19:1650bbc923cc 160 {
nikitateggi 19:1650bbc923cc 161 int file_length;
nikitateggi 19:1650bbc923cc 162 fseek (fp, 0, SEEK_END);
nikitateggi 19:1650bbc923cc 163 file_length=ftell(fp);
nikitateggi 19:1650bbc923cc 164 file_length=sizeof(char)*file_length;
nikitateggi 19:1650bbc923cc 165 rewind(fp);
nikitateggi 19:1650bbc923cc 166 return file_length;
nikitateggi 19:1650bbc923cc 167 }
nikitateggi 19:1650bbc923cc 168
nikitateggi 19:1650bbc923cc 169
nikitateggi 19:1650bbc923cc 170 int file_size1()
nikitateggi 19:1650bbc923cc 171 {
nikitateggi 19:1650bbc923cc 172 int file_length;
nikitateggi 19:1650bbc923cc 173 // fseek (fp, 0, SEEK_END);
nikitateggi 19:1650bbc923cc 174
nikitateggi 19:1650bbc923cc 175 file_length=ftell(fp);
nikitateggi 19:1650bbc923cc 176 // file_length=sizeof(char)*file_length;
nikitateggi 19:1650bbc923cc 177 // rewind(fp);
nikitateggi 19:1650bbc923cc 178 return file_length;
nikitateggi 19:1650bbc923cc 179 }
nikitateggi 19:1650bbc923cc 180
nikitateggi 19:1650bbc923cc 181
nikitateggi 19:1650bbc923cc 182
nikitateggi 19:1650bbc923cc 183
nikitateggi 19:1650bbc923cc 184
nikitateggi 19:1650bbc923cc 185 void sd_read1(BLEMsg_info &f)
nikitateggi 19:1650bbc923cc 186 {
nikitateggi 19:1650bbc923cc 187 fread(&f,sizeof(BLEMsg_info),1,fp);
nikitateggi 19:1650bbc923cc 188 //fscanf(fp,"%08x",&v1);
nikitateggi 19:1650bbc923cc 189 }
nikitateggi 19:1650bbc923cc 190
nikitateggi 19:1650bbc923cc 191
nikitateggi 19:1650bbc923cc 192
nikitateggi 19:1650bbc923cc 193
nikitateggi 19:1650bbc923cc 194
nikitateggi 19:1650bbc923cc 195
nikitateggi 19:1650bbc923cc 196
nikitateggi 19:1650bbc923cc 197
nikitateggi 19:1650bbc923cc 198
nidhinvarghese 8:adf2ba7e6412 199 //------------------------------------------------------
nidhinvarghese 8:adf2ba7e6412 200
nidhinvarghese 8:adf2ba7e6412 201 //FILE *sd_BP_ecgwrite (int value) // writing data into the file NIDHIN
avp2417 36:00d96aa14658 202 FILE *sd_BP_ecgwrite (uint32_t *fpdrum11) // writing data into the file NIDHIN
nidhinvarghese 8:adf2ba7e6412 203 {
avp2417 36:00d96aa14658 204 fwrite(fpdrum11,sizeof(uint32_t),1, fpecg); //Change by Nidhin 30/5/2017 Direct writing to SD card. Org Val 64
nidhinvarghese 8:adf2ba7e6412 205 return fpecg;
nidhinvarghese 8:adf2ba7e6412 206 }
nidhinvarghese 8:adf2ba7e6412 207
nidhinvarghese 14:f5c62d30c6fc 208 FILE* sd_BP_ppgwrite (uint32_t *fpdrum21) // //Change by Nidhin 30/5/2017 Direct writing to SD card.
nidhinvarghese 8:adf2ba7e6412 209 {
nidhinvarghese 14:f5c62d30c6fc 210 fwrite(fpdrum21,sizeof(uint32_t),1, fpppg); //Change by Nidhin 30/5/2017 Direct writing to SD card. OR Val 64
nidhinvarghese 8:adf2ba7e6412 211 return fpppg;
nidhinvarghese 8:adf2ba7e6412 212 }
nidhinvarghese 8:adf2ba7e6412 213 //-----------------------------------------------SD Read
nidhinvarghese 8:adf2ba7e6412 214
nikitateggi 22:ffa88619551d 215 void sd_reopen_BPfilee(int32_t pid) // only opening the BP file after entering TEST screen
nidhinvarghese 8:adf2ba7e6412 216 {
nidhinvarghese 8:adf2ba7e6412 217
nidhinvarghese 8:adf2ba7e6412 218
nidhinvarghese 8:adf2ba7e6412 219 char buffer1[32];
nidhinvarghese 8:adf2ba7e6412 220 sprintf(buffer1,"/sd/%d_BP.csv",pid);
nidhinvarghese 8:adf2ba7e6412 221 fp = fopen(buffer1,"r");
nidhinvarghese 8:adf2ba7e6412 222 //fprintf(fp,"PATIENT ID %d\n",pid );
nidhinvarghese 8:adf2ba7e6412 223
nidhinvarghese 8:adf2ba7e6412 224
nidhinvarghese 8:adf2ba7e6412 225 }
nidhinvarghese 8:adf2ba7e6412 226 //-------------------------------------------------
nidhinvarghese 8:adf2ba7e6412 227
nidhinvarghese 8:adf2ba7e6412 228
nidhinvarghese 8:adf2ba7e6412 229 //---------------------------------------
nidhinvarghese 8:adf2ba7e6412 230
nidhinvarghese 8:adf2ba7e6412 231
nikitateggi 22:ffa88619551d 232 void sd_open_BP_ECGfile(int32_t pid)
nidhinvarghese 8:adf2ba7e6412 233 {
nidhinvarghese 8:adf2ba7e6412 234
nidhinvarghese 8:adf2ba7e6412 235 //char buffer[32];
nidhinvarghese 8:adf2ba7e6412 236 char buffer1[32];
nidhinvarghese 8:adf2ba7e6412 237 //time_t epoch_time1;
nidhinvarghese 8:adf2ba7e6412 238 //epoch_time1=rtc_read();
nidhinvarghese 8:adf2ba7e6412 239 // strftime(buffer, 32, "ECG_%d", pid);
nidhinvarghese 8:adf2ba7e6412 240
nidhinvarghese 8:adf2ba7e6412 241 sprintf(buffer1,"/sd/%d_BP_ECG.csv",pid);
nidhinvarghese 8:adf2ba7e6412 242 fpecg = fopen(buffer1,"a");
nidhinvarghese 8:adf2ba7e6412 243 if (fpecg == NULL)
nidhinvarghese 8:adf2ba7e6412 244 {
nidhinvarghese 8:adf2ba7e6412 245 exit(1);
nidhinvarghese 8:adf2ba7e6412 246 }
nidhinvarghese 8:adf2ba7e6412 247 //fprintf(fpecg,"%s\n",ctime(&epoch_time1) );
nidhinvarghese 8:adf2ba7e6412 248
nidhinvarghese 8:adf2ba7e6412 249 }
nidhinvarghese 8:adf2ba7e6412 250
nidhinvarghese 8:adf2ba7e6412 251
nikitateggi 22:ffa88619551d 252 void sd_open_BP_PPGfile(int32_t pid)
nidhinvarghese 8:adf2ba7e6412 253 {
nidhinvarghese 8:adf2ba7e6412 254
nidhinvarghese 8:adf2ba7e6412 255 char buffer1[32];
nidhinvarghese 8:adf2ba7e6412 256 //time_t epoch_time1;
nidhinvarghese 8:adf2ba7e6412 257 //epoch_time1=rtc_read();
nidhinvarghese 8:adf2ba7e6412 258 // strftime(buffer, 32, "ECG_%d", pid);
nidhinvarghese 8:adf2ba7e6412 259
nidhinvarghese 8:adf2ba7e6412 260 sprintf(buffer1,"/sd/%d_BP_PPG.csv",pid);
nidhinvarghese 8:adf2ba7e6412 261 fpppg = fopen(buffer1,"a");
nidhinvarghese 8:adf2ba7e6412 262 if(fpppg == NULL)
nidhinvarghese 8:adf2ba7e6412 263 {
nidhinvarghese 8:adf2ba7e6412 264 exit(1);
nidhinvarghese 8:adf2ba7e6412 265 }
nidhinvarghese 8:adf2ba7e6412 266
nidhinvarghese 8:adf2ba7e6412 267 //fprintf(fpppg,"%s\n",ctime(&epoch_time1) );
nidhinvarghese 8:adf2ba7e6412 268
nidhinvarghese 8:adf2ba7e6412 269 }
nidhinvarghese 8:adf2ba7e6412 270
nidhinvarghese 8:adf2ba7e6412 271
nidhinvarghese 8:adf2ba7e6412 272
nidhinvarghese 8:adf2ba7e6412 273 //--------------------------------------------------
nidhinvarghese 8:adf2ba7e6412 274
nidhinvarghese 14:f5c62d30c6fc 275 //FUNCTIONS TO CLOSE FILES
nidhinvarghese 14:f5c62d30c6fc 276 //__________________________________________________
nidhinvarghese 14:f5c62d30c6fc 277 void sd_close() //close the file with fp
nidhinvarghese 8:adf2ba7e6412 278 {
nikitateggi 1:8316c23ec6b9 279
nidhinvarghese 8:adf2ba7e6412 280 fclose(fp);
nidhinvarghese 8:adf2ba7e6412 281 }
nidhinvarghese 14:f5c62d30c6fc 282 //______________________________________________________
nidhinvarghese 14:f5c62d30c6fc 283 void sd_close_ecg() // Closes ECG file pinted by fpeecg
nidhinvarghese 14:f5c62d30c6fc 284 {
nidhinvarghese 14:f5c62d30c6fc 285
nidhinvarghese 14:f5c62d30c6fc 286 fclose(fpeecg);
nidhinvarghese 14:f5c62d30c6fc 287 }
nidhinvarghese 14:f5c62d30c6fc 288 //______________________________________________________
nidhinvarghese 14:f5c62d30c6fc 289 void sd_close_glc() // Closes GLC file pinted by fpbg
nidhinvarghese 14:f5c62d30c6fc 290 {
nidhinvarghese 14:f5c62d30c6fc 291
nidhinvarghese 14:f5c62d30c6fc 292 fclose(fpbg);
nidhinvarghese 14:f5c62d30c6fc 293 }
nidhinvarghese 14:f5c62d30c6fc 294 //_____________________________________________________
nidhinvarghese 14:f5c62d30c6fc 295
nidhinvarghese 14:f5c62d30c6fc 296
nidhinvarghese 14:f5c62d30c6fc 297
nidhinvarghese 14:f5c62d30c6fc 298
nidhinvarghese 14:f5c62d30c6fc 299
nidhinvarghese 14:f5c62d30c6fc 300
nidhinvarghese 8:adf2ba7e6412 301 //fread(buffer, 1, size, fp)
nidhinvarghese 8:adf2ba7e6412 302 //fwrite(&buffer, ,
nidhinvarghese 10:aeff3309002a 303 //----------------------------------------------------28/4/2017---------------------------------
nidhinvarghese 10:aeff3309002a 304 //----------------------------------------------------------------------------------------------
nidhinvarghese 10:aeff3309002a 305
nidhinvarghese 10:aeff3309002a 306
nidhinvarghese 10:aeff3309002a 307
nidhinvarghese 10:aeff3309002a 308 //------- FUNCTION TO CREATE SINGLE BP FILE --------2/5/2017 (NIDHIN)---------------//
nikitateggi 22:ffa88619551d 309 void create_single_BPfile(int32_t pid)
nidhinvarghese 10:aeff3309002a 310 {
nidhinvarghese 10:aeff3309002a 311
nidhinvarghese 10:aeff3309002a 312 //int ecgbuf[64] = {0};
nidhinvarghese 10:aeff3309002a 313 //uint32_t ppgbuf[64] = {0};
nidhinvarghese 10:aeff3309002a 314
nidhinvarghese 10:aeff3309002a 315 char buffer3[32];
nidhinvarghese 10:aeff3309002a 316 sprintf(buffer3, "/sd/%d_BP.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 317 fpbp = fopen(buffer3, "a"); // Opens BP file with FILE pointer fpbp in APPEND mode
nidhinvarghese 10:aeff3309002a 318
nidhinvarghese 10:aeff3309002a 319 //buffer1[32] = "";
nidhinvarghese 14:f5c62d30c6fc 320 sprintf(buffer3, "/sd/%d_BP_ECG.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 321 fpecg = fopen(buffer3, "r"); // Opens ECG file of BP with FILE pointer fpecg in READ mode
nidhinvarghese 10:aeff3309002a 322
nidhinvarghese 10:aeff3309002a 323 //char buffer1[32] = "";
nidhinvarghese 10:aeff3309002a 324 sprintf(buffer3, "/sd/%d_BP_PPG.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 325 fpppg = fopen(buffer3, "r"); // Opens PPG file of BP with FILE pointer fpppg in READ mode
nidhinvarghese 10:aeff3309002a 326
nidhinvarghese 10:aeff3309002a 327 for(int i=0; i<16; i++)
nidhinvarghese 10:aeff3309002a 328 {
nidhinvarghese 10:aeff3309002a 329 int ecgbuf[64] = {0} ;
nidhinvarghese 14:f5c62d30c6fc 330 fread(ecgbuf, sizeof(uint32_t), 64, fpecg);
nidhinvarghese 14:f5c62d30c6fc 331 fwrite(ecgbuf, sizeof(uint32_t), 64, fpbp); // Copy ECG data of BP into BP file
nidhinvarghese 10:aeff3309002a 332 }
nidhinvarghese 10:aeff3309002a 333
nidhinvarghese 10:aeff3309002a 334 for(int i=0; i<26; i++)
nidhinvarghese 10:aeff3309002a 335 {
nidhinvarghese 10:aeff3309002a 336 int ppgbuf[64] = {0} ;
nidhinvarghese 14:f5c62d30c6fc 337 fread(ppgbuf, sizeof(uint32_t), 64, fpppg);
nidhinvarghese 14:f5c62d30c6fc 338 fwrite(ppgbuf, sizeof(uint32_t), 64, fpbp); // Copy PPG data of BP into BP file
nidhinvarghese 10:aeff3309002a 339 }
nidhinvarghese 10:aeff3309002a 340
nidhinvarghese 14:f5c62d30c6fc 341 fclose(fpecg); // Closes the ECG file of BP
nidhinvarghese 14:f5c62d30c6fc 342 fclose(fpppg); // Closes the PPG file of BP
nidhinvarghese 14:f5c62d30c6fc 343 fclose(fpbp); // Closes the BP file
nidhinvarghese 10:aeff3309002a 344
nidhinvarghese 10:aeff3309002a 345 //char buffer1[32] = "";
nidhinvarghese 14:f5c62d30c6fc 346 int status = 1 ;
nidhinvarghese 10:aeff3309002a 347 sprintf(buffer3, "/sd/%d_BP_ECG.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 348 status = remove(buffer3); //Removes ECG file of BP and updates status with 0 if successful
nidhinvarghese 11:9a6545c2eb5d 349
nidhinvarghese 11:9a6545c2eb5d 350
nidhinvarghese 10:aeff3309002a 351 if( status == 0 )
nidhinvarghese 14:f5c62d30c6fc 352 snd.printf("\nECG file delete : Successful"); // Checks for SUCCESS
nidhinvarghese 10:aeff3309002a 353 else
nidhinvarghese 10:aeff3309002a 354 snd.printf("\nECG file delete : UnSuccessful");
nidhinvarghese 11:9a6545c2eb5d 355
nidhinvarghese 11:9a6545c2eb5d 356
nidhinvarghese 10:aeff3309002a 357 //char buffer1[32] = "";
nidhinvarghese 14:f5c62d30c6fc 358 status = 1 ;
nidhinvarghese 10:aeff3309002a 359 sprintf(buffer3, "/sd/%d_BP_PPG.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 360 status = remove(buffer3); //Removes PPG file of BP and updates status with 0 if successful
nidhinvarghese 11:9a6545c2eb5d 361
nidhinvarghese 10:aeff3309002a 362 if( status == 0 )
nidhinvarghese 14:f5c62d30c6fc 363 snd.printf("\nPPG file delete : Successful"); // Checks for SUCCESS
nidhinvarghese 10:aeff3309002a 364 else
nidhinvarghese 10:aeff3309002a 365 snd.printf("\nPPG file delete : UnSuccessful");
nidhinvarghese 11:9a6545c2eb5d 366
nidhinvarghese 14:f5c62d30c6fc 367 }
nidhinvarghese 14:f5c62d30c6fc 368
avp2417 36:00d96aa14658 369
avp2417 36:00d96aa14658 370
nidhinvarghese 14:f5c62d30c6fc 371 //Creating strcuture file Common to All Functions
nikitateggi 22:ffa88619551d 372 void structure_file(BLEMsg_info *ptr, int32_t pid)
nidhinvarghese 14:f5c62d30c6fc 373 {
nidhinvarghese 14:f5c62d30c6fc 374 char buffer3[32];
nidhinvarghese 14:f5c62d30c6fc 375 sprintf(buffer3, "/sd/%d.csv", pid); //Printing file path to the buffer
nidhinvarghese 14:f5c62d30c6fc 376 fpmain = fopen(buffer3, "a"); // open the file PID.csv with FILE pointer fpmain
nidhinvarghese 14:f5c62d30c6fc 377 fwrite(ptr, sizeof(uint8_t),26, fpmain ); // writing the Structure into the file
nidhinvarghese 14:f5c62d30c6fc 378 fclose(fpmain); // Close File
nidhinvarghese 14:f5c62d30c6fc 379 }
nidhinvarghese 14:f5c62d30c6fc 380
nidhinvarghese 14:f5c62d30c6fc 381 //Copy Data into file.
nidhinvarghese 14:f5c62d30c6fc 382
nikitateggi 22:ffa88619551d 383 void bpfile_mainfile(int32_t pid) //Copy data of bp file to main
nidhinvarghese 14:f5c62d30c6fc 384 {
nidhinvarghese 14:f5c62d30c6fc 385 char buffer3[32];
nidhinvarghese 14:f5c62d30c6fc 386 sprintf(buffer3, "/sd/%d.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 387 fpmain = fopen(buffer3, "a"); // Opens Main file with FILE pointer "fpmain" in APPEND mode
nidhinvarghese 14:f5c62d30c6fc 388
nidhinvarghese 14:f5c62d30c6fc 389 sprintf(buffer3, "/sd/%d_BP.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 390 fpbp = fopen(buffer3, "r"); // Opens BP file with FILE pointer "fpbp" in READ mode
nidhinvarghese 14:f5c62d30c6fc 391
nidhinvarghese 14:f5c62d30c6fc 392
nidhinvarghese 14:f5c62d30c6fc 393 for(int i=0; i<21; i++)
nidhinvarghese 14:f5c62d30c6fc 394 {
nidhinvarghese 14:f5c62d30c6fc 395 int bigbuf[128] = {0} ;
nidhinvarghese 14:f5c62d30c6fc 396 fread(bigbuf, sizeof(uint32_t), 128, fpbp);
nidhinvarghese 14:f5c62d30c6fc 397 fwrite(bigbuf, sizeof(uint32_t), 128, fpmain); // Copy BP raw data into main file
nidhinvarghese 14:f5c62d30c6fc 398 }
nidhinvarghese 14:f5c62d30c6fc 399 fclose(fpbp); // Close BP file
nidhinvarghese 14:f5c62d30c6fc 400 fclose(fpmain); // Close Main File
nidhinvarghese 14:f5c62d30c6fc 401
nidhinvarghese 14:f5c62d30c6fc 402 int success;
nidhinvarghese 14:f5c62d30c6fc 403 sprintf(buffer3, "/sd/%d_BP.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 404 success = remove(buffer3); // Should return zero on success
nidhinvarghese 14:f5c62d30c6fc 405 }
nidhinvarghese 14:f5c62d30c6fc 406
nidhinvarghese 14:f5c62d30c6fc 407 //------------New function added to print ECG data to Sd card using fwrite
suhasini 26:53ff13a164f3 408 void sd_ecgwrite(uint32_t *ecg_ptr)
nidhinvarghese 14:f5c62d30c6fc 409 {
nidhinvarghese 14:f5c62d30c6fc 410 fwrite(ecg_ptr, sizeof(int), 1, fpeecg);
nidhinvarghese 14:f5c62d30c6fc 411 }
nidhinvarghese 14:f5c62d30c6fc 412
nidhinvarghese 14:f5c62d30c6fc 413
nidhinvarghese 14:f5c62d30c6fc 414 //------------ Function to write ECG data to main file
nikitateggi 22:ffa88619551d 415 void ecgfile_mainfile(int32_t pid)
nidhinvarghese 14:f5c62d30c6fc 416 {
nidhinvarghese 14:f5c62d30c6fc 417 char buffer3[32];
nidhinvarghese 14:f5c62d30c6fc 418 sprintf(buffer3, "/sd/%d.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 419 fpmain = fopen(buffer3, "a"); // Main File is opened in Append mode
suhasini 26:53ff13a164f3 420 snd.printf("opening main file\n");
nidhinvarghese 14:f5c62d30c6fc 421 sprintf(buffer3, "/sd/%d_ECG.csv", pid); // ECG file is opened in read mode
nidhinvarghese 14:f5c62d30c6fc 422 fpeecg = fopen(buffer3, "r");
suhasini 26:53ff13a164f3 423 snd.printf("opening temp file\n");
suhasini 26:53ff13a164f3 424 for(int i=0; i<20; i++) //the loop runs as 20 times of 100 i.e., 2k
nidhinvarghese 14:f5c62d30c6fc 425 {
nidhinvarghese 14:f5c62d30c6fc 426 int bigbuf[100] = {0} ;
nidhinvarghese 14:f5c62d30c6fc 427 fread(bigbuf, sizeof(int),100 , fpeecg);
nidhinvarghese 14:f5c62d30c6fc 428 fwrite(bigbuf, sizeof(int), 100, fpmain);
nidhinvarghese 14:f5c62d30c6fc 429 }
suhasini 26:53ff13a164f3 430 snd.printf("to close temp file\n");
nidhinvarghese 14:f5c62d30c6fc 431 fclose(fpeecg); // Both files are Closed
suhasini 26:53ff13a164f3 432 snd.printf("to come out of main file\n");
nidhinvarghese 14:f5c62d30c6fc 433 fclose(fpmain);
nidhinvarghese 14:f5c62d30c6fc 434
suhasini 26:53ff13a164f3 435 snd.printf("COPY complete Files Closed\n");
suhasini 26:53ff13a164f3 436
nidhinvarghese 14:f5c62d30c6fc 437 sprintf(buffer3, "/sd/%d_ECG.csv", pid); // ECG file is opened in write mode to empty the file
suhasini 26:53ff13a164f3 438 fpeecg = fopen(buffer3, "r");
suhasini 26:53ff13a164f3 439 fclose(fpeecg);
suhasini 26:53ff13a164f3 440 // File is closed
nidhinvarghese 14:f5c62d30c6fc 441 int success;
nidhinvarghese 14:f5c62d30c6fc 442 sprintf(buffer3, "/sd/%d_ECG.csv", pid);
suhasini 26:53ff13a164f3 443 success = remove(buffer3);
suhasini 26:53ff13a164f3 444 snd.printf("DELETE STATUS = %d\n", success);
nidhinvarghese 14:f5c62d30c6fc 445 }
nidhinvarghese 14:f5c62d30c6fc 446
nidhinvarghese 14:f5c62d30c6fc 447
nidhinvarghese 14:f5c62d30c6fc 448 //---------------------- Function to write GLC data to GLC file
nikitateggi 22:ffa88619551d 449 void sd_glcwrite(uint32_t *glc_ptr, int32_t pid)
nidhinvarghese 14:f5c62d30c6fc 450 {
nidhinvarghese 14:f5c62d30c6fc 451 char buffer3[32];
nidhinvarghese 14:f5c62d30c6fc 452 sprintf(buffer3, "/sd/%d_GLC.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 453 fpbg = fopen(buffer3, "a");
nidhinvarghese 14:f5c62d30c6fc 454
nidhinvarghese 14:f5c62d30c6fc 455 fwrite(glc_ptr, sizeof(uint32_t), 2, fpbg);
nidhinvarghese 14:f5c62d30c6fc 456 fclose(fpbg);
nidhinvarghese 14:f5c62d30c6fc 457
nidhinvarghese 14:f5c62d30c6fc 458 }
nidhinvarghese 14:f5c62d30c6fc 459
nidhinvarghese 14:f5c62d30c6fc 460 // --------------------------Fuinction to write GLC data to Main file
nidhinvarghese 14:f5c62d30c6fc 461
nikitateggi 22:ffa88619551d 462 void glcfile_mainfile(int32_t pid)
nidhinvarghese 14:f5c62d30c6fc 463 {
nidhinvarghese 14:f5c62d30c6fc 464 char buffer3[32];
nidhinvarghese 14:f5c62d30c6fc 465 sprintf(buffer3, "/sd/%d.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 466 fpmain = fopen(buffer3, "a"); // Main File is opened in Append mode
nidhinvarghese 14:f5c62d30c6fc 467
nidhinvarghese 14:f5c62d30c6fc 468 sprintf(buffer3, "/sd/%d_GLC.csv", pid); // BG file is opened in read mode
nidhinvarghese 14:f5c62d30c6fc 469 fpbg = fopen(buffer3, "r");
nidhinvarghese 14:f5c62d30c6fc 470
nidhinvarghese 17:22a87e12fb3a 471 for(int i=0; i<1; i++)
nidhinvarghese 14:f5c62d30c6fc 472 {
nidhinvarghese 14:f5c62d30c6fc 473 int bigbuf[2] = {0} ;
nidhinvarghese 14:f5c62d30c6fc 474 fread(bigbuf, sizeof(int),2 , fpbg);
nidhinvarghese 14:f5c62d30c6fc 475 fwrite(bigbuf, sizeof(int), 2, fpmain);
nidhinvarghese 14:f5c62d30c6fc 476 }
nidhinvarghese 14:f5c62d30c6fc 477 fclose(fpbg); // Both files are Closed
nidhinvarghese 14:f5c62d30c6fc 478 fclose(fpmain);
nidhinvarghese 14:f5c62d30c6fc 479
nidhinvarghese 14:f5c62d30c6fc 480 int success;
nidhinvarghese 14:f5c62d30c6fc 481 sprintf(buffer3, "/sd/%d_GLC.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 482 success = remove(buffer3); // GLC file is deleted
nidhinvarghese 14:f5c62d30c6fc 483 }
nidhinvarghese 14:f5c62d30c6fc 484
nidhinvarghese 14:f5c62d30c6fc 485
nikitateggi 22:ffa88619551d 486 void delete_subfiles(int32_t pid)
nidhinvarghese 14:f5c62d30c6fc 487 {
nidhinvarghese 14:f5c62d30c6fc 488 char buffer3[32];
nidhinvarghese 14:f5c62d30c6fc 489 int success1 , success2, success3;
nidhinvarghese 14:f5c62d30c6fc 490 success1 = 1 ;
nidhinvarghese 14:f5c62d30c6fc 491 sprintf(buffer3, "/sd/%d_BP.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 492 success1 = remove(buffer3); //Removes PPG file of BP and updates status with 0 if successful
nidhinvarghese 14:f5c62d30c6fc 493
nidhinvarghese 14:f5c62d30c6fc 494 if( success1 == 0 )
nidhinvarghese 14:f5c62d30c6fc 495 snd.printf("\nBP file delete : Successful"); // Checks for SUCCESS
nidhinvarghese 14:f5c62d30c6fc 496 else
nidhinvarghese 14:f5c62d30c6fc 497 snd.printf("\nBP file delete : UnSuccessful");
nidhinvarghese 14:f5c62d30c6fc 498
nidhinvarghese 14:f5c62d30c6fc 499 success2 = 1 ;
nidhinvarghese 14:f5c62d30c6fc 500 sprintf(buffer3, "/sd/%d_GLC.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 501 success2 = remove(buffer3); //Removes GLC file and updates status with 0 if successful
nidhinvarghese 14:f5c62d30c6fc 502
nidhinvarghese 14:f5c62d30c6fc 503 if( success2 == 0 )
nidhinvarghese 14:f5c62d30c6fc 504 snd.printf("\nGLC file delete : Successful"); // Checks for SUCCESS
nidhinvarghese 14:f5c62d30c6fc 505 else
nidhinvarghese 14:f5c62d30c6fc 506 snd.printf("\nGLC file delete : UnSuccessful");
nidhinvarghese 14:f5c62d30c6fc 507
nidhinvarghese 14:f5c62d30c6fc 508 success3 = 1 ;
nidhinvarghese 14:f5c62d30c6fc 509 sprintf(buffer3, "/sd/%d_ECG.csv", pid);
nidhinvarghese 14:f5c62d30c6fc 510 success3 = remove(buffer3); //Removes ECG file and updates status with 0 if successful
nidhinvarghese 14:f5c62d30c6fc 511
nidhinvarghese 14:f5c62d30c6fc 512 if( success3 == 0 )
nidhinvarghese 14:f5c62d30c6fc 513 snd.printf("\nECG file delete : Successful"); // Checks for SUCCESS
nidhinvarghese 14:f5c62d30c6fc 514 else
nidhinvarghese 14:f5c62d30c6fc 515 snd.printf("\nECG file delete : UnSuccessful");
nidhinvarghese 14:f5c62d30c6fc 516
nikitateggi 22:ffa88619551d 517 }
nikitateggi 22:ffa88619551d 518
nikitateggi 22:ffa88619551d 519
avp2417 36:00d96aa14658 520 void del_ppg_ecg_BPfile(int32_t pid)
avp2417 36:00d96aa14658 521 {
avp2417 36:00d96aa14658 522 int status = 1 ;
avp2417 36:00d96aa14658 523 char buffer3[32];
avp2417 36:00d96aa14658 524 sprintf(buffer3, "/sd/%d_BP_ECG.csv", pid);
avp2417 36:00d96aa14658 525 status = remove(buffer3); //Removes ECG file of BP and updates status with 0 if successful
avp2417 36:00d96aa14658 526
avp2417 36:00d96aa14658 527 if( status == 0 )
avp2417 36:00d96aa14658 528 snd.printf("\n temp ECG file delete for error condition: Successful"); // Checks for SUCCESS
avp2417 36:00d96aa14658 529 else
avp2417 36:00d96aa14658 530 snd.printf("\n temp ECG file delete for error condition: UnSuccessful");
avp2417 36:00d96aa14658 531
avp2417 36:00d96aa14658 532
avp2417 36:00d96aa14658 533 //char buffer1[32] = "";
avp2417 36:00d96aa14658 534 status = 1 ;
avp2417 36:00d96aa14658 535 sprintf(buffer3, "/sd/%d_BP_PPG.csv", pid);
avp2417 36:00d96aa14658 536 status = remove(buffer3); //Removes PPG file of BP and updates status with 0 if successful
avp2417 36:00d96aa14658 537
avp2417 36:00d96aa14658 538 if( status == 0 )
avp2417 36:00d96aa14658 539 snd.printf("\n temp PPG file delete for error condition: Successful"); // Checks for SUCCESS
avp2417 36:00d96aa14658 540 else
avp2417 36:00d96aa14658 541 snd.printf("\n temp PPG file delete for error condition: UnSuccessful");
avp2417 36:00d96aa14658 542
avp2417 36:00d96aa14658 543 }