Code clean up - modify Datatypes

Dependencies:   SDFileSystem ds3231 eeprom_Nikita mbed testUniGraphic_150217

Fork of merged_code2_3rd_nov_2017_15th_dec_2017_magicno_removal by nikita teggi

Committer:
nikitateggi
Date:
Tue Dec 19 06:58:44 2017 +0000
Revision:
61:2143f39103f7
Parent:
60:945c4a1e9a13
Code clean up - modify Datatypes

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nikitateggi 0:c47fb0c1bbf6 1 #include "mbed.h"
nikitateggi 0:c47fb0c1bbf6 2 #include "display_modules.h"
nikitateggi 0:c47fb0c1bbf6 3 #include "touch_modules.h"
nikitateggi 1:8316c23ec6b9 4 #include "ecg_dec.h"
nikitateggi 1:8316c23ec6b9 5 #include "touch_modules.h"
nikitateggi 1:8316c23ec6b9 6 #include "glc.h"
nikitateggi 3:9a06c2bed650 7 #include "bp.h"
nikitateggi 1:8316c23ec6b9 8 #include "sdcard.h"
nikitateggi 4:6bd81bb1790d 9 #include "eeprom_pgm.h"
nikitateggi 19:1650bbc923cc 10 #include "struct.h"
nikitateggi 22:ffa88619551d 11 #include "battery.h"
rashmivenkataramaiah 41:1141a75eacc4 12 #include "main.h"
nikitateggi 57:200c42fba01f 13 #include "SDFileSystem.h"
nikitateggi 45:067673dae242 14
nikitateggi 45:067673dae242 15 #define TIMER_RXACK_BTCONNECTION 10000
nikitateggi 45:067673dae242 16 #define BATTERY_TIMER_VALUE 600000
nikitateggi 45:067673dae242 17 #define BATTERY_SCREEN_NO_CHARGE_CONDITION 3
nikitateggi 49:3ff80c4bc1be 18 #define TIMER_ENTER_DEBUG_MODE 10000
nikitateggi 60:945c4a1e9a13 19 #define WAIT_300MS 300
nikitateggi 24:d992ee8369f4 20
nikitateggi 51:1a4693774b60 21
nikitateggi 57:200c42fba01f 22 SDFileSystem sd(PTE1, PTE3, PTE2, PTE4, "sd");
nikitateggi 60:945c4a1e9a13 23
nikitateggi 0:c47fb0c1bbf6 24 DigitalIn q1(PTB11);
nikitateggi 29:7edc76b15e3d 25 DigitalIn q(PTC5);
nikitateggi 29:7edc76b15e3d 26 DigitalIn q3(PTC12);
rashmivenkataramaiah 42:c81673b04b6a 27 DigitalIn BT(PTA5);
nikitateggi 60:945c4a1e9a13 28
nikitateggi 60:945c4a1e9a13 29
nikitateggi 60:945c4a1e9a13 30 Serial serial_output(USBTX, USBRX); // serial port declaration for debug statements
nikitateggi 60:945c4a1e9a13 31 Serial blue1(PTC4,PTC3); // serial port declaration for bluetooth
nikitateggi 60:945c4a1e9a13 32 Timer timer_bt; // timer declaration for bluetooth
nikitateggi 60:945c4a1e9a13 33 Timer timer_battery; // timer declaration for battery
nikitateggi 60:945c4a1e9a13 34 Timer timer_debug; // timer declaration for entering the debug mode
nikitateggi 60:945c4a1e9a13 35
nikitateggi 61:2143f39103f7 36 static void battery_status_monitoring(void); // function to get battery status condition
nikitateggi 61:2143f39103f7 37 uint32_t get_timer_bluetooth(void); // function to get time for bluetooth connection
nikitateggi 61:2143f39103f7 38 uint8_t touch(uint8_t state); // function for touch state
nikitateggi 61:2143f39103f7 39 uint8_t display(uint8_t state1); // function for display state
nikitateggi 61:2143f39103f7 40 void debug_status_monitoring(void); // function to monitor debug status
nikitateggi 61:2143f39103f7 41 void sd_card_status(void);
nikitateggi 61:2143f39103f7 42
nikitateggi 61:2143f39103f7 43
nikitateggi 61:2143f39103f7 44 static bool file_created_status = false; // to get status of file creation false => file not created , true => file created
nikitateggi 60:945c4a1e9a13 45 static uint32_t filepid_btpid[2] = {0};
nikitateggi 60:945c4a1e9a13 46 // timer for entering the debug mode
nikitateggi 57:200c42fba01f 47 static bool debug_mode=false; // holds the status of the debug mode "1" indicates the device is in debug mode
nikitateggi 60:945c4a1e9a13 48 char debug_message_rx[6] = {0}; // buffer to receive the debug message data
nikitateggi 57:200c42fba01f 49 char debug_message[6]={"debug"}; //debug message to be received
nikitateggi 60:945c4a1e9a13 50 // debug status monitoring
nikitateggi 57:200c42fba01f 51 static uint32_t pid = 0; // patient ID
nikitateggi 57:200c42fba01f 52 static uint8_t device_id = 0; //static variable to store device id
nikitateggi 57:200c42fba01f 53 bool device_error = false; // device error is true when there is database error
nikitateggi 0:c47fb0c1bbf6 54
rashmivenkataramaiah 41:1141a75eacc4 55 int main()
rashmivenkataramaiah 41:1141a75eacc4 56 {
rashmivenkataramaiah 41:1141a75eacc4 57 static uint8_t main_state=1;
rashmivenkataramaiah 41:1141a75eacc4 58 static uint8_t state_display = 0;
rashmivenkataramaiah 41:1141a75eacc4 59 static uint8_t state_touch = 1;
nikitateggi 57:200c42fba01f 60 uint8_t state_t = 1; // state to transmit to bluetooth
nikitateggi 57:200c42fba01f 61 uint8_t state_r = 0; // state to receive from bluetooth
nikitateggi 51:1a4693774b60 62
rashmivenkataramaiah 41:1141a75eacc4 63 DisableTouch();
nikitateggi 60:945c4a1e9a13 64 serial_output.baud(SERIAL_BAUD_RATE);
nikitateggi 60:945c4a1e9a13 65 blue1.baud(SERIAL_BAUD_RATE);
nikitateggi 57:200c42fba01f 66 init_screen(); //initialize lcd
nikitateggi 57:200c42fba01f 67 screen_main(); // display of main screen
nikitateggi 57:200c42fba01f 68 sd.disk_initialize(); //initialize sd card
nikitateggi 57:200c42fba01f 69 sd_card_status(); //check for sd card initialization
nikitateggi 45:067673dae242 70 battery_monitor(); // monitor battery at the start only
nikitateggi 45:067673dae242 71 battery_status_display(); // display of main screen
nikitateggi 45:067673dae242 72 timer_battery.start();
nikitateggi 51:1a4693774b60 73 timer_debug.start();
nikitateggi 60:945c4a1e9a13 74 serial_output.printf("enter message to go into debug mode\n");
nikitateggi 57:200c42fba01f 75 read_device_id(); // read the device id
nikitateggi 57:200c42fba01f 76 pid = get_filepid() + 1; // read patient id
nikitateggi 0:c47fb0c1bbf6 77 while(1)
nikitateggi 0:c47fb0c1bbf6 78 {
nikitateggi 51:1a4693774b60 79
nikitateggi 54:f2a413d5dffd 80 if (read_debug_status() == false) // checking the debug_mode status
nikitateggi 51:1a4693774b60 81 {
nikitateggi 51:1a4693774b60 82 if(timer_debug.read_ms()<TIMER_ENTER_DEBUG_MODE)
nikitateggi 51:1a4693774b60 83 {
nikitateggi 51:1a4693774b60 84 debug_status_monitoring();
nikitateggi 51:1a4693774b60 85 }
nikitateggi 51:1a4693774b60 86 }
nikitateggi 51:1a4693774b60 87
nikitateggi 51:1a4693774b60 88
nikitateggi 45:067673dae242 89 battery_status_monitoring(); // to monitior battery status after every 10 min.
nikitateggi 45:067673dae242 90
nikitateggi 57:200c42fba01f 91 if ((get_battery_status() == BATTERY_SCREEN_NO_CHARGE_CONDITION) || (device_error == true)) // to check battery status and take action // checking also for error
nikitateggi 45:067673dae242 92 {
nikitateggi 45:067673dae242 93 DisableTouch();
nikitateggi 45:067673dae242 94 }
nikitateggi 45:067673dae242 95 else
nikitateggi 45:067673dae242 96 {
nikitateggi 45:067673dae242 97
nikitateggi 45:067673dae242 98 EnableTouch();
nikitateggi 57:200c42fba01f 99
nikitateggi 57:200c42fba01f 100 switch(main_state) // main state machine
nikitateggi 45:067673dae242 101 {
nikitateggi 45:067673dae242 102 case 1:
nikitateggi 57:200c42fba01f 103 state_display = touch(state_touch); // touch state
nikitateggi 45:067673dae242 104 if(state_display == 12)
nikitateggi 45:067673dae242 105 {
nikitateggi 45:067673dae242 106 main_state = 3;
nikitateggi 45:067673dae242 107 }
nikitateggi 57:200c42fba01f 108 else if (state_display == 10) // touch detection state for failed condition
nikitateggi 57:200c42fba01f 109 {
nikitateggi 57:200c42fba01f 110 main_state = 1;
nikitateggi 57:200c42fba01f 111 }
nikitateggi 45:067673dae242 112 else
nikitateggi 45:067673dae242 113 {
nikitateggi 45:067673dae242 114 main_state = 2;
nikitateggi 45:067673dae242 115 }
nikitateggi 45:067673dae242 116 break;
avp2417 37:92fcbf22bf91 117
nikitateggi 45:067673dae242 118 case 2:
nikitateggi 57:200c42fba01f 119 state_touch = display(state_display); //display state
nikitateggi 45:067673dae242 120 main_state = 1;
nikitateggi 45:067673dae242 121 break;
nikitateggi 19:1650bbc923cc 122
nikitateggi 19:1650bbc923cc 123
nikitateggi 45:067673dae242 124 case 3:
nikitateggi 45:067673dae242 125 DisableTouch(); // bluetooth send
nikitateggi 45:067673dae242 126 timer_bt.start();
nikitateggi 45:067673dae242 127 if(get_timer_bluetooth()<TIMER_RXACK_BTCONNECTION) // bluetooth connection timer 15 sec
nikitateggi 45:067673dae242 128 {
nikitateggi 44:05dbea558c9a 129
nikitateggi 45:067673dae242 130 if(BT==1) // checking for bluetooth connection
nikitateggi 45:067673dae242 131 {
nikitateggi 44:05dbea558c9a 132
nikitateggi 45:067673dae242 133 timer_bt.stop(); // stop the timer once connected to app
nikitateggi 45:067673dae242 134 timer_bt.reset();
nikitateggi 44:05dbea558c9a 135 BT_connection() ; // displaying connection on bluetooth
nikitateggi 44:05dbea558c9a 136 state_r=bt_send(state_t);
nikitateggi 45:067673dae242 137 timer_bt.start();
nikitateggi 47:3716dd41dba6 138 //gc.printf(" state_t = %d\n", state_t);
nikitateggi 48:f90edb35a20e 139 // gc.printf(" state_r = %d\n", state_r);
nikitateggi 44:05dbea558c9a 140 if (state_r==0) // if the state received is zero, then there is no new file to send
nikitateggi 45:067673dae242 141 {
nikitateggi 45:067673dae242 142 timer_bt.stop(); // stop the timer once connected to app
nikitateggi 45:067673dae242 143 timer_bt.reset();
nikitateggi 45:067673dae242 144 BT_finished(); // screen to display communication finished
nikitateggi 45:067673dae242 145 screen_BT_return(); //screen to return back
nikitateggi 45:067673dae242 146 EnableTouch();
nikitateggi 45:067673dae242 147 main_state=1;
nikitateggi 45:067673dae242 148 state_touch=12;
nikitateggi 45:067673dae242 149 break;
nikitateggi 44:05dbea558c9a 150 }
nikitateggi 44:05dbea558c9a 151
nikitateggi 44:05dbea558c9a 152 else
nikitateggi 44:05dbea558c9a 153 {
nikitateggi 61:2143f39103f7 154 main_state = 4; // move to receving stste of bluetooth
nikitateggi 44:05dbea558c9a 155 }
nikitateggi 44:05dbea558c9a 156
nikitateggi 45:067673dae242 157 }
nikitateggi 44:05dbea558c9a 158
nikitateggi 45:067673dae242 159 else
nikitateggi 45:067673dae242 160 {
nikitateggi 61:2143f39103f7 161 BT_no_connection(); // display screen to show that there is no connection
nikitateggi 45:067673dae242 162 }
nikitateggi 45:067673dae242 163 }
nikitateggi 44:05dbea558c9a 164
nikitateggi 45:067673dae242 165 else
nikitateggi 45:067673dae242 166 {
nikitateggi 60:945c4a1e9a13 167 BT_no_connection(); // display screen to show that there is no connection
nikitateggi 60:945c4a1e9a13 168 serial_output.printf("stopped");
nikitateggi 60:945c4a1e9a13 169 screen_BT_return(); // button to return
nikitateggi 45:067673dae242 170 EnableTouch();
nikitateggi 45:067673dae242 171 main_state=1;
nikitateggi 60:945c4a1e9a13 172 state_touch=12;
nikitateggi 45:067673dae242 173 timer_bt.stop();
nikitateggi 45:067673dae242 174 timer_bt.reset();
nikitateggi 45:067673dae242 175 }
nikitateggi 45:067673dae242 176 break;
nikitateggi 19:1650bbc923cc 177
nikitateggi 45:067673dae242 178 case 4:
nikitateggi 45:067673dae242 179 DisableTouch();
nikitateggi 44:05dbea558c9a 180
nikitateggi 45:067673dae242 181 if(get_timer_bluetooth()<TIMER_RXACK_BTCONNECTION)
nikitateggi 45:067673dae242 182 {
nikitateggi 60:945c4a1e9a13 183 if (blue1.readable()) // if there is data to receive enter the loop
nikitateggi 45:067673dae242 184 {
nikitateggi 46:162ed3f051b2 185
nikitateggi 46:162ed3f051b2 186 state_t=bt_receive(state_r);
nikitateggi 61:2143f39103f7 187 // serial_output.printf(" state_t = %d\n", state_t);
nikitateggi 61:2143f39103f7 188 // serial_output.printf(" state_r = %d\n", state_r);
nikitateggi 45:067673dae242 189 timer_bt.stop();
nikitateggi 45:067673dae242 190 timer_bt.reset();
nikitateggi 60:945c4a1e9a13 191 if(state_t ==0) // if state_t is zero, there is no other file to send
nikitateggi 60:945c4a1e9a13 192 {
nikitateggi 45:067673dae242 193
nikitateggi 45:067673dae242 194 BT_finished();
nikitateggi 45:067673dae242 195 screen_BT_return();
nikitateggi 45:067673dae242 196 EnableTouch();
nikitateggi 45:067673dae242 197 main_state=1;
nikitateggi 60:945c4a1e9a13 198 state_touch=12; // jumping to touch case 12
nikitateggi 45:067673dae242 199 break;
nikitateggi 60:945c4a1e9a13 200 }
nikitateggi 60:945c4a1e9a13 201 else // move to bluetooth transmit if the states are 1,2,3,4
nikitateggi 60:945c4a1e9a13 202 {
nikitateggi 44:05dbea558c9a 203 main_state=3;
nikitateggi 60:945c4a1e9a13 204 }
nikitateggi 45:067673dae242 205 }
nikitateggi 60:945c4a1e9a13 206 }
nikitateggi 45:067673dae242 207 else
nikitateggi 45:067673dae242 208 {
nikitateggi 45:067673dae242 209 DisableTouch();
nikitateggi 60:945c4a1e9a13 210 BT_no_connection(); // display screen to show that there is no connection
nikitateggi 60:945c4a1e9a13 211 serial_output.printf("stopped");
nikitateggi 60:945c4a1e9a13 212 screen_BT_return(); // button to return
nikitateggi 45:067673dae242 213 EnableTouch();
nikitateggi 45:067673dae242 214 main_state=1;
nikitateggi 45:067673dae242 215 state_touch=12;
nikitateggi 60:945c4a1e9a13 216 state_t = 1; // state to transmit to bluetooth
nikitateggi 60:945c4a1e9a13 217 state_r = 0; // state to receive from bluetooth
nikitateggi 60:945c4a1e9a13 218 sd_close(); //close the opened file which was used for bluetooth
nikitateggi 45:067673dae242 219 timer_bt.stop();
nikitateggi 45:067673dae242 220 timer_bt.reset();
nikitateggi 45:067673dae242 221 }
nikitateggi 45:067673dae242 222 break;
nikitateggi 45:067673dae242 223 }
nikitateggi 45:067673dae242 224 }
nikitateggi 45:067673dae242 225 }
nikitateggi 45:067673dae242 226
nikitateggi 22:ffa88619551d 227 }
nikitateggi 19:1650bbc923cc 228 uint8_t touch(uint8_t state)
nikitateggi 19:1650bbc923cc 229 {
nikitateggi 19:1650bbc923cc 230 static uint8_t state1=0;
nikitateggi 60:945c4a1e9a13 231 detect_touch(state); // determine the touch points
nikitateggi 1:8316c23ec6b9 232
nikitateggi 60:945c4a1e9a13 233 switch(state) // state for touch
nikitateggi 60:945c4a1e9a13 234 {
rashmivenkataramaiah 41:1141a75eacc4 235 case 1:
nikitateggi 60:945c4a1e9a13 236 state1=touch_main(); // determining the touch for main screen
nikitateggi 0:c47fb0c1bbf6 237 state=0;
nikitateggi 61:2143f39103f7 238 // nstate1=state1;
rashmivenkataramaiah 41:1141a75eacc4 239 break;
nikitateggi 0:c47fb0c1bbf6 240
nikitateggi 0:c47fb0c1bbf6 241 case 2:
nikitateggi 60:945c4a1e9a13 242 state1=touch_main_1(); // determining the touch for SYSTEM CONFIGURATION screen
nikitateggi 0:c47fb0c1bbf6 243 state=0;
nikitateggi 61:2143f39103f7 244 //nstate1=state1;
nikitateggi 0:c47fb0c1bbf6 245 break;
nikitateggi 0:c47fb0c1bbf6 246
nikitateggi 0:c47fb0c1bbf6 247 case 3:
nikitateggi 60:945c4a1e9a13 248 state1=touch_main_2(); // determining the touch for TEST screen
nikitateggi 0:c47fb0c1bbf6 249 state=0;
nikitateggi 61:2143f39103f7 250 //nstate1=state1;
nikitateggi 0:c47fb0c1bbf6 251 break;
nikitateggi 0:c47fb0c1bbf6 252
nikitateggi 0:c47fb0c1bbf6 253 case 4:
nikitateggi 60:945c4a1e9a13 254 state1=touch_glc(); // determining the touch for GLC screen
nikitateggi 1:8316c23ec6b9 255 state=0;
nikitateggi 61:2143f39103f7 256 ///nstate1=state1;
nikitateggi 1:8316c23ec6b9 257 break;
nikitateggi 1:8316c23ec6b9 258
nikitateggi 1:8316c23ec6b9 259 case 5:
nikitateggi 60:945c4a1e9a13 260 state1=touch_ecg(); // determining the touch for ECG screen
nikitateggi 1:8316c23ec6b9 261 state=0;
nikitateggi 61:2143f39103f7 262 //nstate1=state1;
nikitateggi 3:9a06c2bed650 263 break;
nikitateggi 4:6bd81bb1790d 264 case 6:
nikitateggi 60:945c4a1e9a13 265 state1=touch_ret(); // determining the touch for returning back to the main screen
nikitateggi 0:c47fb0c1bbf6 266 state=0;
nikitateggi 61:2143f39103f7 267 //nstate1=state1;
nikitateggi 1:8316c23ec6b9 268 break;
nikitateggi 1:8316c23ec6b9 269
nikitateggi 4:6bd81bb1790d 270 case 7:
nikitateggi 60:945c4a1e9a13 271 state1=touch_again_ecg(); // determining the touch when readings are taken more than once screen
nikitateggi 1:8316c23ec6b9 272 state=0;
nikitateggi 61:2143f39103f7 273 //nstate1=state1;
nikitateggi 1:8316c23ec6b9 274 break;
nikitateggi 0:c47fb0c1bbf6 275
nikitateggi 3:9a06c2bed650 276 case 8:
nikitateggi 60:945c4a1e9a13 277 state1=touch_bp(); // determining the touch for BP screen
nikitateggi 3:9a06c2bed650 278 state=0;
nikitateggi 61:2143f39103f7 279 //nstate1=state1;
nikitateggi 3:9a06c2bed650 280 break;
nikitateggi 3:9a06c2bed650 281
rashmivenkataramaiah 41:1141a75eacc4 282 case 9:
rashmivenkataramaiah 41:1141a75eacc4 283 state1=touch_again_glc();
suhasini 5:a3ea7c82b7e1 284 state=0;
nikitateggi 61:2143f39103f7 285 //nstate1=state1;
suhasini 5:a3ea7c82b7e1 286 break;
nikitateggi 3:9a06c2bed650 287
rashmivenkataramaiah 41:1141a75eacc4 288 case 10 :
rashmivenkataramaiah 41:1141a75eacc4 289 DisableTouch();
nikitateggi 60:945c4a1e9a13 290 wait_ms(WAIT_300MS);
rashmivenkataramaiah 41:1141a75eacc4 291 EnableTouch();
nikitateggi 61:2143f39103f7 292 //state=nstate;
rashmivenkataramaiah 41:1141a75eacc4 293 break;
suhasini 5:a3ea7c82b7e1 294
suhasini 5:a3ea7c82b7e1 295
rashmivenkataramaiah 41:1141a75eacc4 296 case 11:
rashmivenkataramaiah 41:1141a75eacc4 297 state1=touch_again_bp();
rashmivenkataramaiah 41:1141a75eacc4 298 state=0;
nikitateggi 61:2143f39103f7 299 //nstate1=state1;
rashmivenkataramaiah 41:1141a75eacc4 300 break;
suhasini 5:a3ea7c82b7e1 301
rashmivenkataramaiah 41:1141a75eacc4 302 case 12:
rashmivenkataramaiah 41:1141a75eacc4 303 state1=BT_return();
rashmivenkataramaiah 41:1141a75eacc4 304 state=0;
nikitateggi 61:2143f39103f7 305 //nstate1=state1;
rashmivenkataramaiah 41:1141a75eacc4 306 break;
nikitateggi 49:3ff80c4bc1be 307
nikitateggi 49:3ff80c4bc1be 308 case 13:
nikitateggi 49:3ff80c4bc1be 309 state1 = touch_debug(); //touch state for debug
nikitateggi 49:3ff80c4bc1be 310 //state=0;
nikitateggi 61:2143f39103f7 311 // nstate1=state1;
nikitateggi 49:3ff80c4bc1be 312 break;
rashmivenkataramaiah 41:1141a75eacc4 313 default :
rashmivenkataramaiah 41:1141a75eacc4 314 DisableTouch();
nikitateggi 60:945c4a1e9a13 315 wait_ms(WAIT_300MS);
rashmivenkataramaiah 41:1141a75eacc4 316 EnableTouch();
nikitateggi 61:2143f39103f7 317 // state=nstate;
rashmivenkataramaiah 41:1141a75eacc4 318 break;
nikitateggi 1:8316c23ec6b9 319
nikitateggi 0:c47fb0c1bbf6 320 }
nikitateggi 0:c47fb0c1bbf6 321
rashmivenkataramaiah 41:1141a75eacc4 322 return state1;
rashmivenkataramaiah 41:1141a75eacc4 323 }
nikitateggi 0:c47fb0c1bbf6 324
nikitateggi 0:c47fb0c1bbf6 325
nikitateggi 19:1650bbc923cc 326 uint8_t display(uint8_t state1)
nikitateggi 19:1650bbc923cc 327 {
rashmivenkataramaiah 41:1141a75eacc4 328 static uint8_t state=0;
nikitateggi 60:945c4a1e9a13 329 static uint8_t ecg_flag=0; // ecg_flag to indicate the ecg test is already done for the same pid
nikitateggi 60:945c4a1e9a13 330 static uint8_t glc_flag=0; // glc_flag to indicate the glc test is already done for the same pid
rashmivenkataramaiah 41:1141a75eacc4 331 uint16_t heart_rate=0;
rashmivenkataramaiah 41:1141a75eacc4 332
nikitateggi 60:945c4a1e9a13 333 switch(state1) // state for display screens
rashmivenkataramaiah 41:1141a75eacc4 334 {
nikitateggi 4:6bd81bb1790d 335
nikitateggi 1:8316c23ec6b9 336
rashmivenkataramaiah 41:1141a75eacc4 337 case 1:
rashmivenkataramaiah 41:1141a75eacc4 338 DisableTouch();
nikitateggi 60:945c4a1e9a13 339 screen_main(); // main screen
nikitateggi 1:8316c23ec6b9 340 state1=0;
nikitateggi 1:8316c23ec6b9 341 state=1;
nikitateggi 61:2143f39103f7 342 //nstate=state;
nikitateggi 60:945c4a1e9a13 343 ecg_flag=0; // ecg, glc flag to determine whether the readings are taken more than once
nikitateggi 1:8316c23ec6b9 344 glc_flag=0;
rashmivenkataramaiah 41:1141a75eacc4 345 clear_filecreated_status();
nikitateggi 60:945c4a1e9a13 346 battery_status_display(); //Display battery status on LCD
nikitateggi 53:cc6e65480a67 347 pid = get_filepid() + 1;
nikitateggi 3:9a06c2bed650 348 EnableTouch();
nikitateggi 1:8316c23ec6b9 349 break;
nikitateggi 1:8316c23ec6b9 350
rashmivenkataramaiah 41:1141a75eacc4 351 case 2:
rashmivenkataramaiah 41:1141a75eacc4 352 DisableTouch();
nikitateggi 60:945c4a1e9a13 353 screen_main_1(); // System configration screen
nikitateggi 0:c47fb0c1bbf6 354 state1=0;
nikitateggi 0:c47fb0c1bbf6 355 state=2;
nikitateggi 61:2143f39103f7 356 //nstate=state;
nikitateggi 60:945c4a1e9a13 357 battery_status_display(); //Display battery status on LCD
nikitateggi 3:9a06c2bed650 358 EnableTouch();
nikitateggi 0:c47fb0c1bbf6 359 break;
nikitateggi 0:c47fb0c1bbf6 360
rashmivenkataramaiah 41:1141a75eacc4 361 case 3:
rashmivenkataramaiah 41:1141a75eacc4 362 DisableTouch();
nikitateggi 60:945c4a1e9a13 363 serial_output.printf("pidinit=%d",pid);
rashmivenkataramaiah 41:1141a75eacc4 364 screen_main_2(pid);
rashmivenkataramaiah 41:1141a75eacc4 365 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 366 state=3;
nikitateggi 61:2143f39103f7 367 //nstate=state;
nikitateggi 45:067673dae242 368 battery_status_display();
rashmivenkataramaiah 41:1141a75eacc4 369 EnableTouch();
rashmivenkataramaiah 41:1141a75eacc4 370 break;
nikitateggi 0:c47fb0c1bbf6 371
rashmivenkataramaiah 41:1141a75eacc4 372 case 4:
rashmivenkataramaiah 41:1141a75eacc4 373 DisableTouch();
nikitateggi 60:945c4a1e9a13 374 if (glc_flag==1) // glc_flag=1 when already the reading has been taken
rashmivenkataramaiah 41:1141a75eacc4 375 {
rashmivenkataramaiah 41:1141a75eacc4 376 screen_again();
rashmivenkataramaiah 41:1141a75eacc4 377 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 378 state=9;
nikitateggi 61:2143f39103f7 379 // nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 380 }
rashmivenkataramaiah 41:1141a75eacc4 381 else
nikitateggi 19:1650bbc923cc 382 {
nikitateggi 60:945c4a1e9a13 383 screen_glc(); // glc screen
rashmivenkataramaiah 41:1141a75eacc4 384 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 385 state=4;
nikitateggi 61:2143f39103f7 386 //nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 387 }
nikitateggi 3:9a06c2bed650 388 EnableTouch();
nikitateggi 3:9a06c2bed650 389
nikitateggi 0:c47fb0c1bbf6 390 break;
nikitateggi 1:8316c23ec6b9 391
nikitateggi 1:8316c23ec6b9 392
rashmivenkataramaiah 41:1141a75eacc4 393 case 5:
rashmivenkataramaiah 41:1141a75eacc4 394 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 395 if (ecg_flag==1)
rashmivenkataramaiah 41:1141a75eacc4 396 {
rashmivenkataramaiah 41:1141a75eacc4 397 screen_again();
rashmivenkataramaiah 41:1141a75eacc4 398 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 399 state=7;
nikitateggi 61:2143f39103f7 400 //nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 401 }
rashmivenkataramaiah 41:1141a75eacc4 402
rashmivenkataramaiah 41:1141a75eacc4 403 else
rashmivenkataramaiah 41:1141a75eacc4 404 {
nikitateggi 60:945c4a1e9a13 405 screen_ecg(); //ecg main screen
rashmivenkataramaiah 41:1141a75eacc4 406 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 407 state=5;
nikitateggi 61:2143f39103f7 408 // nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 409 }
rashmivenkataramaiah 41:1141a75eacc4 410 EnableTouch();
nikitateggi 1:8316c23ec6b9 411 break;
nikitateggi 1:8316c23ec6b9 412
rashmivenkataramaiah 41:1141a75eacc4 413 case 6:
rashmivenkataramaiah 41:1141a75eacc4 414 DisableTouch();
nikitateggi 60:945c4a1e9a13 415 screen_bp(); // bp main screen
nikitateggi 3:9a06c2bed650 416 state1=0;
nikitateggi 3:9a06c2bed650 417 state=8;
nikitateggi 61:2143f39103f7 418 // nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 419 EnableTouch();
nikitateggi 3:9a06c2bed650 420 break;
nikitateggi 3:9a06c2bed650 421
rashmivenkataramaiah 41:1141a75eacc4 422 case 7:
rashmivenkataramaiah 41:1141a75eacc4 423 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 424 glc(pid); // glc measurement
nikitateggi 1:8316c23ec6b9 425 glc_flag=1;
nikitateggi 4:6bd81bb1790d 426 state1=0;
nikitateggi 4:6bd81bb1790d 427 screen_glc_2();
rashmivenkataramaiah 41:1141a75eacc4 428 state=6;
rashmivenkataramaiah 41:1141a75eacc4 429 eprom_write_8(30,0);
nikitateggi 61:2143f39103f7 430 // nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 431 EnableTouch();
nikitateggi 1:8316c23ec6b9 432 break;
nikitateggi 1:8316c23ec6b9 433
nikitateggi 3:9a06c2bed650 434 case 8: DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 435 ecg_countdown(); // countdown before ecg capture
nikitateggi 60:945c4a1e9a13 436 heart_rate = ecg(pid); // capturing ecg
nikitateggi 60:945c4a1e9a13 437 state1 = 0;
nikitateggi 60:945c4a1e9a13 438 if (heart_rate == 0)
nikitateggi 60:945c4a1e9a13 439 {
nikitateggi 60:945c4a1e9a13 440 screen_ecg_lead();
nikitateggi 60:945c4a1e9a13 441 }
nikitateggi 60:945c4a1e9a13 442 else if(heart_rate == 1) // if heart rate goes above or below range display error // 10/7/17 nikita
nikitateggi 60:945c4a1e9a13 443 {
nikitateggi 60:945c4a1e9a13 444 screen_ecg_error();
nikitateggi 60:945c4a1e9a13 445 }
nikitateggi 60:945c4a1e9a13 446 else
nikitateggi 60:945c4a1e9a13 447 {
nikitateggi 60:945c4a1e9a13 448 screen_ecg_2(heart_rate);
nikitateggi 60:945c4a1e9a13 449 ecg_flag = 1;
nikitateggi 60:945c4a1e9a13 450 }
nikitateggi 60:945c4a1e9a13 451 state = 6;
nikitateggi 24:d992ee8369f4 452 eprom_write_8(30,1);
nikitateggi 61:2143f39103f7 453 // nstate = state;
nikitateggi 20:7c64e6ecad76 454 screen_ecg_bp();
nikitateggi 4:6bd81bb1790d 455 EnableTouch();
nikitateggi 1:8316c23ec6b9 456 break;
rashmivenkataramaiah 41:1141a75eacc4 457
nikitateggi 49:3ff80c4bc1be 458 case 9:
nikitateggi 3:9a06c2bed650 459 DisableTouch();
nikitateggi 60:945c4a1e9a13 460 //screen_bp2(); // bp main screen
nikitateggi 60:945c4a1e9a13 461 bp_countdown(); // countdown for bp
rashmivenkataramaiah 41:1141a75eacc4 462 bp(pid); // measuring bp earlier bp() changed to bp(pid) 28/4/2017
nikitateggi 3:9a06c2bed650 463 state1=0;
nikitateggi 3:9a06c2bed650 464 state=6;
nikitateggi 24:d992ee8369f4 465 eprom_write_8(30,2);
nikitateggi 61:2143f39103f7 466 // nstate=state;
nikitateggi 3:9a06c2bed650 467 EnableTouch();
nikitateggi 60:945c4a1e9a13 468 break;
nikitateggi 31:0f67acfc6236 469
nikitateggi 31:0f67acfc6236 470
nikitateggi 60:945c4a1e9a13 471 case 10 :
nikitateggi 60:945c4a1e9a13 472 DisableTouch();
nikitateggi 60:945c4a1e9a13 473 wait_ms(WAIT_300MS);
nikitateggi 60:945c4a1e9a13 474 EnableTouch();
nikitateggi 61:2143f39103f7 475 // state=nstate;
nikitateggi 60:945c4a1e9a13 476 break;
nikitateggi 31:0f67acfc6236 477
rashmivenkataramaiah 41:1141a75eacc4 478 case 11 :
rashmivenkataramaiah 41:1141a75eacc4 479 DisableTouch();
rashmivenkataramaiah 42:c81673b04b6a 480 screen_patient_info(get_filepid(), get_btpid());
rashmivenkataramaiah 41:1141a75eacc4 481 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 482 state=12;
rashmivenkataramaiah 41:1141a75eacc4 483 EnableTouch();
nikitateggi 49:3ff80c4bc1be 484 break;
nikitateggi 49:3ff80c4bc1be 485
nikitateggi 49:3ff80c4bc1be 486 case 13 : //display screen for debug
nikitateggi 49:3ff80c4bc1be 487 DisableTouch();
nikitateggi 49:3ff80c4bc1be 488 screen_debug();
nikitateggi 49:3ff80c4bc1be 489 state1=0;
nikitateggi 49:3ff80c4bc1be 490 state=13;
nikitateggi 61:2143f39103f7 491 //nstate=state;
nikitateggi 49:3ff80c4bc1be 492 EnableTouch();
nikitateggi 49:3ff80c4bc1be 493 break;
nikitateggi 49:3ff80c4bc1be 494
nikitateggi 49:3ff80c4bc1be 495 case 14 :
nikitateggi 49:3ff80c4bc1be 496 DisableTouch(); //state to delete SD card
nikitateggi 49:3ff80c4bc1be 497 delete_sdcard();
nikitateggi 49:3ff80c4bc1be 498 screen_sdcard_delete();
nikitateggi 49:3ff80c4bc1be 499 state1=0;
nikitateggi 49:3ff80c4bc1be 500 state= 12;
nikitateggi 61:2143f39103f7 501 // nstate=state;
nikitateggi 49:3ff80c4bc1be 502 EnableTouch();
nikitateggi 49:3ff80c4bc1be 503 break;
nikitateggi 49:3ff80c4bc1be 504
nikitateggi 49:3ff80c4bc1be 505 case 15 :
nikitateggi 49:3ff80c4bc1be 506 DisableTouch();
nikitateggi 60:945c4a1e9a13 507 serial_output.printf("Total Patients' data available : %d\n",get_filepid()); //state to read SD card
nikitateggi 60:945c4a1e9a13 508 serial_output.printf("Enter the PID number");
nikitateggi 50:b42238e7f46d 509 read_sdcard_file();
nikitateggi 51:1a4693774b60 510 screen_sdcard_read();
nikitateggi 49:3ff80c4bc1be 511 state1=0;
nikitateggi 49:3ff80c4bc1be 512 state= 12;
nikitateggi 61:2143f39103f7 513 //nstate=state;
nikitateggi 49:3ff80c4bc1be 514 EnableTouch();
nikitateggi 49:3ff80c4bc1be 515 break;
nikitateggi 31:0f67acfc6236 516
nikitateggi 1:8316c23ec6b9 517 default :
nikitateggi 3:9a06c2bed650 518
nikitateggi 61:2143f39103f7 519 //state1=nstate1;
nikitateggi 1:8316c23ec6b9 520 break;
nikitateggi 1:8316c23ec6b9 521
nikitateggi 0:c47fb0c1bbf6 522
nikitateggi 60:945c4a1e9a13 523 }
rashmivenkataramaiah 41:1141a75eacc4 524 return state;
nikitateggi 0:c47fb0c1bbf6 525
rashmivenkataramaiah 41:1141a75eacc4 526 }
rashmivenkataramaiah 41:1141a75eacc4 527
rashmivenkataramaiah 41:1141a75eacc4 528
rashmivenkataramaiah 41:1141a75eacc4 529 bool get_filecreated_status(void) //function to get file created status
rashmivenkataramaiah 41:1141a75eacc4 530 {
rashmivenkataramaiah 41:1141a75eacc4 531 return file_created_status;
rashmivenkataramaiah 41:1141a75eacc4 532 }
rashmivenkataramaiah 41:1141a75eacc4 533
rashmivenkataramaiah 41:1141a75eacc4 534 void set_filecreated_status(void) //function to set file created status
rashmivenkataramaiah 41:1141a75eacc4 535 {
rashmivenkataramaiah 42:c81673b04b6a 536 file_created_status = true;
rashmivenkataramaiah 41:1141a75eacc4 537 }
rashmivenkataramaiah 41:1141a75eacc4 538
rashmivenkataramaiah 41:1141a75eacc4 539
rashmivenkataramaiah 41:1141a75eacc4 540 void clear_filecreated_status(void) //function to clear file created status
rashmivenkataramaiah 41:1141a75eacc4 541 {
rashmivenkataramaiah 42:c81673b04b6a 542 file_created_status = false;
rashmivenkataramaiah 42:c81673b04b6a 543 }
rashmivenkataramaiah 42:c81673b04b6a 544
nikitateggi 60:945c4a1e9a13 545 void increment_filepid (void) //increment pid if a test is completed
rashmivenkataramaiah 42:c81673b04b6a 546 {
rashmivenkataramaiah 42:c81673b04b6a 547 sd_read(filepid_btpid); //read pid from sd card
rashmivenkataramaiah 42:c81673b04b6a 548 filepid_btpid[0] = filepid_btpid[0] + 1; //increment it by 1
nikitateggi 61:2143f39103f7 549 sd_write_pid(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 42:c81673b04b6a 550
rashmivenkataramaiah 42:c81673b04b6a 551 }
rashmivenkataramaiah 42:c81673b04b6a 552
nikitateggi 60:945c4a1e9a13 553 void increment_btpid (void) //increment pid if a test is completed
rashmivenkataramaiah 43:85a7f399cb9d 554 {
rashmivenkataramaiah 43:85a7f399cb9d 555 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 45:067673dae242 556 filepid_btpid[1] = filepid_btpid[1] + 1; //increment it by 1
nikitateggi 61:2143f39103f7 557 sd_write_pid(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 43:85a7f399cb9d 558
rashmivenkataramaiah 43:85a7f399cb9d 559 }
rashmivenkataramaiah 43:85a7f399cb9d 560
rashmivenkataramaiah 42:c81673b04b6a 561 uint32_t get_filepid(void)
nikitateggi 60:945c4a1e9a13 562 {
rashmivenkataramaiah 42:c81673b04b6a 563 uint32_t filepid = 0;
rashmivenkataramaiah 42:c81673b04b6a 564
nikitateggi 60:945c4a1e9a13 565 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 45:067673dae242 566 filepid = filepid_btpid[0];
rashmivenkataramaiah 42:c81673b04b6a 567 return filepid;
rashmivenkataramaiah 42:c81673b04b6a 568
rashmivenkataramaiah 42:c81673b04b6a 569 }
rashmivenkataramaiah 42:c81673b04b6a 570
rashmivenkataramaiah 42:c81673b04b6a 571 void store_filepid(uint32_t pid)
nikitateggi 60:945c4a1e9a13 572 {
nikitateggi 60:945c4a1e9a13 573 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 60:945c4a1e9a13 574 filepid_btpid[0] = pid;
nikitateggi 61:2143f39103f7 575 sd_write_pid(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 42:c81673b04b6a 576
rashmivenkataramaiah 42:c81673b04b6a 577 }
rashmivenkataramaiah 42:c81673b04b6a 578
rashmivenkataramaiah 42:c81673b04b6a 579 uint32_t get_btpid(void)
rashmivenkataramaiah 42:c81673b04b6a 580 {
nikitateggi 60:945c4a1e9a13 581
rashmivenkataramaiah 42:c81673b04b6a 582 uint32_t btpid = 0;
rashmivenkataramaiah 42:c81673b04b6a 583
nikitateggi 60:945c4a1e9a13 584 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 45:067673dae242 585 btpid = filepid_btpid[1];
rashmivenkataramaiah 42:c81673b04b6a 586 return btpid;
rashmivenkataramaiah 42:c81673b04b6a 587
rashmivenkataramaiah 42:c81673b04b6a 588 }
rashmivenkataramaiah 42:c81673b04b6a 589
rashmivenkataramaiah 42:c81673b04b6a 590 void store_btpid(uint32_t bt_pid)
nikitateggi 60:945c4a1e9a13 591 {
nikitateggi 60:945c4a1e9a13 592 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 60:945c4a1e9a13 593 filepid_btpid[1] = bt_pid;
nikitateggi 61:2143f39103f7 594 sd_write_pid(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 42:c81673b04b6a 595
rashmivenkataramaiah 42:c81673b04b6a 596 }
rashmivenkataramaiah 42:c81673b04b6a 597
nikitateggi 45:067673dae242 598
nikitateggi 44:05dbea558c9a 599 uint32_t get_timer_bluetooth()
nikitateggi 44:05dbea558c9a 600 {
nikitateggi 45:067673dae242 601 return timer_bt.read_ms();
nikitateggi 44:05dbea558c9a 602 }
nikitateggi 45:067673dae242 603
nikitateggi 45:067673dae242 604 void battery_status_monitoring()
nikitateggi 45:067673dae242 605 {
nikitateggi 45:067673dae242 606 if(timer_battery.read_ms() > BATTERY_TIMER_VALUE )
nikitateggi 45:067673dae242 607 {
nikitateggi 45:067673dae242 608 battery_monitor();
nikitateggi 45:067673dae242 609 timer_battery.reset();
nikitateggi 45:067673dae242 610 }
nikitateggi 49:3ff80c4bc1be 611 }
nikitateggi 49:3ff80c4bc1be 612
nikitateggi 51:1a4693774b60 613 bool read_debug_status()
nikitateggi 51:1a4693774b60 614 {
nikitateggi 60:945c4a1e9a13 615 // serial_output.printf("debug_mode=%d\n",debug_mode);
nikitateggi 51:1a4693774b60 616 return debug_mode;
nikitateggi 51:1a4693774b60 617 }
nikitateggi 51:1a4693774b60 618
nikitateggi 51:1a4693774b60 619 void debug_status_monitoring()
nikitateggi 51:1a4693774b60 620 {
nikitateggi 60:945c4a1e9a13 621 if (serial_output.readable()) // check for the user input
nikitateggi 60:945c4a1e9a13 622 {
nikitateggi 60:945c4a1e9a13 623 while (serial_output.readable()!= '\n') // read till the newline
nikitateggi 60:945c4a1e9a13 624 {
nikitateggi 60:945c4a1e9a13 625 serial_output.scanf("%s", debug_message_rx); // store the message typed in buffer
nikitateggi 60:945c4a1e9a13 626 serial_output.printf("%s", debug_message_rx);
nikitateggi 60:945c4a1e9a13 627 break;
nikitateggi 60:945c4a1e9a13 628 }
nikitateggi 60:945c4a1e9a13 629 if (strcmp(debug_message_rx, debug_message) == 0) // compare the message with the required one
nikitateggi 51:1a4693774b60 630 {
nikitateggi 60:945c4a1e9a13 631 debug_mode = true; // enable the debug mode status
nikitateggi 60:945c4a1e9a13 632 serial_output.printf("entered into debug mode\n");
nikitateggi 60:945c4a1e9a13 633 timer_debug.reset();
nikitateggi 60:945c4a1e9a13 634 timer_debug.start(); // timer is started in orede
nikitateggi 60:945c4a1e9a13 635 }
nikitateggi 60:945c4a1e9a13 636 }
nikitateggi 51:1a4693774b60 637 }
nikitateggi 51:1a4693774b60 638
nikitateggi 60:945c4a1e9a13 639 uint32_t get_timer_debug() // timer for enabling debug option
nikitateggi 51:1a4693774b60 640 {
nikitateggi 60:945c4a1e9a13 641 if(timer_debug.read_ms()>TIMER_ENABLE_DEBUG_MODE)
nikitateggi 51:1a4693774b60 642 {
nikitateggi 51:1a4693774b60 643 timer_debug.stop();
nikitateggi 51:1a4693774b60 644 }
nikitateggi 60:945c4a1e9a13 645 return timer_debug.read_ms();
nikitateggi 51:1a4693774b60 646 }
nikitateggi 51:1a4693774b60 647
nikitateggi 51:1a4693774b60 648
nikitateggi 57:200c42fba01f 649 void read_device_id() // reading device id from eeprom
nikitateggi 57:200c42fba01f 650 {
nikitateggi 57:200c42fba01f 651
nikitateggi 57:200c42fba01f 652 device_id = eprom_read_8(12); // reading from eeprom location
nikitateggi 60:945c4a1e9a13 653 serial_output.printf("device_id = %d\n", device_id); //read did from eeprom
nikitateggi 57:200c42fba01f 654 if((get_Error()!= 0) || (device_id == 0xFF)) // checking for error
nikitateggi 57:200c42fba01f 655 {
nikitateggi 57:200c42fba01f 656 device_id = eprom_read_8(12) ;
nikitateggi 57:200c42fba01f 657 if(get_Error()!= 0 || (device_id == 0xFF))
nikitateggi 57:200c42fba01f 658 {
nikitateggi 60:945c4a1e9a13 659 serial_output.printf("database error!\n"); // database error
nikitateggi 57:200c42fba01f 660 database_error();
nikitateggi 57:200c42fba01f 661 device_error = true;
nikitateggi 57:200c42fba01f 662 }
nikitateggi 57:200c42fba01f 663 }
nikitateggi 57:200c42fba01f 664
nikitateggi 57:200c42fba01f 665 }
nikitateggi 57:200c42fba01f 666
nikitateggi 57:200c42fba01f 667 uint8_t get_did() //reading the device id
nikitateggi 57:200c42fba01f 668 {
nikitateggi 57:200c42fba01f 669 return device_id;
nikitateggi 57:200c42fba01f 670 }
nikitateggi 57:200c42fba01f 671
nikitateggi 57:200c42fba01f 672
nikitateggi 57:200c42fba01f 673 void sd_card_status() // checking the status of the sd card initialization
nikitateggi 57:200c42fba01f 674 {
nikitateggi 57:200c42fba01f 675 uint8_t error_disk_status = 0;
nikitateggi 57:200c42fba01f 676 uint8_t error_disk_init = 0;
nikitateggi 57:200c42fba01f 677 error_disk_init = sd.disk_status(); //check for initialization bit
nikitateggi 57:200c42fba01f 678
nikitateggi 57:200c42fba01f 679 if(error_disk_init == 0)
nikitateggi 57:200c42fba01f 680 {
nikitateggi 57:200c42fba01f 681
nikitateggi 57:200c42fba01f 682 error_disk_status = dummy_file_create_delete(); // creating the dummy file
nikitateggi 57:200c42fba01f 683
nikitateggi 57:200c42fba01f 684 if( error_disk_status == 1) // if error = 1 // error in opening file
nikitateggi 57:200c42fba01f 685 {
nikitateggi 57:200c42fba01f 686 error_disk_status = dummy_file_create_delete();
nikitateggi 57:200c42fba01f 687 if( error_disk_status == 1)
nikitateggi 57:200c42fba01f 688 {
nikitateggi 60:945c4a1e9a13 689 serial_output.printf("database error!\n"); // dispaly data base error
nikitateggi 57:200c42fba01f 690 database_error();
nikitateggi 57:200c42fba01f 691 device_error = true;
nikitateggi 57:200c42fba01f 692
nikitateggi 57:200c42fba01f 693 }
nikitateggi 57:200c42fba01f 694 }
nikitateggi 57:200c42fba01f 695 }
nikitateggi 57:200c42fba01f 696
nikitateggi 57:200c42fba01f 697 else
nikitateggi 57:200c42fba01f 698 {
nikitateggi 60:945c4a1e9a13 699 serial_output.printf("database error!\n"); // dispaly data base error
nikitateggi 57:200c42fba01f 700 database_error();
nikitateggi 57:200c42fba01f 701 device_error = true;
nikitateggi 57:200c42fba01f 702
nikitateggi 57:200c42fba01f 703 }
nikitateggi 57:200c42fba01f 704
nikitateggi 57:200c42fba01f 705 }
nikitateggi 57:200c42fba01f 706