Modification into 17th July New display demo code

Dependencies:   SDFileSystem ds3231 eeprom_Nikita mbed testUniGraphic_150217

Fork of Ext_Demo_17July2017_newdis by SenseSemi

Committer:
nikitateggi
Date:
Tue Jul 18 04:15:30 2017 +0000
Revision:
33:a80eed071fdc
Parent:
31:0f67acfc6236
Child:
34:8f6b0dc124e8
New display 18/7/17; ; ; ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nikitateggi 19:1650bbc923cc 1 // changed the pid in all to int32_t;
nikitateggi 19:1650bbc923cc 2 //added bt
nikitateggi 19:1650bbc923cc 3
nikitateggi 0:c47fb0c1bbf6 4 #include "mbed.h"
nikitateggi 0:c47fb0c1bbf6 5 #include "display_modules.h"
nikitateggi 0:c47fb0c1bbf6 6 #include "touch_modules.h"
nikitateggi 1:8316c23ec6b9 7 #include "ecg_dec.h"
nikitateggi 1:8316c23ec6b9 8 #include "touch_modules.h"
nikitateggi 1:8316c23ec6b9 9 #include "glc.h"
nikitateggi 3:9a06c2bed650 10 #include "bp.h"
nikitateggi 1:8316c23ec6b9 11 #include "sdcard.h"
nikitateggi 4:6bd81bb1790d 12 #include "eeprom_pgm.h"
nikitateggi 19:1650bbc923cc 13 #include "struct.h"
nikitateggi 22:ffa88619551d 14 #include "battery.h"
nikitateggi 24:d992ee8369f4 15
nikitateggi 0:c47fb0c1bbf6 16 Serial gc(USBTX, USBRX);
nikitateggi 0:c47fb0c1bbf6 17 DigitalIn q1(PTB11);
nikitateggi 29:7edc76b15e3d 18 DigitalIn q(PTC5);
nikitateggi 29:7edc76b15e3d 19 DigitalIn q3(PTC12);
nikitateggi 19:1650bbc923cc 20 DigitalIn BT(PTA5); //bluetooth status pin
nikitateggi 31:0f67acfc6236 21 static uint32_t current_test_pid=0;
nikitateggi 31:0f67acfc6236 22 static uint32_t bt_file_sent_pid=0;
nikitateggi 19:1650bbc923cc 23 uint8_t touch(uint8_t state); // touch state
nikitateggi 19:1650bbc923cc 24 uint8_t display(uint8_t state1); // display state
nikitateggi 22:ffa88619551d 25 int32_t pid=0; // patient ID
nikitateggi 19:1650bbc923cc 26 static uint8_t nstate=0;
nikitateggi 19:1650bbc923cc 27 static uint8_t nstate1=0;
nikitateggi 19:1650bbc923cc 28 static uint8_t flag=0; //flag to indicate not to update pid as it is already done
nikitateggi 19:1650bbc923cc 29 static uint8_t ecg_flag=0; // ecg_flag to indicate the ecg test is already done for the same pid
nikitateggi 19:1650bbc923cc 30 static uint8_t glc_flag=0; // glc_flag to indicate the glc test is already done for the same pid
nikitateggi 19:1650bbc923cc 31 uint8_t state_r=0; // state to receive from bluetooth
nikitateggi 19:1650bbc923cc 32 uint8_t state_t=1; // state to transmit to bluetooth
nikitateggi 22:ffa88619551d 33 uint16_t heart_rate=0;
nikitateggi 0:c47fb0c1bbf6 34
nikitateggi 0:c47fb0c1bbf6 35
nikitateggi 0:c47fb0c1bbf6 36 int main(){
nikitateggi 0:c47fb0c1bbf6 37
nikitateggi 0:c47fb0c1bbf6 38
nikitateggi 19:1650bbc923cc 39
nikitateggi 3:9a06c2bed650 40
nikitateggi 1:8316c23ec6b9 41 DisableTouch();
nikitateggi 1:8316c23ec6b9 42 gc.baud(115200);
nikitateggi 1:8316c23ec6b9 43
nikitateggi 1:8316c23ec6b9 44 init_screen(); //initialize lcd
nikitateggi 1:8316c23ec6b9 45 screen_main(); // display of main screen
nikitateggi 19:1650bbc923cc 46 //state=10;
nikitateggi 1:8316c23ec6b9 47 flag=0;
nikitateggi 19:1650bbc923cc 48 //nstate=state;
nikitateggi 0:c47fb0c1bbf6 49 EnableTouch(); // enable touch function
nikitateggi 19:1650bbc923cc 50 static uint8_t main_state=1;
nikitateggi 19:1650bbc923cc 51 static uint8_t state_display=0;
nikitateggi 19:1650bbc923cc 52 static uint8_t state_touch=1;
nikitateggi 19:1650bbc923cc 53 static uint8_t state_t=1;
nikitateggi 19:1650bbc923cc 54 static uint8_t state_r=0;
nikitateggi 22:ffa88619551d 55 float b_voltage=0;
nikitateggi 22:ffa88619551d 56 /* b_voltage=battery_voltage();
nikitateggi 22:ffa88619551d 57 //gc.printf("%f \n", b_voltage );
nikitateggi 22:ffa88619551d 58 if (b_voltage<3.5)
nikitateggi 22:ffa88619551d 59 {
nikitateggi 22:ffa88619551d 60 bat_screen_nocharge();
nikitateggi 22:ffa88619551d 61 DisableTouch();
nikitateggi 22:ffa88619551d 62 }
nikitateggi 22:ffa88619551d 63
nikitateggi 22:ffa88619551d 64
nikitateggi 22:ffa88619551d 65 else
nikitateggi 22:ffa88619551d 66 {
nikitateggi 22:ffa88619551d 67 // enable touch function
nikitateggi 22:ffa88619551d 68 bat_screen_charge();
nikitateggi 22:ffa88619551d 69 EnableTouch();*/
nikitateggi 0:c47fb0c1bbf6 70 while(1)
nikitateggi 0:c47fb0c1bbf6 71 {
nikitateggi 19:1650bbc923cc 72 switch(main_state) // main state machine
nikitateggi 19:1650bbc923cc 73 {
nikitateggi 22:ffa88619551d 74 case 1: state_display=touch(state_touch); // touch state
nikitateggi 22:ffa88619551d 75 if(state_display==12)
nikitateggi 22:ffa88619551d 76 main_state=3;
nikitateggi 19:1650bbc923cc 77
nikitateggi 22:ffa88619551d 78 else
nikitateggi 22:ffa88619551d 79 main_state=2;
nikitateggi 19:1650bbc923cc 80 break;
nikitateggi 19:1650bbc923cc 81
nikitateggi 19:1650bbc923cc 82 case 2: state_touch=display(state_display); //display state
nikitateggi 22:ffa88619551d 83 /* if (b_voltage<3.5)
nikitateggi 22:ffa88619551d 84 {
nikitateggi 22:ffa88619551d 85 bat_screen_nocharge();
nikitateggi 22:ffa88619551d 86 DisableTouch();
nikitateggi 22:ffa88619551d 87 }
nikitateggi 22:ffa88619551d 88 else { */
nikitateggi 22:ffa88619551d 89 // bat_screen_charge();
nikitateggi 22:ffa88619551d 90 main_state=1;
nikitateggi 22:ffa88619551d 91 // }
nikitateggi 22:ffa88619551d 92 break;
nikitateggi 19:1650bbc923cc 93
nikitateggi 19:1650bbc923cc 94
nikitateggi 19:1650bbc923cc 95 case 3: DisableTouch(); // bluetooth send
nikitateggi 19:1650bbc923cc 96 if(BT==1)
nikitateggi 19:1650bbc923cc 97 {
nikitateggi 31:0f67acfc6236 98
nikitateggi 31:0f67acfc6236 99 BT_connection() ; // displaying connection on bluetooth
nikitateggi 19:1650bbc923cc 100 state_r=bt_send(state_t);
nikitateggi 19:1650bbc923cc 101 main_state=4;
nikitateggi 19:1650bbc923cc 102 }
nikitateggi 19:1650bbc923cc 103 else
nikitateggi 31:0f67acfc6236 104 {
nikitateggi 31:0f67acfc6236 105 BT_no_connection();
nikitateggi 19:1650bbc923cc 106 gc.printf("timeout");
nikitateggi 31:0f67acfc6236 107 }
nikitateggi 19:1650bbc923cc 108 break;
nikitateggi 19:1650bbc923cc 109
nikitateggi 19:1650bbc923cc 110 case 4:
nikitateggi 19:1650bbc923cc 111 state_t=bt_receive(state_r); // bluetooth receive
nikitateggi 19:1650bbc923cc 112 main_state=3;
nikitateggi 19:1650bbc923cc 113 // gc.printf("statet=%d",state_t);
nikitateggi 19:1650bbc923cc 114 if(state_t ==0)
nikitateggi 19:1650bbc923cc 115 {
nikitateggi 31:0f67acfc6236 116 BT_finished();
nikitateggi 33:a80eed071fdc 117 wait(1);
nikitateggi 31:0f67acfc6236 118 screen_BT_return();
nikitateggi 19:1650bbc923cc 119 EnableTouch();
nikitateggi 19:1650bbc923cc 120 main_state=1;
nikitateggi 31:0f67acfc6236 121 state_touch=12; // jumping to touch case 12
nikitateggi 19:1650bbc923cc 122 }
nikitateggi 19:1650bbc923cc 123 break;
nikitateggi 19:1650bbc923cc 124
nikitateggi 19:1650bbc923cc 125
nikitateggi 19:1650bbc923cc 126 }
nikitateggi 22:ffa88619551d 127 }
nikitateggi 19:1650bbc923cc 128
nikitateggi 19:1650bbc923cc 129 }
nikitateggi 19:1650bbc923cc 130
nikitateggi 22:ffa88619551d 131 //}
nikitateggi 19:1650bbc923cc 132
nikitateggi 19:1650bbc923cc 133
nikitateggi 19:1650bbc923cc 134 uint8_t touch(uint8_t state)
nikitateggi 19:1650bbc923cc 135 {
nikitateggi 19:1650bbc923cc 136 static uint8_t state1=0;
nikitateggi 19:1650bbc923cc 137 detect_touch(); // determine the touch points
nikitateggi 1:8316c23ec6b9 138
nikitateggi 4:6bd81bb1790d 139 switch(state) // state for touch
nikitateggi 0:c47fb0c1bbf6 140 {
nikitateggi 0:c47fb0c1bbf6 141 case 1: state1=touch_main(); // determining the touch for main screen
nikitateggi 0:c47fb0c1bbf6 142 state=0;
nikitateggi 1:8316c23ec6b9 143 nstate1=state1;
nikitateggi 3:9a06c2bed650 144 break;
nikitateggi 0:c47fb0c1bbf6 145
nikitateggi 0:c47fb0c1bbf6 146 case 2:
nikitateggi 4:6bd81bb1790d 147 state1=touch_main_1(); // determining the touch for SYSTEM CONFIGURATION screen
nikitateggi 0:c47fb0c1bbf6 148 state=0;
nikitateggi 3:9a06c2bed650 149 nstate1=state1;
nikitateggi 0:c47fb0c1bbf6 150 break;
nikitateggi 0:c47fb0c1bbf6 151
nikitateggi 0:c47fb0c1bbf6 152 case 3:
nikitateggi 4:6bd81bb1790d 153 state1=touch_main_2(); //// determining the touch for TEST screen
nikitateggi 20:7c64e6ecad76 154
nikitateggi 0:c47fb0c1bbf6 155 state=0;
nikitateggi 1:8316c23ec6b9 156 nstate1=state1;
nikitateggi 0:c47fb0c1bbf6 157 break;
nikitateggi 0:c47fb0c1bbf6 158
nikitateggi 0:c47fb0c1bbf6 159 case 4:
nikitateggi 4:6bd81bb1790d 160 state1=touch_glc(); // determining the touch for GLC screen
nikitateggi 1:8316c23ec6b9 161 state=0;
nikitateggi 1:8316c23ec6b9 162 nstate1=state1;
nikitateggi 1:8316c23ec6b9 163 break;
nikitateggi 1:8316c23ec6b9 164
nikitateggi 1:8316c23ec6b9 165 case 5:
nikitateggi 4:6bd81bb1790d 166 state1=touch_ecg(); // determining the touch for ECG screen
nikitateggi 1:8316c23ec6b9 167 state=0;
nikitateggi 3:9a06c2bed650 168 nstate1=state1;
nikitateggi 3:9a06c2bed650 169 break;
nikitateggi 4:6bd81bb1790d 170 case 6:
nikitateggi 4:6bd81bb1790d 171 state1=touch_ret(); // determining the touch for returning back to the main screen
nikitateggi 20:7c64e6ecad76 172 /* if (ecg_flag==1)
nikitateggi 20:7c64e6ecad76 173 state1=8;
nikitateggi 20:7c64e6ecad76 174 else if (glc_flag==1)
nikitateggi 20:7c64e6ecad76 175 state1=7; */
nikitateggi 0:c47fb0c1bbf6 176 state=0;
nikitateggi 3:9a06c2bed650 177 nstate1=state1;
nikitateggi 1:8316c23ec6b9 178 break;
nikitateggi 1:8316c23ec6b9 179
nikitateggi 4:6bd81bb1790d 180 case 7:
suhasini 5:a3ea7c82b7e1 181 state1=touch_again_ecg(); // determining the touch when readings are taken more than once screen
nikitateggi 1:8316c23ec6b9 182 state=0;
nikitateggi 1:8316c23ec6b9 183 nstate1=state1;
nikitateggi 1:8316c23ec6b9 184 break;
nikitateggi 0:c47fb0c1bbf6 185
nikitateggi 3:9a06c2bed650 186 case 8:
nikitateggi 4:6bd81bb1790d 187 state1=touch_bp(); // determining the touch for BP screen
nikitateggi 3:9a06c2bed650 188 state=0;
nikitateggi 3:9a06c2bed650 189 nstate1=state1;
nikitateggi 3:9a06c2bed650 190 break;
nikitateggi 3:9a06c2bed650 191
suhasini 5:a3ea7c82b7e1 192 case 9: state1=touch_again_glc();
suhasini 5:a3ea7c82b7e1 193 state=0;
suhasini 5:a3ea7c82b7e1 194 nstate1=state1;
suhasini 5:a3ea7c82b7e1 195 break;
nikitateggi 3:9a06c2bed650 196
nikitateggi 1:8316c23ec6b9 197 case 10 : DisableTouch();
nikitateggi 1:8316c23ec6b9 198 wait_ms(300);
nikitateggi 1:8316c23ec6b9 199 EnableTouch();
nikitateggi 3:9a06c2bed650 200 state=nstate;
nikitateggi 3:9a06c2bed650 201 break;
suhasini 5:a3ea7c82b7e1 202
suhasini 5:a3ea7c82b7e1 203
suhasini 5:a3ea7c82b7e1 204 case 11: state1=touch_again_bp();
suhasini 5:a3ea7c82b7e1 205 state=0;
suhasini 5:a3ea7c82b7e1 206 nstate1=state1;
suhasini 5:a3ea7c82b7e1 207 break;
suhasini 5:a3ea7c82b7e1 208
nikitateggi 31:0f67acfc6236 209 case 12: state1=BT_return();
nikitateggi 31:0f67acfc6236 210 state=0;
nikitateggi 31:0f67acfc6236 211 nstate1=state1;
nikitateggi 31:0f67acfc6236 212 break;
suhasini 5:a3ea7c82b7e1 213
nikitateggi 4:6bd81bb1790d 214 default : DisableTouch();
nikitateggi 1:8316c23ec6b9 215 wait_ms(300);
nikitateggi 1:8316c23ec6b9 216 EnableTouch();
nikitateggi 3:9a06c2bed650 217 state=nstate;
nikitateggi 3:9a06c2bed650 218 break;
nikitateggi 1:8316c23ec6b9 219
nikitateggi 0:c47fb0c1bbf6 220 }
nikitateggi 0:c47fb0c1bbf6 221
nikitateggi 19:1650bbc923cc 222 return state1;
nikitateggi 19:1650bbc923cc 223 }
nikitateggi 0:c47fb0c1bbf6 224
nikitateggi 0:c47fb0c1bbf6 225
nikitateggi 19:1650bbc923cc 226 uint8_t display(uint8_t state1)
nikitateggi 19:1650bbc923cc 227 {
nikitateggi 19:1650bbc923cc 228 static uint8_t state=0;
nikitateggi 0:c47fb0c1bbf6 229
nikitateggi 4:6bd81bb1790d 230 switch(state1) // state for display screens
nikitateggi 0:c47fb0c1bbf6 231 {
nikitateggi 4:6bd81bb1790d 232
nikitateggi 1:8316c23ec6b9 233
nikitateggi 3:9a06c2bed650 234 case 1: DisableTouch();
nikitateggi 4:6bd81bb1790d 235 screen_main(); // main screen
nikitateggi 1:8316c23ec6b9 236 state1=0;
nikitateggi 1:8316c23ec6b9 237 state=1;
nikitateggi 1:8316c23ec6b9 238 nstate=state;
nikitateggi 1:8316c23ec6b9 239 flag=0;
nikitateggi 4:6bd81bb1790d 240 ecg_flag=0; // ecg, glc flag to determine whether the readings are taken more than once
nikitateggi 1:8316c23ec6b9 241 glc_flag=0;
nikitateggi 3:9a06c2bed650 242 EnableTouch();
nikitateggi 1:8316c23ec6b9 243 break;
nikitateggi 1:8316c23ec6b9 244
nikitateggi 3:9a06c2bed650 245 case 2: DisableTouch();
nikitateggi 19:1650bbc923cc 246 // bt();
nikitateggi 4:6bd81bb1790d 247 screen_main_1(); // System configration screen
nikitateggi 0:c47fb0c1bbf6 248 state1=0;
nikitateggi 0:c47fb0c1bbf6 249 state=2;
nikitateggi 1:8316c23ec6b9 250 nstate=state;
nikitateggi 3:9a06c2bed650 251 EnableTouch();
nikitateggi 0:c47fb0c1bbf6 252 break;
nikitateggi 0:c47fb0c1bbf6 253
nikitateggi 3:9a06c2bed650 254 case 3: DisableTouch();
nikitateggi 1:8316c23ec6b9 255 if (flag==0)
nikitateggi 1:8316c23ec6b9 256 {
nikitateggi 4:6bd81bb1790d 257 //pid=pid+1;
nikitateggi 4:6bd81bb1790d 258 pid=eprom_read(1); // reading the patient id from eeprom
nikitateggi 19:1650bbc923cc 259 gc.printf("pidinit=%d",pid);
nikitateggi 4:6bd81bb1790d 260 pid=pid+1;
nikitateggi 19:1650bbc923cc 261 gc.printf("pid+1=%d",pid);
nikitateggi 4:6bd81bb1790d 262 eprom_write(1,pid); // writing the patient id to eeprom
nikitateggi 1:8316c23ec6b9 263 screen_main_2(pid);
nikitateggi 19:1650bbc923cc 264 /* sd_open_GLCfilee(pid); // only opening the glc,bp and ecg file
nikitateggi 1:8316c23ec6b9 265 sd_close();
nikitateggi 2:3b7b71bfc941 266 sd_open_ECGfilee(pid);
nikitateggi 1:8316c23ec6b9 267 sd_close();
nikitateggi 4:6bd81bb1790d 268 sd_open_BPfilee(pid);
nidhinvarghese 14:f5c62d30c6fc 269 sd_close();*/
nikitateggi 1:8316c23ec6b9 270 flag=1;
nikitateggi 1:8316c23ec6b9 271 }
nikitateggi 1:8316c23ec6b9 272 else
nikitateggi 1:8316c23ec6b9 273 {
nikitateggi 4:6bd81bb1790d 274 screen_main_2(pid); // TEST screen
nikitateggi 1:8316c23ec6b9 275 }
nikitateggi 1:8316c23ec6b9 276
nikitateggi 1:8316c23ec6b9 277 state1=0;
nikitateggi 1:8316c23ec6b9 278 state=3;
nikitateggi 1:8316c23ec6b9 279 nstate=state;
nikitateggi 3:9a06c2bed650 280 EnableTouch();
nikitateggi 1:8316c23ec6b9 281 break;
nikitateggi 0:c47fb0c1bbf6 282
nikitateggi 3:9a06c2bed650 283 case 4: DisableTouch();
nikitateggi 4:6bd81bb1790d 284 if (glc_flag==1) // glc_flag=1 when already the reading has been taken
nikitateggi 1:8316c23ec6b9 285 {
nikitateggi 4:6bd81bb1790d 286 screen_again();
nikitateggi 1:8316c23ec6b9 287 state1=0;
suhasini 5:a3ea7c82b7e1 288 state=9;
nikitateggi 1:8316c23ec6b9 289 nstate=state;
nikitateggi 1:8316c23ec6b9 290 }
nikitateggi 1:8316c23ec6b9 291 else
nikitateggi 19:1650bbc923cc 292 {
nikitateggi 19:1650bbc923cc 293 screen_glc(); // glc screen
nikitateggi 0:c47fb0c1bbf6 294 state1=0;
nikitateggi 0:c47fb0c1bbf6 295 state=4;
nikitateggi 1:8316c23ec6b9 296 nstate=state;
nikitateggi 1:8316c23ec6b9 297 }
nikitateggi 3:9a06c2bed650 298 EnableTouch();
nikitateggi 3:9a06c2bed650 299
nikitateggi 0:c47fb0c1bbf6 300 break;
nikitateggi 1:8316c23ec6b9 301
nikitateggi 1:8316c23ec6b9 302
nikitateggi 3:9a06c2bed650 303 case 5: DisableTouch();
nikitateggi 1:8316c23ec6b9 304 if (ecg_flag==1)
nikitateggi 1:8316c23ec6b9 305 {
nikitateggi 1:8316c23ec6b9 306 screen_again();
nikitateggi 1:8316c23ec6b9 307 state1=0;
nikitateggi 1:8316c23ec6b9 308 state=7;
nikitateggi 1:8316c23ec6b9 309 nstate=state;
nikitateggi 1:8316c23ec6b9 310 }
nikitateggi 1:8316c23ec6b9 311
nikitateggi 1:8316c23ec6b9 312 else
nikitateggi 1:8316c23ec6b9 313 {
nikitateggi 4:6bd81bb1790d 314 screen_ecg(); //ecg main screen
nikitateggi 1:8316c23ec6b9 315 state1=0;
nikitateggi 1:8316c23ec6b9 316 state=5;
nikitateggi 1:8316c23ec6b9 317 nstate=state;
nikitateggi 1:8316c23ec6b9 318 }
nikitateggi 3:9a06c2bed650 319 EnableTouch();
nikitateggi 1:8316c23ec6b9 320 break;
nikitateggi 1:8316c23ec6b9 321
nikitateggi 3:9a06c2bed650 322 case 6: DisableTouch();
nikitateggi 4:6bd81bb1790d 323 screen_bp(); // bp main screen
suhasini 6:5e33a0f01476 324 //EnableTouch();
nikitateggi 3:9a06c2bed650 325 state1=0;
nikitateggi 3:9a06c2bed650 326 state=8;
suhasini 6:5e33a0f01476 327 nstate=state; ///////
suhasini 6:5e33a0f01476 328 EnableTouch(); ///////
nikitateggi 3:9a06c2bed650 329 break;
nikitateggi 3:9a06c2bed650 330
nikitateggi 3:9a06c2bed650 331
nikitateggi 3:9a06c2bed650 332
nikitateggi 3:9a06c2bed650 333
nikitateggi 3:9a06c2bed650 334
nikitateggi 4:6bd81bb1790d 335 case 7: DisableTouch();
nikitateggi 4:6bd81bb1790d 336 glc(pid); // glc measurement
nikitateggi 19:1650bbc923cc 337 // bt();
nikitateggi 1:8316c23ec6b9 338 glc_flag=1;
nikitateggi 1:8316c23ec6b9 339 wait(5);
nikitateggi 4:6bd81bb1790d 340 state1=0;
nikitateggi 4:6bd81bb1790d 341 screen_glc_2();
nikitateggi 20:7c64e6ecad76 342 state=6;
nikitateggi 24:d992ee8369f4 343 eprom_write_8(30,0);
nikitateggi 1:8316c23ec6b9 344 // gc.printf("%d", state);
suhasini 6:5e33a0f01476 345 nstate=state; //////////////
nikitateggi 3:9a06c2bed650 346 EnableTouch();
nikitateggi 1:8316c23ec6b9 347 break;
nikitateggi 1:8316c23ec6b9 348
nikitateggi 3:9a06c2bed650 349 case 8: DisableTouch();
nikitateggi 4:6bd81bb1790d 350 ecg_countdown(); // countdown before ecg capture
suhasini 13:5d3b478ea9c7 351 heart_rate=ecg(pid); // capturing ecg
nikitateggi 1:8316c23ec6b9 352 state1=0;
nikitateggi 20:7c64e6ecad76 353 if (heart_rate==0)
nikitateggi 20:7c64e6ecad76 354 {
nikitateggi 20:7c64e6ecad76 355 gc.printf("hi");
nikitateggi 20:7c64e6ecad76 356 screen_ecg_lead();
nikitateggi 20:7c64e6ecad76 357 }
nikitateggi 31:0f67acfc6236 358 else if(heart_rate==1) // if heart rate goes above or below range display error // 10/7/17 nikita
nikitateggi 31:0f67acfc6236 359 {
nikitateggi 31:0f67acfc6236 360 screen_ecg_error();
nikitateggi 31:0f67acfc6236 361
nikitateggi 31:0f67acfc6236 362 }
nikitateggi 20:7c64e6ecad76 363 else
nikitateggi 20:7c64e6ecad76 364 {
nikitateggi 20:7c64e6ecad76 365 gc.printf("hif");
nikitateggi 20:7c64e6ecad76 366 screen_ecg_2(heart_rate);
nikitateggi 20:7c64e6ecad76 367 ecg_flag=1;
nikitateggi 20:7c64e6ecad76 368 }
nikitateggi 1:8316c23ec6b9 369 state=6;
nikitateggi 24:d992ee8369f4 370 eprom_write_8(30,1);
nikitateggi 20:7c64e6ecad76 371 nstate=state;
nikitateggi 20:7c64e6ecad76 372 screen_ecg_bp();
nikitateggi 4:6bd81bb1790d 373 EnableTouch();
nikitateggi 1:8316c23ec6b9 374 break;
nikitateggi 1:8316c23ec6b9 375
nikitateggi 1:8316c23ec6b9 376
nikitateggi 4:6bd81bb1790d 377 /*case 9:
nikitateggi 3:9a06c2bed650 378 DisableTouch();
nikitateggi 4:6bd81bb1790d 379 screen_glc_2();
nikitateggi 4:6bd81bb1790d 380 state1=0;
nikitateggi 1:8316c23ec6b9 381 state=6;
nikitateggi 1:8316c23ec6b9 382 nstate=state;
nikitateggi 3:9a06c2bed650 383 EnableTouch();
nikitateggi 4:6bd81bb1790d 384 break;*/
nikitateggi 3:9a06c2bed650 385
nikitateggi 19:1650bbc923cc 386 case 9:
nikitateggi 3:9a06c2bed650 387 DisableTouch();
nikitateggi 4:6bd81bb1790d 388 screen_bp2(); // bp main screen
suhasini 6:5e33a0f01476 389 bp_countdown(); // countdown for bp
nidhinvarghese 8:adf2ba7e6412 390 bp(pid); // measuring bp earlier bp() changed to bp(pid) 28/4/2017
nikitateggi 3:9a06c2bed650 391 state1=0;
nikitateggi 3:9a06c2bed650 392 // wait(1);
nikitateggi 3:9a06c2bed650 393 state=6;
nikitateggi 24:d992ee8369f4 394 eprom_write_8(30,2);
nikitateggi 3:9a06c2bed650 395 nstate=state;
nikitateggi 3:9a06c2bed650 396 EnableTouch();
nikitateggi 3:9a06c2bed650 397 break;
nikitateggi 31:0f67acfc6236 398
nikitateggi 31:0f67acfc6236 399
nikitateggi 31:0f67acfc6236 400 case 10 : DisableTouch();
nikitateggi 31:0f67acfc6236 401 wait_ms(300);
nikitateggi 31:0f67acfc6236 402 EnableTouch();
nikitateggi 31:0f67acfc6236 403 state=nstate;
nikitateggi 31:0f67acfc6236 404 break;
nikitateggi 31:0f67acfc6236 405
nikitateggi 31:0f67acfc6236 406 case 11 : DisableTouch();
nikitateggi 31:0f67acfc6236 407 current_test_pid=eprom_read(1);
nikitateggi 31:0f67acfc6236 408 bt_file_sent_pid=eprom_read(6);
nikitateggi 31:0f67acfc6236 409 screen_patient_info(current_test_pid, bt_file_sent_pid);
nikitateggi 31:0f67acfc6236 410 state1=0;
nikitateggi 31:0f67acfc6236 411 state=12;
nikitateggi 31:0f67acfc6236 412 EnableTouch();
nikitateggi 31:0f67acfc6236 413 break;
nikitateggi 31:0f67acfc6236 414
nikitateggi 31:0f67acfc6236 415
nikitateggi 1:8316c23ec6b9 416 default :
nikitateggi 3:9a06c2bed650 417
nikitateggi 1:8316c23ec6b9 418 state1=nstate1;
nikitateggi 1:8316c23ec6b9 419 break;
nikitateggi 1:8316c23ec6b9 420
nikitateggi 0:c47fb0c1bbf6 421
nikitateggi 0:c47fb0c1bbf6 422 }
nikitateggi 0:c47fb0c1bbf6 423
nikitateggi 0:c47fb0c1bbf6 424
nikitateggi 0:c47fb0c1bbf6 425
nikitateggi 19:1650bbc923cc 426 return state;
nikitateggi 0:c47fb0c1bbf6 427
nikitateggi 0:c47fb0c1bbf6 428 }
nikitateggi 0:c47fb0c1bbf6 429
nikitateggi 0:c47fb0c1bbf6 430
nikitateggi 0:c47fb0c1bbf6 431