hand held final version used for coolterm

Dependencies:   mbed SoftSerial

Committer:
mehrnaz
Date:
Fri Jul 12 15:59:34 2019 +0000
Revision:
2:3de0589260d2
handheld final version used for coolterm

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mehrnaz 2:3de0589260d2 1 #include "mbed.h"
mehrnaz 2:3de0589260d2 2
mehrnaz 2:3de0589260d2 3 AnalogIn flowIn(PA_0);
mehrnaz 2:3de0589260d2 4 Serial co2(PC_10,PC_11); //USED IN MAIN
mehrnaz 2:3de0589260d2 5 //Serial ttl(A1,A0);
mehrnaz 2:3de0589260d2 6
mehrnaz 2:3de0589260d2 7 float finalflow;
mehrnaz 2:3de0589260d2 8 float flowVal1;
mehrnaz 2:3de0589260d2 9 float flowVal2;
mehrnaz 2:3de0589260d2 10 float P1;
mehrnaz 2:3de0589260d2 11 int flag=0;
mehrnaz 2:3de0589260d2 12 int o=0;
mehrnaz 2:3de0589260d2 13 float bpArray[10];
mehrnaz 2:3de0589260d2 14 float fp;float sp;
mehrnaz 2:3de0589260d2 15 float FPressure;
mehrnaz 2:3de0589260d2 16 int value;
mehrnaz 2:3de0589260d2 17 //
mehrnaz 2:3de0589260d2 18 float flow()
mehrnaz 2:3de0589260d2 19 {
mehrnaz 2:3de0589260d2 20 while(1)
mehrnaz 2:3de0589260d2 21 {
mehrnaz 2:3de0589260d2 22 wait(0.01);
mehrnaz 2:3de0589260d2 23 flowVal1=3.3*flowIn; //Logic level 3.3
mehrnaz 2:3de0589260d2 24 flowVal2 = 1.5*flowVal1; //5v
mehrnaz 2:3de0589260d2 25 P1 =(125*flowVal2)-62.5;
mehrnaz 2:3de0589260d2 26 if(flag==0)
mehrnaz 2:3de0589260d2 27 {
mehrnaz 2:3de0589260d2 28 finalflow=0;
mehrnaz 2:3de0589260d2 29 bpArray[o]=P1;
mehrnaz 2:3de0589260d2 30 sp+=bpArray[o];
mehrnaz 2:3de0589260d2 31 o=o+1;
mehrnaz 2:3de0589260d2 32 if (o=9)
mehrnaz 2:3de0589260d2 33 {
mehrnaz 2:3de0589260d2 34 fp=sp/10;
mehrnaz 2:3de0589260d2 35 flag=1;
mehrnaz 2:3de0589260d2 36 }
mehrnaz 2:3de0589260d2 37 }
mehrnaz 2:3de0589260d2 38 if (flag==1)
mehrnaz 2:3de0589260d2 39 {
mehrnaz 2:3de0589260d2 40 FPressure=P1-fp;
mehrnaz 2:3de0589260d2 41 finalflow=(0.24*sqrt(FPressure)); //flow in litter per min
mehrnaz 2:3de0589260d2 42 //ttl.printf("Flow: %f\n",finalflow);
mehrnaz 2:3de0589260d2 43 return finalflow;
mehrnaz 2:3de0589260d2 44 }
mehrnaz 2:3de0589260d2 45 }
mehrnaz 2:3de0589260d2 46 }
mehrnaz 2:3de0589260d2 47
mehrnaz 2:3de0589260d2 48
mehrnaz 2:3de0589260d2 49 int carbon()
mehrnaz 2:3de0589260d2 50 {
mehrnaz 2:3de0589260d2 51 bool allow = false;
mehrnaz 2:3de0589260d2 52 char c;
mehrnaz 2:3de0589260d2 53 char co2_measure[5];
mehrnaz 2:3de0589260d2 54 int count=0;
mehrnaz 2:3de0589260d2 55
mehrnaz 2:3de0589260d2 56 while(1)
mehrnaz 2:3de0589260d2 57 {
mehrnaz 2:3de0589260d2 58 c = co2.getc();
mehrnaz 2:3de0589260d2 59 if(c=='Z') {
mehrnaz 2:3de0589260d2 60 allow = true;
mehrnaz 2:3de0589260d2 61 }
mehrnaz 2:3de0589260d2 62
mehrnaz 2:3de0589260d2 63 if(allow) {
mehrnaz 2:3de0589260d2 64 if(c>=48 && c<=57) {
mehrnaz 2:3de0589260d2 65 co2_measure[count]=c;
mehrnaz 2:3de0589260d2 66 count++;
mehrnaz 2:3de0589260d2 67 }
mehrnaz 2:3de0589260d2 68
mehrnaz 2:3de0589260d2 69 if(count>=6) { //NOT SURE IF 5 OR 6
mehrnaz 2:3de0589260d2 70 value = ((co2_measure[0]-'0')*100000+co2_measure[1]-'0')*10000+(co2_measure[2]-'0')*1000+(co2_measure[3]-'0')*100;
mehrnaz 2:3de0589260d2 71 //ttl.printf("CO2: %d\n",value);
mehrnaz 2:3de0589260d2 72 count=0;
mehrnaz 2:3de0589260d2 73 allow=false;
mehrnaz 2:3de0589260d2 74 return value;
mehrnaz 2:3de0589260d2 75 }
mehrnaz 2:3de0589260d2 76 }
mehrnaz 2:3de0589260d2 77 }
mehrnaz 2:3de0589260d2 78 }
mehrnaz 2:3de0589260d2 79