This is the Control Logic for the Electronic control units built in FRDM K64F platform to upload sensor data to a business cloud in real-time, which is being developed for enhancing the the existing state of art Energy Audits in Industrial Assessment Center(IUPUI)

Dependencies:   SDFileSystem mbed

Fork of SDFileSystem_HelloWorld by mbed official

Committer:
AbhiBjee
Date:
Thu Mar 08 22:40:58 2018 +0000
Revision:
2:08a2e20c624a
Parent:
0:bdbd3d6fc5d5
This is a code to update Scaled sensor reads based on port configurations, from FRDM K64F based hardware to a business cloud platform, in real-time,which is being developed to enhance energy audits in Industrial Assessment Center (IUPUI).

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 0:bdbd3d6fc5d5 1 #include "mbed.h"
AbhiBjee 2:08a2e20c624a 2 #include <math.h>
AbhiBjee 2:08a2e20c624a 3 #include <string.h>
AbhiBjee 2:08a2e20c624a 4 #include "SDFileSystem.h"
AbhiBjee 2:08a2e20c624a 5 #include <iostream>
AbhiBjee 2:08a2e20c624a 6 using namespace std;
AbhiBjee 2:08a2e20c624a 7
AbhiBjee 2:08a2e20c624a 8 SDFileSystem sd(PTE3, PTE1, PTE2, PTE4, "sd");
AbhiBjee 2:08a2e20c624a 9
AbhiBjee 2:08a2e20c624a 10 Serial pc(USBTX, USBRX); // And a little feedback
AbhiBjee 2:08a2e20c624a 11
AbhiBjee 2:08a2e20c624a 12 Timer t;
AbhiBjee 2:08a2e20c624a 13 Timer ReadClock;
AbhiBjee 2:08a2e20c624a 14
AbhiBjee 2:08a2e20c624a 15 int bufcnt,lineCnt,prtCnt,ended,timeout,Multiplier,Port_SensorID[11];
AbhiBjee 2:08a2e20c624a 16 float Port_Multiplier[11];
AbhiBjee 2:08a2e20c624a 17 char buf[1024];
AbhiBjee 2:08a2e20c624a 18 char snd[1024];
AbhiBjee 2:08a2e20c624a 19 char text[1024];
AbhiBjee 2:08a2e20c624a 20 //char SensorType[100];
AbhiBjee 2:08a2e20c624a 21 char Port_Description[11][100];
AbhiBjee 2:08a2e20c624a 22 char Board_specs[10][50];// Board_specs[1]= Board-id, Board_specs[2]=WIFI ssid, Board_specs[3]=Wifi-Password,Board_specs[4]=Database TableName.
AbhiBjee 2:08a2e20c624a 23 int brdspCnt=0;
AbhiBjee 2:08a2e20c624a 24 void SDcrdRead();
AbhiBjee 2:08a2e20c624a 25 char readConfigText();
AbhiBjee 2:08a2e20c624a 26 float UnitConversion(int Sens_ID);
AbhiBjee 2:08a2e20c624a 27 char *SensorName(int Sens_ID);
AbhiBjee 2:08a2e20c624a 28 FILE * fp;
AbhiBjee 2:08a2e20c624a 29
AbhiBjee 2:08a2e20c624a 30 AnalogIn Port_1(PTB2);// Current Sensor -> Output 0-2.5V dc Measures 0-600Amps
AbhiBjee 2:08a2e20c624a 31 AnalogIn Port_2(PTB3);// Pressure Sensor -> Output 0-5V dc Measures 0-200Psig
AbhiBjee 2:08a2e20c624a 32 AnalogIn Port_3(PTB10);// Temperature Sensor -> Output 0-5V dc Measures 0-50 degree Celcius
AbhiBjee 2:08a2e20c624a 33 AnalogIn Port_4(PTB11);// CO2 Sensor -> Output 0-10V dc Measures 0-2000ppm
AbhiBjee 2:08a2e20c624a 34 AnalogIn Port_5(PTC11);// CO2 Sensor -> Output 0-10V dc Measures 0-2000ppm
AbhiBjee 2:08a2e20c624a 35 AnalogIn Port_6(PTC10);// CO2 Sensor -> Output 0-10V dc Measures 0-2000ppm
AbhiBjee 2:08a2e20c624a 36 AnalogIn Port_7(PTC2);// CO2 Sensor -> Output 0-10V dc Measures 0-2000ppm
AbhiBjee 2:08a2e20c624a 37 AnalogIn Port_8(PTC0);// CO2 Sensor -> Output 0-10V dc Measures 0-2000ppm
AbhiBjee 2:08a2e20c624a 38 AnalogIn Port_9(PTC9);// CO2 Sensor -> Output 0-10V dc Measures 0-2000ppm
AbhiBjee 2:08a2e20c624a 39 AnalogIn Port_10(PTC8);// CO2 Sensor -> Output 0-10V dc Measures 0-2000ppm
AbhiBjee 2:08a2e20c624a 40 float Port_1val,Port_2val,Port_3val,Port_4val,Port_5val,Port_6val,Port_7val,Port_8val,Port_9val,Port_10val;
AbhiBjee 2:08a2e20c624a 41 //float PressureVal,TempVal,CurrentVal,CO2Val;
AbhiBjee 2:08a2e20c624a 42 float AvgPort_1Val,AvgPort_2Val,AvgPort_3Val,AvgPort_4Val,AvgPort_5Val,AvgPort_6Val,AvgPort_7Val,AvgPort_8Val,AvgPort_9Val,AvgPort_10Val;
AbhiBjee 2:08a2e20c624a 43 float Port_1ValSum,Port_2ValSum,Port_3ValSum,Port_4ValSum,Port_5ValSum,Port_6ValSum,Port_7ValSum,Port_8ValSum,Port_9ValSum,Port_10ValSum;
AbhiBjee 2:08a2e20c624a 44 int Count,ClockOut;
AbhiBjee 2:08a2e20c624a 45
AbhiBjee 2:08a2e20c624a 46
AbhiBjee 2:08a2e20c624a 47 //DigitalIn OA2(D2);
AbhiBjee 2:08a2e20c624a 48 void SDcrdRead(void){
AbhiBjee 2:08a2e20c624a 49 //FILE * fp;
AbhiBjee 2:08a2e20c624a 50
AbhiBjee 2:08a2e20c624a 51 printf("\r\nReading from SD card...\r\n\n\n");
AbhiBjee 2:08a2e20c624a 52 fp = fopen("/sd/IAC_Config_File.txt", "rb");
AbhiBjee 2:08a2e20c624a 53 if (fp != NULL) {
AbhiBjee 2:08a2e20c624a 54 readConfigText();
AbhiBjee 2:08a2e20c624a 55 fclose(fp);
AbhiBjee 2:08a2e20c624a 56 printf(" \r\n\r\n\r\nRead Successfully!\r\n\r\n\r\n");
AbhiBjee 2:08a2e20c624a 57 printf(" \r\n\r\n\r\n ---- Config File ---- \r\n\r\n\r\n");
AbhiBjee 2:08a2e20c624a 58 printf("%s\n", text);
AbhiBjee 2:08a2e20c624a 59 printf(" \r\n\r\n\r\n ---- End of Config File ---- \r\n\r\n\r\n");
AbhiBjee 2:08a2e20c624a 60 }
AbhiBjee 2:08a2e20c624a 61 else {
AbhiBjee 2:08a2e20c624a 62 printf("\nReading Failed!\r\n");
AbhiBjee 2:08a2e20c624a 63 }
AbhiBjee 2:08a2e20c624a 64
AbhiBjee 2:08a2e20c624a 65 }
AbhiBjee 2:08a2e20c624a 66
AbhiBjee 2:08a2e20c624a 67
AbhiBjee 2:08a2e20c624a 68 char readConfigText()
AbhiBjee 2:08a2e20c624a 69 {
AbhiBjee 2:08a2e20c624a 70 memset(buf, '\0', sizeof(buf));
AbhiBjee 2:08a2e20c624a 71 t.start();
AbhiBjee 2:08a2e20c624a 72 ended=0;
AbhiBjee 2:08a2e20c624a 73 bufcnt=0;
AbhiBjee 2:08a2e20c624a 74 lineCnt=0;
AbhiBjee 2:08a2e20c624a 75 prtCnt =0;
AbhiBjee 2:08a2e20c624a 76 while(true) {
AbhiBjee 2:08a2e20c624a 77 char C = fgetc(fp);
AbhiBjee 2:08a2e20c624a 78 //if(t.read() <= timeout) {
AbhiBjee 2:08a2e20c624a 79 buf[bufcnt] = C;
AbhiBjee 2:08a2e20c624a 80 bufcnt++;
AbhiBjee 2:08a2e20c624a 81 //printf(buf);
AbhiBjee 2:08a2e20c624a 82 if(feof(fp)){
AbhiBjee 2:08a2e20c624a 83 break;
AbhiBjee 2:08a2e20c624a 84 }
AbhiBjee 2:08a2e20c624a 85 if(C == '\n'){
AbhiBjee 2:08a2e20c624a 86 //buf[bufcnt] = '\0';
AbhiBjee 2:08a2e20c624a 87 lineCnt++;
AbhiBjee 2:08a2e20c624a 88 strcpy(snd,buf);
AbhiBjee 2:08a2e20c624a 89 strcat(text,snd);
AbhiBjee 2:08a2e20c624a 90 if(buf[0]=='B'){
AbhiBjee 2:08a2e20c624a 91 const char s[2] = ":";
AbhiBjee 2:08a2e20c624a 92 char *token;
AbhiBjee 2:08a2e20c624a 93
AbhiBjee 2:08a2e20c624a 94 /* get the first token */
AbhiBjee 2:08a2e20c624a 95 token = strtok(buf, s);
AbhiBjee 2:08a2e20c624a 96 /* get the other tokens there*/
AbhiBjee 2:08a2e20c624a 97 while( token != NULL ) {
AbhiBjee 2:08a2e20c624a 98 brdspCnt++;
AbhiBjee 2:08a2e20c624a 99 strcpy(Board_specs[brdspCnt],token);
AbhiBjee 2:08a2e20c624a 100 printf( " Boardspec[%d] = %s\r\n\n",brdspCnt, Board_specs[brdspCnt] );
AbhiBjee 2:08a2e20c624a 101
AbhiBjee 2:08a2e20c624a 102 token = strtok(NULL, s);
AbhiBjee 2:08a2e20c624a 103 }
AbhiBjee 2:08a2e20c624a 104
AbhiBjee 2:08a2e20c624a 105
AbhiBjee 2:08a2e20c624a 106
AbhiBjee 2:08a2e20c624a 107 }
AbhiBjee 2:08a2e20c624a 108 else if(buf[0]=='P'){
AbhiBjee 2:08a2e20c624a 109 prtCnt++;
AbhiBjee 2:08a2e20c624a 110 if (prtCnt<10){
AbhiBjee 2:08a2e20c624a 111 Port_SensorID[prtCnt]=int(buf[9]-'0');
AbhiBjee 2:08a2e20c624a 112 Port_Multiplier[prtCnt]= UnitConversion(Port_SensorID[prtCnt]);
AbhiBjee 2:08a2e20c624a 113 char *senStr = SensorName(Port_SensorID[prtCnt]);
AbhiBjee 2:08a2e20c624a 114 strcpy(Port_Description[prtCnt],senStr);
AbhiBjee 2:08a2e20c624a 115
AbhiBjee 2:08a2e20c624a 116 printf("%d %0.2f %s\r\n",Port_SensorID[prtCnt],Port_Multiplier[prtCnt],Port_Description[prtCnt]);
AbhiBjee 2:08a2e20c624a 117 }
AbhiBjee 2:08a2e20c624a 118 else{
AbhiBjee 2:08a2e20c624a 119 Port_SensorID[prtCnt]=int(buf[10]-'0');
AbhiBjee 2:08a2e20c624a 120 Port_Multiplier[prtCnt]= UnitConversion(Port_SensorID[prtCnt]);
AbhiBjee 2:08a2e20c624a 121 char *senStr = SensorName(Port_SensorID[prtCnt]);
AbhiBjee 2:08a2e20c624a 122 strcpy(Port_Description[prtCnt],senStr);
AbhiBjee 2:08a2e20c624a 123
AbhiBjee 2:08a2e20c624a 124 printf("%d %0.2f %s\r\n",Port_SensorID[prtCnt],Port_Multiplier[prtCnt],Port_Description[prtCnt]);
AbhiBjee 2:08a2e20c624a 125 }
AbhiBjee 2:08a2e20c624a 126
AbhiBjee 2:08a2e20c624a 127 }
AbhiBjee 2:08a2e20c624a 128 //printf(text);
AbhiBjee 2:08a2e20c624a 129 memset(buf, '\0', sizeof(buf));
AbhiBjee 2:08a2e20c624a 130 bufcnt = 0;
AbhiBjee 2:08a2e20c624a 131 }
AbhiBjee 2:08a2e20c624a 132
AbhiBjee 2:08a2e20c624a 133 }
mbed_official 0:bdbd3d6fc5d5 134
AbhiBjee 2:08a2e20c624a 135 printf("\r\n End of text file \r\n");
AbhiBjee 2:08a2e20c624a 136 printf("\r\nLine Count %d\r\n",lineCnt);
AbhiBjee 2:08a2e20c624a 137 }
AbhiBjee 2:08a2e20c624a 138
AbhiBjee 2:08a2e20c624a 139 float UnitConversion(int Sens_ID){
AbhiBjee 2:08a2e20c624a 140 switch (Sens_ID){
AbhiBjee 2:08a2e20c624a 141 case 0 :
AbhiBjee 2:08a2e20c624a 142 Multiplier = 0.0;
AbhiBjee 2:08a2e20c624a 143 break;
AbhiBjee 2:08a2e20c624a 144 case 1 :
AbhiBjee 2:08a2e20c624a 145 Multiplier = 2000.0;
AbhiBjee 2:08a2e20c624a 146 break;
AbhiBjee 2:08a2e20c624a 147 case 2 :
AbhiBjee 2:08a2e20c624a 148 Multiplier = 133.33;
AbhiBjee 2:08a2e20c624a 149 break;
AbhiBjee 2:08a2e20c624a 150 case 3 :
AbhiBjee 2:08a2e20c624a 151 Multiplier = 800.00;
AbhiBjee 2:08a2e20c624a 152 break;
AbhiBjee 2:08a2e20c624a 153 case 4 :
AbhiBjee 2:08a2e20c624a 154 Multiplier = 50.0;
AbhiBjee 2:08a2e20c624a 155 break;
AbhiBjee 2:08a2e20c624a 156 case 5 :
AbhiBjee 2:08a2e20c624a 157 Multiplier = 50.0;
AbhiBjee 2:08a2e20c624a 158 break;
AbhiBjee 2:08a2e20c624a 159 case 6 :
AbhiBjee 2:08a2e20c624a 160 Multiplier = 200.0;
AbhiBjee 2:08a2e20c624a 161 break;
AbhiBjee 2:08a2e20c624a 162 case 7 :
AbhiBjee 2:08a2e20c624a 163 Multiplier = 100.0;
AbhiBjee 2:08a2e20c624a 164 break;
AbhiBjee 2:08a2e20c624a 165 case 8 :
AbhiBjee 2:08a2e20c624a 166 Multiplier = 100;
AbhiBjee 2:08a2e20c624a 167 break;
AbhiBjee 2:08a2e20c624a 168 }
AbhiBjee 2:08a2e20c624a 169 return Multiplier;
AbhiBjee 2:08a2e20c624a 170 }
AbhiBjee 2:08a2e20c624a 171
AbhiBjee 2:08a2e20c624a 172 char *SensorName(int Sens_ID){
AbhiBjee 2:08a2e20c624a 173
AbhiBjee 2:08a2e20c624a 174 static char *strng ;
AbhiBjee 2:08a2e20c624a 175 //memset(strng, '\0', sizeof(strng));
AbhiBjee 2:08a2e20c624a 176
AbhiBjee 2:08a2e20c624a 177 switch (Sens_ID){
AbhiBjee 2:08a2e20c624a 178 case 0 :
AbhiBjee 2:08a2e20c624a 179 strng = "Null";
AbhiBjee 2:08a2e20c624a 180 break;
AbhiBjee 2:08a2e20c624a 181 case 1 :
AbhiBjee 2:08a2e20c624a 182 strng = "Carbondioxide - Parts per million";
AbhiBjee 2:08a2e20c624a 183 break;
AbhiBjee 2:08a2e20c624a 184 case 2 :
AbhiBjee 2:08a2e20c624a 185 strng = "Current 0-100 Ampere";
AbhiBjee 2:08a2e20c624a 186 break;
AbhiBjee 2:08a2e20c624a 187 case 3 :
AbhiBjee 2:08a2e20c624a 188 strng = "Current 0-600 Ampere";
AbhiBjee 2:08a2e20c624a 189 break;
AbhiBjee 2:08a2e20c624a 190 case 4 :
AbhiBjee 2:08a2e20c624a 191 strng = "Temperature 0-50 Degree Celsius";
AbhiBjee 2:08a2e20c624a 192 break;
AbhiBjee 2:08a2e20c624a 193 case 5 :
AbhiBjee 2:08a2e20c624a 194 strng = "Temperature 0-50 Degree Celsius";
AbhiBjee 2:08a2e20c624a 195 break;
AbhiBjee 2:08a2e20c624a 196 case 6 :
AbhiBjee 2:08a2e20c624a 197 strng = "Pressure (PSIG)";
AbhiBjee 2:08a2e20c624a 198 break;
AbhiBjee 2:08a2e20c624a 199 case 7 :
AbhiBjee 2:08a2e20c624a 200 strng = "Humidity - Percentage";
AbhiBjee 2:08a2e20c624a 201 break;
AbhiBjee 2:08a2e20c624a 202 case 8 :
AbhiBjee 2:08a2e20c624a 203 strng = "Compressed Airflow - Percentage";
AbhiBjee 2:08a2e20c624a 204 break;
AbhiBjee 2:08a2e20c624a 205 }
AbhiBjee 2:08a2e20c624a 206 return strng;
AbhiBjee 2:08a2e20c624a 207 }
AbhiBjee 2:08a2e20c624a 208
AbhiBjee 2:08a2e20c624a 209 int main(){
AbhiBjee 2:08a2e20c624a 210 SDcrdRead();
AbhiBjee 2:08a2e20c624a 211 while(true){
AbhiBjee 2:08a2e20c624a 212 ClockOut = 5;
AbhiBjee 2:08a2e20c624a 213 ended=0;
AbhiBjee 2:08a2e20c624a 214 Count=0;
AbhiBjee 2:08a2e20c624a 215 Port_1ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 216 Port_2ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 217 Port_3ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 218 Port_4ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 219 Port_5ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 220 Port_6ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 221 Port_7ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 222 Port_8ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 223 Port_9ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 224 Port_10ValSum = 0.0;
AbhiBjee 2:08a2e20c624a 225
AbhiBjee 2:08a2e20c624a 226 while (ended!=1) {
AbhiBjee 2:08a2e20c624a 227 ReadClock.start();
AbhiBjee 2:08a2e20c624a 228 Port_1val = Port_1.read()*Port_Multiplier[1];
AbhiBjee 2:08a2e20c624a 229 Port_2val = Port_2.read()*Port_Multiplier[2];
AbhiBjee 2:08a2e20c624a 230 Port_3val = Port_3.read()*Port_Multiplier[3];
AbhiBjee 2:08a2e20c624a 231 Port_4val = Port_4.read()*Port_Multiplier[4];
AbhiBjee 2:08a2e20c624a 232 Port_5val = Port_5.read()*Port_Multiplier[5];
AbhiBjee 2:08a2e20c624a 233 Port_6val = Port_6.read()*Port_Multiplier[6];
AbhiBjee 2:08a2e20c624a 234 Port_7val = Port_7.read()*Port_Multiplier[7];
AbhiBjee 2:08a2e20c624a 235 Port_8val = Port_8.read()*Port_Multiplier[8];
AbhiBjee 2:08a2e20c624a 236 Port_9val = Port_9.read()*Port_Multiplier[9];
AbhiBjee 2:08a2e20c624a 237 Port_10val = Port_10.read()*Port_Multiplier[10];
AbhiBjee 2:08a2e20c624a 238
AbhiBjee 2:08a2e20c624a 239 Port_1ValSum += Port_1val;
AbhiBjee 2:08a2e20c624a 240 Port_2ValSum += Port_2val;
AbhiBjee 2:08a2e20c624a 241 Port_3ValSum += Port_3val;
AbhiBjee 2:08a2e20c624a 242 Port_4ValSum += Port_4val;
AbhiBjee 2:08a2e20c624a 243 Port_5ValSum += Port_5val;
AbhiBjee 2:08a2e20c624a 244 Port_6ValSum += Port_6val;
AbhiBjee 2:08a2e20c624a 245 Port_7ValSum += Port_7val;
AbhiBjee 2:08a2e20c624a 246 Port_8ValSum += Port_8val;
AbhiBjee 2:08a2e20c624a 247 Port_9ValSum += Port_9val;
AbhiBjee 2:08a2e20c624a 248 Port_10ValSum += Port_10val;
AbhiBjee 2:08a2e20c624a 249 Count++;
AbhiBjee 2:08a2e20c624a 250 //printf(" %f %f %f %f \r\n", CurrentVal, PressureVal, TempVal, CO2Val);
AbhiBjee 2:08a2e20c624a 251 printf(" %f %f %f %f %f %f %f %f %f %f\r\n", Port_1val, Port_2val, Port_3val, Port_4val,Port_5val, Port_6val, Port_7val, Port_8val,Port_9val, Port_10val);
AbhiBjee 2:08a2e20c624a 252 wait(0.002f);
AbhiBjee 2:08a2e20c624a 253 if(ReadClock.read() > ClockOut) {
AbhiBjee 2:08a2e20c624a 254 ended = 1;
AbhiBjee 2:08a2e20c624a 255 ReadClock.stop();
AbhiBjee 2:08a2e20c624a 256 ReadClock.reset();
AbhiBjee 2:08a2e20c624a 257 }
AbhiBjee 2:08a2e20c624a 258
AbhiBjee 2:08a2e20c624a 259 }
AbhiBjee 2:08a2e20c624a 260 AvgPort_1Val=Port_1ValSum/Count;
AbhiBjee 2:08a2e20c624a 261 //AvgPort_1Val =ceilf(AvgPort_1Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 262 AvgPort_2Val=Port_2ValSum/Count;
AbhiBjee 2:08a2e20c624a 263 //AvgPort_2Val =ceilf(AvgPort_2Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 264 AvgPort_3Val=Port_3ValSum/Count;
AbhiBjee 2:08a2e20c624a 265 //AvgPort_3Val =ceilf(AvgPort_3Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 266 AvgPort_4Val=Port_4ValSum/Count;
AbhiBjee 2:08a2e20c624a 267 //AvgPort_4Val =ceilf(AvgPort_4Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 268 AvgPort_5Val=Port_5ValSum/Count;
AbhiBjee 2:08a2e20c624a 269 //AvgPort_5Val =ceilf(AvgPort_5Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 270 AvgPort_6Val=Port_6ValSum/Count;
AbhiBjee 2:08a2e20c624a 271 //AvgPort_6Val =ceilf(AvgPort_6Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 272 AvgPort_7Val=Port_7ValSum/Count;
AbhiBjee 2:08a2e20c624a 273 //AvgPort_7Val =ceilf(AvgPort_7Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 274 AvgPort_8Val=Port_8ValSum/Count;
AbhiBjee 2:08a2e20c624a 275 //AvgPort_8Val =ceilf(AvgPort_8Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 276 AvgPort_9Val=Port_9ValSum/Count;
AbhiBjee 2:08a2e20c624a 277 //AvgPort_9Val =ceilf(AvgPort_9Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 278 AvgPort_10Val=Port_10ValSum/Count;
AbhiBjee 2:08a2e20c624a 279 //AvgPort_10Val =ceilf(AvgPort_10Val * 10) / 10;
AbhiBjee 2:08a2e20c624a 280
AbhiBjee 2:08a2e20c624a 281 printf("%f %f %f %f %f %f %f %f %f %f %d \r\n", AvgPort_1Val,AvgPort_2Val,AvgPort_3Val,AvgPort_4Val,AvgPort_5Val,AvgPort_6Val,AvgPort_7Val,AvgPort_8Val,AvgPort_9Val,AvgPort_10Val,Count);
AbhiBjee 2:08a2e20c624a 282 wait(2);
AbhiBjee 2:08a2e20c624a 283
mbed_official 0:bdbd3d6fc5d5 284 }
AbhiBjee 2:08a2e20c624a 285
AbhiBjee 2:08a2e20c624a 286
AbhiBjee 2:08a2e20c624a 287
AbhiBjee 2:08a2e20c624a 288
mbed_official 0:bdbd3d6fc5d5 289
AbhiBjee 2:08a2e20c624a 290
AbhiBjee 2:08a2e20c624a 291
AbhiBjee 2:08a2e20c624a 292 }