created separate function for hex to char

Dependencies:   SDFileSystem ds3231 eeprom_Nikita mbed testUniGraphic_150217

Fork of SS_SensePOC2P0_11Dec2017_USERPID by rashmi v

Committer:
rashmivenkataramaiah
Date:
Thu Nov 16 11:36:45 2017 +0000
Revision:
64:5a76653792e8
Parent:
63:76be11c4a208
Child:
65:8acfba0ce49a
In main.cpp state touch was not getting updated ; State touch is made global and now the state touch is getting updated in display function.

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 57:e82d4bd6b2c0 12 #include "rtc.h"
rashmivenkataramaiah 41:1141a75eacc4 13 #include "main.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 SERIAL_BAUD_RATE 115200
nikitateggi 45:067673dae242 18 #define BATTERY_SCREEN_NO_CHARGE_CONDITION 3
nikitateggi 49:3ff80c4bc1be 19 #define TIMER_ENTER_DEBUG_MODE 10000
rashmivenkataramaiah 57:e82d4bd6b2c0 20 #define HEARTBEAT_DATA_LEN 0x0Du
rashmivenkataramaiah 57:e82d4bd6b2c0 21 #define DEVICE_RESULT_DATA_LEN 0x04u
rashmivenkataramaiah 57:e82d4bd6b2c0 22 #define ZERO_DATA_LEN 0x00u
nikitateggi 24:d992ee8369f4 23
rashmivenkataramaiah 57:e82d4bd6b2c0 24 typedef enum
rashmivenkataramaiah 57:e82d4bd6b2c0 25 {
rashmivenkataramaiah 57:e82d4bd6b2c0 26 GET_TOUCH_DISP_STATE = 0x00U,
rashmivenkataramaiah 57:e82d4bd6b2c0 27 BT_TX_STATE,
rashmivenkataramaiah 57:e82d4bd6b2c0 28 BT_RX_STATE
nikitateggi 51:1a4693774b60 29
rashmivenkataramaiah 57:e82d4bd6b2c0 30 }DEVICE_MAIN_STATE;
rashmivenkataramaiah 57:e82d4bd6b2c0 31
rashmivenkataramaiah 57:e82d4bd6b2c0 32 // this helps to respond various status during test cycle, error condition and simple ack or nack
rashmivenkataramaiah 57:e82d4bd6b2c0 33 typedef struct __attribute__((__packed__))
rashmivenkataramaiah 57:e82d4bd6b2c0 34 {
rashmivenkataramaiah 57:e82d4bd6b2c0 35 uint8_t sos;
rashmivenkataramaiah 57:e82d4bd6b2c0 36 uint8_t cmd; // this contains error response
rashmivenkataramaiah 57:e82d4bd6b2c0 37 uint8_t length;
rashmivenkataramaiah 57:e82d4bd6b2c0 38 uint8_t eos;
rashmivenkataramaiah 57:e82d4bd6b2c0 39 uint8_t chksum;
rashmivenkataramaiah 57:e82d4bd6b2c0 40
rashmivenkataramaiah 57:e82d4bd6b2c0 41 }poc2p0_device_msg_response;
rashmivenkataramaiah 57:e82d4bd6b2c0 42
rashmivenkataramaiah 57:e82d4bd6b2c0 43 typedef struct __attribute__((__packed__))
rashmivenkataramaiah 57:e82d4bd6b2c0 44 {
rashmivenkataramaiah 57:e82d4bd6b2c0 45 uint8_t sos;
rashmivenkataramaiah 57:e82d4bd6b2c0 46 uint8_t cmd;
rashmivenkataramaiah 57:e82d4bd6b2c0 47 uint8_t length;
rashmivenkataramaiah 57:e82d4bd6b2c0 48 uint32_t test_result;
rashmivenkataramaiah 57:e82d4bd6b2c0 49 uint8_t eos;
rashmivenkataramaiah 57:e82d4bd6b2c0 50 uint8_t chksum;
rashmivenkataramaiah 57:e82d4bd6b2c0 51
rashmivenkataramaiah 57:e82d4bd6b2c0 52 }poc2p0_device_tst_result_response;
rashmivenkataramaiah 57:e82d4bd6b2c0 53
rashmivenkataramaiah 57:e82d4bd6b2c0 54 // this will be used for responding heart beat message
rashmivenkataramaiah 57:e82d4bd6b2c0 55 typedef struct __attribute__((__packed__))
rashmivenkataramaiah 57:e82d4bd6b2c0 56 {
rashmivenkataramaiah 57:e82d4bd6b2c0 57 uint8_t sos;
rashmivenkataramaiah 57:e82d4bd6b2c0 58 uint8_t cmd; // this contains error response
rashmivenkataramaiah 57:e82d4bd6b2c0 59 uint8_t length;
rashmivenkataramaiah 57:e82d4bd6b2c0 60 DateTime_info date_time;
rashmivenkataramaiah 57:e82d4bd6b2c0 61 uint32_t pid;
rashmivenkataramaiah 57:e82d4bd6b2c0 62 uint8_t did;
rashmivenkataramaiah 57:e82d4bd6b2c0 63 uint8_t device_state; //changed POC2P0_DEVICE_STATE to uint8_t
rashmivenkataramaiah 57:e82d4bd6b2c0 64 uint8_t battery_status;
rashmivenkataramaiah 57:e82d4bd6b2c0 65 uint8_t eos;
rashmivenkataramaiah 57:e82d4bd6b2c0 66 uint8_t chksum;
rashmivenkataramaiah 57:e82d4bd6b2c0 67
rashmivenkataramaiah 57:e82d4bd6b2c0 68 }poc2p0_device_heartbeat_response;
nikitateggi 51:1a4693774b60 69
nikitateggi 0:c47fb0c1bbf6 70 Serial gc(USBTX, USBRX);
nikitateggi 0:c47fb0c1bbf6 71 DigitalIn q1(PTB11);
nikitateggi 29:7edc76b15e3d 72 DigitalIn q(PTC5);
nikitateggi 29:7edc76b15e3d 73 DigitalIn q3(PTC12);
rashmivenkataramaiah 42:c81673b04b6a 74 DigitalIn BT(PTA5);
nikitateggi 44:05dbea558c9a 75 Serial blue1(PTC4,PTC3);
nikitateggi 44:05dbea558c9a 76 uint32_t get_timer_bluetooth();
nikitateggi 45:067673dae242 77 static void battery_status_monitoring(); //bluetooth status pin
nikitateggi 45:067673dae242 78 uint8_t touch(uint8_t state); // touch state
nikitateggi 45:067673dae242 79 uint8_t display(uint8_t state1); // display state
nikitateggi 45:067673dae242 80
rashmivenkataramaiah 42:c81673b04b6a 81 static uint8_t nstate=0;
nikitateggi 53:cc6e65480a67 82 static uint8_t nstate1=0;
rashmivenkataramaiah 43:85a7f399cb9d 83 static bool file_created_status = false; //initialise file created to 0
rashmivenkataramaiah 43:85a7f399cb9d 84 static uint32_t filepid_btpid[2] = {};
nikitateggi 45:067673dae242 85 Timer timer_bt; // timer for bluetooth
rashmivenkataramaiah 57:e82d4bd6b2c0 86 Timer timer_battery; // timer for battery
nikitateggi 51:1a4693774b60 87 Timer timer_debug; // timer for entering the debug mode
nikitateggi 54:f2a413d5dffd 88 static bool debug_mode=false; // holds the status of the debug mode "1" indicates the device is in debug mode
nikitateggi 51:1a4693774b60 89 char debug_message_rx[6]; // buffer to receive the debug message data
nikitateggi 51:1a4693774b60 90 char debug_message[6]={"debug"}; //debug message to be received
nikitateggi 51:1a4693774b60 91 void debug_status_monitoring(); // debug status monitoring
nikitateggi 54:f2a413d5dffd 92 static uint32_t pid = 0; // patient ID
rashmivenkataramaiah 64:5a76653792e8 93 static uint8_t state_touch = 1; //added on 16-NOV rashmi
nikitateggi 0:c47fb0c1bbf6 94
rashmivenkataramaiah 41:1141a75eacc4 95 int main()
rashmivenkataramaiah 41:1141a75eacc4 96 {
rashmivenkataramaiah 57:e82d4bd6b2c0 97 static DEVICE_MAIN_STATE main_state = GET_TOUCH_DISP_STATE;
rashmivenkataramaiah 41:1141a75eacc4 98 static uint8_t state_display = 0;
rashmivenkataramaiah 64:5a76653792e8 99 //static uint8_t state_touch = 1; //commented on 16-NOV rashmi
nikitateggi 47:3716dd41dba6 100 uint8_t state_t = 1; // state to transmit to bluetooth
nikitateggi 47:3716dd41dba6 101 uint8_t state_r = 0; // state to receive from bluetooth
avp2417 37:92fcbf22bf91 102
rashmivenkataramaiah 41:1141a75eacc4 103 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 104 gc.baud(115200);
nikitateggi 47:3716dd41dba6 105 blue1.baud(115200);
nikitateggi 51:1a4693774b60 106 init_screen(); //initialize lcd
nikitateggi 54:f2a413d5dffd 107 pid = get_filepid() + 1; //added on 22/09/2017 nikita
nikitateggi 51:1a4693774b60 108 screen_main(); // display of main screen
nikitateggi 45:067673dae242 109 battery_monitor(); // monitor battery at the start only
nikitateggi 45:067673dae242 110 battery_status_display(); // display of main screen
nikitateggi 45:067673dae242 111 timer_battery.start();
nikitateggi 51:1a4693774b60 112 timer_debug.start();
nikitateggi 51:1a4693774b60 113 gc.printf("enter message to go into debug mode\n");
rashmivenkataramaiah 58:b75255e6e4c3 114
nikitateggi 0:c47fb0c1bbf6 115 while(1)
nikitateggi 0:c47fb0c1bbf6 116 {
nikitateggi 51:1a4693774b60 117
nikitateggi 54:f2a413d5dffd 118 if (read_debug_status() == false) // checking the debug_mode status
nikitateggi 51:1a4693774b60 119 {
nikitateggi 51:1a4693774b60 120 if(timer_debug.read_ms()<TIMER_ENTER_DEBUG_MODE)
nikitateggi 51:1a4693774b60 121 {
nikitateggi 51:1a4693774b60 122 debug_status_monitoring();
nikitateggi 51:1a4693774b60 123 }
nikitateggi 51:1a4693774b60 124 }
nikitateggi 51:1a4693774b60 125
nikitateggi 45:067673dae242 126 battery_status_monitoring(); // to monitior battery status after every 10 min.
nikitateggi 45:067673dae242 127
nikitateggi 45:067673dae242 128 if (get_battery_status() == BATTERY_SCREEN_NO_CHARGE_CONDITION) // to check battery status and take action
nikitateggi 45:067673dae242 129 {
nikitateggi 45:067673dae242 130 DisableTouch();
nikitateggi 45:067673dae242 131 }
nikitateggi 45:067673dae242 132 else
nikitateggi 45:067673dae242 133 {
nikitateggi 45:067673dae242 134 EnableTouch();
rashmivenkataramaiah 58:b75255e6e4c3 135 //gc.printf("c");
rashmivenkataramaiah 57:e82d4bd6b2c0 136 switch(main_state) // main state machine
nikitateggi 45:067673dae242 137 {
rashmivenkataramaiah 57:e82d4bd6b2c0 138 case GET_TOUCH_DISP_STATE:
rashmivenkataramaiah 57:e82d4bd6b2c0 139
rashmivenkataramaiah 57:e82d4bd6b2c0 140 state_display = poc2p0_bt_receive(state_touch);
rashmivenkataramaiah 57:e82d4bd6b2c0 141 //state_display = touch(state_touch); // touch state
rashmivenkataramaiah 57:e82d4bd6b2c0 142 display(state_display); //display state
rashmivenkataramaiah 57:e82d4bd6b2c0 143
rashmivenkataramaiah 57:e82d4bd6b2c0 144 if(state_display == 12)
rashmivenkataramaiah 57:e82d4bd6b2c0 145 {
rashmivenkataramaiah 57:e82d4bd6b2c0 146 main_state = BT_TX_STATE;
rashmivenkataramaiah 57:e82d4bd6b2c0 147 }
rashmivenkataramaiah 57:e82d4bd6b2c0 148
rashmivenkataramaiah 57:e82d4bd6b2c0 149 break;
avp2417 37:92fcbf22bf91 150
rashmivenkataramaiah 57:e82d4bd6b2c0 151 case BT_TX_STATE:
nikitateggi 45:067673dae242 152 DisableTouch(); // bluetooth send
nikitateggi 45:067673dae242 153 timer_bt.start();
nikitateggi 45:067673dae242 154 if(get_timer_bluetooth()<TIMER_RXACK_BTCONNECTION) // bluetooth connection timer 15 sec
nikitateggi 45:067673dae242 155 {
nikitateggi 44:05dbea558c9a 156
nikitateggi 45:067673dae242 157 if(BT==1) // checking for bluetooth connection
nikitateggi 45:067673dae242 158 {
nikitateggi 44:05dbea558c9a 159
nikitateggi 45:067673dae242 160 timer_bt.stop(); // stop the timer once connected to app
nikitateggi 45:067673dae242 161 timer_bt.reset();
nikitateggi 44:05dbea558c9a 162 BT_connection() ; // displaying connection on bluetooth
nikitateggi 44:05dbea558c9a 163 state_r=bt_send(state_t);
nikitateggi 45:067673dae242 164 timer_bt.start();
nikitateggi 47:3716dd41dba6 165 //gc.printf(" state_t = %d\n", state_t);
nikitateggi 48:f90edb35a20e 166 // gc.printf(" state_r = %d\n", state_r);
nikitateggi 44:05dbea558c9a 167 if (state_r==0) // if the state received is zero, then there is no new file to send
nikitateggi 45:067673dae242 168 {
nikitateggi 45:067673dae242 169 timer_bt.stop(); // stop the timer once connected to app
nikitateggi 45:067673dae242 170 timer_bt.reset();
nikitateggi 45:067673dae242 171 BT_finished(); // screen to display communication finished
nikitateggi 45:067673dae242 172 screen_BT_return(); //screen to return back
nikitateggi 45:067673dae242 173 EnableTouch();
rashmivenkataramaiah 57:e82d4bd6b2c0 174 main_state=GET_TOUCH_DISP_STATE;
nikitateggi 45:067673dae242 175 state_touch=12;
nikitateggi 45:067673dae242 176 break;
nikitateggi 44:05dbea558c9a 177 }
nikitateggi 44:05dbea558c9a 178
nikitateggi 44:05dbea558c9a 179 else
nikitateggi 44:05dbea558c9a 180 {
rashmivenkataramaiah 57:e82d4bd6b2c0 181 main_state=BT_RX_STATE; // move to receving stste of bluetooth
nikitateggi 44:05dbea558c9a 182 }
nikitateggi 44:05dbea558c9a 183
nikitateggi 45:067673dae242 184 }
nikitateggi 44:05dbea558c9a 185
nikitateggi 45:067673dae242 186 else
nikitateggi 45:067673dae242 187 {
nikitateggi 45:067673dae242 188 BT_no_connection(); // display screen to show that there is no connection
nikitateggi 45:067673dae242 189 }
nikitateggi 45:067673dae242 190 }
nikitateggi 44:05dbea558c9a 191
nikitateggi 45:067673dae242 192 else
rashmivenkataramaiah 60:3bb9e9ba3205 193 {
rashmivenkataramaiah 60:3bb9e9ba3205 194 poc2p0_send_device_msg_res(MSG_REJECTED_RES); //added on 14-Nov by rashmi
rashmivenkataramaiah 60:3bb9e9ba3205 195 BT_no_connection(); // display screen to show that there is no connection
nikitateggi 45:067673dae242 196 gc.printf("stopped");
rashmivenkataramaiah 60:3bb9e9ba3205 197 screen_BT_return(); // button to return
nikitateggi 45:067673dae242 198 EnableTouch();
rashmivenkataramaiah 57:e82d4bd6b2c0 199 main_state=GET_TOUCH_DISP_STATE;
nikitateggi 45:067673dae242 200 state_touch=12;
nikitateggi 49:3ff80c4bc1be 201 //sd_close();
nikitateggi 45:067673dae242 202 timer_bt.stop();
nikitateggi 45:067673dae242 203 timer_bt.reset();
nikitateggi 45:067673dae242 204 }
nikitateggi 45:067673dae242 205 break;
nikitateggi 19:1650bbc923cc 206
rashmivenkataramaiah 57:e82d4bd6b2c0 207 case BT_RX_STATE:
nikitateggi 45:067673dae242 208 DisableTouch();
nikitateggi 44:05dbea558c9a 209
nikitateggi 45:067673dae242 210 if(get_timer_bluetooth()<TIMER_RXACK_BTCONNECTION)
nikitateggi 45:067673dae242 211 {
nikitateggi 45:067673dae242 212 if (blue1.readable()) // if there is data to receive enter the loop
nikitateggi 45:067673dae242 213 {
nikitateggi 46:162ed3f051b2 214
nikitateggi 46:162ed3f051b2 215 state_t=bt_receive(state_r);
nikitateggi 48:f90edb35a20e 216 // gc.printf(" state_t = %d\n", state_t);
nikitateggi 47:3716dd41dba6 217 // gc.printf(" state_r = %d\n", state_r);
nikitateggi 45:067673dae242 218 timer_bt.stop();
nikitateggi 45:067673dae242 219 timer_bt.reset();
nikitateggi 45:067673dae242 220 if(state_t ==0) // if state_t is zero, there is no other file to send
nikitateggi 45:067673dae242 221 {
nikitateggi 45:067673dae242 222
nikitateggi 45:067673dae242 223 BT_finished();
nikitateggi 45:067673dae242 224 screen_BT_return();
nikitateggi 45:067673dae242 225 EnableTouch();
rashmivenkataramaiah 57:e82d4bd6b2c0 226 main_state=GET_TOUCH_DISP_STATE;
nikitateggi 45:067673dae242 227 state_touch=12; // jumping to touch case 12
nikitateggi 45:067673dae242 228 break;
nikitateggi 45:067673dae242 229 }
nikitateggi 45:067673dae242 230 else // move to bluetooth transmit if the states are 1,2,3,4
nikitateggi 45:067673dae242 231 {
rashmivenkataramaiah 57:e82d4bd6b2c0 232 main_state=BT_TX_STATE;
nikitateggi 45:067673dae242 233 }
nikitateggi 45:067673dae242 234 }
nikitateggi 45:067673dae242 235 }
nikitateggi 44:05dbea558c9a 236
nikitateggi 45:067673dae242 237 else
nikitateggi 45:067673dae242 238 {
nikitateggi 45:067673dae242 239 DisableTouch();
nikitateggi 45:067673dae242 240 BT_no_connection(); // display screen to show that there is no connection
nikitateggi 45:067673dae242 241 gc.printf("stopped");
nikitateggi 45:067673dae242 242 screen_BT_return(); // button to return
nikitateggi 45:067673dae242 243 EnableTouch();
rashmivenkataramaiah 57:e82d4bd6b2c0 244 main_state=GET_TOUCH_DISP_STATE;
nikitateggi 45:067673dae242 245 state_touch=12;
nikitateggi 47:3716dd41dba6 246 state_t = 1; // state to transmit to bluetooth
nikitateggi 48:f90edb35a20e 247 state_r = 0; // state to receive from bluetooth
nikitateggi 46:162ed3f051b2 248 sd_close(); ///close the opened file which was used for bluetooth
nikitateggi 45:067673dae242 249 timer_bt.stop();
nikitateggi 45:067673dae242 250 timer_bt.reset();
nikitateggi 45:067673dae242 251 }
rashmivenkataramaiah 57:e82d4bd6b2c0 252 break;
rashmivenkataramaiah 57:e82d4bd6b2c0 253 default:
rashmivenkataramaiah 57:e82d4bd6b2c0 254 break;
nikitateggi 45:067673dae242 255 }
nikitateggi 45:067673dae242 256 }
nikitateggi 45:067673dae242 257 }
nikitateggi 45:067673dae242 258
nikitateggi 22:ffa88619551d 259 }
nikitateggi 19:1650bbc923cc 260 uint8_t touch(uint8_t state)
nikitateggi 19:1650bbc923cc 261 {
nikitateggi 19:1650bbc923cc 262 static uint8_t state1=0;
rashmivenkataramaiah 41:1141a75eacc4 263 detect_touch(state); // determine the touch points
nikitateggi 1:8316c23ec6b9 264
rashmivenkataramaiah 41:1141a75eacc4 265 switch(state) // state for touch
nikitateggi 0:c47fb0c1bbf6 266 {
rashmivenkataramaiah 41:1141a75eacc4 267 case 1:
rashmivenkataramaiah 41:1141a75eacc4 268 state1=touch_main(); // determining the touch for main screen
nikitateggi 0:c47fb0c1bbf6 269 state=0;
nikitateggi 1:8316c23ec6b9 270 nstate1=state1;
rashmivenkataramaiah 41:1141a75eacc4 271 break;
nikitateggi 0:c47fb0c1bbf6 272
nikitateggi 0:c47fb0c1bbf6 273 case 2:
rashmivenkataramaiah 41:1141a75eacc4 274 state1=touch_main_1(); // determining the touch for SYSTEM CONFIGURATION screen
nikitateggi 0:c47fb0c1bbf6 275 state=0;
nikitateggi 3:9a06c2bed650 276 nstate1=state1;
nikitateggi 0:c47fb0c1bbf6 277 break;
nikitateggi 0:c47fb0c1bbf6 278
nikitateggi 0:c47fb0c1bbf6 279 case 3:
rashmivenkataramaiah 41:1141a75eacc4 280 state1=touch_main_2(); // determining the touch for TEST screen
nikitateggi 0:c47fb0c1bbf6 281 state=0;
nikitateggi 1:8316c23ec6b9 282 nstate1=state1;
nikitateggi 0:c47fb0c1bbf6 283 break;
nikitateggi 0:c47fb0c1bbf6 284
nikitateggi 0:c47fb0c1bbf6 285 case 4:
rashmivenkataramaiah 41:1141a75eacc4 286 state1=touch_glc(); // determining the touch for GLC screen
nikitateggi 1:8316c23ec6b9 287 state=0;
nikitateggi 1:8316c23ec6b9 288 nstate1=state1;
nikitateggi 1:8316c23ec6b9 289 break;
nikitateggi 1:8316c23ec6b9 290
nikitateggi 1:8316c23ec6b9 291 case 5:
rashmivenkataramaiah 41:1141a75eacc4 292 state1=touch_ecg(); // determining the touch for ECG screen
nikitateggi 1:8316c23ec6b9 293 state=0;
nikitateggi 3:9a06c2bed650 294 nstate1=state1;
nikitateggi 3:9a06c2bed650 295 break;
nikitateggi 4:6bd81bb1790d 296 case 6:
rashmivenkataramaiah 41:1141a75eacc4 297 state1=touch_ret(); // determining the touch for returning back to the main screen
nikitateggi 0:c47fb0c1bbf6 298 state=0;
nikitateggi 3:9a06c2bed650 299 nstate1=state1;
nikitateggi 1:8316c23ec6b9 300 break;
nikitateggi 1:8316c23ec6b9 301
nikitateggi 4:6bd81bb1790d 302 case 7:
rashmivenkataramaiah 41:1141a75eacc4 303 state1=touch_again_ecg(); // determining the touch when readings are taken more than once screen
nikitateggi 1:8316c23ec6b9 304 state=0;
nikitateggi 1:8316c23ec6b9 305 nstate1=state1;
nikitateggi 1:8316c23ec6b9 306 break;
nikitateggi 0:c47fb0c1bbf6 307
nikitateggi 3:9a06c2bed650 308 case 8:
rashmivenkataramaiah 41:1141a75eacc4 309 state1=touch_bp(); // determining the touch for BP screen
nikitateggi 3:9a06c2bed650 310 state=0;
nikitateggi 3:9a06c2bed650 311 nstate1=state1;
nikitateggi 3:9a06c2bed650 312 break;
nikitateggi 3:9a06c2bed650 313
rashmivenkataramaiah 41:1141a75eacc4 314 case 9:
rashmivenkataramaiah 41:1141a75eacc4 315 state1=touch_again_glc();
suhasini 5:a3ea7c82b7e1 316 state=0;
suhasini 5:a3ea7c82b7e1 317 nstate1=state1;
suhasini 5:a3ea7c82b7e1 318 break;
nikitateggi 3:9a06c2bed650 319
rashmivenkataramaiah 41:1141a75eacc4 320 case 10 :
rashmivenkataramaiah 41:1141a75eacc4 321 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 322 wait_ms(300);
rashmivenkataramaiah 41:1141a75eacc4 323 EnableTouch();
rashmivenkataramaiah 41:1141a75eacc4 324 state=nstate;
rashmivenkataramaiah 41:1141a75eacc4 325 break;
suhasini 5:a3ea7c82b7e1 326
rashmivenkataramaiah 57:e82d4bd6b2c0 327
rashmivenkataramaiah 41:1141a75eacc4 328 case 11:
rashmivenkataramaiah 41:1141a75eacc4 329 state1=touch_again_bp();
rashmivenkataramaiah 41:1141a75eacc4 330 state=0;
rashmivenkataramaiah 41:1141a75eacc4 331 nstate1=state1;
rashmivenkataramaiah 41:1141a75eacc4 332 break;
suhasini 5:a3ea7c82b7e1 333
rashmivenkataramaiah 41:1141a75eacc4 334 case 12:
rashmivenkataramaiah 41:1141a75eacc4 335 state1=BT_return();
rashmivenkataramaiah 41:1141a75eacc4 336 state=0;
rashmivenkataramaiah 41:1141a75eacc4 337 nstate1=state1;
rashmivenkataramaiah 41:1141a75eacc4 338 break;
nikitateggi 49:3ff80c4bc1be 339
nikitateggi 49:3ff80c4bc1be 340 case 13:
nikitateggi 49:3ff80c4bc1be 341 state1 = touch_debug(); //touch state for debug
nikitateggi 49:3ff80c4bc1be 342 //state=0;
nikitateggi 49:3ff80c4bc1be 343 nstate1=state1;
nikitateggi 49:3ff80c4bc1be 344 break;
rashmivenkataramaiah 41:1141a75eacc4 345 default :
rashmivenkataramaiah 41:1141a75eacc4 346 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 347 wait_ms(300);
rashmivenkataramaiah 41:1141a75eacc4 348 EnableTouch();
rashmivenkataramaiah 41:1141a75eacc4 349 state=nstate;
rashmivenkataramaiah 41:1141a75eacc4 350 break;
nikitateggi 1:8316c23ec6b9 351
nikitateggi 0:c47fb0c1bbf6 352 }
nikitateggi 0:c47fb0c1bbf6 353
rashmivenkataramaiah 41:1141a75eacc4 354 return state1;
rashmivenkataramaiah 41:1141a75eacc4 355 }
nikitateggi 0:c47fb0c1bbf6 356
nikitateggi 0:c47fb0c1bbf6 357
nikitateggi 19:1650bbc923cc 358 uint8_t display(uint8_t state1)
nikitateggi 19:1650bbc923cc 359 {
rashmivenkataramaiah 41:1141a75eacc4 360 static uint8_t state=0;
rashmivenkataramaiah 41:1141a75eacc4 361 static uint8_t ecg_flag=0; // ecg_flag to indicate the ecg test is already done for the same pid
rashmivenkataramaiah 41:1141a75eacc4 362 static uint8_t glc_flag=0; // glc_flag to indicate the glc test is already done for the same pid
rashmivenkataramaiah 61:ce5ad0838227 363 //uint16_t heart_rate=0;
nikitateggi 54:f2a413d5dffd 364
rashmivenkataramaiah 41:1141a75eacc4 365
rashmivenkataramaiah 64:5a76653792e8 366 switch(state1) // state for display screens
rashmivenkataramaiah 41:1141a75eacc4 367 {
nikitateggi 4:6bd81bb1790d 368
nikitateggi 1:8316c23ec6b9 369
rashmivenkataramaiah 41:1141a75eacc4 370 case 1:
rashmivenkataramaiah 41:1141a75eacc4 371 DisableTouch();
rashmivenkataramaiah 64:5a76653792e8 372 screen_main(); // main screen
nikitateggi 1:8316c23ec6b9 373 state1=0;
nikitateggi 1:8316c23ec6b9 374 state=1;
nikitateggi 1:8316c23ec6b9 375 nstate=state;
rashmivenkataramaiah 64:5a76653792e8 376 ecg_flag=0; // ecg, glc flag to determine whether the readings are taken more than once
nikitateggi 1:8316c23ec6b9 377 glc_flag=0;
rashmivenkataramaiah 41:1141a75eacc4 378 clear_filecreated_status();
rashmivenkataramaiah 64:5a76653792e8 379 battery_status_display(); //Display battery status on LCD
nikitateggi 53:cc6e65480a67 380 pid = get_filepid() + 1;
rashmivenkataramaiah 64:5a76653792e8 381 state_touch = TOUCH_STATE_HOME_SCREEN; //added on 16-Nov rashmi
nikitateggi 3:9a06c2bed650 382 EnableTouch();
nikitateggi 1:8316c23ec6b9 383 break;
nikitateggi 1:8316c23ec6b9 384
rashmivenkataramaiah 41:1141a75eacc4 385 case 2:
rashmivenkataramaiah 41:1141a75eacc4 386 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 387 screen_main_1(); // System configration screen
nikitateggi 0:c47fb0c1bbf6 388 state1=0;
nikitateggi 0:c47fb0c1bbf6 389 state=2;
nikitateggi 1:8316c23ec6b9 390 nstate=state;
nikitateggi 45:067673dae242 391 battery_status_display(); //Display battery status on LCD
nikitateggi 3:9a06c2bed650 392 EnableTouch();
nikitateggi 51:1a4693774b60 393 // timer_debug.stop();
nikitateggi 0:c47fb0c1bbf6 394 break;
nikitateggi 0:c47fb0c1bbf6 395
rashmivenkataramaiah 41:1141a75eacc4 396 case 3:
rashmivenkataramaiah 41:1141a75eacc4 397 DisableTouch();
rashmivenkataramaiah 42:c81673b04b6a 398 //sd_read(pid_btpid); //read pid from sd card
rashmivenkataramaiah 42:c81673b04b6a 399 //pid=pid_btpid[0]; //copy pid to a variable
nikitateggi 19:1650bbc923cc 400 gc.printf("pidinit=%d",pid);
rashmivenkataramaiah 41:1141a75eacc4 401 screen_main_2(pid);
rashmivenkataramaiah 41:1141a75eacc4 402 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 403 state=3;
rashmivenkataramaiah 41:1141a75eacc4 404 nstate=state;
nikitateggi 45:067673dae242 405 battery_status_display();
rashmivenkataramaiah 64:5a76653792e8 406 state_touch = TOUCH_STATE_TEST_SCREEN; //added on 16-Nov rashmi
rashmivenkataramaiah 41:1141a75eacc4 407 EnableTouch();
rashmivenkataramaiah 41:1141a75eacc4 408 break;
nikitateggi 0:c47fb0c1bbf6 409
rashmivenkataramaiah 41:1141a75eacc4 410 case 4:
rashmivenkataramaiah 41:1141a75eacc4 411 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 412 if (glc_flag==1) // glc_flag=1 when already the reading has been taken
rashmivenkataramaiah 41:1141a75eacc4 413 {
rashmivenkataramaiah 41:1141a75eacc4 414 screen_again();
rashmivenkataramaiah 41:1141a75eacc4 415 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 416 state=9;
rashmivenkataramaiah 41:1141a75eacc4 417 nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 418 }
rashmivenkataramaiah 41:1141a75eacc4 419 else
nikitateggi 19:1650bbc923cc 420 {
rashmivenkataramaiah 41:1141a75eacc4 421 screen_glc(); // glc screen
rashmivenkataramaiah 41:1141a75eacc4 422 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 423 state=4;
rashmivenkataramaiah 41:1141a75eacc4 424 nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 425 }
nikitateggi 3:9a06c2bed650 426 EnableTouch();
nikitateggi 3:9a06c2bed650 427
nikitateggi 0:c47fb0c1bbf6 428 break;
nikitateggi 1:8316c23ec6b9 429
nikitateggi 1:8316c23ec6b9 430
rashmivenkataramaiah 41:1141a75eacc4 431 case 5:
rashmivenkataramaiah 41:1141a75eacc4 432 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 433 if (ecg_flag==1)
rashmivenkataramaiah 41:1141a75eacc4 434 {
rashmivenkataramaiah 41:1141a75eacc4 435 screen_again();
rashmivenkataramaiah 41:1141a75eacc4 436 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 437 state=7;
nikitateggi 1:8316c23ec6b9 438 nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 439 }
rashmivenkataramaiah 41:1141a75eacc4 440
rashmivenkataramaiah 41:1141a75eacc4 441 else
rashmivenkataramaiah 41:1141a75eacc4 442 {
rashmivenkataramaiah 41:1141a75eacc4 443 screen_ecg(); //ecg main screen
rashmivenkataramaiah 41:1141a75eacc4 444 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 445 state=5;
nikitateggi 1:8316c23ec6b9 446 nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 447 }
rashmivenkataramaiah 41:1141a75eacc4 448 EnableTouch();
nikitateggi 1:8316c23ec6b9 449 break;
nikitateggi 1:8316c23ec6b9 450
rashmivenkataramaiah 41:1141a75eacc4 451 case 6:
rashmivenkataramaiah 41:1141a75eacc4 452 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 453 screen_bp(); // bp main screen
nikitateggi 3:9a06c2bed650 454 state1=0;
nikitateggi 3:9a06c2bed650 455 state=8;
rashmivenkataramaiah 41:1141a75eacc4 456 nstate=state;
rashmivenkataramaiah 41:1141a75eacc4 457 EnableTouch();
nikitateggi 3:9a06c2bed650 458 break;
nikitateggi 3:9a06c2bed650 459
rashmivenkataramaiah 41:1141a75eacc4 460 case 7:
rashmivenkataramaiah 41:1141a75eacc4 461 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 462 glc(pid); // glc measurement
nikitateggi 1:8316c23ec6b9 463 glc_flag=1;
nikitateggi 4:6bd81bb1790d 464 state1=0;
nikitateggi 4:6bd81bb1790d 465 screen_glc_2();
rashmivenkataramaiah 41:1141a75eacc4 466 state=6;
rashmivenkataramaiah 41:1141a75eacc4 467 eprom_write_8(30,0);
rashmivenkataramaiah 62:7d2a844ed639 468 nstate=state;
rashmivenkataramaiah 63:76be11c4a208 469 wait(2); //added on 16-NOV rashmi
rashmivenkataramaiah 64:5a76653792e8 470 screen_main_2(pid); //added on 16-NOV rashmi
rashmivenkataramaiah 64:5a76653792e8 471 state_touch = TOUCH_STATE_TEST_SCREEN; //added on 16-Nov rashmi
rashmivenkataramaiah 41:1141a75eacc4 472 EnableTouch();
nikitateggi 1:8316c23ec6b9 473 break;
nikitateggi 1:8316c23ec6b9 474
nikitateggi 3:9a06c2bed650 475 case 8: DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 476 ecg_countdown(); // countdown before ecg capture
rashmivenkataramaiah 57:e82d4bd6b2c0 477
rashmivenkataramaiah 57:e82d4bd6b2c0 478 // send ECG test in progress messages to mobile application
rashmivenkataramaiah 57:e82d4bd6b2c0 479 poc2p0_send_device_msg_res(ECG_TEST_IN_PROGRESS_RES);
rashmivenkataramaiah 57:e82d4bd6b2c0 480
rashmivenkataramaiah 61:ce5ad0838227 481 ecg(pid); // capturing ecg
nikitateggi 1:8316c23ec6b9 482 state1=0;
rashmivenkataramaiah 61:ce5ad0838227 483 ecg_flag=1;
nikitateggi 1:8316c23ec6b9 484 state=6;
nikitateggi 24:d992ee8369f4 485 eprom_write_8(30,1);
nikitateggi 20:7c64e6ecad76 486 nstate=state;
nikitateggi 20:7c64e6ecad76 487 screen_ecg_bp();
rashmivenkataramaiah 63:76be11c4a208 488 wait(2); //added on 16-NOV rashmi
rashmivenkataramaiah 63:76be11c4a208 489 screen_main_2(pid); //added on 16-NOV rashmi
rashmivenkataramaiah 64:5a76653792e8 490 state_touch = TOUCH_STATE_TEST_SCREEN; //added on 16-Nov rashmi
nikitateggi 4:6bd81bb1790d 491 EnableTouch();
nikitateggi 1:8316c23ec6b9 492 break;
rashmivenkataramaiah 41:1141a75eacc4 493
rashmivenkataramaiah 57:e82d4bd6b2c0 494 case 9:
nikitateggi 3:9a06c2bed650 495 DisableTouch();
rashmivenkataramaiah 41:1141a75eacc4 496 screen_bp2(); // bp main screen
rashmivenkataramaiah 41:1141a75eacc4 497 bp_countdown(); // countdown for bp
rashmivenkataramaiah 57:e82d4bd6b2c0 498
rashmivenkataramaiah 57:e82d4bd6b2c0 499 // send BP test in progress response to mobile application
rashmivenkataramaiah 57:e82d4bd6b2c0 500 poc2p0_send_device_msg_res(BP_TEST_IN_PROGRESS_RES);
rashmivenkataramaiah 57:e82d4bd6b2c0 501
rashmivenkataramaiah 41:1141a75eacc4 502 bp(pid); // measuring bp earlier bp() changed to bp(pid) 28/4/2017
nikitateggi 3:9a06c2bed650 503 state1=0;
nikitateggi 3:9a06c2bed650 504 state=6;
nikitateggi 24:d992ee8369f4 505 eprom_write_8(30,2);
nikitateggi 3:9a06c2bed650 506 nstate=state;
rashmivenkataramaiah 63:76be11c4a208 507 wait(2); //added on 16-NOV rashmi
rashmivenkataramaiah 63:76be11c4a208 508 screen_main_2(pid); //added on 16-NOV rashmi
rashmivenkataramaiah 64:5a76653792e8 509 state_touch = TOUCH_STATE_TEST_SCREEN; //added on 16-Nov rashmi
nikitateggi 3:9a06c2bed650 510 EnableTouch();
nikitateggi 3:9a06c2bed650 511 break;
nikitateggi 31:0f67acfc6236 512
nikitateggi 31:0f67acfc6236 513
nikitateggi 31:0f67acfc6236 514 case 10 : DisableTouch();
nikitateggi 31:0f67acfc6236 515 wait_ms(300);
nikitateggi 31:0f67acfc6236 516 EnableTouch();
nikitateggi 31:0f67acfc6236 517 state=nstate;
nikitateggi 31:0f67acfc6236 518 break;
nikitateggi 31:0f67acfc6236 519
rashmivenkataramaiah 41:1141a75eacc4 520 case 11 :
rashmivenkataramaiah 41:1141a75eacc4 521 DisableTouch();
rashmivenkataramaiah 42:c81673b04b6a 522 screen_patient_info(get_filepid(), get_btpid());
rashmivenkataramaiah 41:1141a75eacc4 523 state1=0;
rashmivenkataramaiah 41:1141a75eacc4 524 state=12;
rashmivenkataramaiah 41:1141a75eacc4 525 EnableTouch();
nikitateggi 49:3ff80c4bc1be 526 break;
nikitateggi 49:3ff80c4bc1be 527
nikitateggi 49:3ff80c4bc1be 528 case 13 : //display screen for debug
nikitateggi 49:3ff80c4bc1be 529 DisableTouch();
nikitateggi 49:3ff80c4bc1be 530 screen_debug();
nikitateggi 49:3ff80c4bc1be 531 state1=0;
nikitateggi 49:3ff80c4bc1be 532 state=13;
nikitateggi 49:3ff80c4bc1be 533 nstate=state;
nikitateggi 49:3ff80c4bc1be 534 EnableTouch();
nikitateggi 49:3ff80c4bc1be 535 break;
nikitateggi 49:3ff80c4bc1be 536
nikitateggi 49:3ff80c4bc1be 537 case 14 :
nikitateggi 49:3ff80c4bc1be 538 DisableTouch(); //state to delete SD card
nikitateggi 49:3ff80c4bc1be 539 delete_sdcard();
nikitateggi 49:3ff80c4bc1be 540 screen_sdcard_delete();
nikitateggi 49:3ff80c4bc1be 541 state1=0;
nikitateggi 49:3ff80c4bc1be 542 state= 12;
nikitateggi 49:3ff80c4bc1be 543 nstate=state;
nikitateggi 49:3ff80c4bc1be 544 EnableTouch();
nikitateggi 49:3ff80c4bc1be 545 break;
nikitateggi 49:3ff80c4bc1be 546
nikitateggi 49:3ff80c4bc1be 547 case 15 :
nikitateggi 49:3ff80c4bc1be 548 DisableTouch();
nikitateggi 51:1a4693774b60 549 gc.printf("Total Patients' data available : %d\n",get_filepid()); //state to read SD card
nikitateggi 50:b42238e7f46d 550 gc.printf("Enter the PID number");
nikitateggi 50:b42238e7f46d 551 read_sdcard_file();
nikitateggi 51:1a4693774b60 552 screen_sdcard_read();
nikitateggi 49:3ff80c4bc1be 553 state1=0;
nikitateggi 49:3ff80c4bc1be 554 state= 12;
nikitateggi 49:3ff80c4bc1be 555 nstate=state;
nikitateggi 49:3ff80c4bc1be 556 EnableTouch();
nikitateggi 49:3ff80c4bc1be 557 break;
nikitateggi 31:0f67acfc6236 558
nikitateggi 1:8316c23ec6b9 559 default :
rashmivenkataramaiah 57:e82d4bd6b2c0 560
nikitateggi 1:8316c23ec6b9 561 state1=nstate1;
rashmivenkataramaiah 57:e82d4bd6b2c0 562 break;
rashmivenkataramaiah 57:e82d4bd6b2c0 563
rashmivenkataramaiah 57:e82d4bd6b2c0 564
nikitateggi 0:c47fb0c1bbf6 565 }
rashmivenkataramaiah 57:e82d4bd6b2c0 566
rashmivenkataramaiah 57:e82d4bd6b2c0 567
rashmivenkataramaiah 57:e82d4bd6b2c0 568
rashmivenkataramaiah 41:1141a75eacc4 569 return state;
rashmivenkataramaiah 57:e82d4bd6b2c0 570
rashmivenkataramaiah 41:1141a75eacc4 571 }
rashmivenkataramaiah 41:1141a75eacc4 572
rashmivenkataramaiah 41:1141a75eacc4 573
rashmivenkataramaiah 41:1141a75eacc4 574 bool get_filecreated_status(void) //function to get file created status
rashmivenkataramaiah 41:1141a75eacc4 575 {
rashmivenkataramaiah 41:1141a75eacc4 576 return file_created_status;
rashmivenkataramaiah 41:1141a75eacc4 577 }
rashmivenkataramaiah 41:1141a75eacc4 578
rashmivenkataramaiah 41:1141a75eacc4 579 void set_filecreated_status(void) //function to set file created status
rashmivenkataramaiah 41:1141a75eacc4 580 {
rashmivenkataramaiah 42:c81673b04b6a 581 file_created_status = true;
rashmivenkataramaiah 41:1141a75eacc4 582 }
rashmivenkataramaiah 41:1141a75eacc4 583
rashmivenkataramaiah 41:1141a75eacc4 584
rashmivenkataramaiah 41:1141a75eacc4 585 void clear_filecreated_status(void) //function to clear file created status
rashmivenkataramaiah 41:1141a75eacc4 586 {
rashmivenkataramaiah 42:c81673b04b6a 587 file_created_status = false;
rashmivenkataramaiah 42:c81673b04b6a 588 }
rashmivenkataramaiah 42:c81673b04b6a 589
rashmivenkataramaiah 43:85a7f399cb9d 590 void increment_filepid (void) //increment pid if a test is completed
rashmivenkataramaiah 42:c81673b04b6a 591 {
rashmivenkataramaiah 43:85a7f399cb9d 592 //uint32_t filepid_btpid[2] = {};
rashmivenkataramaiah 42:c81673b04b6a 593
rashmivenkataramaiah 42:c81673b04b6a 594 //set_filecreated_status(); //set it to make it append mode
rashmivenkataramaiah 42:c81673b04b6a 595 sd_read(filepid_btpid); //read pid from sd card
rashmivenkataramaiah 42:c81673b04b6a 596 filepid_btpid[0] = filepid_btpid[0] + 1; //increment it by 1
rashmivenkataramaiah 42:c81673b04b6a 597 sd_write(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 42:c81673b04b6a 598
rashmivenkataramaiah 42:c81673b04b6a 599 }
rashmivenkataramaiah 42:c81673b04b6a 600
rashmivenkataramaiah 43:85a7f399cb9d 601 void increment_btpid (void) //increment pid if a test is completed
rashmivenkataramaiah 43:85a7f399cb9d 602 {
rashmivenkataramaiah 43:85a7f399cb9d 603 //uint32_t filepid_btpid[2] = {};
rashmivenkataramaiah 43:85a7f399cb9d 604
rashmivenkataramaiah 43:85a7f399cb9d 605 //set_filecreated_status(); //set it to make it append mode
rashmivenkataramaiah 43:85a7f399cb9d 606 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 45:067673dae242 607 filepid_btpid[1] = filepid_btpid[1] + 1; //increment it by 1
rashmivenkataramaiah 43:85a7f399cb9d 608 sd_write(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 43:85a7f399cb9d 609
rashmivenkataramaiah 43:85a7f399cb9d 610 }
rashmivenkataramaiah 43:85a7f399cb9d 611
rashmivenkataramaiah 42:c81673b04b6a 612 uint32_t get_filepid(void)
rashmivenkataramaiah 42:c81673b04b6a 613 {
rashmivenkataramaiah 42:c81673b04b6a 614 //uint32_t filepid_btpid[2] = {};
rashmivenkataramaiah 42:c81673b04b6a 615 uint32_t filepid = 0;
rashmivenkataramaiah 42:c81673b04b6a 616
rashmivenkataramaiah 42:c81673b04b6a 617 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 45:067673dae242 618 filepid = filepid_btpid[0];
rashmivenkataramaiah 42:c81673b04b6a 619 return filepid;
rashmivenkataramaiah 42:c81673b04b6a 620
rashmivenkataramaiah 42:c81673b04b6a 621 }
rashmivenkataramaiah 42:c81673b04b6a 622
rashmivenkataramaiah 42:c81673b04b6a 623 void store_filepid(uint32_t pid)
rashmivenkataramaiah 42:c81673b04b6a 624 {
rashmivenkataramaiah 42:c81673b04b6a 625 //uint32_t filepid_btpid[2] = {};
rashmivenkataramaiah 42:c81673b04b6a 626 sd_read(filepid_btpid); //read pid from sd card
rashmivenkataramaiah 42:c81673b04b6a 627 filepid_btpid[0] = pid;
rashmivenkataramaiah 42:c81673b04b6a 628 sd_write(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 42:c81673b04b6a 629
rashmivenkataramaiah 42:c81673b04b6a 630 }
rashmivenkataramaiah 42:c81673b04b6a 631
rashmivenkataramaiah 42:c81673b04b6a 632 uint32_t get_btpid(void)
rashmivenkataramaiah 42:c81673b04b6a 633 {
rashmivenkataramaiah 42:c81673b04b6a 634 //uint32_t filepid_btpid[2] = {};
rashmivenkataramaiah 42:c81673b04b6a 635 uint32_t btpid = 0;
rashmivenkataramaiah 42:c81673b04b6a 636
rashmivenkataramaiah 42:c81673b04b6a 637 sd_read(filepid_btpid); //read pid from sd card
nikitateggi 45:067673dae242 638 btpid = filepid_btpid[1];
rashmivenkataramaiah 42:c81673b04b6a 639 return btpid;
rashmivenkataramaiah 42:c81673b04b6a 640
rashmivenkataramaiah 42:c81673b04b6a 641 }
rashmivenkataramaiah 42:c81673b04b6a 642
rashmivenkataramaiah 42:c81673b04b6a 643 void store_btpid(uint32_t bt_pid)
rashmivenkataramaiah 42:c81673b04b6a 644 {
rashmivenkataramaiah 42:c81673b04b6a 645 //uint32_t filepid_btpid[2] = {};
rashmivenkataramaiah 42:c81673b04b6a 646
rashmivenkataramaiah 42:c81673b04b6a 647 sd_read(filepid_btpid); //read pid from sd card
rashmivenkataramaiah 42:c81673b04b6a 648 filepid_btpid[1] = bt_pid;
rashmivenkataramaiah 42:c81673b04b6a 649 sd_write(filepid_btpid); //write it back to sd card
rashmivenkataramaiah 42:c81673b04b6a 650
rashmivenkataramaiah 42:c81673b04b6a 651 }
rashmivenkataramaiah 42:c81673b04b6a 652
nikitateggi 45:067673dae242 653
nikitateggi 44:05dbea558c9a 654 uint32_t get_timer_bluetooth()
nikitateggi 44:05dbea558c9a 655 {
nikitateggi 45:067673dae242 656 return timer_bt.read_ms();
nikitateggi 44:05dbea558c9a 657 }
nikitateggi 45:067673dae242 658
nikitateggi 45:067673dae242 659 void battery_status_monitoring()
nikitateggi 45:067673dae242 660 {
nikitateggi 45:067673dae242 661 if(timer_battery.read_ms() > BATTERY_TIMER_VALUE )
nikitateggi 45:067673dae242 662 {
nikitateggi 45:067673dae242 663 battery_monitor();
nikitateggi 45:067673dae242 664 timer_battery.reset();
nikitateggi 45:067673dae242 665 }
nikitateggi 49:3ff80c4bc1be 666 }
nikitateggi 49:3ff80c4bc1be 667
nikitateggi 51:1a4693774b60 668 bool read_debug_status()
nikitateggi 51:1a4693774b60 669 {
nikitateggi 52:7d9ff7781bdc 670 // gc.printf("debug_mode=%d\n",debug_mode);
nikitateggi 51:1a4693774b60 671 return debug_mode;
nikitateggi 51:1a4693774b60 672 }
nikitateggi 51:1a4693774b60 673
nikitateggi 51:1a4693774b60 674 void debug_status_monitoring()
nikitateggi 51:1a4693774b60 675 {
nikitateggi 51:1a4693774b60 676
nikitateggi 51:1a4693774b60 677
nikitateggi 54:f2a413d5dffd 678 //if(get_timer_debug()<TIMER_ENTER_DEBUG_MODE)
nikitateggi 54:f2a413d5dffd 679 //{
nikitateggi 51:1a4693774b60 680 if (gc.readable()) // check for the user input
nikitateggi 51:1a4693774b60 681 {
nikitateggi 51:1a4693774b60 682
nikitateggi 51:1a4693774b60 683 while (gc.readable()!= '\n') // read till the newline
nikitateggi 51:1a4693774b60 684 {
nikitateggi 51:1a4693774b60 685
nikitateggi 51:1a4693774b60 686 gc.scanf("%s", debug_message_rx); // store the message typed in buffer
nikitateggi 51:1a4693774b60 687 gc.printf("%s", debug_message_rx);
nikitateggi 51:1a4693774b60 688 break;
nikitateggi 51:1a4693774b60 689 }
nikitateggi 51:1a4693774b60 690
nikitateggi 51:1a4693774b60 691
nikitateggi 51:1a4693774b60 692 if (strcmp(debug_message_rx, debug_message) == 0) // compare the message with the required one
nikitateggi 51:1a4693774b60 693 {
nikitateggi 54:f2a413d5dffd 694 debug_mode = true; // enable the debug mode status
nikitateggi 51:1a4693774b60 695 gc.printf("entered into debug mode\n");
nikitateggi 51:1a4693774b60 696 timer_debug.reset();
nikitateggi 51:1a4693774b60 697 timer_debug.start(); // timer is started in orede
nikitateggi 51:1a4693774b60 698 }
nikitateggi 51:1a4693774b60 699 }
nikitateggi 54:f2a413d5dffd 700 //}
nikitateggi 51:1a4693774b60 701
nikitateggi 51:1a4693774b60 702 }
nikitateggi 51:1a4693774b60 703
nikitateggi 51:1a4693774b60 704 uint32_t get_timer_debug() // timer for enabling debug option
nikitateggi 51:1a4693774b60 705 {
nikitateggi 51:1a4693774b60 706 if(timer_debug.read_ms()>TIMER_ENABLE_DEBUG_MODE)
nikitateggi 51:1a4693774b60 707 {
nikitateggi 51:1a4693774b60 708 timer_debug.stop();
nikitateggi 51:1a4693774b60 709 }
nikitateggi 51:1a4693774b60 710 return timer_debug.read_ms();
nikitateggi 51:1a4693774b60 711 }
nikitateggi 51:1a4693774b60 712
rashmivenkataramaiah 57:e82d4bd6b2c0 713 // this command response to all the remaining command which doesn't have any data in response
rashmivenkataramaiah 57:e82d4bd6b2c0 714 void poc2p0_send_device_msg_res(uint8_t response_cmd)
rashmivenkataramaiah 57:e82d4bd6b2c0 715 {
rashmivenkataramaiah 57:e82d4bd6b2c0 716 poc2p0_device_msg_response poc2p0_device_msg_res = {0x00u};
nikitateggi 51:1a4693774b60 717
rashmivenkataramaiah 57:e82d4bd6b2c0 718 poc2p0_device_msg_res.sos = SOS_EOS;
rashmivenkataramaiah 57:e82d4bd6b2c0 719 poc2p0_device_msg_res.cmd = response_cmd;
rashmivenkataramaiah 57:e82d4bd6b2c0 720 poc2p0_device_msg_res.length = ZERO_DATA_LEN;
rashmivenkataramaiah 57:e82d4bd6b2c0 721
rashmivenkataramaiah 57:e82d4bd6b2c0 722 poc2p0_device_msg_res.eos = SOS_EOS;
rashmivenkataramaiah 57:e82d4bd6b2c0 723
rashmivenkataramaiah 59:dadb88794375 724 poc2p0_device_msg_res.chksum = checksum_struct((uint8_t *)&poc2p0_device_msg_res.cmd, (sizeof(poc2p0_device_msg_res)-1));
rashmivenkataramaiah 57:e82d4bd6b2c0 725
rashmivenkataramaiah 59:dadb88794375 726 //blue1.puts((const char *)&poc2p0_device_msg_res);
rashmivenkataramaiah 61:ce5ad0838227 727 blue1.printf("%2x\n",poc2p0_device_msg_res.sos);
rashmivenkataramaiah 61:ce5ad0838227 728 blue1.printf("%2x\n",poc2p0_device_msg_res.cmd);
rashmivenkataramaiah 61:ce5ad0838227 729 blue1.printf("%2x\n",poc2p0_device_msg_res.length);
rashmivenkataramaiah 61:ce5ad0838227 730 blue1.printf("%2x\n",poc2p0_device_msg_res.eos);
rashmivenkataramaiah 61:ce5ad0838227 731 blue1.printf("%2x\n",poc2p0_device_msg_res.chksum);
rashmivenkataramaiah 61:ce5ad0838227 732 blue1.printf("\n");
rashmivenkataramaiah 61:ce5ad0838227 733
rashmivenkataramaiah 59:dadb88794375 734 gc.printf("%2x\n",poc2p0_device_msg_res.sos);
rashmivenkataramaiah 59:dadb88794375 735 gc.printf("%2x\n",poc2p0_device_msg_res.cmd);
rashmivenkataramaiah 59:dadb88794375 736 gc.printf("%2x\n",poc2p0_device_msg_res.length);
rashmivenkataramaiah 59:dadb88794375 737 gc.printf("%2x\n",poc2p0_device_msg_res.eos);
rashmivenkataramaiah 59:dadb88794375 738 gc.printf("%2x\n",poc2p0_device_msg_res.chksum);
rashmivenkataramaiah 59:dadb88794375 739 gc.printf("\n");
rashmivenkataramaiah 59:dadb88794375 740
rashmivenkataramaiah 61:ce5ad0838227 741 //gc.puts((const char *)&poc2p0_device_msg_res);
rashmivenkataramaiah 57:e82d4bd6b2c0 742
rashmivenkataramaiah 57:e82d4bd6b2c0 743 }
rashmivenkataramaiah 57:e82d4bd6b2c0 744
rashmivenkataramaiah 57:e82d4bd6b2c0 745 // this command response to heartbeat message request send by bluetooth device
rashmivenkataramaiah 57:e82d4bd6b2c0 746 void poc2p0_send_device_heartbeat_msg_res(uint8_t curr_touch_state)
rashmivenkataramaiah 57:e82d4bd6b2c0 747 {
rashmivenkataramaiah 57:e82d4bd6b2c0 748 poc2p0_device_heartbeat_response poc2p0_device_heartbeat_res = {0x00u};
rashmivenkataramaiah 57:e82d4bd6b2c0 749
rashmivenkataramaiah 57:e82d4bd6b2c0 750 // RTC operations
rashmivenkataramaiah 57:e82d4bd6b2c0 751 time_t epoch_time_glc; //A copy of time_t by name epoch_time_bp is created
rashmivenkataramaiah 57:e82d4bd6b2c0 752 struct tm * ptr_time_info_glc; // Sturucture copy of tm is created
rashmivenkataramaiah 57:e82d4bd6b2c0 753
rashmivenkataramaiah 57:e82d4bd6b2c0 754 epoch_time_glc = rtc_read(); // time is got from get epoch function.
rashmivenkataramaiah 57:e82d4bd6b2c0 755 ptr_time_info_glc = localtime(&epoch_time_glc); // Structure accepts the time in local format from "time_t" type.
rashmivenkataramaiah 57:e82d4bd6b2c0 756
rashmivenkataramaiah 57:e82d4bd6b2c0 757 poc2p0_device_heartbeat_res.sos = SOS_EOS;
rashmivenkataramaiah 57:e82d4bd6b2c0 758 poc2p0_device_heartbeat_res.cmd = HEARTBEAT_SYNC_MSG_ACCEPTED_RES;
rashmivenkataramaiah 57:e82d4bd6b2c0 759 poc2p0_device_heartbeat_res.length = HEARTBEAT_DATA_LEN;
rashmivenkataramaiah 57:e82d4bd6b2c0 760
rashmivenkataramaiah 57:e82d4bd6b2c0 761 // device ID
rashmivenkataramaiah 57:e82d4bd6b2c0 762 poc2p0_device_heartbeat_res.did = eprom_read_8(12);
rashmivenkataramaiah 57:e82d4bd6b2c0 763
rashmivenkataramaiah 57:e82d4bd6b2c0 764 // patient ID
rashmivenkataramaiah 57:e82d4bd6b2c0 765 if (curr_touch_state == TOUCH_STATE_TEST_SCREEN)
rashmivenkataramaiah 57:e82d4bd6b2c0 766 {
rashmivenkataramaiah 57:e82d4bd6b2c0 767 poc2p0_device_heartbeat_res.pid = pid;
rashmivenkataramaiah 57:e82d4bd6b2c0 768 }
rashmivenkataramaiah 57:e82d4bd6b2c0 769 else
rashmivenkataramaiah 57:e82d4bd6b2c0 770 {
rashmivenkataramaiah 57:e82d4bd6b2c0 771 poc2p0_device_heartbeat_res.pid = 0x00u;
rashmivenkataramaiah 57:e82d4bd6b2c0 772 }
rashmivenkataramaiah 57:e82d4bd6b2c0 773
rashmivenkataramaiah 57:e82d4bd6b2c0 774 // device current date and time
rashmivenkataramaiah 57:e82d4bd6b2c0 775 poc2p0_device_heartbeat_res.date_time.date = (uint8_t)(*ptr_time_info_glc).tm_mday;
rashmivenkataramaiah 57:e82d4bd6b2c0 776 poc2p0_device_heartbeat_res.date_time.month = (uint8_t)(*ptr_time_info_glc).tm_mon+1;
rashmivenkataramaiah 57:e82d4bd6b2c0 777 poc2p0_device_heartbeat_res.date_time.year = (uint8_t)(*ptr_time_info_glc).tm_year-100;
rashmivenkataramaiah 57:e82d4bd6b2c0 778 poc2p0_device_heartbeat_res.date_time.hour = (uint8_t)(*ptr_time_info_glc).tm_hour;
rashmivenkataramaiah 57:e82d4bd6b2c0 779 poc2p0_device_heartbeat_res.date_time.mins = (uint8_t)(*ptr_time_info_glc).tm_min;
rashmivenkataramaiah 57:e82d4bd6b2c0 780 poc2p0_device_heartbeat_res.date_time.sec = (uint8_t)(*ptr_time_info_glc).tm_sec;
rashmivenkataramaiah 57:e82d4bd6b2c0 781
rashmivenkataramaiah 57:e82d4bd6b2c0 782 // device state
rashmivenkataramaiah 57:e82d4bd6b2c0 783 if (curr_touch_state == TOUCH_STATE_TEST_SCREEN)
rashmivenkataramaiah 57:e82d4bd6b2c0 784 {
rashmivenkataramaiah 57:e82d4bd6b2c0 785 poc2p0_device_heartbeat_res.device_state = TOUCH_STATE_TEST_SCREEN;
rashmivenkataramaiah 57:e82d4bd6b2c0 786 }
rashmivenkataramaiah 57:e82d4bd6b2c0 787 else
rashmivenkataramaiah 57:e82d4bd6b2c0 788 {
rashmivenkataramaiah 58:b75255e6e4c3 789 poc2p0_device_heartbeat_res.device_state = 0x00u;
rashmivenkataramaiah 57:e82d4bd6b2c0 790 }
rashmivenkataramaiah 57:e82d4bd6b2c0 791
rashmivenkataramaiah 57:e82d4bd6b2c0 792 //poc2p0_device_heartbeat_res.device_state = device_state;
rashmivenkataramaiah 57:e82d4bd6b2c0 793
rashmivenkataramaiah 57:e82d4bd6b2c0 794 // device battery status
rashmivenkataramaiah 57:e82d4bd6b2c0 795 poc2p0_device_heartbeat_res.battery_status = get_battery_status();
rashmivenkataramaiah 57:e82d4bd6b2c0 796
rashmivenkataramaiah 57:e82d4bd6b2c0 797 poc2p0_device_heartbeat_res.eos = SOS_EOS;
rashmivenkataramaiah 57:e82d4bd6b2c0 798
rashmivenkataramaiah 57:e82d4bd6b2c0 799 // calculate chksum
rashmivenkataramaiah 59:dadb88794375 800 poc2p0_device_heartbeat_res.chksum = checksum_struct((uint8_t *)&poc2p0_device_heartbeat_res.cmd, (sizeof(poc2p0_device_heartbeat_res)-1));
rashmivenkataramaiah 57:e82d4bd6b2c0 801
rashmivenkataramaiah 57:e82d4bd6b2c0 802 //blue1.puts((const char *)&poc2p0_device_heartbeat_res);
rashmivenkataramaiah 58:b75255e6e4c3 803 blue1.printf("%2x",poc2p0_device_heartbeat_res.sos);
rashmivenkataramaiah 58:b75255e6e4c3 804 blue1.printf("%2x",poc2p0_device_heartbeat_res.cmd);
rashmivenkataramaiah 58:b75255e6e4c3 805 blue1.printf("%2x",poc2p0_device_heartbeat_res.length);
rashmivenkataramaiah 58:b75255e6e4c3 806 blue1.printf("%2x",poc2p0_device_heartbeat_res.date_time.date);
rashmivenkataramaiah 58:b75255e6e4c3 807 blue1.printf("%2x",poc2p0_device_heartbeat_res.date_time.month);
rashmivenkataramaiah 58:b75255e6e4c3 808 blue1.printf("%2x",poc2p0_device_heartbeat_res.date_time.year);
rashmivenkataramaiah 58:b75255e6e4c3 809 blue1.printf("%2x",poc2p0_device_heartbeat_res.date_time.hour);
rashmivenkataramaiah 58:b75255e6e4c3 810 blue1.printf("%2x",poc2p0_device_heartbeat_res.date_time.mins);
rashmivenkataramaiah 58:b75255e6e4c3 811 blue1.printf("%2x",poc2p0_device_heartbeat_res.date_time.sec);
rashmivenkataramaiah 58:b75255e6e4c3 812 blue1.printf("%8x",poc2p0_device_heartbeat_res.pid);
rashmivenkataramaiah 58:b75255e6e4c3 813 blue1.printf("%2x",poc2p0_device_heartbeat_res.did);
rashmivenkataramaiah 58:b75255e6e4c3 814 blue1.printf("%2x",poc2p0_device_heartbeat_res.device_state);
rashmivenkataramaiah 58:b75255e6e4c3 815 blue1.printf("%2x",poc2p0_device_heartbeat_res.battery_status);
rashmivenkataramaiah 58:b75255e6e4c3 816 blue1.printf("%2x",poc2p0_device_heartbeat_res.eos);
rashmivenkataramaiah 58:b75255e6e4c3 817 blue1.printf("%2x",poc2p0_device_heartbeat_res.chksum);
rashmivenkataramaiah 58:b75255e6e4c3 818 blue1.printf("\n");
rashmivenkataramaiah 58:b75255e6e4c3 819
rashmivenkataramaiah 58:b75255e6e4c3 820 gc.printf("%2x",poc2p0_device_heartbeat_res.sos);
rashmivenkataramaiah 58:b75255e6e4c3 821 gc.printf("%2x",poc2p0_device_heartbeat_res.cmd);
rashmivenkataramaiah 58:b75255e6e4c3 822 gc.printf("%2x",poc2p0_device_heartbeat_res.length);
rashmivenkataramaiah 58:b75255e6e4c3 823 gc.printf("%2x",poc2p0_device_heartbeat_res.date_time.date);
rashmivenkataramaiah 58:b75255e6e4c3 824 gc.printf("%2x",poc2p0_device_heartbeat_res.date_time.month);
rashmivenkataramaiah 58:b75255e6e4c3 825 gc.printf("%2x",poc2p0_device_heartbeat_res.date_time.year);
rashmivenkataramaiah 58:b75255e6e4c3 826 gc.printf("%2x",poc2p0_device_heartbeat_res.date_time.hour);
rashmivenkataramaiah 58:b75255e6e4c3 827 gc.printf("%2x",poc2p0_device_heartbeat_res.date_time.mins);
rashmivenkataramaiah 58:b75255e6e4c3 828 gc.printf("%2x",poc2p0_device_heartbeat_res.date_time.sec);
rashmivenkataramaiah 58:b75255e6e4c3 829 gc.printf("%8x",poc2p0_device_heartbeat_res.pid);
rashmivenkataramaiah 58:b75255e6e4c3 830 gc.printf("%2x",poc2p0_device_heartbeat_res.did);
rashmivenkataramaiah 58:b75255e6e4c3 831 gc.printf("%2x",poc2p0_device_heartbeat_res.device_state);
rashmivenkataramaiah 58:b75255e6e4c3 832 gc.printf("%2x",poc2p0_device_heartbeat_res.battery_status);
rashmivenkataramaiah 58:b75255e6e4c3 833 gc.printf("%2x",poc2p0_device_heartbeat_res.eos);
rashmivenkataramaiah 58:b75255e6e4c3 834 gc.printf("%2x",poc2p0_device_heartbeat_res.chksum);
rashmivenkataramaiah 58:b75255e6e4c3 835 gc.printf("\n");
rashmivenkataramaiah 58:b75255e6e4c3 836
rashmivenkataramaiah 61:ce5ad0838227 837 //gc.puts((const char *)&poc2p0_device_heartbeat_res);
rashmivenkataramaiah 57:e82d4bd6b2c0 838 }
rashmivenkataramaiah 57:e82d4bd6b2c0 839
rashmivenkataramaiah 57:e82d4bd6b2c0 840 // this command send final test result response to bluetooth device
rashmivenkataramaiah 57:e82d4bd6b2c0 841 void poc2p0_send_device_test_result_res(uint8_t response_cmd, uint32_t result)
rashmivenkataramaiah 57:e82d4bd6b2c0 842 {
rashmivenkataramaiah 57:e82d4bd6b2c0 843 poc2p0_device_tst_result_response poc2p0_device_tst_result_res = {0x00u};
rashmivenkataramaiah 57:e82d4bd6b2c0 844
rashmivenkataramaiah 57:e82d4bd6b2c0 845 poc2p0_device_tst_result_res.sos = SOS_EOS;
rashmivenkataramaiah 57:e82d4bd6b2c0 846 poc2p0_device_tst_result_res.cmd = response_cmd;
rashmivenkataramaiah 57:e82d4bd6b2c0 847 poc2p0_device_tst_result_res.length = DEVICE_RESULT_DATA_LEN;
rashmivenkataramaiah 57:e82d4bd6b2c0 848
rashmivenkataramaiah 57:e82d4bd6b2c0 849 // device result provided by device
rashmivenkataramaiah 57:e82d4bd6b2c0 850 poc2p0_device_tst_result_res.test_result = result;
rashmivenkataramaiah 57:e82d4bd6b2c0 851
rashmivenkataramaiah 57:e82d4bd6b2c0 852 poc2p0_device_tst_result_res.eos = SOS_EOS;
rashmivenkataramaiah 57:e82d4bd6b2c0 853
rashmivenkataramaiah 59:dadb88794375 854 poc2p0_device_tst_result_res.chksum = checksum_struct((uint8_t *)&poc2p0_device_tst_result_res.cmd, (sizeof(poc2p0_device_tst_result_res)-1));
rashmivenkataramaiah 57:e82d4bd6b2c0 855
rashmivenkataramaiah 59:dadb88794375 856 //blue1.puts((const char *)&poc2p0_device_tst_result_res);
rashmivenkataramaiah 61:ce5ad0838227 857 blue1.printf("%2x\n",poc2p0_device_tst_result_res.sos);
rashmivenkataramaiah 61:ce5ad0838227 858 blue1.printf("%2x\n",poc2p0_device_tst_result_res.cmd);
rashmivenkataramaiah 61:ce5ad0838227 859 blue1.printf("%2x\n",poc2p0_device_tst_result_res.length);
rashmivenkataramaiah 61:ce5ad0838227 860 blue1.printf("%8x\n",poc2p0_device_tst_result_res.test_result);
rashmivenkataramaiah 61:ce5ad0838227 861 blue1.printf("%2x\n",poc2p0_device_tst_result_res.eos);
rashmivenkataramaiah 61:ce5ad0838227 862 blue1.printf("%2x\n",poc2p0_device_tst_result_res.chksum);
rashmivenkataramaiah 61:ce5ad0838227 863 blue1.printf("\n");
rashmivenkataramaiah 61:ce5ad0838227 864
rashmivenkataramaiah 59:dadb88794375 865 gc.printf("%2x\n",poc2p0_device_tst_result_res.sos);
rashmivenkataramaiah 59:dadb88794375 866 gc.printf("%2x\n",poc2p0_device_tst_result_res.cmd);
rashmivenkataramaiah 59:dadb88794375 867 gc.printf("%2x\n",poc2p0_device_tst_result_res.length);
rashmivenkataramaiah 59:dadb88794375 868 gc.printf("%8x\n",poc2p0_device_tst_result_res.test_result);
rashmivenkataramaiah 59:dadb88794375 869 gc.printf("%2x\n",poc2p0_device_tst_result_res.eos);
rashmivenkataramaiah 59:dadb88794375 870 gc.printf("%2x\n",poc2p0_device_tst_result_res.chksum);
rashmivenkataramaiah 59:dadb88794375 871 gc.printf("\n");
rashmivenkataramaiah 59:dadb88794375 872
rashmivenkataramaiah 61:ce5ad0838227 873 //gc.puts((const char *)&poc2p0_device_tst_result_res);
rashmivenkataramaiah 57:e82d4bd6b2c0 874 }